// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/ads/googleads/v2/common/segments.proto

package common

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	wrappers "github.com/golang/protobuf/ptypes/wrappers"
	enums "google.golang.org/genproto/googleapis/ads/googleads/v2/enums"
	_ "google.golang.org/genproto/googleapis/api/annotations"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// Segment only fields.
type Segments struct {
	// Ad network type.
	AdNetworkType enums.AdNetworkTypeEnum_AdNetworkType `protobuf:"varint,3,opt,name=ad_network_type,json=adNetworkType,proto3,enum=google.ads.googleads.v2.enums.AdNetworkTypeEnum_AdNetworkType" json:"ad_network_type,omitempty"`
	// Click type.
	ClickType enums.ClickTypeEnum_ClickType `protobuf:"varint,26,opt,name=click_type,json=clickType,proto3,enum=google.ads.googleads.v2.enums.ClickTypeEnum_ClickType" json:"click_type,omitempty"`
	// Resource name of the conversion action.
	ConversionAction *wrappers.StringValue `protobuf:"bytes,52,opt,name=conversion_action,json=conversionAction,proto3" json:"conversion_action,omitempty"`
	// Conversion action category.
	ConversionActionCategory enums.ConversionActionCategoryEnum_ConversionActionCategory `protobuf:"varint,53,opt,name=conversion_action_category,json=conversionActionCategory,proto3,enum=google.ads.googleads.v2.enums.ConversionActionCategoryEnum_ConversionActionCategory" json:"conversion_action_category,omitempty"`
	// Conversion action name.
	ConversionActionName *wrappers.StringValue `protobuf:"bytes,54,opt,name=conversion_action_name,json=conversionActionName,proto3" json:"conversion_action_name,omitempty"`
	// This segments your conversion columns by the original conversion and
	// conversion value vs. the delta if conversions were adjusted. False row has
	// the data as originally stated; While true row has the delta between data
	// now and the data as originally stated. Summing the two together results
	// post-adjustment data.
	ConversionAdjustment *wrappers.BoolValue `protobuf:"bytes,27,opt,name=conversion_adjustment,json=conversionAdjustment,proto3" json:"conversion_adjustment,omitempty"`
	// Conversion attribution event type.
	ConversionAttributionEventType enums.ConversionAttributionEventTypeEnum_ConversionAttributionEventType `protobuf:"varint,2,opt,name=conversion_attribution_event_type,json=conversionAttributionEventType,proto3,enum=google.ads.googleads.v2.enums.ConversionAttributionEventTypeEnum_ConversionAttributionEventType" json:"conversion_attribution_event_type,omitempty"`
	// An enum value representing the number of days between the impression and
	// the conversion.
	ConversionLagBucket enums.ConversionLagBucketEnum_ConversionLagBucket `protobuf:"varint,50,opt,name=conversion_lag_bucket,json=conversionLagBucket,proto3,enum=google.ads.googleads.v2.enums.ConversionLagBucketEnum_ConversionLagBucket" json:"conversion_lag_bucket,omitempty"`
	// An enum value representing the number of days between the impression and
	// the conversion or between the impression and adjustments to the conversion.
	ConversionOrAdjustmentLagBucket enums.ConversionOrAdjustmentLagBucketEnum_ConversionOrAdjustmentLagBucket `protobuf:"varint,51,opt,name=conversion_or_adjustment_lag_bucket,json=conversionOrAdjustmentLagBucket,proto3,enum=google.ads.googleads.v2.enums.ConversionOrAdjustmentLagBucketEnum_ConversionOrAdjustmentLagBucket" json:"conversion_or_adjustment_lag_bucket,omitempty"`
	// Date to which metrics apply.
	// yyyy-MM-dd format, e.g., 2018-04-17.
	Date *wrappers.StringValue `protobuf:"bytes,4,opt,name=date,proto3" json:"date,omitempty"`
	// Day of the week, e.g., MONDAY.
	DayOfWeek enums.DayOfWeekEnum_DayOfWeek `protobuf:"varint,5,opt,name=day_of_week,json=dayOfWeek,proto3,enum=google.ads.googleads.v2.enums.DayOfWeekEnum_DayOfWeek" json:"day_of_week,omitempty"`
	// Device to which metrics apply.
	Device enums.DeviceEnum_Device `protobuf:"varint,1,opt,name=device,proto3,enum=google.ads.googleads.v2.enums.DeviceEnum_Device" json:"device,omitempty"`
	// External conversion source.
	ExternalConversionSource enums.ExternalConversionSourceEnum_ExternalConversionSource `protobuf:"varint,55,opt,name=external_conversion_source,json=externalConversionSource,proto3,enum=google.ads.googleads.v2.enums.ExternalConversionSourceEnum_ExternalConversionSource" json:"external_conversion_source,omitempty"`
	// Resource name of the geo target constant that represents an airport.
	GeoTargetAirport *wrappers.StringValue `protobuf:"bytes,65,opt,name=geo_target_airport,json=geoTargetAirport,proto3" json:"geo_target_airport,omitempty"`
	// Resource name of the geo target constant that represents a canton.
	GeoTargetCanton *wrappers.StringValue `protobuf:"bytes,76,opt,name=geo_target_canton,json=geoTargetCanton,proto3" json:"geo_target_canton,omitempty"`
	// Resource name of the geo target constant that represents a city.
	GeoTargetCity *wrappers.StringValue `protobuf:"bytes,62,opt,name=geo_target_city,json=geoTargetCity,proto3" json:"geo_target_city,omitempty"`
	// Resource name of the geo target constant that represents a country.
	GeoTargetCountry *wrappers.StringValue `protobuf:"bytes,77,opt,name=geo_target_country,json=geoTargetCountry,proto3" json:"geo_target_country,omitempty"`
	// Resource name of the geo target constant that represents a county.
	GeoTargetCounty *wrappers.StringValue `protobuf:"bytes,68,opt,name=geo_target_county,json=geoTargetCounty,proto3" json:"geo_target_county,omitempty"`
	// Resource name of the geo target constant that represents a district.
	GeoTargetDistrict *wrappers.StringValue `protobuf:"bytes,69,opt,name=geo_target_district,json=geoTargetDistrict,proto3" json:"geo_target_district,omitempty"`
	// Resource name of the geo target constant that represents a metro.
	GeoTargetMetro *wrappers.StringValue `protobuf:"bytes,63,opt,name=geo_target_metro,json=geoTargetMetro,proto3" json:"geo_target_metro,omitempty"`
	// Resource name of the geo target constant that represents the most
	// specific location.
	GeoTargetMostSpecificLocation *wrappers.StringValue `protobuf:"bytes,72,opt,name=geo_target_most_specific_location,json=geoTargetMostSpecificLocation,proto3" json:"geo_target_most_specific_location,omitempty"`
	// Resource name of the geo target constant that represents a postal code.
	GeoTargetPostalCode *wrappers.StringValue `protobuf:"bytes,71,opt,name=geo_target_postal_code,json=geoTargetPostalCode,proto3" json:"geo_target_postal_code,omitempty"`
	// Resource name of the geo target constant that represents a province.
	GeoTargetProvince *wrappers.StringValue `protobuf:"bytes,75,opt,name=geo_target_province,json=geoTargetProvince,proto3" json:"geo_target_province,omitempty"`
	// Resource name of the geo target constant that represents a region.
	GeoTargetRegion *wrappers.StringValue `protobuf:"bytes,64,opt,name=geo_target_region,json=geoTargetRegion,proto3" json:"geo_target_region,omitempty"`
	// Resource name of the geo target constant that represents a state.
	GeoTargetState *wrappers.StringValue `protobuf:"bytes,67,opt,name=geo_target_state,json=geoTargetState,proto3" json:"geo_target_state,omitempty"`
	// Hotel booking window in days.
	HotelBookingWindowDays *wrappers.Int64Value `protobuf:"bytes,6,opt,name=hotel_booking_window_days,json=hotelBookingWindowDays,proto3" json:"hotel_booking_window_days,omitempty"`
	// Hotel center ID.
	HotelCenterId *wrappers.Int64Value `protobuf:"bytes,7,opt,name=hotel_center_id,json=hotelCenterId,proto3" json:"hotel_center_id,omitempty"`
	// Hotel check-in date. Formatted as yyyy-MM-dd.
	HotelCheckInDate *wrappers.StringValue `protobuf:"bytes,8,opt,name=hotel_check_in_date,json=hotelCheckInDate,proto3" json:"hotel_check_in_date,omitempty"`
	// Hotel check-in day of week.
	HotelCheckInDayOfWeek enums.DayOfWeekEnum_DayOfWeek `protobuf:"varint,9,opt,name=hotel_check_in_day_of_week,json=hotelCheckInDayOfWeek,proto3,enum=google.ads.googleads.v2.enums.DayOfWeekEnum_DayOfWeek" json:"hotel_check_in_day_of_week,omitempty"`
	// Hotel city.
	HotelCity *wrappers.StringValue `protobuf:"bytes,10,opt,name=hotel_city,json=hotelCity,proto3" json:"hotel_city,omitempty"`
	// Hotel class.
	HotelClass *wrappers.Int32Value `protobuf:"bytes,11,opt,name=hotel_class,json=hotelClass,proto3" json:"hotel_class,omitempty"`
	// Hotel country.
	HotelCountry *wrappers.StringValue `protobuf:"bytes,12,opt,name=hotel_country,json=hotelCountry,proto3" json:"hotel_country,omitempty"`
	// Hotel date selection type.
	HotelDateSelectionType enums.HotelDateSelectionTypeEnum_HotelDateSelectionType `protobuf:"varint,13,opt,name=hotel_date_selection_type,json=hotelDateSelectionType,proto3,enum=google.ads.googleads.v2.enums.HotelDateSelectionTypeEnum_HotelDateSelectionType" json:"hotel_date_selection_type,omitempty"`
	// Hotel length of stay.
	HotelLengthOfStay *wrappers.Int32Value `protobuf:"bytes,14,opt,name=hotel_length_of_stay,json=hotelLengthOfStay,proto3" json:"hotel_length_of_stay,omitempty"`
	// Hotel rate rule ID.
	HotelRateRuleId *wrappers.StringValue `protobuf:"bytes,73,opt,name=hotel_rate_rule_id,json=hotelRateRuleId,proto3" json:"hotel_rate_rule_id,omitempty"`
	// Hotel rate type.
	HotelRateType enums.HotelRateTypeEnum_HotelRateType `protobuf:"varint,74,opt,name=hotel_rate_type,json=hotelRateType,proto3,enum=google.ads.googleads.v2.enums.HotelRateTypeEnum_HotelRateType" json:"hotel_rate_type,omitempty"`
	// Hotel price bucket.
	HotelPriceBucket enums.HotelPriceBucketEnum_HotelPriceBucket `protobuf:"varint,78,opt,name=hotel_price_bucket,json=hotelPriceBucket,proto3,enum=google.ads.googleads.v2.enums.HotelPriceBucketEnum_HotelPriceBucket" json:"hotel_price_bucket,omitempty"`
	// Hotel state.
	HotelState *wrappers.StringValue `protobuf:"bytes,15,opt,name=hotel_state,json=hotelState,proto3" json:"hotel_state,omitempty"`
	// Hour of day as a number between 0 and 23, inclusive.
	Hour *wrappers.Int32Value `protobuf:"bytes,16,opt,name=hour,proto3" json:"hour,omitempty"`
	// Only used with feed item metrics.
	// Indicates whether the interaction metrics occurred on the feed item itself
	// or a different extension or ad unit.
	InteractionOnThisExtension *wrappers.BoolValue `protobuf:"bytes,49,opt,name=interaction_on_this_extension,json=interactionOnThisExtension,proto3" json:"interaction_on_this_extension,omitempty"`
	// Keyword criterion.
	Keyword *Keyword `protobuf:"bytes,61,opt,name=keyword,proto3" json:"keyword,omitempty"`
	// Month as represented by the date of the first day of a month. Formatted as
	// yyyy-MM-dd.
	Month *wrappers.StringValue `protobuf:"bytes,17,opt,name=month,proto3" json:"month,omitempty"`
	// Month of the year, e.g., January.
	MonthOfYear enums.MonthOfYearEnum_MonthOfYear `protobuf:"varint,18,opt,name=month_of_year,json=monthOfYear,proto3,enum=google.ads.googleads.v2.enums.MonthOfYearEnum_MonthOfYear" json:"month_of_year,omitempty"`
	// Partner hotel ID.
	PartnerHotelId *wrappers.StringValue `protobuf:"bytes,19,opt,name=partner_hotel_id,json=partnerHotelId,proto3" json:"partner_hotel_id,omitempty"`
	// Placeholder type. This is only used with feed item metrics.
	PlaceholderType enums.PlaceholderTypeEnum_PlaceholderType `protobuf:"varint,20,opt,name=placeholder_type,json=placeholderType,proto3,enum=google.ads.googleads.v2.enums.PlaceholderTypeEnum_PlaceholderType" json:"placeholder_type,omitempty"`
	// Aggregator ID of the product.
	ProductAggregatorId *wrappers.UInt64Value `protobuf:"bytes,28,opt,name=product_aggregator_id,json=productAggregatorId,proto3" json:"product_aggregator_id,omitempty"`
	// Bidding category (level 1) of the product.
	ProductBiddingCategoryLevel1 *wrappers.StringValue `protobuf:"bytes,56,opt,name=product_bidding_category_level1,json=productBiddingCategoryLevel1,proto3" json:"product_bidding_category_level1,omitempty"`
	// Bidding category (level 2) of the product.
	ProductBiddingCategoryLevel2 *wrappers.StringValue `protobuf:"bytes,57,opt,name=product_bidding_category_level2,json=productBiddingCategoryLevel2,proto3" json:"product_bidding_category_level2,omitempty"`
	// Bidding category (level 3) of the product.
	ProductBiddingCategoryLevel3 *wrappers.StringValue `protobuf:"bytes,58,opt,name=product_bidding_category_level3,json=productBiddingCategoryLevel3,proto3" json:"product_bidding_category_level3,omitempty"`
	// Bidding category (level 4) of the product.
	ProductBiddingCategoryLevel4 *wrappers.StringValue `protobuf:"bytes,59,opt,name=product_bidding_category_level4,json=productBiddingCategoryLevel4,proto3" json:"product_bidding_category_level4,omitempty"`
	// Bidding category (level 5) of the product.
	ProductBiddingCategoryLevel5 *wrappers.StringValue `protobuf:"bytes,60,opt,name=product_bidding_category_level5,json=productBiddingCategoryLevel5,proto3" json:"product_bidding_category_level5,omitempty"`
	// Brand of the product.
	ProductBrand *wrappers.StringValue `protobuf:"bytes,29,opt,name=product_brand,json=productBrand,proto3" json:"product_brand,omitempty"`
	// Channel of the product.
	ProductChannel enums.ProductChannelEnum_ProductChannel `protobuf:"varint,30,opt,name=product_channel,json=productChannel,proto3,enum=google.ads.googleads.v2.enums.ProductChannelEnum_ProductChannel" json:"product_channel,omitempty"`
	// Channel exclusivity of the product.
	ProductChannelExclusivity enums.ProductChannelExclusivityEnum_ProductChannelExclusivity `protobuf:"varint,31,opt,name=product_channel_exclusivity,json=productChannelExclusivity,proto3,enum=google.ads.googleads.v2.enums.ProductChannelExclusivityEnum_ProductChannelExclusivity" json:"product_channel_exclusivity,omitempty"`
	// Condition of the product.
	ProductCondition enums.ProductConditionEnum_ProductCondition `protobuf:"varint,32,opt,name=product_condition,json=productCondition,proto3,enum=google.ads.googleads.v2.enums.ProductConditionEnum_ProductCondition" json:"product_condition,omitempty"`
	// Resource name of the geo target constant for the country of sale of the
	// product.
	ProductCountry *wrappers.StringValue `protobuf:"bytes,33,opt,name=product_country,json=productCountry,proto3" json:"product_country,omitempty"`
	// Custom attribute 0 of the product.
	ProductCustomAttribute0 *wrappers.StringValue `protobuf:"bytes,34,opt,name=product_custom_attribute0,json=productCustomAttribute0,proto3" json:"product_custom_attribute0,omitempty"`
	// Custom attribute 1 of the product.
	ProductCustomAttribute1 *wrappers.StringValue `protobuf:"bytes,35,opt,name=product_custom_attribute1,json=productCustomAttribute1,proto3" json:"product_custom_attribute1,omitempty"`
	// Custom attribute 2 of the product.
	ProductCustomAttribute2 *wrappers.StringValue `protobuf:"bytes,36,opt,name=product_custom_attribute2,json=productCustomAttribute2,proto3" json:"product_custom_attribute2,omitempty"`
	// Custom attribute 3 of the product.
	ProductCustomAttribute3 *wrappers.StringValue `protobuf:"bytes,37,opt,name=product_custom_attribute3,json=productCustomAttribute3,proto3" json:"product_custom_attribute3,omitempty"`
	// Custom attribute 4 of the product.
	ProductCustomAttribute4 *wrappers.StringValue `protobuf:"bytes,38,opt,name=product_custom_attribute4,json=productCustomAttribute4,proto3" json:"product_custom_attribute4,omitempty"`
	// Item ID of the product.
	ProductItemId *wrappers.StringValue `protobuf:"bytes,39,opt,name=product_item_id,json=productItemId,proto3" json:"product_item_id,omitempty"`
	// Resource name of the language constant for the language of the product.
	ProductLanguage *wrappers.StringValue `protobuf:"bytes,40,opt,name=product_language,json=productLanguage,proto3" json:"product_language,omitempty"`
	// Merchant ID of the product.
	ProductMerchantId *wrappers.UInt64Value `protobuf:"bytes,41,opt,name=product_merchant_id,json=productMerchantId,proto3" json:"product_merchant_id,omitempty"`
	// Store ID of the product.
	ProductStoreId *wrappers.StringValue `protobuf:"bytes,42,opt,name=product_store_id,json=productStoreId,proto3" json:"product_store_id,omitempty"`
	// Title of the product.
	ProductTitle *wrappers.StringValue `protobuf:"bytes,43,opt,name=product_title,json=productTitle,proto3" json:"product_title,omitempty"`
	// Type (level 1) of the product.
	ProductTypeL1 *wrappers.StringValue `protobuf:"bytes,44,opt,name=product_type_l1,json=productTypeL1,proto3" json:"product_type_l1,omitempty"`
	// Type (level 2) of the product.
	ProductTypeL2 *wrappers.StringValue `protobuf:"bytes,45,opt,name=product_type_l2,json=productTypeL2,proto3" json:"product_type_l2,omitempty"`
	// Type (level 3) of the product.
	ProductTypeL3 *wrappers.StringValue `protobuf:"bytes,46,opt,name=product_type_l3,json=productTypeL3,proto3" json:"product_type_l3,omitempty"`
	// Type (level 4) of the product.
	ProductTypeL4 *wrappers.StringValue `protobuf:"bytes,47,opt,name=product_type_l4,json=productTypeL4,proto3" json:"product_type_l4,omitempty"`
	// Type (level 5) of the product.
	ProductTypeL5 *wrappers.StringValue `protobuf:"bytes,48,opt,name=product_type_l5,json=productTypeL5,proto3" json:"product_type_l5,omitempty"`
	// Quarter as represented by the date of the first day of a quarter.
	// Uses the calendar year for quarters, e.g., the second quarter of 2018
	// starts on 2018-04-01. Formatted as yyyy-MM-dd.
	Quarter *wrappers.StringValue `protobuf:"bytes,21,opt,name=quarter,proto3" json:"quarter,omitempty"`
	// Type of the search engine results page.
	SearchEngineResultsPageType enums.SearchEngineResultsPageTypeEnum_SearchEngineResultsPageType `protobuf:"varint,70,opt,name=search_engine_results_page_type,json=searchEngineResultsPageType,proto3,enum=google.ads.googleads.v2.enums.SearchEngineResultsPageTypeEnum_SearchEngineResultsPageType" json:"search_engine_results_page_type,omitempty"`
	// Match type of the keyword that triggered the ad, including variants.
	SearchTermMatchType enums.SearchTermMatchTypeEnum_SearchTermMatchType `protobuf:"varint,22,opt,name=search_term_match_type,json=searchTermMatchType,proto3,enum=google.ads.googleads.v2.enums.SearchTermMatchTypeEnum_SearchTermMatchType" json:"search_term_match_type,omitempty"`
	// Position of the ad.
	Slot enums.SlotEnum_Slot `protobuf:"varint,23,opt,name=slot,proto3,enum=google.ads.googleads.v2.enums.SlotEnum_Slot" json:"slot,omitempty"`
	// Resource name of the ad group criterion that represents webpage criterion.
	Webpage *wrappers.StringValue `protobuf:"bytes,66,opt,name=webpage,proto3" json:"webpage,omitempty"`
	// Week as defined as Monday through Sunday, and represented by the date of
	// Monday. Formatted as yyyy-MM-dd.
	Week *wrappers.StringValue `protobuf:"bytes,24,opt,name=week,proto3" json:"week,omitempty"`
	// Year, formatted as yyyy.
	Year                 *wrappers.Int32Value `protobuf:"bytes,25,opt,name=year,proto3" json:"year,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *Segments) Reset()         { *m = Segments{} }
func (m *Segments) String() string { return proto.CompactTextString(m) }
func (*Segments) ProtoMessage()    {}
func (*Segments) Descriptor() ([]byte, []int) {
	return fileDescriptor_f6b62fa64919f31e, []int{0}
}

func (m *Segments) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Segments.Unmarshal(m, b)
}
func (m *Segments) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Segments.Marshal(b, m, deterministic)
}
func (m *Segments) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Segments.Merge(m, src)
}
func (m *Segments) XXX_Size() int {
	return xxx_messageInfo_Segments.Size(m)
}
func (m *Segments) XXX_DiscardUnknown() {
	xxx_messageInfo_Segments.DiscardUnknown(m)
}

var xxx_messageInfo_Segments proto.InternalMessageInfo

func (m *Segments) GetAdNetworkType() enums.AdNetworkTypeEnum_AdNetworkType {
	if m != nil {
		return m.AdNetworkType
	}
	return enums.AdNetworkTypeEnum_UNSPECIFIED
}

func (m *Segments) GetClickType() enums.ClickTypeEnum_ClickType {
	if m != nil {
		return m.ClickType
	}
	return enums.ClickTypeEnum_UNSPECIFIED
}

func (m *Segments) GetConversionAction() *wrappers.StringValue {
	if m != nil {
		return m.ConversionAction
	}
	return nil
}

func (m *Segments) GetConversionActionCategory() enums.ConversionActionCategoryEnum_ConversionActionCategory {
	if m != nil {
		return m.ConversionActionCategory
	}
	return enums.ConversionActionCategoryEnum_UNSPECIFIED
}

func (m *Segments) GetConversionActionName() *wrappers.StringValue {
	if m != nil {
		return m.ConversionActionName
	}
	return nil
}

func (m *Segments) GetConversionAdjustment() *wrappers.BoolValue {
	if m != nil {
		return m.ConversionAdjustment
	}
	return nil
}

func (m *Segments) GetConversionAttributionEventType() enums.ConversionAttributionEventTypeEnum_ConversionAttributionEventType {
	if m != nil {
		return m.ConversionAttributionEventType
	}
	return enums.ConversionAttributionEventTypeEnum_UNSPECIFIED
}

func (m *Segments) GetConversionLagBucket() enums.ConversionLagBucketEnum_ConversionLagBucket {
	if m != nil {
		return m.ConversionLagBucket
	}
	return enums.ConversionLagBucketEnum_UNSPECIFIED
}

func (m *Segments) GetConversionOrAdjustmentLagBucket() enums.ConversionOrAdjustmentLagBucketEnum_ConversionOrAdjustmentLagBucket {
	if m != nil {
		return m.ConversionOrAdjustmentLagBucket
	}
	return enums.ConversionOrAdjustmentLagBucketEnum_UNSPECIFIED
}

func (m *Segments) GetDate() *wrappers.StringValue {
	if m != nil {
		return m.Date
	}
	return nil
}

func (m *Segments) GetDayOfWeek() enums.DayOfWeekEnum_DayOfWeek {
	if m != nil {
		return m.DayOfWeek
	}
	return enums.DayOfWeekEnum_UNSPECIFIED
}

func (m *Segments) GetDevice() enums.DeviceEnum_Device {
	if m != nil {
		return m.Device
	}
	return enums.DeviceEnum_UNSPECIFIED
}

func (m *Segments) GetExternalConversionSource() enums.ExternalConversionSourceEnum_ExternalConversionSource {
	if m != nil {
		return m.ExternalConversionSource
	}
	return enums.ExternalConversionSourceEnum_UNSPECIFIED
}

func (m *Segments) GetGeoTargetAirport() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetAirport
	}
	return nil
}

func (m *Segments) GetGeoTargetCanton() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetCanton
	}
	return nil
}

func (m *Segments) GetGeoTargetCity() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetCity
	}
	return nil
}

func (m *Segments) GetGeoTargetCountry() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetCountry
	}
	return nil
}

func (m *Segments) GetGeoTargetCounty() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetCounty
	}
	return nil
}

func (m *Segments) GetGeoTargetDistrict() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetDistrict
	}
	return nil
}

func (m *Segments) GetGeoTargetMetro() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetMetro
	}
	return nil
}

func (m *Segments) GetGeoTargetMostSpecificLocation() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetMostSpecificLocation
	}
	return nil
}

func (m *Segments) GetGeoTargetPostalCode() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetPostalCode
	}
	return nil
}

func (m *Segments) GetGeoTargetProvince() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetProvince
	}
	return nil
}

func (m *Segments) GetGeoTargetRegion() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetRegion
	}
	return nil
}

func (m *Segments) GetGeoTargetState() *wrappers.StringValue {
	if m != nil {
		return m.GeoTargetState
	}
	return nil
}

func (m *Segments) GetHotelBookingWindowDays() *wrappers.Int64Value {
	if m != nil {
		return m.HotelBookingWindowDays
	}
	return nil
}

func (m *Segments) GetHotelCenterId() *wrappers.Int64Value {
	if m != nil {
		return m.HotelCenterId
	}
	return nil
}

func (m *Segments) GetHotelCheckInDate() *wrappers.StringValue {
	if m != nil {
		return m.HotelCheckInDate
	}
	return nil
}

func (m *Segments) GetHotelCheckInDayOfWeek() enums.DayOfWeekEnum_DayOfWeek {
	if m != nil {
		return m.HotelCheckInDayOfWeek
	}
	return enums.DayOfWeekEnum_UNSPECIFIED
}

func (m *Segments) GetHotelCity() *wrappers.StringValue {
	if m != nil {
		return m.HotelCity
	}
	return nil
}

func (m *Segments) GetHotelClass() *wrappers.Int32Value {
	if m != nil {
		return m.HotelClass
	}
	return nil
}

func (m *Segments) GetHotelCountry() *wrappers.StringValue {
	if m != nil {
		return m.HotelCountry
	}
	return nil
}

func (m *Segments) GetHotelDateSelectionType() enums.HotelDateSelectionTypeEnum_HotelDateSelectionType {
	if m != nil {
		return m.HotelDateSelectionType
	}
	return enums.HotelDateSelectionTypeEnum_UNSPECIFIED
}

func (m *Segments) GetHotelLengthOfStay() *wrappers.Int32Value {
	if m != nil {
		return m.HotelLengthOfStay
	}
	return nil
}

func (m *Segments) GetHotelRateRuleId() *wrappers.StringValue {
	if m != nil {
		return m.HotelRateRuleId
	}
	return nil
}

func (m *Segments) GetHotelRateType() enums.HotelRateTypeEnum_HotelRateType {
	if m != nil {
		return m.HotelRateType
	}
	return enums.HotelRateTypeEnum_UNSPECIFIED
}

func (m *Segments) GetHotelPriceBucket() enums.HotelPriceBucketEnum_HotelPriceBucket {
	if m != nil {
		return m.HotelPriceBucket
	}
	return enums.HotelPriceBucketEnum_UNSPECIFIED
}

func (m *Segments) GetHotelState() *wrappers.StringValue {
	if m != nil {
		return m.HotelState
	}
	return nil
}

func (m *Segments) GetHour() *wrappers.Int32Value {
	if m != nil {
		return m.Hour
	}
	return nil
}

func (m *Segments) GetInteractionOnThisExtension() *wrappers.BoolValue {
	if m != nil {
		return m.InteractionOnThisExtension
	}
	return nil
}

func (m *Segments) GetKeyword() *Keyword {
	if m != nil {
		return m.Keyword
	}
	return nil
}

func (m *Segments) GetMonth() *wrappers.StringValue {
	if m != nil {
		return m.Month
	}
	return nil
}

func (m *Segments) GetMonthOfYear() enums.MonthOfYearEnum_MonthOfYear {
	if m != nil {
		return m.MonthOfYear
	}
	return enums.MonthOfYearEnum_UNSPECIFIED
}

func (m *Segments) GetPartnerHotelId() *wrappers.StringValue {
	if m != nil {
		return m.PartnerHotelId
	}
	return nil
}

func (m *Segments) GetPlaceholderType() enums.PlaceholderTypeEnum_PlaceholderType {
	if m != nil {
		return m.PlaceholderType
	}
	return enums.PlaceholderTypeEnum_UNSPECIFIED
}

func (m *Segments) GetProductAggregatorId() *wrappers.UInt64Value {
	if m != nil {
		return m.ProductAggregatorId
	}
	return nil
}

func (m *Segments) GetProductBiddingCategoryLevel1() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryLevel1
	}
	return nil
}

func (m *Segments) GetProductBiddingCategoryLevel2() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryLevel2
	}
	return nil
}

func (m *Segments) GetProductBiddingCategoryLevel3() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryLevel3
	}
	return nil
}

func (m *Segments) GetProductBiddingCategoryLevel4() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryLevel4
	}
	return nil
}

func (m *Segments) GetProductBiddingCategoryLevel5() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryLevel5
	}
	return nil
}

func (m *Segments) GetProductBrand() *wrappers.StringValue {
	if m != nil {
		return m.ProductBrand
	}
	return nil
}

func (m *Segments) GetProductChannel() enums.ProductChannelEnum_ProductChannel {
	if m != nil {
		return m.ProductChannel
	}
	return enums.ProductChannelEnum_UNSPECIFIED
}

func (m *Segments) GetProductChannelExclusivity() enums.ProductChannelExclusivityEnum_ProductChannelExclusivity {
	if m != nil {
		return m.ProductChannelExclusivity
	}
	return enums.ProductChannelExclusivityEnum_UNSPECIFIED
}

func (m *Segments) GetProductCondition() enums.ProductConditionEnum_ProductCondition {
	if m != nil {
		return m.ProductCondition
	}
	return enums.ProductConditionEnum_UNSPECIFIED
}

func (m *Segments) GetProductCountry() *wrappers.StringValue {
	if m != nil {
		return m.ProductCountry
	}
	return nil
}

func (m *Segments) GetProductCustomAttribute0() *wrappers.StringValue {
	if m != nil {
		return m.ProductCustomAttribute0
	}
	return nil
}

func (m *Segments) GetProductCustomAttribute1() *wrappers.StringValue {
	if m != nil {
		return m.ProductCustomAttribute1
	}
	return nil
}

func (m *Segments) GetProductCustomAttribute2() *wrappers.StringValue {
	if m != nil {
		return m.ProductCustomAttribute2
	}
	return nil
}

func (m *Segments) GetProductCustomAttribute3() *wrappers.StringValue {
	if m != nil {
		return m.ProductCustomAttribute3
	}
	return nil
}

func (m *Segments) GetProductCustomAttribute4() *wrappers.StringValue {
	if m != nil {
		return m.ProductCustomAttribute4
	}
	return nil
}

func (m *Segments) GetProductItemId() *wrappers.StringValue {
	if m != nil {
		return m.ProductItemId
	}
	return nil
}

func (m *Segments) GetProductLanguage() *wrappers.StringValue {
	if m != nil {
		return m.ProductLanguage
	}
	return nil
}

func (m *Segments) GetProductMerchantId() *wrappers.UInt64Value {
	if m != nil {
		return m.ProductMerchantId
	}
	return nil
}

func (m *Segments) GetProductStoreId() *wrappers.StringValue {
	if m != nil {
		return m.ProductStoreId
	}
	return nil
}

func (m *Segments) GetProductTitle() *wrappers.StringValue {
	if m != nil {
		return m.ProductTitle
	}
	return nil
}

func (m *Segments) GetProductTypeL1() *wrappers.StringValue {
	if m != nil {
		return m.ProductTypeL1
	}
	return nil
}

func (m *Segments) GetProductTypeL2() *wrappers.StringValue {
	if m != nil {
		return m.ProductTypeL2
	}
	return nil
}

func (m *Segments) GetProductTypeL3() *wrappers.StringValue {
	if m != nil {
		return m.ProductTypeL3
	}
	return nil
}

func (m *Segments) GetProductTypeL4() *wrappers.StringValue {
	if m != nil {
		return m.ProductTypeL4
	}
	return nil
}

func (m *Segments) GetProductTypeL5() *wrappers.StringValue {
	if m != nil {
		return m.ProductTypeL5
	}
	return nil
}

func (m *Segments) GetQuarter() *wrappers.StringValue {
	if m != nil {
		return m.Quarter
	}
	return nil
}

func (m *Segments) GetSearchEngineResultsPageType() enums.SearchEngineResultsPageTypeEnum_SearchEngineResultsPageType {
	if m != nil {
		return m.SearchEngineResultsPageType
	}
	return enums.SearchEngineResultsPageTypeEnum_UNSPECIFIED
}

func (m *Segments) GetSearchTermMatchType() enums.SearchTermMatchTypeEnum_SearchTermMatchType {
	if m != nil {
		return m.SearchTermMatchType
	}
	return enums.SearchTermMatchTypeEnum_UNSPECIFIED
}

func (m *Segments) GetSlot() enums.SlotEnum_Slot {
	if m != nil {
		return m.Slot
	}
	return enums.SlotEnum_UNSPECIFIED
}

func (m *Segments) GetWebpage() *wrappers.StringValue {
	if m != nil {
		return m.Webpage
	}
	return nil
}

func (m *Segments) GetWeek() *wrappers.StringValue {
	if m != nil {
		return m.Week
	}
	return nil
}

func (m *Segments) GetYear() *wrappers.Int32Value {
	if m != nil {
		return m.Year
	}
	return nil
}

// A Keyword criterion segment.
type Keyword struct {
	// The AdGroupCriterion resource name.
	AdGroupCriterion *wrappers.StringValue `protobuf:"bytes,1,opt,name=ad_group_criterion,json=adGroupCriterion,proto3" json:"ad_group_criterion,omitempty"`
	// Keyword info.
	Info                 *KeywordInfo `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *Keyword) Reset()         { *m = Keyword{} }
func (m *Keyword) String() string { return proto.CompactTextString(m) }
func (*Keyword) ProtoMessage()    {}
func (*Keyword) Descriptor() ([]byte, []int) {
	return fileDescriptor_f6b62fa64919f31e, []int{1}
}

func (m *Keyword) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Keyword.Unmarshal(m, b)
}
func (m *Keyword) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Keyword.Marshal(b, m, deterministic)
}
func (m *Keyword) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Keyword.Merge(m, src)
}
func (m *Keyword) XXX_Size() int {
	return xxx_messageInfo_Keyword.Size(m)
}
func (m *Keyword) XXX_DiscardUnknown() {
	xxx_messageInfo_Keyword.DiscardUnknown(m)
}

var xxx_messageInfo_Keyword proto.InternalMessageInfo

func (m *Keyword) GetAdGroupCriterion() *wrappers.StringValue {
	if m != nil {
		return m.AdGroupCriterion
	}
	return nil
}

func (m *Keyword) GetInfo() *KeywordInfo {
	if m != nil {
		return m.Info
	}
	return nil
}

func init() {
	proto.RegisterType((*Segments)(nil), "google.ads.googleads.v2.common.Segments")
	proto.RegisterType((*Keyword)(nil), "google.ads.googleads.v2.common.Keyword")
}

func init() {
	proto.RegisterFile("google/ads/googleads/v2/common/segments.proto", fileDescriptor_f6b62fa64919f31e)
}

var fileDescriptor_f6b62fa64919f31e = []byte{
	// 2157 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x9a, 0x5b, 0x5b, 0xdb, 0xc8,
	0x19, 0xc7, 0x1f, 0x67, 0xd9, 0x64, 0x33, 0x2c, 0x01, 0x86, 0x84, 0x9d, 0x90, 0x33, 0xdb, 0x76,
	0xd3, 0x3d, 0xd8, 0x60, 0x03, 0xed, 0x3a, 0x9b, 0x83, 0x31, 0x2c, 0x38, 0x81, 0x40, 0x05, 0xcb,
	0xb6, 0xfb, 0xa4, 0x55, 0x07, 0x69, 0x2c, 0x54, 0x64, 0x8d, 0x32, 0x1a, 0xc3, 0xfa, 0xa6, 0xfd,
	0x00, 0xbd, 0xeb, 0x45, 0xae, 0xfb, 0xf4, 0xb2, 0xbd, 0xe9, 0x77, 0xe8, 0x5d, 0x3f, 0x49, 0x9f,
	0x7e, 0x8a, 0x7d, 0xe6, 0x20, 0x59, 0xb6, 0xb1, 0x35, 0x0e, 0x57, 0x48, 0xa3, 0xf7, 0xff, 0x7b,
	0x5f, 0xbd, 0x33, 0x7a, 0xe7, 0x60, 0xc0, 0x57, 0x1e, 0xa5, 0x5e, 0x40, 0x4a, 0xd8, 0x8d, 0x4b,
	0xea, 0x52, 0x5c, 0x9d, 0x95, 0x4b, 0x0e, 0x6d, 0xb5, 0x68, 0x58, 0x8a, 0x89, 0xd7, 0x22, 0x21,
	0x8f, 0x8b, 0x11, 0xa3, 0x9c, 0xc2, 0xfb, 0xca, 0xa6, 0x88, 0xdd, 0xb8, 0x98, 0x9a, 0x17, 0xcf,
	0xca, 0x45, 0x65, 0xbe, 0x90, 0x87, 0x73, 0x98, 0xcf, 0x09, 0xf3, 0xb1, 0xc2, 0x2d, 0x54, 0x86,
	0x99, 0x93, 0xb0, 0xdd, 0x8a, 0x4b, 0xd8, 0xb5, 0x43, 0xc2, 0xcf, 0x29, 0x3b, 0xb5, 0x79, 0x27,
	0x22, 0x5a, 0x54, 0x1c, 0x2d, 0x72, 0x02, 0xdf, 0xe9, 0xb1, 0x7f, 0x96, 0x63, 0x4f, 0xc3, 0x33,
	0xc2, 0x62, 0x9f, 0x86, 0x36, 0x76, 0xb8, 0xf8, 0xe3, 0x60, 0x4e, 0x3c, 0xca, 0x3a, 0x5a, 0xbf,
	0x69, 0xae, 0xe7, 0x9c, 0xf9, 0xc7, 0x6d, 0x09, 0x21, 0x67, 0x24, 0xe4, 0xd9, 0x30, 0xbe, 0x36,
	0xc6, 0x04, 0xd8, 0xb3, 0x8f, 0xdb, 0xce, 0x29, 0xe1, 0x5a, 0xba, 0x65, 0x2c, 0xa5, 0xcc, 0xc6,
	0xee, 0x9f, 0xda, 0x31, 0x17, 0x9d, 0x36, 0x08, 0x2a, 0x8d, 0x06, 0xb9, 0xb8, 0x63, 0xd3, 0xa6,
	0x7d, 0x4e, 0xc8, 0xa9, 0x16, 0x7c, 0x9e, 0x23, 0x20, 0x67, 0xbe, 0x63, 0x98, 0x67, 0xf2, 0x23,
	0x27, 0x2c, 0xc4, 0x81, 0x9d, 0x09, 0x37, 0xa6, 0x6d, 0x96, 0xea, 0x9f, 0x8e, 0xd6, 0x9f, 0x50,
	0x4e, 0x02, 0xdb, 0xc5, 0x9c, 0xd8, 0x31, 0x09, 0x88, 0xea, 0xaa, 0x4c, 0x7e, 0xd7, 0x4c, 0xe4,
	0x11, 0xf3, 0x1d, 0xd2, 0x9b, 0x93, 0x8a, 0x89, 0x8e, 0x09, 0xb7, 0x19, 0x67, 0xcb, 0xa3, 0x45,
	0x2d, 0x1a, 0xf2, 0x13, 0x91, 0xca, 0x0e, 0xc1, 0x4c, 0x4b, 0x56, 0x46, 0x4b, 0xa2, 0x00, 0x3b,
	0xe4, 0x84, 0x06, 0x2e, 0x61, 0x59, 0x47, 0x39, 0xd1, 0x45, 0x8c, 0xba, 0x6d, 0x87, 0xdb, 0xce,
	0x09, 0x0e, 0x43, 0x12, 0x68, 0xd1, 0xf3, 0xb1, 0x44, 0x36, 0xf9, 0xd1, 0x09, 0xda, 0xb1, 0x7f,
	0xe6, 0xf3, 0x64, 0xc8, 0xaf, 0x1a, 0x02, 0x68, 0xe8, 0xfa, 0xa2, 0x1f, 0xb4, 0xac, 0x3e, 0x5a,
	0x16, 0x13, 0xcc, 0x9c, 0x13, 0x9b, 0x84, 0x9e, 0x1f, 0x12, 0x9b, 0x91, 0xb8, 0x1d, 0xf0, 0xd8,
	0x8e, 0xb0, 0xd7, 0x93, 0xda, 0xaa, 0x11, 0x84, 0x13, 0xd6, 0xb2, 0x5b, 0x98, 0x8b, 0xcb, 0xae,
	0xf6, 0x71, 0x8e, 0x36, 0xa0, 0x49, 0xaf, 0xeb, 0x42, 0x56, 0x92, 0x77, 0xc7, 0xed, 0x66, 0xe9,
	0x9c, 0xe1, 0x28, 0x22, 0x4c, 0x17, 0xba, 0x85, 0xbb, 0x09, 0x29, 0xf2, 0x4b, 0x38, 0x0c, 0x29,
	0xc7, 0xe2, 0x3d, 0xf5, 0xd3, 0xc5, 0xff, 0xac, 0x82, 0x8f, 0x0e, 0x74, 0x65, 0x84, 0x4d, 0x30,
	0xdd, 0x57, 0xa8, 0xd0, 0x07, 0x0f, 0x0b, 0x8f, 0x6f, 0x94, 0x9f, 0x15, 0x87, 0x55, 0x4b, 0x19,
	0x4e, 0xb1, 0xe6, 0xbe, 0x56, 0xa2, 0xc3, 0x4e, 0x44, 0x36, 0xc3, 0x76, 0xab, 0xb7, 0xc5, 0x9a,
	0xc2, 0xd9, 0x5b, 0xf8, 0x1d, 0x00, 0xdd, 0xda, 0x86, 0x16, 0xa4, 0x8b, 0xb5, 0x1c, 0x17, 0x75,
	0x21, 0x48, 0xf1, 0xe9, 0x9d, 0x75, 0xdd, 0x49, 0x2e, 0x61, 0x03, 0xcc, 0x0e, 0x94, 0x40, 0xb4,
	0xf2, 0xb0, 0xf0, 0x78, 0xb2, 0x7c, 0x37, 0xa1, 0x27, 0x59, 0x2a, 0x1e, 0x70, 0xe6, 0x87, 0xde,
	0x11, 0x0e, 0xda, 0xc4, 0x9a, 0xe9, 0xca, 0x6a, 0x52, 0x05, 0xff, 0x56, 0x00, 0x0b, 0xc3, 0xcb,
	0x29, 0x5a, 0x95, 0x21, 0x1f, 0xe6, 0x85, 0xdc, 0x47, 0xad, 0x6b, 0xb9, 0x7a, 0x83, 0x21, 0x0f,
	0x2d, 0xe4, 0x0c, 0x79, 0x02, 0x2d, 0x30, 0x3f, 0x18, 0x53, 0x88, 0x5b, 0x04, 0xad, 0x19, 0xbc,
	0xe4, 0xcd, 0x7e, 0xee, 0x6b, 0xdc, 0x22, 0x70, 0x0f, 0xdc, 0xca, 0x32, 0xd3, 0x8a, 0x8b, 0xee,
	0x48, 0xe4, 0xc2, 0x00, 0x72, 0x9d, 0xd2, 0x60, 0x10, 0x98, 0xea, 0xe0, 0xbf, 0x0a, 0xe0, 0x51,
	0xee, 0x44, 0x82, 0xae, 0xc8, 0x04, 0xfe, 0xd1, 0x3c, 0x81, 0x5d, 0xcc, 0xa6, 0xa0, 0x74, 0x07,
	0xc2, 0x48, 0x13, 0xeb, 0xbe, 0x33, 0xf2, 0x39, 0xfc, 0x73, 0xcf, 0xeb, 0x77, 0x67, 0x19, 0x54,
	0x96, 0x01, 0xbe, 0x34, 0x0e, 0x70, 0x07, 0x7b, 0xeb, 0x52, 0xd9, 0x17, 0x55, 0xda, 0x6e, 0xcd,
	0x39, 0x83, 0x8d, 0xf0, 0xdf, 0x05, 0xf0, 0xa9, 0xc1, 0xa4, 0x87, 0x2a, 0x32, 0x9c, 0x63, 0xe3,
	0x70, 0xf6, 0x58, 0xb7, 0x4b, 0x86, 0x85, 0x76, 0xa1, 0x8d, 0xf5, 0xc0, 0x19, 0x6d, 0x00, 0x97,
	0xc0, 0x84, 0x98, 0xba, 0xd0, 0x84, 0xc1, 0x98, 0x93, 0x96, 0xf0, 0x08, 0x4c, 0x66, 0xe6, 0x63,
	0xf4, 0xa1, 0xd1, 0xf7, 0xbe, 0x81, 0x3b, 0x7b, 0xcd, 0xef, 0x09, 0x39, 0x95, 0x51, 0xa7, 0x77,
	0xd6, 0x75, 0x37, 0xb9, 0x84, 0xdb, 0xe0, 0xaa, 0x9a, 0xb6, 0x51, 0x41, 0x22, 0x97, 0xf2, 0x90,
	0xd2, 0x58, 0xf1, 0xe4, 0xa5, 0xa5, 0xf5, 0xf2, 0x73, 0x1f, 0x3e, 0xab, 0xa3, 0x5f, 0x19, 0x7d,
	0xee, 0x9b, 0x1a, 0xd0, 0xcd, 0xf0, 0x81, 0x94, 0x4b, 0x87, 0xc3, 0x1e, 0x5a, 0x88, 0x0c, 0x79,
	0x02, 0x5f, 0x02, 0xe8, 0x11, 0x6a, 0x73, 0xcc, 0x3c, 0xc2, 0x6d, 0xec, 0xb3, 0x88, 0x32, 0x8e,
	0x6a, 0x26, 0xf5, 0xcc, 0x23, 0xf4, 0x50, 0xca, 0x6a, 0x4a, 0x05, 0xb7, 0xc1, 0x6c, 0x86, 0xe5,
	0xe0, 0x90, 0xd3, 0x10, 0xed, 0x18, 0xa0, 0xa6, 0x53, 0x54, 0x5d, 0x8a, 0xe0, 0x06, 0x98, 0xce,
	0x92, 0x7c, 0xde, 0x41, 0xcf, 0x0c, 0x38, 0x53, 0x5d, 0x8e, 0xcf, 0x3b, 0x7d, 0xef, 0xe6, 0xd0,
	0x76, 0xc8, 0x59, 0x07, 0xed, 0x8e, 0xf5, 0x6e, 0x75, 0xa5, 0xea, 0x7f, 0x37, 0xd1, 0xda, 0x41,
	0x1b, 0xe3, 0xbd, 0x9b, 0x14, 0xc1, 0x1d, 0x30, 0x97, 0x21, 0xb9, 0x7e, 0xcc, 0x99, 0xef, 0x70,
	0xb4, 0x69, 0xc0, 0x9a, 0x4d, 0x59, 0x1b, 0x5a, 0x06, 0xbf, 0x05, 0x33, 0x19, 0x5a, 0x8b, 0x70,
	0x46, 0xd1, 0x73, 0x03, 0xd4, 0x8d, 0x14, 0xb5, 0x2b, 0x34, 0xb0, 0x09, 0x1e, 0x65, 0x39, 0x34,
	0xe6, 0x76, 0x1c, 0x11, 0xc7, 0x6f, 0xfa, 0x8e, 0x1d, 0x50, 0x47, 0x4e, 0xe7, 0x68, 0xdb, 0x00,
	0x7c, 0xaf, 0x0b, 0xa6, 0x31, 0x3f, 0xd0, 0x8c, 0x1d, 0x8d, 0x80, 0xbf, 0x01, 0xf3, 0x19, 0x3f,
	0x11, 0x8d, 0xb9, 0xfc, 0x18, 0x5c, 0x82, 0xb6, 0x0c, 0xe0, 0x73, 0x29, 0x7c, 0x5f, 0x2a, 0xeb,
	0xd4, 0x25, 0x7d, 0x09, 0x8d, 0x18, 0x3d, 0xf3, 0x43, 0x87, 0xa0, 0x57, 0x63, 0x25, 0x74, 0x5f,
	0xcb, 0xfa, 0x3a, 0x9a, 0x11, 0x4f, 0xbc, 0xf8, 0x8b, 0xb1, 0x3a, 0xda, 0x92, 0xa2, 0xbe, 0xae,
	0x89, 0xb9, 0xa8, 0x67, 0xf5, 0xb1, 0xba, 0xe6, 0x80, 0xab, 0xca, 0x76, 0x5b, 0xad, 0xaa, 0x8f,
	0x29, 0x3d, 0xf5, 0x43, 0xcf, 0x3e, 0xf7, 0x43, 0x97, 0x9e, 0xdb, 0x2e, 0xee, 0xc4, 0xe8, 0xaa,
	0x04, 0xde, 0x19, 0x00, 0x36, 0x42, 0xbe, 0xb6, 0xa2, 0x78, 0xf3, 0x52, 0xbd, 0xae, 0xc4, 0xdf,
	0x4b, 0xed, 0x06, 0xee, 0xc4, 0xb0, 0x0e, 0xa6, 0x15, 0xd7, 0x21, 0x21, 0x27, 0xcc, 0xf6, 0x5d,
	0x74, 0x2d, 0x9f, 0x36, 0x25, 0x35, 0x75, 0x29, 0x69, 0xb8, 0xf0, 0x15, 0x98, 0xd3, 0x90, 0x13,
	0xe2, 0x9c, 0xda, 0x7e, 0x28, 0xb7, 0x1c, 0xe8, 0x23, 0x93, 0x8f, 0x4c, 0x91, 0x84, 0xae, 0x11,
	0x6e, 0x88, 0x37, 0x7d, 0x0b, 0x16, 0x06, 0x60, 0xdd, 0x92, 0x7e, 0xfd, 0x52, 0x25, 0xfd, 0x56,
	0xaf, 0xb7, 0xa4, 0xbc, 0x3f, 0x01, 0x40, 0xbb, 0x14, 0x45, 0x06, 0x18, 0x84, 0x7d, 0x5d, 0x81,
	0x44, 0x81, 0xf9, 0x06, 0x4c, 0x6a, 0x71, 0x80, 0xe3, 0x18, 0x4d, 0x0e, 0xcf, 0x5e, 0xa5, 0xac,
	0xc4, 0xca, 0x59, 0x5d, 0x98, 0xc3, 0x1a, 0x98, 0xd2, 0x6a, 0x5d, 0x99, 0x3e, 0x36, 0xf0, 0xfe,
	0xb1, 0x02, 0xe8, 0xaa, 0xf4, 0xd7, 0x42, 0x32, 0x36, 0x2e, 0xd8, 0xe8, 0xa1, 0x29, 0x99, 0xb0,
	0xfd, 0x9c, 0x84, 0x6d, 0x0b, 0xbd, 0x48, 0xff, 0x41, 0xa2, 0x4e, 0xd7, 0x3d, 0x17, 0x3f, 0xd2,
	0x03, 0x6a, 0xa0, 0x1d, 0xee, 0x80, 0x9b, 0x2a, 0x98, 0x80, 0x84, 0x9e, 0xda, 0xd0, 0xc5, 0x1c,
	0x77, 0xd0, 0x8d, 0xfc, 0xbc, 0xcc, 0x4a, 0xe1, 0x8e, 0xd4, 0xed, 0x35, 0x0f, 0x38, 0xee, 0xc0,
	0x06, 0x80, 0x99, 0xcd, 0x24, 0x6b, 0x07, 0x44, 0x8c, 0xd0, 0x86, 0xc9, 0x97, 0x28, 0x75, 0x16,
	0xe6, 0xc4, 0x6a, 0x07, 0xa4, 0xe1, 0x8a, 0x2d, 0x47, 0xdf, 0xbe, 0x14, 0xbd, 0x34, 0xda, 0x72,
	0x6c, 0x27, 0xa0, 0xde, 0x94, 0x24, 0x2d, 0xfa, 0x63, 0x48, 0x6e, 0x21, 0x4b, 0x42, 0xce, 0xee,
	0x9b, 0xd1, 0x6b, 0xe9, 0x6a, 0xc3, 0xc4, 0xd5, 0xbe, 0xd0, 0x65, 0xd6, 0x51, 0xfd, 0x8d, 0xfa,
	0x9b, 0xc9, 0xb4, 0xc0, 0xa7, 0xc9, 0x18, 0x54, 0x05, 0x66, 0xda, 0x20, 0x3f, 0x6a, 0x10, 0xaa,
	0xe2, 0x52, 0x02, 0x13, 0x27, 0xb4, 0xcd, 0xd0, 0x4c, 0x7e, 0x1f, 0x49, 0x43, 0xf8, 0x7b, 0x70,
	0xcf, 0x17, 0xdf, 0xbe, 0xde, 0x19, 0x88, 0xb1, 0x76, 0xe2, 0xc7, 0xb6, 0x58, 0x60, 0x84, 0x62,
	0x5d, 0x81, 0x96, 0x73, 0xd7, 0xf4, 0x0b, 0x19, 0xc0, 0x5e, 0x78, 0x78, 0xe2, 0xc7, 0x9b, 0x89,
	0x1a, 0xd6, 0xc0, 0xb5, 0x53, 0xd2, 0x39, 0xa7, 0xcc, 0x45, 0x4f, 0x25, 0xe8, 0xb3, 0xe2, 0xe8,
	0x33, 0xb4, 0xe2, 0x2b, 0x65, 0x6e, 0x25, 0x3a, 0x58, 0x06, 0x1f, 0xca, 0x03, 0x05, 0x34, 0x6b,
	0x90, 0x0b, 0x65, 0x0a, 0xff, 0x00, 0xa6, 0x7a, 0x0e, 0x21, 0x10, 0x94, 0x9d, 0x56, 0xcd, 0xe9,
	0xb4, 0x5d, 0xa1, 0xd9, 0x6b, 0xfe, 0x8e, 0x60, 0x26, 0xfb, 0x2b, 0x73, 0x6f, 0x4d, 0xb6, 0xba,
	0x37, 0x62, 0x2e, 0x88, 0x30, 0xe3, 0x21, 0x61, 0xb6, 0xea, 0x2d, 0xdf, 0x45, 0x73, 0x26, 0x73,
	0x81, 0x56, 0xc9, 0x81, 0xd0, 0x70, 0x61, 0x0b, 0xcc, 0xf4, 0x9f, 0x7c, 0xa0, 0x9b, 0x32, 0xd4,
	0xf5, 0x9c, 0x50, 0xf7, 0xbb, 0xb2, 0x74, 0x30, 0xf7, 0xb5, 0x59, 0xd3, 0x51, 0x6f, 0x03, 0xdc,
	0x07, 0xb7, 0x92, 0xc3, 0x0b, 0xec, 0x79, 0x8c, 0x78, 0x98, 0x53, 0x39, 0x51, 0xdc, 0x1d, 0x12,
	0xfb, 0x77, 0x99, 0x99, 0x62, 0x4e, 0x4b, 0x6b, 0xa9, 0xb2, 0xe1, 0x42, 0x07, 0x3c, 0x48, 0x88,
	0xc7, 0xbe, 0xeb, 0x8a, 0xe9, 0x2c, 0xd9, 0xf0, 0xda, 0x01, 0x39, 0x23, 0xc1, 0x32, 0xfa, 0xb5,
	0x41, 0x5e, 0xee, 0x6a, 0xc8, 0xba, 0x62, 0x24, 0xbb, 0xd7, 0x1d, 0x49, 0xc8, 0x77, 0x52, 0x46,
	0x5f, 0x5f, 0xd2, 0x49, 0x39, 0xdf, 0x49, 0x05, 0x55, 0x2f, 0xe9, 0xa4, 0x92, 0xef, 0x64, 0x05,
	0x3d, 0xb9, 0xa4, 0x93, 0x95, 0x7c, 0x27, 0xab, 0xe8, 0x9b, 0x4b, 0x3a, 0x59, 0x15, 0xb3, 0x5d,
	0xea, 0x84, 0xe1, 0xd0, 0x45, 0xf7, 0x4c, 0x66, 0xbb, 0x04, 0x29, 0x14, 0xd0, 0x07, 0xd3, 0x7d,
	0x67, 0x71, 0xe8, 0xbe, 0x1c, 0xfb, 0x2f, 0xf2, 0xc6, 0xbe, 0x52, 0xd5, 0x95, 0x48, 0x0d, 0xfd,
	0x9e, 0x26, 0xeb, 0x46, 0xd4, 0x73, 0x0f, 0xdf, 0x15, 0xc0, 0x9d, 0x11, 0xe7, 0x7e, 0xe8, 0x81,
	0xf4, 0x7b, 0x34, 0x9e, 0xdf, 0xae, 0xfe, 0x82, 0x10, 0x32, 0x4f, 0xad, 0xdb, 0xd1, 0xb0, 0x47,
	0xf0, 0x2d, 0x98, 0x1d, 0x38, 0x4e, 0x44, 0x0f, 0x8d, 0x66, 0x98, 0xc4, 0x5f, 0x22, 0xeb, 0x09,
	0x22, 0x69, 0xb4, 0x66, 0xa2, 0xbe, 0x16, 0xb8, 0x99, 0x49, 0xbb, 0x5e, 0xa9, 0x3c, 0x32, 0x2a,
	0x5d, 0x09, 0x48, 0xad, 0x55, 0x7e, 0x0b, 0x6e, 0xa7, 0x98, 0x76, 0xcc, 0x69, 0x2b, 0x3d, 0xb6,
	0x21, 0x4b, 0x68, 0xd1, 0x00, 0xf8, 0x49, 0x02, 0x94, 0xea, 0x5a, 0x2a, 0x1e, 0x45, 0x5e, 0x46,
	0x9f, 0xbe, 0x3f, 0x79, 0x79, 0x14, 0xb9, 0x8c, 0x7e, 0xf6, 0xfe, 0xe4, 0xf2, 0x28, 0x72, 0x05,
	0xfd, 0xfc, 0xfd, 0xc9, 0x95, 0x51, 0xe4, 0x15, 0xf4, 0x8b, 0xf7, 0x27, 0xaf, 0x88, 0x5d, 0x79,
	0x42, 0xf6, 0x39, 0x69, 0x89, 0x79, 0xe0, 0x33, 0x93, 0x5d, 0xb9, 0x16, 0x35, 0x38, 0x69, 0x35,
	0x5c, 0xb8, 0x05, 0x92, 0x21, 0x66, 0x07, 0x38, 0xf4, 0xda, 0xd8, 0x23, 0xe8, 0xb1, 0xc9, 0xaa,
	0x4e, 0xab, 0x76, 0xb4, 0x48, 0xec, 0xfb, 0x12, 0x50, 0x8b, 0x30, 0xf1, 0x95, 0x72, 0x11, 0xd2,
	0x2f, 0x0d, 0xa6, 0xa6, 0xe4, 0x1b, 0xda, 0xd5, 0xba, 0x86, 0x2b, 0x67, 0x68, 0x4d, 0x8b, 0x39,
	0x65, 0x72, 0xb1, 0xf9, 0xf9, 0x18, 0xc3, 0xfc, 0x40, 0x88, 0x1a, 0x6e, 0xb6, 0xce, 0x71, 0x9f,
	0x07, 0x04, 0x7d, 0x31, 0x46, 0x9d, 0x3b, 0x14, 0x8a, 0x6c, 0x9e, 0xc5, 0x04, 0x6f, 0x07, 0xcb,
	0xe8, 0xcb, 0x31, 0xf2, 0x2c, 0x66, 0xee, 0x9d, 0xe5, 0x41, 0x4a, 0x19, 0x7d, 0x35, 0x2e, 0xa5,
	0x3c, 0x48, 0xa9, 0xa0, 0xe2, 0xb8, 0x94, 0xca, 0x20, 0x65, 0x05, 0x95, 0xc6, 0xa5, 0xac, 0x0c,
	0x52, 0x56, 0xd1, 0xd2, 0xb8, 0x94, 0x55, 0xb8, 0x06, 0xae, 0xbd, 0x6d, 0x63, 0xc6, 0x09, 0x43,
	0xb7, 0x0c, 0xd4, 0x89, 0x31, 0xfc, 0x7b, 0x01, 0x3c, 0xc8, 0xf9, 0x49, 0x06, 0x7d, 0x2b, 0x0b,
	0xf1, 0x0f, 0x39, 0x85, 0xf8, 0x40, 0x52, 0x36, 0x25, 0xc4, 0x52, 0x8c, 0x7d, 0xec, 0x75, 0xf7,
	0x18, 0x23, 0x9e, 0x5b, 0x77, 0xe2, 0xe1, 0x0f, 0xe1, 0x5f, 0xc0, 0xfc, 0xc5, 0xbf, 0xf7, 0xa0,
	0x79, 0xa3, 0x93, 0x66, 0xe5, 0xf8, 0x90, 0xb0, 0xd6, 0xae, 0x90, 0xf6, 0x05, 0xd4, 0xd3, 0x6e,
	0xcd, 0xc5, 0x83, 0x8d, 0xf0, 0x05, 0x98, 0x88, 0x03, 0xca, 0xd1, 0x27, 0xd2, 0xdd, 0x97, 0x79,
	0xee, 0x02, 0xaa, 0xb6, 0x39, 0xe2, 0xc2, 0x92, 0x4a, 0xd1, 0x3b, 0xe7, 0xe4, 0x58, 0x64, 0x14,
	0xad, 0x9b, 0xf4, 0x8e, 0x36, 0x86, 0x4b, 0x60, 0x42, 0x1e, 0x12, 0x20, 0x93, 0x03, 0x63, 0x61,
	0x29, 0x76, 0x3e, 0x72, 0xa5, 0x7f, 0xdb, 0x60, 0xe7, 0x23, 0x0c, 0x17, 0xdf, 0x15, 0xc0, 0x35,
	0xbd, 0xd9, 0x80, 0x2f, 0x01, 0xc4, 0xae, 0xed, 0x31, 0xda, 0x8e, 0x6c, 0xfd, 0x23, 0x3d, 0x0d,
	0xe5, 0x09, 0x71, 0xee, 0xa9, 0x07, 0x76, 0xb7, 0x84, 0xac, 0x9e, 0xa8, 0xe0, 0x73, 0x30, 0xe1,
	0x87, 0x4d, 0x2a, 0x7f, 0xae, 0x98, 0x2c, 0x7f, 0x61, 0xb8, 0xdf, 0x69, 0x84, 0x4d, 0x6a, 0x49,
	0xe1, 0xfa, 0xff, 0x0a, 0x60, 0xd1, 0xa1, 0xad, 0x1c, 0xe1, 0xfa, 0x54, 0xf2, 0x13, 0xdc, 0xbe,
	0x88, 0x6b, 0xbf, 0xf0, 0xc3, 0x86, 0x16, 0x78, 0x54, 0x14, 0xe2, 0x22, 0x65, 0x5e, 0xc9, 0x23,
	0xa1, 0x8c, 0x3a, 0xf9, 0x39, 0x30, 0xf2, 0xe3, 0x61, 0xff, 0x9c, 0xf0, 0x44, 0xfd, 0xf9, 0xc7,
	0x95, 0x0f, 0xb6, 0x6a, 0xb5, 0x7f, 0x5e, 0xb9, 0xbf, 0xa5, 0x60, 0x35, 0x37, 0x2e, 0xaa, 0x4b,
	0x71, 0x75, 0x54, 0x2e, 0xd6, 0xa5, 0xd9, 0x7f, 0x13, 0x83, 0x37, 0x35, 0x37, 0x7e, 0x93, 0x1a,
	0xbc, 0x39, 0x2a, 0xbf, 0x51, 0x06, 0xff, 0xbf, 0xb2, 0xa8, 0x5a, 0xab, 0xd5, 0x9a, 0x1b, 0x57,
	0xab, 0xa9, 0x49, 0xb5, 0x7a, 0x54, 0xae, 0x56, 0x95, 0xd1, 0xf1, 0x55, 0x19, 0x5d, 0xe5, 0xa7,
	0x00, 0x00, 0x00, 0xff, 0xff, 0x04, 0xa2, 0x3a, 0x79, 0x88, 0x21, 0x00, 0x00,
}
