- dashboard: revenue_trends_gcp_core
  title: Revenue Trends (GCP Core)
  layout: newspaper
  preferred_viewer: dashboards-next
  description: ''
  elements:
  - title: Daily Sales Revenue Trends
    name: Daily Sales Revenue Trends
    model: hdeist-test-model
    explore: revenue
    type: looker_line
    fields: [revenue.usage_date, revenue.revenue_toggle]
    fill_fields: [revenue.usage_date]
    filters:
      revenue.usage_date: 92 days ago for 90 days
      revenue.product_line: "-Looker,-Looker Data Platform SaaS"
      revenue.service_family: CLOUD
    sorts: [revenue.usage_date desc]
    limit: 500
    query_timezone: America/Los_Angeles
    x_axis_gridlines: false
    y_axis_gridlines: true
    show_view_names: false
    show_y_axis_labels: true
    show_y_axis_ticks: true
    y_axis_tick_density: default
    y_axis_tick_density_custom: 5
    show_x_axis_label: true
    show_x_axis_ticks: true
    y_axis_scale_mode: linear
    x_axis_reversed: false
    y_axis_reversed: false
    plot_size_by_field: false
    trellis: ''
    stacking: ''
    limit_displayed_rows: false
    legend_position: center
    point_style: none
    show_value_labels: true
    label_density: 25
    x_axis_scale: auto
    y_axis_combined: true
    show_null_points: true
    interpolation: linear
    y_axes: [{label: Daily Revenue, orientation: left, series: [{axisId: revenue.revenue_net_cn,
            id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}],
        showLabels: true, showValues: true, valueFormat: "[>1000000000]$0.00,,,\\\
          B;[>1000000]$0.00,,\\M;$0,\\K", unpinAxis: true, tickDensity: default, tickDensityCustom: 5,
        type: linear}]
    label_value_format: "[>1000000000]$0.00,,,\\B;[>1000000]$0.00,,\\M;$0.00,\\K"
    series_types: {}
    ordering: none
    show_null_labels: false
    show_totals_labels: false
    show_silhouette: false
    totals_color: "#808080"
    defaults_version: 1
    hidden_fields: []
    listen:
      SFDC Account ID: revenue.sfdc_account_id
      Product Group: revenue.product_group
      GCP Revenue Source: revenue.gcp_revenue_source
      Billing Account ID: revenue.billing_account_id
      Logical Product (L3): revenue.logical_product_l3
      # SKU ID: revenue.sku_id
      # Sub-Account Name: vector_customers.account_name
      Is Data Analytics? (Yes / No): revenue.is_data_analytics
      # Revenue Granularity: revenue.revenue_granularity
      Region: revenue.region
      EMEA Geocluster: revenue.geocluster
      NORTHAM Sector: revenue.sector
      Sub Region: revenue.sub_region
      Micro Region: revenue.micro_region
      NAL Cluster: revenue.nal_cluster
      # NAL Subcluster: vector_customers.nal_sub_cluster
      NAL Name: revenue.nal_name
      # Reporting Account Name: revenue.reporting_account_name
      Segment: revenue.segment
      # Digital Native vs. Traditional: vector_customers.is_digital_native
      # Is ISV? (Yes / No): vector_customers.is_isv
    row: 12
    col: 0
    width: 24
    height: 6
  - title: Monthly Sales Revenue Trends (w/ YoY)
    name: Monthly Sales Revenue Trends (w/ YoY)
    model: hdeist-test-model
    explore: revenue
    type: looker_line
    fields: [revenue.comparison_usage_month, revenue.comparison_period, revenue.revenue_toggle]
    pivots: [revenue.comparison_period]
    fill_fields: [revenue.comparison_usage_month]
    filters:
      revenue.product_line: "-Looker,-Looker Data Platform SaaS"
      revenue.usage_month: 25 months
      revenue.comparison_type: YEAR
      revenue.comparison_date_range: 12 months
      revenue.comparison_period: Current Period,Prior Period
      revenue.service_family: CLOUD
    sorts: [revenue.comparison_period, revenue.comparison_usage_month]
    limit: 500
    dynamic_fields: [{category: table_calculation, expression: 'NOT is_null(pivot_where(${revenue.comparison_period}="Current
          Period", ${revenue.revenue_toggle}))', label: 'Show?', value_format: !!null '',
        value_format_name: !!null '', _kind_hint: supermeasure, table_calculation: show,
        _type_hint: yesno}]
    query_timezone: America/Los_Angeles
    x_axis_gridlines: false
    y_axis_gridlines: true
    show_view_names: false
    show_y_axis_labels: true
    show_y_axis_ticks: true
    y_axis_tick_density: default
    y_axis_tick_density_custom: 5
    show_x_axis_label: false
    show_x_axis_ticks: true
    y_axis_scale_mode: linear
    x_axis_reversed: false
    y_axis_reversed: false
    plot_size_by_field: false
    trellis: ''
    stacking: ''
    limit_displayed_rows: true
    legend_position: center
    point_style: circle_outline
    show_value_labels: true
    label_density: 25
    x_axis_scale: time
    y_axis_combined: true
    show_null_points: false
    interpolation: linear
    y_axes: [{label: Monthly Revenue, orientation: left, series: [{axisId: revenue.revenue_net_cn,
            id: Current Period - revenue.revenue_net_cn, name: This Year}, {axisId: revenue.revenue_net_cn,
            id: Prior Period - revenue.revenue_net_cn, name: Prior Year}], showLabels: true,
        showValues: true, valueFormat: "[>1000000000]$0.0,,,\\B;[>1000000]$0.0,,\\\
          M;$0,\\K", unpinAxis: false, tickDensity: default, tickDensityCustom: 5,
        type: linear}]
    limit_displayed_rows_values:
      show_hide: show
      first_last: first
      num_rows: '13'
    label_value_format: "[>1000000000]$0.00,,,\\B;[>1000000]$0.00,,\\M;$0.00,\\K"
    series_types: {}
    series_labels:
      Current Period - revenue.revenue_net_cn: This Year
      Prior Period - revenue.revenue_net_cn: Prior Year
    ordering: none
    show_null_labels: false
    show_totals_labels: false
    show_silhouette: false
    totals_color: "#808080"
    defaults_version: 1
    hidden_fields: []
    hidden_points_if_no: [show]
    listen:
      SFDC Account ID: revenue.sfdc_account_id
      Product Group: revenue.product_group
      GCP Revenue Source: revenue.gcp_revenue_source
      Billing Account ID: revenue.billing_account_id
      Logical Product (L3): revenue.logical_product_l3
      # SKU ID: revenue.sku_id
      # Sub-Account Name: vector_customers.account_name
      Is Data Analytics? (Yes / No): revenue.is_data_analytics
      # Revenue Granularity: revenue.revenue_granularity
      Region: revenue.region
      EMEA Geocluster: revenue.geocluster
      NORTHAM Sector: revenue.sector
      Sub Region: revenue.sub_region
      Micro Region: revenue.micro_region
      NAL Cluster: revenue.nal_cluster
      # NAL Subcluster: vector_customers.nal_sub_cluster
      NAL Name: revenue.nal_name
      # Reporting Account Name: revenue.reporting_account_name
      Segment: revenue.segment
      # Digital Native vs. Traditional: vector_customers.is_digital_native
      # Is ISV? (Yes / No): vector_customers.is_isv
    row: 24
    col: 0
    width: 24
    height: 7
  - title: YTD
    name: YTD
    model: hdeist-test-model
    explore: revenue
    type: single_value
    fields: [revenue.year_to_date, revenue.revenue_toggle]
    filters:
      revenue.product_line: "-Looker,-Looker Data Platform SaaS"
      revenue.usage_year: 2 years
      revenue.year_to_date: "-NULL"
      revenue.metric_selector: blended
    sorts: [revenue.year_to_date desc]
    limit: 500
    dynamic_fields: [{category: table_calculation, expression: "(${revenue.revenue_toggle}-offset(${revenue.revenue_toggle},1))/offset(${revenue.revenue_toggle},1)",
        label: YoY %, value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
        table_calculation: yoy, _type_hint: number}]
    query_timezone: America/Los_Angeles
    custom_color_enabled: true
    show_single_value_title: true
    show_comparison: true
    comparison_type: change
    comparison_reverse_colors: false
    show_comparison_label: true
    enable_conditional_formatting: false
    conditional_formatting_include_totals: false
    conditional_formatting_include_nulls: false
    x_axis_gridlines: false
    y_axis_gridlines: true
    show_view_names: false
    y_axes: [{label: '', orientation: left, series: [{axisId: revenue.revenue_net_cn,
            id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}],
        showLabels: true, showValues: true, unpinAxis: true, tickDensity: default,
        tickDensityCustom: 5, type: linear}]
    show_y_axis_labels: true
    show_y_axis_ticks: true
    y_axis_tick_density: default
    y_axis_tick_density_custom: 5
    show_x_axis_label: true
    show_x_axis_ticks: true
    y_axis_scale_mode: linear
    x_axis_reversed: false
    y_axis_reversed: false
    plot_size_by_field: false
    trellis: ''
    stacking: normal
    limit_displayed_rows: false
    legend_position: center
    series_types: {}
    point_style: none
    show_value_labels: true
    label_density: 25
    x_axis_scale: auto
    y_axis_combined: true
    show_null_points: true
    interpolation: linear
    ordering: none
    show_null_labels: false
    show_totals_labels: false
    show_silhouette: false
    totals_color: "#808080"
    defaults_version: 1
    hidden_fields: []
    note_state: collapsed
    note_display: hover
    note_text: Based on Sales Revenue
    listen:
      SFDC Account ID: revenue.sfdc_account_id
      Product Group: revenue.product_group
      GCP Revenue Source: revenue.gcp_revenue_source
      Billing Account ID: revenue.billing_account_id
      Logical Product (L3): revenue.logical_product_l3
      # SKU ID: revenue.sku_id
      # Sub-Account Name: vector_customers.account_name
      Is Data Analytics? (Yes / No): revenue.is_data_analytics
      # Revenue Granularity: revenue.revenue_granularity
      Region: revenue.region
      EMEA Geocluster: revenue.geocluster
      NORTHAM Sector: revenue.sector
      Sub Region: revenue.sub_region
      Micro Region: revenue.micro_region
      NAL Cluster: revenue.nal_cluster
      # NAL Subcluster: vector_customers.nal_sub_cluster
      NAL Name: revenue.nal_name
      # Reporting Account Name: revenue.reporting_account_name
      Segment: revenue.segment
      # Digital Native vs. Traditional: vector_customers.is_digital_native
      # Is ISV? (Yes / No): vector_customers.is_isv
    row: 7
    col: 3
    width: 7
    height: 3
  # - title: MTD
  #   name: MTD
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: single_value
  #   fields: [revenue.month_to_date, revenue.revenue_toggle]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.month_to_date: "-NULL"
  #     revenue.usage_month: 3 months
  #     revenue.metric_selector: blended
  #   sorts: [revenue.month_to_date desc]
  #   limit: 500
  #   dynamic_fields: [{category: table_calculation, expression: "(${revenue.revenue_toggle}-offset(${revenue.revenue_toggle},1))/offset(${revenue.revenue_toggle},1)",
  #       label: MoM %, value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
  #       table_calculation: mom, _type_hint: number}]
  #   query_timezone: America/Los_Angeles
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: true
  #   comparison_type: change
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   enable_conditional_formatting: false
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_view_names: false
  #   y_axes: [{label: '', orientation: left, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}],
  #       showLabels: true, showValues: true, unpinAxis: true, tickDensity: default,
  #       tickDensityCustom: 5, type: linear}]
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: normal
  #   limit_displayed_rows: false
  #   legend_position: center
  #   series_types: {}
  #   point_style: none
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   hidden_fields: []
  #   note_state: collapsed
  #   note_display: hover
  #   note_text: Based on Sales Revenue
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 7
  #   col: 17
  #   width: 7
  #   height: 3
  # - title: QTD
  #   name: QTD
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: single_value
  #   fields: [revenue.quarter_to_date, revenue.revenue_toggle]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.usage_month: 3 quarters
  #     revenue.quarter_to_date: "-NULL"
  #     revenue.metric_selector: blended
  #   sorts: [revenue.quarter_to_date desc]
  #   limit: 500
  #   dynamic_fields: [{category: table_calculation, expression: "(${revenue.revenue_toggle}-offset(${revenue.revenue_toggle},1))/offset(${revenue.revenue_toggle},1)",
  #       label: QoQ %, value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
  #       table_calculation: qoq, _type_hint: number}]
  #   query_timezone: America/Los_Angeles
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: true
  #   comparison_type: change
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   enable_conditional_formatting: false
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_view_names: false
  #   y_axes: [{label: '', orientation: left, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}],
  #       showLabels: true, showValues: true, unpinAxis: true, tickDensity: default,
  #       tickDensityCustom: 5, type: linear}]
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: normal
  #   limit_displayed_rows: false
  #   legend_position: center
  #   series_types: {}
  #   point_style: none
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   hidden_fields: []
  #   note_state: collapsed
  #   note_display: hover
  #   note_text: Based on Sales Revenue
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 7
  #   col: 10
  #   width: 7
  #   height: 3
  # - title: Navigation
  #   name: Navigation
  #   model: cloud_sales_bi
  #   explore: pommelhorse_links
  #   type: looker_grid
  #   fields: [pommelhorse_links.link_name]
  #   filters:
  #     pommelhorse_links.category: Revenue Detail
  #     pommelhorse_links.link_size: 1em
  #   sorts: [pommelhorse_links.link_name]
  #   limit: 500
  #   column_limit: 50
  #   query_timezone: America/Los_Angeles
  #   show_view_names: false
  #   show_row_numbers: false
  #   transpose: false
  #   truncate_text: false
  #   hide_totals: false
  #   hide_row_totals: false
  #   size_to_fit: true
  #   table_theme: white
  #   limit_displayed_rows: false
  #   enable_conditional_formatting: false
  #   header_text_alignment: left
  #   header_font_size: '18'
  #   rows_font_size: '18'
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   show_sql_query_menu_options: false
  #   show_totals: true
  #   show_row_totals: true
  #   series_labels:
  #     pommelhorse_links.link_name: Navigation
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: false
  #   comparison_type: value
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   legend_position: center
  #   point_style: none
  #   show_value_labels: false
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: []
  #   y_axes: []
  #   title_hidden: true
  #   listen:
  #     SFDC Account ID: pommelhorse_links.account_id
  #     Sub-Account Name: pommelhorse_links.account_name
  #     Region: pommelhorse_links.region
  #     EMEA Geocluster: pommelhorse_links.geocluster
  #     NORTHAM Sector: pommelhorse_links.sector
  #     Sub Region: pommelhorse_links.sub_region
  #     Micro Region: pommelhorse_links.micro_region
  #     NAL Cluster: pommelhorse_links.nal_cluster
  #     NAL Subcluster: pommelhorse_links.nal_sub_cluster
  #     NAL Name: pommelhorse_links.nal_name
  #     Reporting Account Name: pommelhorse_links.reporting_account_name
  #   row: 0
  #   col: 0
  #   width: 3
  #   height: 12
  # - title: 'Revenue Walk: List --> Gross'
  #   name: 'Revenue Walk: List --> Gross'
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_waterfall
  #   fields: [revenue.revenue_list, revenue.revenue_gross]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.usage_year: 1 years
  #     revenue.service_family: CLOUD
  #   limit: 500
  #   dynamic_fields: [{category: table_calculation, expression: "-1 * (${revenue.revenue_list}-${revenue.revenue_gross})",
  #       label: 'Negotiated Discounts, Fraud & BMODs', value_format: "[>1000000000]$0.00,,,\\\
  #         B;[>1000000]$0.00,,\\M;$0.00,\\K", value_format_name: !!null '', _kind_hint: measure,
  #       table_calculation: negotiated_discounts_fraud_bmods, _type_hint: number},
  #     {category: measure, expression: !!null '', label: Revenue (Gross), value_format: !!null '',
  #       value_format_name: !!null '', based_on: revenue.revenue_gross, _kind_hint: measure,
  #       measure: revenue_gross, type: sum, _type_hint: number}, {category: table_calculation,
  #       expression: "${revenue.revenue_gross}", label: Revenue (Gross), value_format: "[>1000000000]$0.00,,,\\\
  #         B;[>1000000]$0.00,,\\M;$0.00,\\K", value_format_name: !!null '', _kind_hint: measure,
  #       table_calculation: revenue_gross_1, _type_hint: number, is_disabled: true}]
  #   filter_expression: "${revenue.usage_date} <= ${max_date.max_date_minus_2_date}"
  #   up_color: "#4285F4"
  #   down_color: "#EA4335"
  #   total_color: "#FBBC04"
  #   show_value_labels: true
  #   show_x_axis_ticks: true
  #   show_x_axis_label: true
  #   x_axis_scale: auto
  #   show_y_axis_labels: false
  #   show_y_axis_ticks: true
  #   y_axis_gridlines: true
  #   label_color: ["#000"]
  #   x_axis_gridlines: false
  #   show_view_names: false
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   limit_displayed_rows: false
  #   legend_position: center
  #   point_style: none
  #   label_density: 25
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: [revenue.revenue_gross]
  #   y_axes: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 33
  #   col: 0
  #   width: 6
  #   height: 16
  # - name: ''
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: |-
  #     <div id="discounts" style="text-align:center;font-size:1.5em">Revenue Walk</div>
  #     <div style="text-align:center;font-size:1em">For more information, visit <a href="http://go/revenue-walk">go/revenue-walk</a></div>
  #   row: 31
  #   col: 0
  #   width: 24
  #   height: 2
  # - title: Top Gainers
  #   name: Top Gainers
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_grid
  #   fields: [revenue.rolling_window_prior_window, revenue.rolling_window_current_window,
  #     revenue.rolling_window_window_variance, revenue.reporting_account_name]
  #   filters:
  #     revenue.usage_date: 70 days
  #     revenue.rolling_window: "-NULL"
  #     revenue.window_size: '28'
  #     revenue.rolling_window_current_window: ">=0"
  #     revenue.rolling_window_prior_window: ">=0"
  #     revenue.rolling_window_window_variance: ">0"
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.service_family: CLOUD
  #   sorts: [revenue.rolling_window_window_variance desc]
  #   limit: 50
  #   column_limit: 50
  #   dynamic_fields: [{category: table_calculation, expression: "${revenue.rolling_window_window_variance}/${revenue.rolling_window_prior_window}",
  #       label: MoM List, value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
  #       table_calculation: mom_list, _type_hint: number}]
  #   query_timezone: America/Los_Angeles
  #   show_view_names: false
  #   show_row_numbers: false
  #   transpose: false
  #   truncate_text: false
  #   hide_totals: false
  #   hide_row_totals: false
  #   size_to_fit: true
  #   table_theme: white
  #   limit_displayed_rows: false
  #   enable_conditional_formatting: true
  #   header_text_alignment: left
  #   header_font_size: '12'
  #   rows_font_size: '12'
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   show_sql_query_menu_options: false
  #   column_order: [revenue.reporting_account_name, revenue.rolling_window_current_window,
  #     revenue.rolling_window_prior_window, revenue.rolling_window_window_variance,
  #     mom]
  #   show_totals: true
  #   show_row_totals: true
  #   series_labels:
  #     revenue.rolling_window_prior_window: 28 Days Before That
  #     revenue.rolling_window_current_window: 28 Days Ago
  #     revenue.rolling_window_window_variance: Sales Revenue Growth $
  #     mom: Sales Revenue Growth %
  #     mom_list: Sales Revenue Growth %
  #   series_column_widths:
  #     revenue.rolling_window: 282
  #     account_meta.customer_name: 298
  #   series_cell_visualizations:
  #     revenue.revenue_net_cn:
  #       is_active: true
  #       palette:
  #         palette_id: 3de02744-c6d0-ba29-2378-81b0f7919624
  #         collection_id: google
  #         custom_colors:
  #         - "#4285F4"
  #         - "#185ABC"
  #   limit_displayed_rows_values:
  #     show_hide: show
  #     first_last: first
  #     num_rows: '2'
  #   header_font_color: "#5F6368"
  #   conditional_formatting: [{type: greater than, value: 0, background_color: '',
  #       font_color: "#137333", color_application: {collection_id: google, palette_id: google-sequential-0},
  #       bold: false, italic: false, strikethrough: false, fields: [revenue.rolling_window_window_variance]},
  #     {type: less than, value: 0, background_color: '', font_color: "#B31412", color_application: {
  #         collection_id: google, palette_id: google-sequential-0}, bold: false, italic: false,
  #       strikethrough: false, fields: [revenue.rolling_window_window_variance]}]
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   legend_position: center
  #   point_style: none
  #   show_value_labels: false
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: [current_month_to_date]
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   hidden_points_if_no: []
  #   y_axes: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 63
  #   col: 0
  #   width: 12
  #   height: 6
  # - title: Top Decliners
  #   name: Top Decliners
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_grid
  #   fields: [revenue.rolling_window_prior_window, revenue.rolling_window_current_window,
  #     revenue.rolling_window_window_variance, revenue.reporting_account_name]
  #   filters:
  #     revenue.usage_date: 70 days
  #     revenue.rolling_window: "-NULL"
  #     revenue.window_size: '28'
  #     revenue.rolling_window_current_window: ">=0"
  #     revenue.rolling_window_prior_window: ">=0"
  #     revenue.rolling_window_window_variance: "<=0"
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.service_family: CLOUD
  #   sorts: [revenue.rolling_window_window_variance]
  #   limit: 50
  #   column_limit: 50
  #   dynamic_fields: [{table_calculation: mom, label: MoM, expression: "${revenue.rolling_window_window_variance}/${revenue.rolling_window_prior_window}",
  #       value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
  #       _type_hint: number}]
  #   query_timezone: America/Los_Angeles
  #   show_view_names: false
  #   show_row_numbers: false
  #   transpose: false
  #   truncate_text: false
  #   hide_totals: false
  #   hide_row_totals: false
  #   size_to_fit: true
  #   table_theme: white
  #   limit_displayed_rows: false
  #   enable_conditional_formatting: true
  #   header_text_alignment: left
  #   header_font_size: '12'
  #   rows_font_size: '12'
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   show_sql_query_menu_options: false
  #   column_order: [revenue.reporting_account_name, revenue.rolling_window_current_window,
  #     revenue.rolling_window_prior_window, revenue.rolling_window_window_variance,
  #     mom]
  #   show_totals: true
  #   show_row_totals: true
  #   series_labels:
  #     revenue.rolling_window_prior_window: 28 Days Before That
  #     revenue.rolling_window_current_window: 28 Days Ago
  #     revenue.rolling_window_window_variance: Sales Revenue Growth $
  #     mom: Sales Revenue Growth %
  #   series_column_widths:
  #     revenue.rolling_window: 282
  #     account_meta.customer_name: 298
  #   series_cell_visualizations:
  #     revenue.revenue_net_cn:
  #       is_active: true
  #       palette:
  #         palette_id: 3de02744-c6d0-ba29-2378-81b0f7919624
  #         collection_id: google
  #         custom_colors:
  #         - "#4285F4"
  #         - "#185ABC"
  #   limit_displayed_rows_values:
  #     show_hide: show
  #     first_last: first
  #     num_rows: '2'
  #   header_font_color: "#5F6368"
  #   conditional_formatting: [{type: greater than, value: 0, background_color: '',
  #       font_color: "#137333", color_application: {collection_id: google, palette_id: google-sequential-0},
  #       bold: false, italic: false, strikethrough: false, fields: [revenue.rolling_window_window_variance,
  #         mom]}, {type: less than, value: 0, background_color: '', font_color: "#B31412",
  #       color_application: {collection_id: google, palette_id: google-sequential-0},
  #       bold: false, italic: false, strikethrough: false, fields: [revenue.rolling_window_window_variance,
  #         mom]}]
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   legend_position: center
  #   point_style: none
  #   show_value_labels: false
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: [current_month_to_date]
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   hidden_points_if_no: []
  #   y_axes: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 63
  #   col: 12
  #   width: 12
  #   height: 6
  # - name: " (2)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: <div style="text-align:center;font-size:1.5em"><a href="#growth"><img
  #     src="https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/sort/default/24px.svg">Growth</a></div>
  #   row: 10
  #   col: 13
  #   width: 5
  #   height: 2
  # - name: " (3)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: <div id="growth" style="text-align:center;font-size:1.5em">Growth (28
  #     days vs. Prior 28 Days)</div>
  #   row: 61
  #   col: 0
  #   width: 24
  #   height: 2
  # - name: " (4)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: <div style="text-align:center;font-size:1.5em"><a href="#discounts"><img
  #     src="https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/local_offer/default/24px.svg">Revenue
  #     Walk</a></div>
  #   row: 10
  #   col: 8
  #   width: 5
  #   height: 2
  # - title: Weekly Sales Revenue Trends
  #   name: Weekly Sales Revenue Trends
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_line
  #   fields: [revenue.usage_week, revenue.revenue_toggle]
  #   fill_fields: [revenue.usage_week]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.usage_week: 52 weeks ago for 52 weeks
  #     revenue.service_family: CLOUD
  #   sorts: [revenue.usage_week desc]
  #   limit: 500
  #   query_timezone: America/Los_Angeles
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_view_names: false
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: false
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   limit_displayed_rows: false
  #   legend_position: center
  #   point_style: none
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   y_axes: [{label: Weekly Revenue, orientation: left, series: [{axisId: revenue.revenue_toggle,
  #           id: revenue.revenue_toggle, name: Revenue (Toggle-able)}], showLabels: true,
  #       showValues: true, valueFormat: "[>1000000000]$0.00,,,\\B;[>1000000]$0.00,,\\\
  #         M;$0,\\K", unpinAxis: true, tickDensity: default, tickDensityCustom: 5,
  #       type: linear}]
  #   label_value_format: "[>1000000000]$0.00,,,\\B;[>1000000]$0.00,,\\M;$0.00,\\K"
  #   series_types: {}
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   hidden_fields: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 18
  #   col: 0
  #   width: 24
  #   height: 6
  # - name: " (5)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: |-
  #     <div style="height:2em;font-size:1.5em;text-align:center"><a href="http://go/bhi-bug" target="_blank"><img src="https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/bug_report/default/24px.svg
  #     ">File a Bug</a></div>
  #   row: 10
  #   col: 3
  #   width: 5
  #   height: 2
  # - name: " (6)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: |-
  #     <div style="text-align:center;font-size:1.2em">
  #     Missing the old <a href="https://data.corp.google.com/sites/q1yjy0md0d87/insights__trends/">Account360</a>?
  #     </div>
  #   row: 10
  #   col: 18
  #   width: 6
  #   height: 2
  # - title: 'Revenue Walk: Gross --> Invoice'
  #   name: 'Revenue Walk: Gross --> Invoice'
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_waterfall
  #   fields: [revenue.revenue_invoice, revenue.invoice_revenue_components_gross, revenue.invoice_revenue_components_ft,
  #     revenue.invoice_revenue_components_sud, revenue.invoice_revenue_components_cud,
  #     revenue.invoice_revenue_components_promo, revenue.invoice_revenue_components_reseller_credit,
  #     revenue.invoice_revenue_components_cross_pa_credits_addback]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.usage_year: 1 years
  #     revenue.service_family: CLOUD
  #   limit: 500
  #   dynamic_fields: [{category: table_calculation, expression: "-1 * (${revenue.revenue_gross}+(\n\
  #         \  ${revenue.revenue_promo}+${revenue.revenue_ft}+${revenue.revenue_ft}+${revenue.revenue_reseller}+${revenue.revenue_cud}+${revenue.revenue_sud}+${revenue.revenue_cross_pa_credits}\n\
  #         ) - ${revenue.revenue_invoice})", label: Discounts (Other), value_format: "$0.00,,\\\
  #         M", value_format_name: !!null '', _kind_hint: measure, table_calculation: discounts_other,
  #       _type_hint: number, is_disabled: true}]
  #   filter_expression: "${revenue.usage_date} <= ${max_date.max_date_minus_2_date}"
  #   up_color: "#4285F4"
  #   down_color: "#EA4335"
  #   total_color: "#FBBC04"
  #   show_value_labels: true
  #   show_x_axis_ticks: true
  #   show_x_axis_label: true
  #   x_axis_scale: auto
  #   show_y_axis_labels: false
  #   show_y_axis_ticks: true
  #   y_axis_gridlines: true
  #   label_color: ["#000"]
  #   x_axis_gridlines: false
  #   show_view_names: false
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   limit_displayed_rows: false
  #   legend_position: center
  #   point_style: none
  #   label_density: 25
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: [revenue.revenue_invoice]
  #   y_axes: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 33
  #   col: 6
  #   width: 18
  #   height: 8
  # - title: 'Revenue Walk: Gross --> Sales'
  #   name: 'Revenue Walk: Gross --> Sales'
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_waterfall
  #   fields: [revenue.revenue_net_cn, revenue.sales_revenue_components_gross, revenue.sales_revenue_components_ft,
  #     revenue.sales_revenue_components_sud, revenue.sales_revenue_components_cud,
  #     revenue.sales_revenue_components_promo, revenue.sales_revenue_components_reseller_credit,
  #     revenue.sales_revenue_components_cross_pa_credits_addback, revenue.sales_revenue_components_isv_deduction,
  #     revenue.sales_revenue_components_partner_margin_addback]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.usage_year: 1 years
  #     revenue.service_family: CLOUD
  #   limit: 500
  #   dynamic_fields: [{category: measure, expression: !!null '', label: Revenue (Gross),
  #       value_format: !!null '', value_format_name: !!null '', based_on: revenue.revenue_gross,
  #       _kind_hint: measure, measure: revenue_gross, type: sum, _type_hint: number},
  #     {category: measure, expression: '${revenue.segment}="Corporate" OR ${revenue.region}="PUBLIC
  #         SECTOR"', label: Corp & GPS Partner Margin, value_format: !!null '', value_format_name: !!null '',
  #       based_on: revenue.revenue_reseller, filter_expression: '${revenue.segment}="Corporate"
  #         OR ${revenue.region}="PUBLIC SECTOR"', _kind_hint: measure, measure: corp_gps_partner_margin,
  #       type: sum, _type_hint: number, filters: {}}]
  #   filter_expression: "${revenue.usage_date} <= ${max_date.max_date_minus_2_date}"
  #   up_color: "#4285F4"
  #   down_color: "#EA4335"
  #   total_color: "#FBBC04"
  #   show_value_labels: true
  #   show_x_axis_ticks: true
  #   show_x_axis_label: true
  #   x_axis_scale: auto
  #   show_y_axis_labels: false
  #   show_y_axis_ticks: true
  #   y_axis_gridlines: true
  #   label_color: ["#000"]
  #   x_axis_gridlines: false
  #   show_view_names: false
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   limit_displayed_rows: false
  #   legend_position: center
  #   point_style: none
  #   label_density: 25
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   series_types: {}
  #   hidden_fields: [revenue.revenue_net_cn]
  #   y_axes: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 41
  #   col: 6
  #   width: 18
  #   height: 8
  # - title: List, Gross & Sales Revenue Comparison (Weekly)
  #   name: List, Gross & Sales Revenue Comparison (Weekly)
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: looker_line
  #   fields: [revenue.revenue_net_cn, revenue.revenue_list, revenue.usage_week, revenue.revenue_gross,
  #     revenue.revenue_cud, revenue.revenue_promo, revenue.revenue_bmod]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.service_family: CLOUD
  #     revenue.usage_month: 12 months
  #   sorts: [revenue.usage_week desc]
  #   limit: 500
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_view_names: false
  #   show_y_axis_labels: false
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: false
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: ''
  #   limit_displayed_rows: false
  #   legend_position: center
  #   point_style: none
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   y_axes: [{label: '', orientation: left, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: Revenue (Sales)}, {axisId: revenue.revenue_list,
  #           id: revenue.revenue_list, name: "[go/listrev] Revenue (List)"}, {axisId: revenue.revenue_gross,
  #           id: revenue.revenue_gross, name: Revenue (Gross)}, {axisId: revenue.revenue_cud,
  #           id: revenue.revenue_cud, name: Revenue (Committed Usage Discount)}, {
  #           axisId: revenue.revenue_promo, id: revenue.revenue_promo, name: Revenue
  #             (Promo)}, {axisId: revenue.revenue_bmod, id: revenue.revenue_bmod, name: Revenue
  #             (Billing Modifications)}], showLabels: false, showValues: true, minValue: !!null '',
  #       valueFormat: "[>=1000000000]$0.0,,,\\B;[>1000000]$0.0,,\\M;$0.0,\\K", unpinAxis: true,
  #       tickDensity: default, tickDensityCustom: 5, type: linear}]
  #   hidden_series: []
  #   label_value_format: "[>1000000000]$0.00,,,\\B;[>1000000]$0.0,,\\M;$0.0,\\K"
  #   series_types: {}
  #   label_color: []
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: true
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   up_color: "#4285F4"
  #   down_color: "#EA4335"
  #   total_color: "#FBBC04"
  #   defaults_version: 1
  #   hidden_fields: []
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 49
  #   col: 0
  #   width: 24
  #   height: 12
  # - title: Most Recent Revenue Data
  #   name: Most Recent Revenue Data
  #   model: cloud_sales_bi
  #   explore: revenue
  #   type: single_value
  #   fields: [revenue.usage_date, revenue.revenue_net_cn]
  #   fill_fields: [revenue.usage_date]
  #   filters:
  #     revenue.product_line: "-Looker,-Looker Data Platform SaaS"
  #     revenue.service_family: CLOUD
  #     revenue.usage_date: 30 days
  #   sorts: [revenue.usage_date desc]
  #   limit: 500
  #   dynamic_fields: [{category: table_calculation, expression: "(${revenue.revenue_toggle}-offset(${revenue.revenue_toggle},1))/offset(${revenue.revenue_toggle},1)",
  #       label: YoY %, value_format: !!null '', value_format_name: percent_0, _kind_hint: measure,
  #       table_calculation: yoy, _type_hint: number, is_disabled: true}, {category: table_calculation,
  #       expression: "${revenue.revenue_net_cn} > 0.5 * median(${revenue.revenue_net_cn})",
  #       label: 'Is valid row?', value_format: "$0.00,\\K", value_format_name: !!null '',
  #       _kind_hint: measure, table_calculation: is_valid_row, _type_hint: yesno}]
  #   query_timezone: America/Los_Angeles
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: false
  #   comparison_type: change
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   enable_conditional_formatting: false
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_view_names: false
  #   y_axes: [{label: '', orientation: left, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}],
  #       showLabels: true, showValues: true, unpinAxis: true, tickDensity: default,
  #       tickDensityCustom: 5, type: linear}]
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: normal
  #   limit_displayed_rows: false
  #   legend_position: center
  #   series_types: {}
  #   point_style: none
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   show_null_points: true
  #   interpolation: linear
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: false
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   defaults_version: 1
  #   hidden_fields: [revenue.revenue_net_cn]
  #   hidden_points_if_no: [is_valid_row]
  #   note_state: collapsed
  #   note_display: hover
  #   note_text: Most recent date with complete revenue numbers
  #   listen:
  #     SFDC Account ID: revenue.sfdc_account_id
  #     Product Group: revenue.product_group
  #     GCP Revenue Source: revenue.gcp_revenue_source
  #     Billing Account ID: revenue.billing_account_id
  #     Logical Product (L3): revenue.logical_product_l3
  #     SKU ID: revenue.sku_id
  #     Sub-Account Name: vector_customers.account_name
  #     Is Data Analytics? (Yes / No): revenue.is_data_analytics
  #     Revenue Granularity: revenue.revenue_granularity
  #     Region: revenue.region
  #     EMEA Geocluster: revenue.geocluster
  #     NORTHAM Sector: revenue.sector
  #     Sub Region: revenue.sub_region
  #     Micro Region: revenue.micro_region
  #     NAL Cluster: revenue.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: revenue.nal_name
  #     Reporting Account Name: revenue.reporting_account_name
  #     Segment: revenue.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 4
  #   col: 3
  #   width: 7
  #   height: 3
  # - title: QTD (GCP Core + Looker + Apigee)
  #   name: QTD (GCP Core + Looker + Apigee)
  #   model: cloud_sales_bi
  #   explore: gcp_forecast_quotas_transformed
  #   type: single_value
  #   fields: [gcp_forecast_quotas_transformed.revenue_net_cn]
  #   filters:
  #     gcp_forecast_quotas_transformed.calendar_quarter: this quarter
  #   limit: 500
  #   column_limit: 50
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: false
  #   comparison_type: value
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   enable_conditional_formatting: true
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   show_view_names: false
  #   show_row_numbers: false
  #   transpose: false
  #   truncate_text: false
  #   hide_totals: false
  #   hide_row_totals: false
  #   size_to_fit: true
  #   table_theme: white
  #   limit_displayed_rows: false
  #   header_text_alignment: center
  #   header_font_size: '12'
  #   rows_font_size: '17'
  #   show_sql_query_menu_options: false
  #   column_order: [gcp_forecast_quotas_transformed.quota_revenue, gcp_forecast_quotas_transformed.revenue_net_cn,
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast, gcp_forecast_quotas_transformed.total_called_revenue_forecast_wow,
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue, gcp_forecast_quotas_transformed.total_modeled_revenue_forecast,
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast_wow, gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue]
  #   show_totals: true
  #   show_row_totals: true
  #   series_labels:
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue: Called Forecast
  #       vs. Quota
  #     revenue.revenue_net_cn: Sales Revenue Actuals
  #     gcp_forecast_quotas_transformed.quota_revenue: Quota
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast: Called Forecast
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast: BI Forecast
  #     gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue: Override
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast_wow: BI Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast_wow: Called Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast: BI Forecast
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast_wow: BI Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.revenue_net_cn: Actuals
  #   series_cell_visualizations:
  #     revenue.revenue_net_cn:
  #       is_active: false
  #   series_text_format:
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast:
  #       align: center
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue:
  #       align: center
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast:
  #       align: center
  #     gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue:
  #       align: center
  #     called_forecast_wow:
  #       align: center
  #     bi_forecast_wow:
  #       align: center
  #     gcp_forecast_quotas_transformed.quota_revenue:
  #       align: center
  #     revenue.revenue_net_cn:
  #       align: center
  #   header_font_color: "#E8EAED"
  #   header_background_color: "#4285F4"
  #   conditional_formatting: [{type: less than, value: 0, background_color: '', font_color: "#EA4335",
  #       color_application: {collection_id: google, palette_id: google-diverging-0,
  #         options: {constraints: {min: {type: minimum}, mid: {type: number, value: 0},
  #             max: {type: maximum}}, mirror: true, reverse: false, stepped: false}},
  #       bold: false, italic: false, strikethrough: false, fields: []}, {type: greater
  #         than, value: 0, background_color: '', font_color: "#34A853", color_application: {
  #         collection_id: google, palette_id: google-diverging-0, options: {constraints: {
  #             min: {type: minimum}, mid: {type: number, value: 0}, max: {type: maximum}},
  #           mirror: true, reverse: false, stepped: false}}, bold: false, italic: false,
  #       strikethrough: false, fields: []}]
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: normal
  #   legend_position: center
  #   point_style: circle_outline
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: true
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   y_axes: [{label: '', orientation: bottom, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}, {
  #           axisId: gcp_forecast_quotas_transformed.quota_revenue, id: gcp_forecast_quotas_transformed.quota_revenue,
  #           name: Quota}, {axisId: forecast, id: forecast, name: Forecast}], showLabels: true,
  #       showValues: false, unpinAxis: false, tickDensity: default, tickDensityCustom: 5,
  #       type: linear}]
  #   series_types: {}
  #   series_colors:
  #     forecast: "#EA4335"
  #     gcp_forecast_quotas_transformed.quota_revenue: "#FBBC04"
  #   defaults_version: 1
  #   hidden_fields: []
  #   listen:
  #     Region: gcp_forecast_quotas_transformed.region
  #     EMEA Geocluster: gcp_forecast_quotas_transformed.geocluster
  #     NORTHAM Sector: gcp_forecast_quotas_transformed.sector
  #     Sub Region: gcp_forecast_quotas_transformed.sub_region
  #     Micro Region: gcp_forecast_quotas_transformed.micro_region
  #     NAL Cluster: gcp_forecast_quotas_transformed.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: gcp_forecast_quotas_transformed.nal_name
  #     Reporting Account Name: gcp_forecast_quotas_transformed.reporting_account_name
  #     Segment: vector_customers.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 0
  #   col: 10
  #   width: 7
  #   height: 4
  # - name: " (7)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: <div style="font-size:2em;text-align:center">All other tiles represent
  #     <b>GCP Core only</b> and do not include Looker or Apigee Revenue.</div>
  #   row: 4
  #   col: 10
  #   width: 14
  #   height: 3
  # - name: " (8)"
  #   type: text
  #   title_text: ''
  #   subtitle_text: ''
  #   body_text: |-
  #     <div style="font-size:1.5em"><img style="float:left" height=100 src="https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/west/default/24px.svg">
  #     These tiles represent <b>GCP Core + Looker + Apigee</b> and match values on <a href="http://go/bhi">go/bhi</a>.</div>
  #   row: 0
  #   col: 17
  #   width: 7
  #   height: 4
  # - title: YTD (GCP Core + Looker + Apigee)
  #   name: YTD (GCP Core + Looker + Apigee)
  #   model: cloud_sales_bi
  #   explore: gcp_forecast_quotas_transformed
  #   type: single_value
  #   fields: [gcp_forecast_quotas_transformed.revenue_net_cn]
  #   filters:
  #     gcp_forecast_quotas_transformed.calendar_quarter: this year
  #   limit: 500
  #   column_limit: 50
  #   custom_color_enabled: true
  #   show_single_value_title: true
  #   show_comparison: false
  #   comparison_type: value
  #   comparison_reverse_colors: false
  #   show_comparison_label: true
  #   enable_conditional_formatting: true
  #   conditional_formatting_include_totals: false
  #   conditional_formatting_include_nulls: false
  #   show_view_names: false
  #   show_row_numbers: false
  #   transpose: false
  #   truncate_text: false
  #   hide_totals: false
  #   hide_row_totals: false
  #   size_to_fit: true
  #   table_theme: white
  #   limit_displayed_rows: false
  #   header_text_alignment: center
  #   header_font_size: '12'
  #   rows_font_size: '17'
  #   show_sql_query_menu_options: false
  #   column_order: [gcp_forecast_quotas_transformed.quota_revenue, gcp_forecast_quotas_transformed.revenue_net_cn,
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast, gcp_forecast_quotas_transformed.total_called_revenue_forecast_wow,
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue, gcp_forecast_quotas_transformed.total_modeled_revenue_forecast,
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast_wow, gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue]
  #   show_totals: true
  #   show_row_totals: true
  #   series_labels:
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue: Called Forecast
  #       vs. Quota
  #     revenue.revenue_net_cn: Sales Revenue Actuals
  #     gcp_forecast_quotas_transformed.quota_revenue: Quota
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast: Called Forecast
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast: BI Forecast
  #     gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue: Override
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast_wow: BI Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast_wow: Called Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast: BI Forecast
  #     gcp_forecast_quotas_transformed.total_modeled_revenue_forecast_wow: BI Forecast
  #       WoW
  #     gcp_forecast_quotas_transformed.revenue_net_cn: Actuals
  #   series_cell_visualizations:
  #     revenue.revenue_net_cn:
  #       is_active: false
  #   series_text_format:
  #     gcp_forecast_quotas_transformed.total_called_revenue_forecast:
  #       align: center
  #     gcp_forecast_quotas_transformed.forecast_vs_quota_called_revenue:
  #       align: center
  #     gcp_account_forecast_nal_rollup.total_modeled_revenue_forecast:
  #       align: center
  #     gcp_forecast_quotas_transformed.bi_forecast_vs_called_forecast_revenue:
  #       align: center
  #     called_forecast_wow:
  #       align: center
  #     bi_forecast_wow:
  #       align: center
  #     gcp_forecast_quotas_transformed.quota_revenue:
  #       align: center
  #     revenue.revenue_net_cn:
  #       align: center
  #   header_font_color: "#E8EAED"
  #   header_background_color: "#4285F4"
  #   conditional_formatting: [{type: less than, value: 0, background_color: '', font_color: "#EA4335",
  #       color_application: {collection_id: google, palette_id: google-diverging-0,
  #         options: {constraints: {min: {type: minimum}, mid: {type: number, value: 0},
  #             max: {type: maximum}}, mirror: true, reverse: false, stepped: false}},
  #       bold: false, italic: false, strikethrough: false, fields: []}, {type: greater
  #         than, value: 0, background_color: '', font_color: "#34A853", color_application: {
  #         collection_id: google, palette_id: google-diverging-0, options: {constraints: {
  #             min: {type: minimum}, mid: {type: number, value: 0}, max: {type: maximum}},
  #           mirror: true, reverse: false, stepped: false}}, bold: false, italic: false,
  #       strikethrough: false, fields: []}]
  #   x_axis_gridlines: false
  #   y_axis_gridlines: true
  #   show_y_axis_labels: true
  #   show_y_axis_ticks: true
  #   y_axis_tick_density: default
  #   y_axis_tick_density_custom: 5
  #   show_x_axis_label: true
  #   show_x_axis_ticks: true
  #   y_axis_scale_mode: linear
  #   x_axis_reversed: false
  #   y_axis_reversed: false
  #   plot_size_by_field: false
  #   trellis: ''
  #   stacking: normal
  #   legend_position: center
  #   point_style: circle_outline
  #   show_value_labels: true
  #   label_density: 25
  #   x_axis_scale: auto
  #   y_axis_combined: true
  #   ordering: none
  #   show_null_labels: false
  #   show_totals_labels: true
  #   show_silhouette: false
  #   totals_color: "#808080"
  #   y_axes: [{label: '', orientation: bottom, series: [{axisId: revenue.revenue_net_cn,
  #           id: revenue.revenue_net_cn, name: 'Revenue (Net, Channel Neutral)'}, {
  #           axisId: gcp_forecast_quotas_transformed.quota_revenue, id: gcp_forecast_quotas_transformed.quota_revenue,
  #           name: Quota}, {axisId: forecast, id: forecast, name: Forecast}], showLabels: true,
  #       showValues: false, unpinAxis: false, tickDensity: default, tickDensityCustom: 5,
  #       type: linear}]
  #   series_types: {}
  #   series_colors:
  #     forecast: "#EA4335"
  #     gcp_forecast_quotas_transformed.quota_revenue: "#FBBC04"
  #   defaults_version: 1
  #   hidden_fields: []
  #   listen:
  #     Region: gcp_forecast_quotas_transformed.region
  #     EMEA Geocluster: gcp_forecast_quotas_transformed.geocluster
  #     NORTHAM Sector: gcp_forecast_quotas_transformed.sector
  #     Sub Region: gcp_forecast_quotas_transformed.sub_region
  #     Micro Region: gcp_forecast_quotas_transformed.micro_region
  #     NAL Cluster: gcp_forecast_quotas_transformed.nal_cluster
  #     NAL Subcluster: vector_customers.nal_sub_cluster
  #     NAL Name: gcp_forecast_quotas_transformed.nal_name
  #     Reporting Account Name: gcp_forecast_quotas_transformed.reporting_account_name
  #     Segment: vector_customers.segment
  #     Digital Native vs. Traditional: vector_customers.is_digital_native
  #     Is ISV? (Yes / No): vector_customers.is_isv
  #   row: 0
  #   col: 3
  #   width: 7
  #   height: 4









  filters:
  - name: Region
    title: Region
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options:
      - NORTHAM
      - EMEA
      - LATAM
      - APAC
      - JAPAN
      - PUBLIC SECTOR
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.region
  - name: EMEA Geocluster
    title: EMEA Geocluster
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options:
      - Industry
      - North
      - South
      - UK/IE
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.geocluster
  - name: NORTHAM Sector
    title: NORTHAM Sector
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options:
      - GEO
      - VERTICAL
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.sector
  - name: Sub Region
    title: Sub Region
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: [Region]
    field: revenue.sub_region
  - name: Micro Region
    title: Micro Region
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.micro_region
  - name: NAL Cluster
    title: NAL Cluster
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: dropdown_menu
      display: inline
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.nal_cluster
  # - name: NAL Subcluster
  #   title: NAL Subcluster
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: tag_list
  #     display: popover
  #     options: []
  #   model: hdeist-test-model
  #   explore: revenue
  #   listens_to_filters: []
  #   field: vector_customers.nal_sub_cluster
  - name: NAL Name
    title: NAL Name
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: advanced
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.nal_name
  # - name: Reporting Account Name
  #   title: Reporting Account Name
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: tag_list
  #     display: popover
  #     options: []
  #   model: hdeist-test-model
  #   explore: vector_customers
  #   listens_to_filters: []
  #   field: vector_customers.reporting_account_name
  # - name: Sub-Account Name
  #   title: Sub-Account Name
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: tag_list
  #     display: popover
  #     options: []
  #   model: cloud_sales_bi
  #   explore: revenue
  #   listens_to_filters: [Reporting Account Name]
  #   field: vector_customers.account_name
  - name: SFDC Account ID
    title: SFDC Account ID
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: advanced
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: [Reporting Account Name]
    field: revenue.sfdc_account_id
  - name: Billing Account ID
    title: Billing Account ID
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: advanced
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: [Reporting Account Name]
    field: revenue.billing_account_id
  - name: Product Group
    title: Product Group
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: tag_list
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.product_group
  - name: Logical Product (L3)
    title: Logical Product (L3)
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: advanced
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.logical_product_l3
  - name: Is Data Analytics? (Yes / No)
    title: Is Data Analytics? (Yes / No)
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: checkboxes
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.is_data_analytics
  - name: GCP Revenue Source
    title: GCP Revenue Source
    type: field_filter
    default_value: ''
    allow_multiple_values: true
    required: false
    ui_config:
      type: checkboxes
      display: popover
      options: []
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.gcp_revenue_source
  - name: Segment
    title: Segment
    type: field_filter
    default_value: "-Scaled"
    allow_multiple_values: true
    required: false
    ui_config:
      type: advanced
      display: popover
      options:
      - Corporate
      - Enterprise
      - Select
    model: hdeist-test-model
    explore: revenue
    listens_to_filters: []
    field: revenue.segment
  # - name: Digital Native vs. Traditional
  #   title: Digital Native vs. Traditional
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: button_group
  #     display: inline
  #     options: []
  #   model: cloud_sales_bi
  #   explore: revenue
  #   listens_to_filters: []
  #   field: vector_customers.is_digital_native
  # - name: SKU ID
  #   title: SKU ID
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: advanced
  #     display: popover
  #     options: []
  #   model: cloud_sales_bi
  #   explore: revenue
  #   listens_to_filters: []
  #   field: revenue.sku_id
  # - name: Revenue Granularity
  #   title: Revenue Granularity
  #   type: field_filter
  #   default_value: Non-Split
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: dropdown_menu
  #     display: inline
  #     options: []
  #   model: hdeist-test-model
  #   explore: revenue
  #   listens_to_filters: []
  #   field: revenue.revenue_granularity
  # - name: Is ISV? (Yes / No)
  #   title: Is ISV? (Yes / No)
  #   type: field_filter
  #   default_value: ''
  #   allow_multiple_values: true
  #   required: false
  #   ui_config:
  #     type: advanced
  #     display: inline
  #     options: []
  #   model: cloud_sales_bi
  #   explore: vector_customers
  #   listens_to_filters: []
  #   field: vector_customers.is_isv
