from Core.Metadata.Columns.ColumnMetadata import ColumnMetadata
from Core.Metadata.Columns.ColumnType import ColumnType

from GoogleTuring.Infrastructure.Domain.GoogleFieldsMetadata import GoogleFieldsMetadata


class GoogleMetadataColumnsPool:
    # Structure fields and parameters
    # Object names, IDs, statuses, and dates
    accent_color = ColumnMetadata(GoogleFieldsMetadata.accent_color.name, ColumnType.text)

    account_currency_code = ColumnMetadata(GoogleFieldsMetadata.account_currency_code.name, ColumnType.text)

    account_time_zone = ColumnMetadata(GoogleFieldsMetadata.account_time_zone.name, ColumnType.text)

    ad_group_status = ColumnMetadata(GoogleFieldsMetadata.ad_group_status.name, ColumnType.text)

    ad_strength_info = ColumnMetadata(GoogleFieldsMetadata.ad_strength_info.name, ColumnType.text)

    ad_type = ColumnMetadata(GoogleFieldsMetadata.ad_type.name, ColumnType.text)

    allow_flexible_color = ColumnMetadata(GoogleFieldsMetadata.allow_flexible_color.name, ColumnType.text)

    automated = ColumnMetadata(GoogleFieldsMetadata.automated.name, ColumnType.text)

    base_ad_group_id = ColumnMetadata(GoogleFieldsMetadata.base_ad_group_id.name, ColumnType.text)

    base_campaignId = ColumnMetadata(GoogleFieldsMetadata.base_campaignId.name, ColumnType.text)

    business_name = ColumnMetadata(GoogleFieldsMetadata.business_name.name, ColumnType.text)

    call_only_phone_number = ColumnMetadata(GoogleFieldsMetadata.call_only_phone_number.name, ColumnType.text)

    call_to_action_text = ColumnMetadata(GoogleFieldsMetadata.call_to_action_text.name, ColumnType.text)

    campaign_id = ColumnMetadata(GoogleFieldsMetadata.campaign_id.name, ColumnType.text)

    campaign_name = ColumnMetadata(GoogleFieldsMetadata.campaign_name.name, ColumnType.text)

    campaign_status = ColumnMetadata(GoogleFieldsMetadata.campaign_status.name, ColumnType.text)

    combined_approval_status = ColumnMetadata(GoogleFieldsMetadata.combined_approval_status.name,
                                              ColumnType.text)

    conversion_adjustment = ColumnMetadata(GoogleFieldsMetadata.conversion_adjustment.name, ColumnType.text)

    creative_destination_url = ColumnMetadata(GoogleFieldsMetadata.creative_destination_url.name,
                                              ColumnType.text)

    creative_final_app_urls = ColumnMetadata(GoogleFieldsMetadata.creative_final_app_urls.name, ColumnType.text)

    creative_final_mobile_urls = ColumnMetadata(GoogleFieldsMetadata.creative_final_mobile_urls.name,
                                                ColumnType.text)

    creative_final_urls = ColumnMetadata(GoogleFieldsMetadata.creative_final_urls.name, ColumnType.text)

    creative_final_url_suffix = ColumnMetadata(GoogleFieldsMetadata.creative_final_url_suffix.name,
                                               ColumnType.text)

    creative_tracking_url_template = ColumnMetadata(GoogleFieldsMetadata.creative_tracking_url_template.name,
                                                    ColumnType.text)

    creative_url_custom_parameters = ColumnMetadata(GoogleFieldsMetadata.creative_url_custom_parameters.name,
                                                    ColumnType.text)

    customer_descriptive_name = ColumnMetadata(GoogleFieldsMetadata.customer_descriptive_name.name,
                                               ColumnType.text)

    description = ColumnMetadata(GoogleFieldsMetadata.description.name, ColumnType.text)

    description_1 = ColumnMetadata(GoogleFieldsMetadata.description_1.name, ColumnType.text)

    description_2 = ColumnMetadata(GoogleFieldsMetadata.description_2.name, ColumnType.text)

    device_preference = ColumnMetadata(GoogleFieldsMetadata.device_preference.name, ColumnType.text)

    display_url = ColumnMetadata(GoogleFieldsMetadata.display_url.name, ColumnType.text)

    enhanced_display_creative_landscape_logo_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.enhanced_display_creative_landscape_logo_image_media_id.name, ColumnType.text)

    enhanced_display_creative_logo_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.enhanced_display_creative_logo_image_media_id.name,
        ColumnType.text)

    enhanced_display_creative_marketing_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.enhanced_display_creative_marketing_image_media_id.name,
        ColumnType.text)

    enhanced_display_creative_marketing_image_square_media_id = ColumnMetadata(
        GoogleFieldsMetadata.enhanced_display_creative_marketing_image_square_media_id.name, ColumnType.text)

    expanded_dynamic_search_creative_description_2 = ColumnMetadata(
        GoogleFieldsMetadata.expanded_dynamic_search_creative_description_2.name,
        ColumnType.text)

    expanded_text_ad_description_2 = ColumnMetadata(GoogleFieldsMetadata.expanded_text_ad_description_2.name,
                                                    ColumnType.text)

    expanded_text_ad_headline_part_3 = ColumnMetadata(GoogleFieldsMetadata.expanded_text_ad_headline_part_3.name,
                                                      ColumnType.text)

    external_customer_id = ColumnMetadata(GoogleFieldsMetadata.external_customer_id.name, ColumnType.text)

    format_setting = ColumnMetadata(GoogleFieldsMetadata.format_setting.name, ColumnType.text)

    gmail_creative_header_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.gmail_creative_header_image_media_id.name, ColumnType.text)

    gmail_creative_logo_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.gmail_creative_logo_image_media_id.name, ColumnType.text)

    gmail_creative_marketing_image_media_id = ColumnMetadata(
        GoogleFieldsMetadata.gmail_creative_marketing_image_media_id.name, ColumnType.text)

    gmail_teaser_business_name = ColumnMetadata(GoogleFieldsMetadata.gmail_teaser_business_name.name,
                                                ColumnType.text)

    gmail_teaser_description = ColumnMetadata(GoogleFieldsMetadata.gmail_teaser_description.name,
                                              ColumnType.text)

    gmail_teaser_headline = ColumnMetadata(GoogleFieldsMetadata.gmail_teaser_headline.name, ColumnType.text)

    headline = ColumnMetadata(GoogleFieldsMetadata.headline.name, ColumnType.text)

    headline_part_1 = ColumnMetadata(GoogleFieldsMetadata.headline_part_1.name, ColumnType.text)

    headline_part_2 = ColumnMetadata(GoogleFieldsMetadata.headline_part_2.name, ColumnType.text)

    ad_name = ColumnMetadata(GoogleFieldsMetadata.ad_name.name, ColumnType.text)

    id = ColumnMetadata(GoogleFieldsMetadata.id.name, ColumnType.text)

    ad_id = ColumnMetadata(GoogleFieldsMetadata.ad_id.name, ColumnType.text)

    image_ad_url = ColumnMetadata(GoogleFieldsMetadata.image_ad_url.name, ColumnType.text)

    image_creative_image_height = ColumnMetadata(GoogleFieldsMetadata.image_creative_image_height.name,
                                                 ColumnType.text)

    image_creative_image_width = ColumnMetadata(GoogleFieldsMetadata.image_creative_image_width.name,
                                                ColumnType.text)

    image_creative_mime_type = ColumnMetadata(GoogleFieldsMetadata.image_creative_mime_type.name,
                                              ColumnType.text)

    image_creative_name = ColumnMetadata(GoogleFieldsMetadata.image_creative_name.name, ColumnType.text)

    is_negative = ColumnMetadata(GoogleFieldsMetadata.is_negative.name, ColumnType.text)

    label_ids = ColumnMetadata(GoogleFieldsMetadata.label_ids.name, ColumnType.text)

    labels = ColumnMetadata(GoogleFieldsMetadata.labels.name, ColumnType.text)

    long_headline = ColumnMetadata(GoogleFieldsMetadata.long_headline.name, ColumnType.text)

    main_color = ColumnMetadata(GoogleFieldsMetadata.main_color.name, ColumnType.text)

    marketing_image_call_to_action_text = ColumnMetadata(
        GoogleFieldsMetadata.marketing_image_call_to_action_text.name, ColumnType.text)

    marketing_image_call_to_action_text_color = ColumnMetadata(
        GoogleFieldsMetadata.marketing_image_call_to_action_text_color.name, ColumnType.text)

    marketing_image_description = ColumnMetadata(GoogleFieldsMetadata.marketing_image_description.name,
                                                 ColumnType.text)

    marketing_image_headline = ColumnMetadata(GoogleFieldsMetadata.marketing_image_headline.name,
                                              ColumnType.text)

    multi_asset_responsive_display_ad_accent_color = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_accent_color.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_allow_flexible_color = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_allow_flexible_color.name, ColumnType.text)

    multi_asset_responsive_display_ad_business_name = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_business_name.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_call_to_action_text = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_call_to_action_text.name, ColumnType.text)

    multi_asset_responsive_display_ad_descriptions = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_descriptions.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_dynamic_settings_price_prefix = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_dynamic_settings_price_prefix.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_dynamic_settings_promo_text = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_dynamic_settings_promo_text.name, ColumnType.text)

    multi_asset_responsive_display_ad_format_setting = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_format_setting.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_headlines = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_headlines.name, ColumnType.text)

    multi_asset_responsive_display_ad_landscape_logo_images = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_landscape_logo_images.name, ColumnType.text)

    multi_asset_responsive_display_ad_logo_images = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_logo_images.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_long_headline = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_long_headline.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_main_color = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_main_color.name, ColumnType.text)

    multi_asset_responsive_display_ad_marketing_images = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_marketing_images.name,
        ColumnType.text)

    multi_asset_responsive_display_ad_square_marketing_images = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_square_marketing_images.name, ColumnType.text)

    multi_asset_responsive_display_ad_you_tube_videos = ColumnMetadata(
        GoogleFieldsMetadata.multi_asset_responsive_display_ad_you_tube_videos.name,
        ColumnType.text)

    path_1 = ColumnMetadata(GoogleFieldsMetadata.path_1.name, ColumnType.text)

    path_2 = ColumnMetadata(GoogleFieldsMetadata.path_2.name, ColumnType.text)

    policy_summary = ColumnMetadata(GoogleFieldsMetadata.policy_summary.name, ColumnType.text)

    price_prefix = ColumnMetadata(GoogleFieldsMetadata.price_prefix.name, ColumnType.text)

    promo_text = ColumnMetadata(GoogleFieldsMetadata.promo_text.name, ColumnType.text)

    responsive_search_ad_descriptions = ColumnMetadata(
        GoogleFieldsMetadata.responsive_search_ad_descriptions.name, ColumnType.text)

    responsive_search_ad_headlines = ColumnMetadata(GoogleFieldsMetadata.responsive_search_ad_headlines.name,
                                                    ColumnType.text)

    responsive_search_ad_path_1 = ColumnMetadata(GoogleFieldsMetadata.responsive_search_ad_path_1.name,
                                                 ColumnType.text)

    responsive_search_ad_path_2 = ColumnMetadata(GoogleFieldsMetadata.responsive_search_ad_path_2.name,
                                                 ColumnType.text)

    short_headline = ColumnMetadata(GoogleFieldsMetadata.short_headline.name, ColumnType.text)

    status = ColumnMetadata(GoogleFieldsMetadata.status.name, ColumnType.text)

    system_managed_entity_source = ColumnMetadata(GoogleFieldsMetadata.system_managed_entity_source.name,
                                                  ColumnType.text)

    universal_app_ad_descriptions = ColumnMetadata(GoogleFieldsMetadata.universal_app_ad_descriptions.name,
                                                   ColumnType.text)

    universal_app_ad_headlines = ColumnMetadata(GoogleFieldsMetadata.universal_app_ad_headlines.name,
                                                ColumnType.text)

    universal_app_ad_html_5_media_bundles = ColumnMetadata(
        GoogleFieldsMetadata.universal_app_ad_html_5_media_bundles.name, ColumnType.text)

    universal_app_ad_images = ColumnMetadata(GoogleFieldsMetadata.universal_app_ad_images.name, ColumnType.text)

    universal_app_ad_mandatory_ad_text = ColumnMetadata(
        GoogleFieldsMetadata.universal_app_ad_mandatory_ad_text.name, ColumnType.text)

    universal_app_ad_you_tube_videos = ColumnMetadata(GoogleFieldsMetadata.universal_app_ad_you_tube_videos.name,
                                                      ColumnType.text)

    account_descriptive_name = ColumnMetadata(GoogleFieldsMetadata.account_descriptive_name.name,
                                              ColumnType.text)

    ad_group_desktop_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.ad_group_desktop_bid_modifier.name,
                                                   ColumnType.text)

    ad_group_id = ColumnMetadata(GoogleFieldsMetadata.ad_group_id.name, ColumnType.text)

    ad_group_mobile_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.ad_group_mobile_bid_modifier.name,
                                                  ColumnType.text)

    ad_group_name = ColumnMetadata(GoogleFieldsMetadata.ad_group_name.name, ColumnType.text)

    ad_group_tablet_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.ad_group_tablet_bid_modifier.name,
                                                  ColumnType.text)

    ad_group_type = ColumnMetadata(GoogleFieldsMetadata.ad_group_type.name, ColumnType.text)

    ad_rotation_mode = ColumnMetadata(GoogleFieldsMetadata.ad_rotation_mode.name, ColumnType.text)

    bidding_strategy_id = ColumnMetadata(GoogleFieldsMetadata.bidding_strategy_id.name, ColumnType.text)

    bidding_strategy_name = ColumnMetadata(GoogleFieldsMetadata.bidding_strategy_name.name, ColumnType.text)

    bidding_strategy_source = ColumnMetadata(GoogleFieldsMetadata.bidding_strategy_source.name, ColumnType.text)

    bidding_strategy_type = ColumnMetadata(GoogleFieldsMetadata.bidding_strategy_type.name, ColumnType.text)

    content_bid_criterion_type_group = ColumnMetadata(GoogleFieldsMetadata.content_bid_criterion_type_group.name,
                                                      ColumnType.text)

    cpc_bid = ColumnMetadata(GoogleFieldsMetadata.cpc_bid.name, ColumnType.text)

    cpm_bid = ColumnMetadata(GoogleFieldsMetadata.cpm_bid.name, ColumnType.text)

    cpv_bid = ColumnMetadata(GoogleFieldsMetadata.cpv_bid.name, ColumnType.text)

    effective_target_roas = ColumnMetadata(GoogleFieldsMetadata.effective_target_roas.name, ColumnType.text)

    effective_target_roas_source = ColumnMetadata(GoogleFieldsMetadata.effective_target_roas_source.name,
                                                  ColumnType.text)

    enhanced_cpc_enabled = ColumnMetadata(GoogleFieldsMetadata.enhanced_cpc_enabled.name, ColumnType.text)

    final_url_suffix = ColumnMetadata(GoogleFieldsMetadata.final_url_suffix.name, ColumnType.text)

    target_cpa = ColumnMetadata(GoogleFieldsMetadata.target_cpa.name, ColumnType.text)

    target_cpa_bid_source = ColumnMetadata(GoogleFieldsMetadata.target_cpa_bid_source.name, ColumnType.text)

    tracking_url_template = ColumnMetadata(GoogleFieldsMetadata.tracking_url_template.name, ColumnType.text)

    url_custom_parameters = ColumnMetadata(GoogleFieldsMetadata.url_custom_parameters.name, ColumnType.text)

    advertising_channel_sub_type = ColumnMetadata(GoogleFieldsMetadata.advertising_channel_sub_type.name,
                                                  ColumnType.text)

    advertising_channel_type = ColumnMetadata(GoogleFieldsMetadata.advertising_channel_type.name,
                                              ColumnType.text)

    amount = ColumnMetadata(GoogleFieldsMetadata.amount.name, ColumnType.text)

    budget_id = ColumnMetadata(GoogleFieldsMetadata.budget_id.name, ColumnType.text)

    campaign_desktop_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.campaign_desktop_bid_modifier.name,
                                                   ColumnType.text)

    campaign_group_id = ColumnMetadata(GoogleFieldsMetadata.campaign_group_id.name, ColumnType.text)

    campaign_mobile_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.campaign_mobile_bid_modifier.name,
                                                  ColumnType.text)

    campaign_tablet_bid_modifier = ColumnMetadata(GoogleFieldsMetadata.campaign_tablet_bid_modifier.name,
                                                  ColumnType.text)

    campaign_trial_type = ColumnMetadata(GoogleFieldsMetadata.campaign_trial_type.name, ColumnType.text)

    end_date = ColumnMetadata(GoogleFieldsMetadata.end_date.name, ColumnType.text)

    has_recommended_budget = ColumnMetadata(GoogleFieldsMetadata.has_recommended_budget.name, ColumnType.text)

    is_budget_explicitly_shared = ColumnMetadata(GoogleFieldsMetadata.is_budget_explicitly_shared.name,
                                                 ColumnType.text)

    maximize_conversion_value_target_roas = ColumnMetadata(
        GoogleFieldsMetadata.maximize_conversion_value_target_roas.name, ColumnType.text)

    period = ColumnMetadata(GoogleFieldsMetadata.period.name, ColumnType.text)

    recommended_budget_amount = ColumnMetadata(GoogleFieldsMetadata.recommended_budget_amount.name,
                                               ColumnType.text)

    serving_status = ColumnMetadata(GoogleFieldsMetadata.serving_status.name, ColumnType.text)

    start_date = ColumnMetadata(GoogleFieldsMetadata.start_date.name, ColumnType.text)

    total_amount = ColumnMetadata(GoogleFieldsMetadata.total_amount.name, ColumnType.text)

    approval_status = ColumnMetadata(GoogleFieldsMetadata.approval_status.name, ColumnType.text)

    cpc_bid_source = ColumnMetadata(GoogleFieldsMetadata.cpc_bid_source.name, ColumnType.text)

    creative_quality_score = ColumnMetadata(GoogleFieldsMetadata.creative_quality_score.name, ColumnType.text)

    criteria = ColumnMetadata(GoogleFieldsMetadata.criteria.name, ColumnType.text)

    gender = ColumnMetadata(GoogleFieldsMetadata.gender.name, ColumnType.text)

    age_range = ColumnMetadata(GoogleFieldsMetadata.age_range.name, ColumnType.text)

    keywords = ColumnMetadata(GoogleFieldsMetadata.keywords.name, ColumnType.text)

    criteria_destination_url = ColumnMetadata(GoogleFieldsMetadata.criteria_destination_url.name,
                                              ColumnType.text)

    estimated_add_clicks_at_first_position_cpc = ColumnMetadata(
        GoogleFieldsMetadata.estimated_add_clicks_at_first_position_cpc.name, ColumnType.text)

    estimated_add_cost_at_first_position_cpc = ColumnMetadata(
        GoogleFieldsMetadata.estimated_add_cost_at_first_position_cpc.name, ColumnType.text)

    final_app_urls = ColumnMetadata(GoogleFieldsMetadata.final_app_urls.name, ColumnType.text)

    final_mobile_urls = ColumnMetadata(GoogleFieldsMetadata.final_mobile_urls.name, ColumnType.text)

    final_urls = ColumnMetadata(GoogleFieldsMetadata.final_urls.name, ColumnType.text)

    first_page_cpc = ColumnMetadata(GoogleFieldsMetadata.first_page_cpc.name, ColumnType.text)

    first_position_cpc = ColumnMetadata(GoogleFieldsMetadata.first_position_cpc.name, ColumnType.text)

    has_quality_score = ColumnMetadata(GoogleFieldsMetadata.has_quality_score.name, ColumnType.text)

    keyword_match_type = ColumnMetadata(GoogleFieldsMetadata.keyword_match_type.name, ColumnType.text)

    post_click_quality_score = ColumnMetadata(GoogleFieldsMetadata.post_click_quality_score.name,
                                              ColumnType.text)

    quality_score = ColumnMetadata(GoogleFieldsMetadata.quality_score.name, ColumnType.text)

    search_predicted_ctr = ColumnMetadata(GoogleFieldsMetadata.search_predicted_ctr.name, ColumnType.text)

    system_serving_status = ColumnMetadata(GoogleFieldsMetadata.system_serving_status.name, ColumnType.text)

    top_of_page_cpc = ColumnMetadata(GoogleFieldsMetadata.top_of_page_cpc.name, ColumnType.text)

    vertical_id = ColumnMetadata(GoogleFieldsMetadata.vertical_id.name, ColumnType.text)

    city_name = ColumnMetadata(GoogleFieldsMetadata.city_name.name, ColumnType.text)

    country_name = ColumnMetadata(GoogleFieldsMetadata.country_name.name, ColumnType.text)

    is_targeting_location = ColumnMetadata(GoogleFieldsMetadata.is_targeting_location.name, ColumnType.text)

    metro_criteria_id = ColumnMetadata(GoogleFieldsMetadata.metro_criteria_id.name, ColumnType.text)

    most_specific_criteria_id = ColumnMetadata(GoogleFieldsMetadata.most_specific_criteria_id.name,
                                               ColumnType.text)

    region_name = ColumnMetadata(GoogleFieldsMetadata.region_name.name, ColumnType.text)

    base_campaign_id = ColumnMetadata(GoogleFieldsMetadata.base_campaign_id.name, ColumnType.text)

    bid_modifier = ColumnMetadata(GoogleFieldsMetadata.bid_modifier.name, ColumnType.text)

    cpm_bid_source = ColumnMetadata(GoogleFieldsMetadata.cpm_bid_source.name, ColumnType.text)

    is_restrict = ColumnMetadata(GoogleFieldsMetadata.is_restrict.name, ColumnType.text)

    ad_network_type_1 = ColumnMetadata(GoogleFieldsMetadata.ad_network_type_1.name, ColumnType.text)

    ad_network_type_2 = ColumnMetadata(GoogleFieldsMetadata.ad_network_type_2.name, ColumnType.text)

    click_type = ColumnMetadata(GoogleFieldsMetadata.click_type.name, ColumnType.text)

    conversion_adjustment_lag_bucket = ColumnMetadata(GoogleFieldsMetadata.conversion_adjustment_lag_bucket.name,
                                                      ColumnType.text)

    conversion_lag_bucket = ColumnMetadata(GoogleFieldsMetadata.conversion_lag_bucket.name, ColumnType.text)

    conversion_tracker_id = ColumnMetadata(GoogleFieldsMetadata.conversion_tracker_id.name, ColumnType.text)

    conversion_type_name = ColumnMetadata(GoogleFieldsMetadata.conversion_type_name.name, ColumnType.text)

    criterion_id = ColumnMetadata(GoogleFieldsMetadata.criterion_id.name, ColumnType.text)

    criterion_type = ColumnMetadata(GoogleFieldsMetadata.criterion_type.name, ColumnType.text)

    date = ColumnMetadata(GoogleFieldsMetadata.date.name, ColumnType.text)

    day_of_week = ColumnMetadata(GoogleFieldsMetadata.day_of_week.name, ColumnType.text)

    device = ColumnMetadata(GoogleFieldsMetadata.device.name, ColumnType.text)

    external_conversion_source = ColumnMetadata(GoogleFieldsMetadata.external_conversion_source.name,
                                                ColumnType.text)

    month = ColumnMetadata(GoogleFieldsMetadata.month.name, ColumnType.text)

    month_of_year = ColumnMetadata(GoogleFieldsMetadata.month_of_year.name, ColumnType.text)

    quarter = ColumnMetadata(GoogleFieldsMetadata.quarter.name, ColumnType.text)

    slot = ColumnMetadata(GoogleFieldsMetadata.slot.name, ColumnType.text)

    week = ColumnMetadata(GoogleFieldsMetadata.week.name, ColumnType.text)

    year = ColumnMetadata(GoogleFieldsMetadata.year.name, ColumnType.text)

    hour_of_day = ColumnMetadata(GoogleFieldsMetadata.hour_of_day.name, ColumnType.text)

    conversion_attribution_event_type = ColumnMetadata(
        GoogleFieldsMetadata.conversion_attribution_event_type.name, ColumnType.text)

    ad_format = ColumnMetadata(GoogleFieldsMetadata.ad_format.name, ColumnType.text)

    location_type = ColumnMetadata(GoogleFieldsMetadata.location_type.name, ColumnType.text)

    conversion_category_name = ColumnMetadata(GoogleFieldsMetadata.conversion_category_name.name,
                                              ColumnType.text)

    ad_group_id_segment = ColumnMetadata(GoogleFieldsMetadata.ad_group_id_segment.name, ColumnType.text)

    ad_group_name_segment = ColumnMetadata(GoogleFieldsMetadata.ad_group_name_segment.name, ColumnType.text)

    ad_group_status_segment = ColumnMetadata(GoogleFieldsMetadata.ad_group_status_segment.name, ColumnType.text)

    absolute_top_impression_percentage = ColumnMetadata(
        GoogleFieldsMetadata.absolute_top_impression_percentage.name, ColumnType.text)

    active_view_cpm = ColumnMetadata(GoogleFieldsMetadata.active_view_cpm.name, ColumnType.text)

    active_view_ctr = ColumnMetadata(GoogleFieldsMetadata.active_view_ctr.name, ColumnType.text)

    active_view_impressions = ColumnMetadata(GoogleFieldsMetadata.active_view_impressions.name, ColumnType.text)

    active_view_measurability = ColumnMetadata(GoogleFieldsMetadata.active_view_measurability.name,
                                               ColumnType.text)

    active_view_measurable_cost = ColumnMetadata(GoogleFieldsMetadata.active_view_measurable_cost.name,
                                                 ColumnType.text)

    active_view_measurable_impressions = ColumnMetadata(
        GoogleFieldsMetadata.active_view_measurable_impressions.name, ColumnType.text)

    active_view_viewability = ColumnMetadata(GoogleFieldsMetadata.active_view_viewability.name, ColumnType.text)

    all_conversion_rate = ColumnMetadata(GoogleFieldsMetadata.all_conversion_rate.name, ColumnType.text)

    all_conversions = ColumnMetadata(GoogleFieldsMetadata.all_conversions.name, ColumnType.text)

    all_conversion_value = ColumnMetadata(GoogleFieldsMetadata.all_conversion_value.name, ColumnType.text)

    average_cost = ColumnMetadata(GoogleFieldsMetadata.average_cost.name, ColumnType.text)

    average_cpc = ColumnMetadata(GoogleFieldsMetadata.average_cpc.name, ColumnType.text)

    average_cpe = ColumnMetadata(GoogleFieldsMetadata.average_cpe.name, ColumnType.text)

    average_cpm = ColumnMetadata(GoogleFieldsMetadata.average_cpm.name, ColumnType.text)

    average_cpv = ColumnMetadata(GoogleFieldsMetadata.average_cpv.name, ColumnType.text)

    average_pageviews = ColumnMetadata(GoogleFieldsMetadata.average_pageviews.name, ColumnType.text)

    average_position = ColumnMetadata(GoogleFieldsMetadata.average_position.name, ColumnType.text)

    average_time_on_site = ColumnMetadata(GoogleFieldsMetadata.average_time_on_site.name, ColumnType.text)

    bounce_rate = ColumnMetadata(GoogleFieldsMetadata.bounce_rate.name, ColumnType.text)

    click_assisted_conversions = ColumnMetadata(GoogleFieldsMetadata.click_assisted_conversions.name,
                                                ColumnType.text)

    click_assisted_conversions_over_last_click_conversions = ColumnMetadata(
        GoogleFieldsMetadata.click_assisted_conversions_over_last_click_conversions.name, ColumnType.text)

    click_assisted_conversion_value = ColumnMetadata(GoogleFieldsMetadata.click_assisted_conversion_value.name,
                                                     ColumnType.text)

    clicks = ColumnMetadata(GoogleFieldsMetadata.clicks.name, ColumnType.text)

    conversion_rate = ColumnMetadata(GoogleFieldsMetadata.conversion_rate.name, ColumnType.text)

    conversions = ColumnMetadata(GoogleFieldsMetadata.conversions.name, ColumnType.text)

    conversion_value = ColumnMetadata(GoogleFieldsMetadata.conversion_value.name, ColumnType.text)

    cost = ColumnMetadata(GoogleFieldsMetadata.cost.name, ColumnType.text)

    cost_per_all_conversion = ColumnMetadata(GoogleFieldsMetadata.cost_per_all_conversion.name, ColumnType.text)

    cost_per_conversion = ColumnMetadata(GoogleFieldsMetadata.cost_per_conversion.name, ColumnType.text)

    cost_per_current_model_attributed_conversion = ColumnMetadata(
        GoogleFieldsMetadata.cost_per_current_model_attributed_conversion.name, ColumnType.text)

    cross_device_conversions = ColumnMetadata(GoogleFieldsMetadata.cross_device_conversions.name,
                                              ColumnType.text)

    ctr = ColumnMetadata(GoogleFieldsMetadata.ctr.name, ColumnType.text)

    current_model_attributed_conversions = ColumnMetadata(
        GoogleFieldsMetadata.current_model_attributed_conversions.name, ColumnType.text)

    current_model_attributed_conversion_value = ColumnMetadata(
        GoogleFieldsMetadata.current_model_attributed_conversion_value.name, ColumnType.text)

    engagement_rate = ColumnMetadata(GoogleFieldsMetadata.engagement_rate.name, ColumnType.text)

    engagements = ColumnMetadata(GoogleFieldsMetadata.engagements.name, ColumnType.text)

    gmail_forwards = ColumnMetadata(GoogleFieldsMetadata.gmail_forwards.name, ColumnType.text)

    gmail_saves = ColumnMetadata(GoogleFieldsMetadata.gmail_saves.name, ColumnType.text)

    gmail_secondary_clicks = ColumnMetadata(GoogleFieldsMetadata.gmail_secondary_clicks.name, ColumnType.text)

    impression_assisted_conversions = ColumnMetadata(GoogleFieldsMetadata.impression_assisted_conversions.name,
                                                     ColumnType.text)

    impression_assisted_conversions_over_last_click_conversions = ColumnMetadata(
        GoogleFieldsMetadata.impression_assisted_conversions_over_last_click_conversions.name, ColumnType.text)

    impression_assisted_conversion_value = ColumnMetadata(
        GoogleFieldsMetadata.impression_assisted_conversion_value.name, ColumnType.text)

    impressions = ColumnMetadata(GoogleFieldsMetadata.impressions.name, ColumnType.text)

    interaction_rate = ColumnMetadata(GoogleFieldsMetadata.interaction_rate.name, ColumnType.text)

    interactions = ColumnMetadata(GoogleFieldsMetadata.interactions.name, ColumnType.text)

    interaction_types = ColumnMetadata(GoogleFieldsMetadata.interaction_types.name, ColumnType.text)

    percent_new_visitors = ColumnMetadata(GoogleFieldsMetadata.percent_new_visitors.name, ColumnType.text)

    top_impression_percentage = ColumnMetadata(GoogleFieldsMetadata.top_impression_percentage.name,
                                               ColumnType.text)

    value_per_all_conversion = ColumnMetadata(GoogleFieldsMetadata.value_per_all_conversion.name,
                                              ColumnType.text)

    value_per_conversion = ColumnMetadata(GoogleFieldsMetadata.value_per_conversion.name, ColumnType.text)

    value_per_current_model_attributed_conversion = ColumnMetadata(
        GoogleFieldsMetadata.value_per_current_model_attributed_conversion.name,
        ColumnType.text)

    video_quartile_100_rate = ColumnMetadata(GoogleFieldsMetadata.video_quartile_100_rate.name, ColumnType.text)

    video_quartile_25_rate = ColumnMetadata(GoogleFieldsMetadata.video_quartile_25_rate.name, ColumnType.text)

    video_quartile_50_rate = ColumnMetadata(GoogleFieldsMetadata.video_quartile_50_rate.name, ColumnType.text)

    video_quartile_75_rate = ColumnMetadata(GoogleFieldsMetadata.video_quartile_75_rate.name, ColumnType.text)

    video_view_rate = ColumnMetadata(GoogleFieldsMetadata.video_view_rate.name, ColumnType.text)

    video_views = ColumnMetadata(GoogleFieldsMetadata.video_views.name, ColumnType.text)

    view_through_conversions = ColumnMetadata(GoogleFieldsMetadata.view_through_conversions.name,
                                              ColumnType.text)

    content_impression_share = ColumnMetadata(GoogleFieldsMetadata.content_impression_share.name,
                                              ColumnType.text)

    content_rank_lost_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.content_rank_lost_impression_share.name, ColumnType.text)

    num_offline_impressions = ColumnMetadata(GoogleFieldsMetadata.num_offline_impressions.name, ColumnType.text)

    num_offline_interactions = ColumnMetadata(GoogleFieldsMetadata.num_offline_interactions.name,
                                              ColumnType.text)

    offline_interaction_rate = ColumnMetadata(GoogleFieldsMetadata.offline_interaction_rate.name,
                                              ColumnType.text)

    relative_ctr = ColumnMetadata(GoogleFieldsMetadata.relative_ctr.name, ColumnType.text)

    search_absolute_top_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_absolute_top_impression_share.name, ColumnType.text)

    search_budget_lost_absolute_top_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_budget_lost_absolute_top_impression_share.name,
        ColumnType.text)

    search_budget_lost_top_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_budget_lost_top_impression_share.name, ColumnType.text)

    search_exact_match_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_exact_match_impression_share.name, ColumnType.text)

    search_impression_share = ColumnMetadata(GoogleFieldsMetadata.search_impression_share.name, ColumnType.text)

    search_rank_lost_absolute_top_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_rank_lost_absolute_top_impression_share.name,
        ColumnType.text)

    search_rank_lost_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_rank_lost_impression_share.name, ColumnType.text)

    search_rank_lost_top_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_rank_lost_top_impression_share.name, ColumnType.text)

    search_top_impression_share = ColumnMetadata(GoogleFieldsMetadata.search_top_impression_share.name,
                                                 ColumnType.text)

    average_frequency = ColumnMetadata(GoogleFieldsMetadata.average_frequency.name, ColumnType.text)

    content_budget_lost_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.content_budget_lost_impression_share.name, ColumnType.text)

    impression_reach = ColumnMetadata(GoogleFieldsMetadata.impression_reach.name, ColumnType.text)

    invalid_click_rate = ColumnMetadata(GoogleFieldsMetadata.invalid_click_rate.name, ColumnType.text)

    invalid_clicks = ColumnMetadata(GoogleFieldsMetadata.invalid_clicks.name, ColumnType.text)

    search_budget_lost_impression_share = ColumnMetadata(
        GoogleFieldsMetadata.search_budget_lost_impression_share.name, ColumnType.text)

    search_click_share = ColumnMetadata(GoogleFieldsMetadata.search_click_share.name, ColumnType.text)

    historical_creative_quality_score = ColumnMetadata(
        GoogleFieldsMetadata.historical_creative_quality_score.name, ColumnType.text)

    historical_landing_page_quality_score = ColumnMetadata(
        GoogleFieldsMetadata.historical_landing_page_quality_score.name, ColumnType.text)

    historical_quality_score = ColumnMetadata(GoogleFieldsMetadata.historical_quality_score.name,
                                              ColumnType.text)

    historical_search_predicted_ctr = ColumnMetadata(GoogleFieldsMetadata.historical_search_predicted_ctr.name,
                                                     ColumnType.text)
