You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1366 lines
60 KiB

  1. // Code generated by protoc-gen-go. DO NOT EDIT.
  2. // source: google/ads/googleads/v1/resources/campaign.proto
  3. package resources // import "google.golang.org/genproto/googleapis/ads/googleads/v1/resources"
  4. import proto "github.com/golang/protobuf/proto"
  5. import fmt "fmt"
  6. import math "math"
  7. import wrappers "github.com/golang/protobuf/ptypes/wrappers"
  8. import common "google.golang.org/genproto/googleapis/ads/googleads/v1/common"
  9. import enums "google.golang.org/genproto/googleapis/ads/googleads/v1/enums"
  10. import _ "google.golang.org/genproto/googleapis/api/annotations"
  11. // Reference imports to suppress errors if they are not otherwise used.
  12. var _ = proto.Marshal
  13. var _ = fmt.Errorf
  14. var _ = math.Inf
  15. // This is a compile-time assertion to ensure that this generated file
  16. // is compatible with the proto package it is being compiled against.
  17. // A compilation error at this line likely means your copy of the
  18. // proto package needs to be updated.
  19. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
  20. // A campaign.
  21. type Campaign struct {
  22. // The resource name of the campaign.
  23. // Campaign resource names have the form:
  24. //
  25. // `customers/{customer_id}/campaigns/{campaign_id}`
  26. ResourceName string `protobuf:"bytes,1,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
  27. // The ID of the campaign.
  28. Id *wrappers.Int64Value `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
  29. // The name of the campaign.
  30. //
  31. // This field is required and should not be empty when creating new
  32. // campaigns.
  33. //
  34. // It must not contain any null (code point 0x0), NL line feed
  35. // (code point 0xA) or carriage return (code point 0xD) characters.
  36. Name *wrappers.StringValue `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
  37. // The status of the campaign.
  38. //
  39. // When a new campaign is added, the status defaults to ENABLED.
  40. Status enums.CampaignStatusEnum_CampaignStatus `protobuf:"varint,5,opt,name=status,proto3,enum=google.ads.googleads.v1.enums.CampaignStatusEnum_CampaignStatus" json:"status,omitempty"`
  41. // The ad serving status of the campaign.
  42. ServingStatus enums.CampaignServingStatusEnum_CampaignServingStatus `protobuf:"varint,21,opt,name=serving_status,json=servingStatus,proto3,enum=google.ads.googleads.v1.enums.CampaignServingStatusEnum_CampaignServingStatus" json:"serving_status,omitempty"`
  43. // The ad serving optimization status of the campaign.
  44. AdServingOptimizationStatus enums.AdServingOptimizationStatusEnum_AdServingOptimizationStatus `protobuf:"varint,8,opt,name=ad_serving_optimization_status,json=adServingOptimizationStatus,proto3,enum=google.ads.googleads.v1.enums.AdServingOptimizationStatusEnum_AdServingOptimizationStatus" json:"ad_serving_optimization_status,omitempty"`
  45. // The primary serving target for ads within the campaign.
  46. // The targeting options can be refined in `network_settings`.
  47. //
  48. // This field is required and should not be empty when creating new
  49. // campaigns.
  50. //
  51. // Can be set only when creating campaigns.
  52. // After the campaign is created, the field can not be changed.
  53. AdvertisingChannelType enums.AdvertisingChannelTypeEnum_AdvertisingChannelType `protobuf:"varint,9,opt,name=advertising_channel_type,json=advertisingChannelType,proto3,enum=google.ads.googleads.v1.enums.AdvertisingChannelTypeEnum_AdvertisingChannelType" json:"advertising_channel_type,omitempty"`
  54. // Optional refinement to `advertising_channel_type`.
  55. // Must be a valid sub-type of the parent channel type.
  56. //
  57. // Can be set only when creating campaigns.
  58. // After campaign is created, the field can not be changed.
  59. AdvertisingChannelSubType enums.AdvertisingChannelSubTypeEnum_AdvertisingChannelSubType `protobuf:"varint,10,opt,name=advertising_channel_sub_type,json=advertisingChannelSubType,proto3,enum=google.ads.googleads.v1.enums.AdvertisingChannelSubTypeEnum_AdvertisingChannelSubType" json:"advertising_channel_sub_type,omitempty"`
  60. // The URL template for constructing a tracking URL.
  61. TrackingUrlTemplate *wrappers.StringValue `protobuf:"bytes,11,opt,name=tracking_url_template,json=trackingUrlTemplate,proto3" json:"tracking_url_template,omitempty"`
  62. // The list of mappings used to substitute custom parameter tags in a
  63. // `tracking_url_template`, `final_urls`, or `mobile_final_urls`.
  64. UrlCustomParameters []*common.CustomParameter `protobuf:"bytes,12,rep,name=url_custom_parameters,json=urlCustomParameters,proto3" json:"url_custom_parameters,omitempty"`
  65. // Settings for Real-Time Bidding, a feature only available for campaigns
  66. // targeting the Ad Exchange network.
  67. RealTimeBiddingSetting *common.RealTimeBiddingSetting `protobuf:"bytes,39,opt,name=real_time_bidding_setting,json=realTimeBiddingSetting,proto3" json:"real_time_bidding_setting,omitempty"`
  68. // The network settings for the campaign.
  69. NetworkSettings *Campaign_NetworkSettings `protobuf:"bytes,14,opt,name=network_settings,json=networkSettings,proto3" json:"network_settings,omitempty"`
  70. // The hotel setting for the campaign.
  71. HotelSetting *Campaign_HotelSettingInfo `protobuf:"bytes,32,opt,name=hotel_setting,json=hotelSetting,proto3" json:"hotel_setting,omitempty"`
  72. // The setting for controlling Dynamic Search Ads (DSA).
  73. DynamicSearchAdsSetting *Campaign_DynamicSearchAdsSetting `protobuf:"bytes,33,opt,name=dynamic_search_ads_setting,json=dynamicSearchAdsSetting,proto3" json:"dynamic_search_ads_setting,omitempty"`
  74. // The setting for controlling Shopping campaigns.
  75. ShoppingSetting *Campaign_ShoppingSetting `protobuf:"bytes,36,opt,name=shopping_setting,json=shoppingSetting,proto3" json:"shopping_setting,omitempty"`
  76. // Setting for targeting related features.
  77. TargetingSetting *common.TargetingSetting `protobuf:"bytes,43,opt,name=targeting_setting,json=targetingSetting,proto3" json:"targeting_setting,omitempty"`
  78. // The setting for ads geotargeting.
  79. GeoTargetTypeSetting *Campaign_GeoTargetTypeSetting `protobuf:"bytes,47,opt,name=geo_target_type_setting,json=geoTargetTypeSetting,proto3" json:"geo_target_type_setting,omitempty"`
  80. // The budget of the campaign.
  81. CampaignBudget *wrappers.StringValue `protobuf:"bytes,6,opt,name=campaign_budget,json=campaignBudget,proto3" json:"campaign_budget,omitempty"`
  82. // The type of bidding strategy.
  83. //
  84. // A bidding strategy can be created by setting either the bidding scheme to
  85. // create a standard bidding strategy or the `bidding_strategy` field to
  86. // create a portfolio bidding strategy.
  87. //
  88. // This field is read-only.
  89. BiddingStrategyType enums.BiddingStrategyTypeEnum_BiddingStrategyType `protobuf:"varint,22,opt,name=bidding_strategy_type,json=biddingStrategyType,proto3,enum=google.ads.googleads.v1.enums.BiddingStrategyTypeEnum_BiddingStrategyType" json:"bidding_strategy_type,omitempty"`
  90. // The date when campaign started.
  91. //
  92. // This field must not be used in WHERE clauses.
  93. StartDate *wrappers.StringValue `protobuf:"bytes,19,opt,name=start_date,json=startDate,proto3" json:"start_date,omitempty"`
  94. // The date when campaign ended.
  95. //
  96. // This field must not be used in WHERE clauses.
  97. EndDate *wrappers.StringValue `protobuf:"bytes,20,opt,name=end_date,json=endDate,proto3" json:"end_date,omitempty"`
  98. // Suffix used to append query parameters to landing pages that are served
  99. // with parallel tracking.
  100. FinalUrlSuffix *wrappers.StringValue `protobuf:"bytes,38,opt,name=final_url_suffix,json=finalUrlSuffix,proto3" json:"final_url_suffix,omitempty"`
  101. // A list that limits how often each user will see this campaign's ads.
  102. FrequencyCaps []*common.FrequencyCapEntry `protobuf:"bytes,40,rep,name=frequency_caps,json=frequencyCaps,proto3" json:"frequency_caps,omitempty"`
  103. // 3-Tier Brand Safety setting for the campaign.
  104. VideoBrandSafetySuitability enums.BrandSafetySuitabilityEnum_BrandSafetySuitability `protobuf:"varint,42,opt,name=video_brand_safety_suitability,json=videoBrandSafetySuitability,proto3,enum=google.ads.googleads.v1.enums.BrandSafetySuitabilityEnum_BrandSafetySuitability" json:"video_brand_safety_suitability,omitempty"`
  105. // Describes how unbranded pharma ads will be displayed.
  106. VanityPharma *Campaign_VanityPharma `protobuf:"bytes,44,opt,name=vanity_pharma,json=vanityPharma,proto3" json:"vanity_pharma,omitempty"`
  107. // Selective optimization setting for this campaign, which includes a set of
  108. // conversion actions to optimize this campaign towards.
  109. SelectiveOptimization *Campaign_SelectiveOptimization `protobuf:"bytes,45,opt,name=selective_optimization,json=selectiveOptimization,proto3" json:"selective_optimization,omitempty"`
  110. // Campaign level settings for tracking information.
  111. TrackingSetting *Campaign_TrackingSetting `protobuf:"bytes,46,opt,name=tracking_setting,json=trackingSetting,proto3" json:"tracking_setting,omitempty"`
  112. // The bidding strategy for the campaign.
  113. //
  114. // Must be either portfolio (created via BiddingStrategy service) or
  115. // standard, that is embedded into the campaign.
  116. //
  117. // Types that are valid to be assigned to CampaignBiddingStrategy:
  118. // *Campaign_BiddingStrategy
  119. // *Campaign_ManualCpc
  120. // *Campaign_ManualCpm
  121. // *Campaign_ManualCpv
  122. // *Campaign_MaximizeConversions
  123. // *Campaign_MaximizeConversionValue
  124. // *Campaign_TargetCpa
  125. // *Campaign_TargetImpressionShare
  126. // *Campaign_TargetRoas
  127. // *Campaign_TargetSpend
  128. // *Campaign_PercentCpc
  129. // *Campaign_TargetCpm
  130. CampaignBiddingStrategy isCampaign_CampaignBiddingStrategy `protobuf_oneof:"campaign_bidding_strategy"`
  131. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  132. XXX_unrecognized []byte `json:"-"`
  133. XXX_sizecache int32 `json:"-"`
  134. }
  135. func (m *Campaign) Reset() { *m = Campaign{} }
  136. func (m *Campaign) String() string { return proto.CompactTextString(m) }
  137. func (*Campaign) ProtoMessage() {}
  138. func (*Campaign) Descriptor() ([]byte, []int) {
  139. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0}
  140. }
  141. func (m *Campaign) XXX_Unmarshal(b []byte) error {
  142. return xxx_messageInfo_Campaign.Unmarshal(m, b)
  143. }
  144. func (m *Campaign) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  145. return xxx_messageInfo_Campaign.Marshal(b, m, deterministic)
  146. }
  147. func (dst *Campaign) XXX_Merge(src proto.Message) {
  148. xxx_messageInfo_Campaign.Merge(dst, src)
  149. }
  150. func (m *Campaign) XXX_Size() int {
  151. return xxx_messageInfo_Campaign.Size(m)
  152. }
  153. func (m *Campaign) XXX_DiscardUnknown() {
  154. xxx_messageInfo_Campaign.DiscardUnknown(m)
  155. }
  156. var xxx_messageInfo_Campaign proto.InternalMessageInfo
  157. func (m *Campaign) GetResourceName() string {
  158. if m != nil {
  159. return m.ResourceName
  160. }
  161. return ""
  162. }
  163. func (m *Campaign) GetId() *wrappers.Int64Value {
  164. if m != nil {
  165. return m.Id
  166. }
  167. return nil
  168. }
  169. func (m *Campaign) GetName() *wrappers.StringValue {
  170. if m != nil {
  171. return m.Name
  172. }
  173. return nil
  174. }
  175. func (m *Campaign) GetStatus() enums.CampaignStatusEnum_CampaignStatus {
  176. if m != nil {
  177. return m.Status
  178. }
  179. return enums.CampaignStatusEnum_UNSPECIFIED
  180. }
  181. func (m *Campaign) GetServingStatus() enums.CampaignServingStatusEnum_CampaignServingStatus {
  182. if m != nil {
  183. return m.ServingStatus
  184. }
  185. return enums.CampaignServingStatusEnum_UNSPECIFIED
  186. }
  187. func (m *Campaign) GetAdServingOptimizationStatus() enums.AdServingOptimizationStatusEnum_AdServingOptimizationStatus {
  188. if m != nil {
  189. return m.AdServingOptimizationStatus
  190. }
  191. return enums.AdServingOptimizationStatusEnum_UNSPECIFIED
  192. }
  193. func (m *Campaign) GetAdvertisingChannelType() enums.AdvertisingChannelTypeEnum_AdvertisingChannelType {
  194. if m != nil {
  195. return m.AdvertisingChannelType
  196. }
  197. return enums.AdvertisingChannelTypeEnum_UNSPECIFIED
  198. }
  199. func (m *Campaign) GetAdvertisingChannelSubType() enums.AdvertisingChannelSubTypeEnum_AdvertisingChannelSubType {
  200. if m != nil {
  201. return m.AdvertisingChannelSubType
  202. }
  203. return enums.AdvertisingChannelSubTypeEnum_UNSPECIFIED
  204. }
  205. func (m *Campaign) GetTrackingUrlTemplate() *wrappers.StringValue {
  206. if m != nil {
  207. return m.TrackingUrlTemplate
  208. }
  209. return nil
  210. }
  211. func (m *Campaign) GetUrlCustomParameters() []*common.CustomParameter {
  212. if m != nil {
  213. return m.UrlCustomParameters
  214. }
  215. return nil
  216. }
  217. func (m *Campaign) GetRealTimeBiddingSetting() *common.RealTimeBiddingSetting {
  218. if m != nil {
  219. return m.RealTimeBiddingSetting
  220. }
  221. return nil
  222. }
  223. func (m *Campaign) GetNetworkSettings() *Campaign_NetworkSettings {
  224. if m != nil {
  225. return m.NetworkSettings
  226. }
  227. return nil
  228. }
  229. func (m *Campaign) GetHotelSetting() *Campaign_HotelSettingInfo {
  230. if m != nil {
  231. return m.HotelSetting
  232. }
  233. return nil
  234. }
  235. func (m *Campaign) GetDynamicSearchAdsSetting() *Campaign_DynamicSearchAdsSetting {
  236. if m != nil {
  237. return m.DynamicSearchAdsSetting
  238. }
  239. return nil
  240. }
  241. func (m *Campaign) GetShoppingSetting() *Campaign_ShoppingSetting {
  242. if m != nil {
  243. return m.ShoppingSetting
  244. }
  245. return nil
  246. }
  247. func (m *Campaign) GetTargetingSetting() *common.TargetingSetting {
  248. if m != nil {
  249. return m.TargetingSetting
  250. }
  251. return nil
  252. }
  253. func (m *Campaign) GetGeoTargetTypeSetting() *Campaign_GeoTargetTypeSetting {
  254. if m != nil {
  255. return m.GeoTargetTypeSetting
  256. }
  257. return nil
  258. }
  259. func (m *Campaign) GetCampaignBudget() *wrappers.StringValue {
  260. if m != nil {
  261. return m.CampaignBudget
  262. }
  263. return nil
  264. }
  265. func (m *Campaign) GetBiddingStrategyType() enums.BiddingStrategyTypeEnum_BiddingStrategyType {
  266. if m != nil {
  267. return m.BiddingStrategyType
  268. }
  269. return enums.BiddingStrategyTypeEnum_UNSPECIFIED
  270. }
  271. func (m *Campaign) GetStartDate() *wrappers.StringValue {
  272. if m != nil {
  273. return m.StartDate
  274. }
  275. return nil
  276. }
  277. func (m *Campaign) GetEndDate() *wrappers.StringValue {
  278. if m != nil {
  279. return m.EndDate
  280. }
  281. return nil
  282. }
  283. func (m *Campaign) GetFinalUrlSuffix() *wrappers.StringValue {
  284. if m != nil {
  285. return m.FinalUrlSuffix
  286. }
  287. return nil
  288. }
  289. func (m *Campaign) GetFrequencyCaps() []*common.FrequencyCapEntry {
  290. if m != nil {
  291. return m.FrequencyCaps
  292. }
  293. return nil
  294. }
  295. func (m *Campaign) GetVideoBrandSafetySuitability() enums.BrandSafetySuitabilityEnum_BrandSafetySuitability {
  296. if m != nil {
  297. return m.VideoBrandSafetySuitability
  298. }
  299. return enums.BrandSafetySuitabilityEnum_UNSPECIFIED
  300. }
  301. func (m *Campaign) GetVanityPharma() *Campaign_VanityPharma {
  302. if m != nil {
  303. return m.VanityPharma
  304. }
  305. return nil
  306. }
  307. func (m *Campaign) GetSelectiveOptimization() *Campaign_SelectiveOptimization {
  308. if m != nil {
  309. return m.SelectiveOptimization
  310. }
  311. return nil
  312. }
  313. func (m *Campaign) GetTrackingSetting() *Campaign_TrackingSetting {
  314. if m != nil {
  315. return m.TrackingSetting
  316. }
  317. return nil
  318. }
  319. type isCampaign_CampaignBiddingStrategy interface {
  320. isCampaign_CampaignBiddingStrategy()
  321. }
  322. type Campaign_BiddingStrategy struct {
  323. BiddingStrategy *wrappers.StringValue `protobuf:"bytes,23,opt,name=bidding_strategy,json=biddingStrategy,proto3,oneof"`
  324. }
  325. type Campaign_ManualCpc struct {
  326. ManualCpc *common.ManualCpc `protobuf:"bytes,24,opt,name=manual_cpc,json=manualCpc,proto3,oneof"`
  327. }
  328. type Campaign_ManualCpm struct {
  329. ManualCpm *common.ManualCpm `protobuf:"bytes,25,opt,name=manual_cpm,json=manualCpm,proto3,oneof"`
  330. }
  331. type Campaign_ManualCpv struct {
  332. ManualCpv *common.ManualCpv `protobuf:"bytes,37,opt,name=manual_cpv,json=manualCpv,proto3,oneof"`
  333. }
  334. type Campaign_MaximizeConversions struct {
  335. MaximizeConversions *common.MaximizeConversions `protobuf:"bytes,30,opt,name=maximize_conversions,json=maximizeConversions,proto3,oneof"`
  336. }
  337. type Campaign_MaximizeConversionValue struct {
  338. MaximizeConversionValue *common.MaximizeConversionValue `protobuf:"bytes,31,opt,name=maximize_conversion_value,json=maximizeConversionValue,proto3,oneof"`
  339. }
  340. type Campaign_TargetCpa struct {
  341. TargetCpa *common.TargetCpa `protobuf:"bytes,26,opt,name=target_cpa,json=targetCpa,proto3,oneof"`
  342. }
  343. type Campaign_TargetImpressionShare struct {
  344. TargetImpressionShare *common.TargetImpressionShare `protobuf:"bytes,48,opt,name=target_impression_share,json=targetImpressionShare,proto3,oneof"`
  345. }
  346. type Campaign_TargetRoas struct {
  347. TargetRoas *common.TargetRoas `protobuf:"bytes,29,opt,name=target_roas,json=targetRoas,proto3,oneof"`
  348. }
  349. type Campaign_TargetSpend struct {
  350. TargetSpend *common.TargetSpend `protobuf:"bytes,27,opt,name=target_spend,json=targetSpend,proto3,oneof"`
  351. }
  352. type Campaign_PercentCpc struct {
  353. PercentCpc *common.PercentCpc `protobuf:"bytes,34,opt,name=percent_cpc,json=percentCpc,proto3,oneof"`
  354. }
  355. type Campaign_TargetCpm struct {
  356. TargetCpm *common.TargetCpm `protobuf:"bytes,41,opt,name=target_cpm,json=targetCpm,proto3,oneof"`
  357. }
  358. func (*Campaign_BiddingStrategy) isCampaign_CampaignBiddingStrategy() {}
  359. func (*Campaign_ManualCpc) isCampaign_CampaignBiddingStrategy() {}
  360. func (*Campaign_ManualCpm) isCampaign_CampaignBiddingStrategy() {}
  361. func (*Campaign_ManualCpv) isCampaign_CampaignBiddingStrategy() {}
  362. func (*Campaign_MaximizeConversions) isCampaign_CampaignBiddingStrategy() {}
  363. func (*Campaign_MaximizeConversionValue) isCampaign_CampaignBiddingStrategy() {}
  364. func (*Campaign_TargetCpa) isCampaign_CampaignBiddingStrategy() {}
  365. func (*Campaign_TargetImpressionShare) isCampaign_CampaignBiddingStrategy() {}
  366. func (*Campaign_TargetRoas) isCampaign_CampaignBiddingStrategy() {}
  367. func (*Campaign_TargetSpend) isCampaign_CampaignBiddingStrategy() {}
  368. func (*Campaign_PercentCpc) isCampaign_CampaignBiddingStrategy() {}
  369. func (*Campaign_TargetCpm) isCampaign_CampaignBiddingStrategy() {}
  370. func (m *Campaign) GetCampaignBiddingStrategy() isCampaign_CampaignBiddingStrategy {
  371. if m != nil {
  372. return m.CampaignBiddingStrategy
  373. }
  374. return nil
  375. }
  376. func (m *Campaign) GetBiddingStrategy() *wrappers.StringValue {
  377. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_BiddingStrategy); ok {
  378. return x.BiddingStrategy
  379. }
  380. return nil
  381. }
  382. func (m *Campaign) GetManualCpc() *common.ManualCpc {
  383. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_ManualCpc); ok {
  384. return x.ManualCpc
  385. }
  386. return nil
  387. }
  388. func (m *Campaign) GetManualCpm() *common.ManualCpm {
  389. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_ManualCpm); ok {
  390. return x.ManualCpm
  391. }
  392. return nil
  393. }
  394. func (m *Campaign) GetManualCpv() *common.ManualCpv {
  395. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_ManualCpv); ok {
  396. return x.ManualCpv
  397. }
  398. return nil
  399. }
  400. func (m *Campaign) GetMaximizeConversions() *common.MaximizeConversions {
  401. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_MaximizeConversions); ok {
  402. return x.MaximizeConversions
  403. }
  404. return nil
  405. }
  406. func (m *Campaign) GetMaximizeConversionValue() *common.MaximizeConversionValue {
  407. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_MaximizeConversionValue); ok {
  408. return x.MaximizeConversionValue
  409. }
  410. return nil
  411. }
  412. func (m *Campaign) GetTargetCpa() *common.TargetCpa {
  413. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_TargetCpa); ok {
  414. return x.TargetCpa
  415. }
  416. return nil
  417. }
  418. func (m *Campaign) GetTargetImpressionShare() *common.TargetImpressionShare {
  419. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_TargetImpressionShare); ok {
  420. return x.TargetImpressionShare
  421. }
  422. return nil
  423. }
  424. func (m *Campaign) GetTargetRoas() *common.TargetRoas {
  425. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_TargetRoas); ok {
  426. return x.TargetRoas
  427. }
  428. return nil
  429. }
  430. func (m *Campaign) GetTargetSpend() *common.TargetSpend {
  431. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_TargetSpend); ok {
  432. return x.TargetSpend
  433. }
  434. return nil
  435. }
  436. func (m *Campaign) GetPercentCpc() *common.PercentCpc {
  437. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_PercentCpc); ok {
  438. return x.PercentCpc
  439. }
  440. return nil
  441. }
  442. func (m *Campaign) GetTargetCpm() *common.TargetCpm {
  443. if x, ok := m.GetCampaignBiddingStrategy().(*Campaign_TargetCpm); ok {
  444. return x.TargetCpm
  445. }
  446. return nil
  447. }
  448. // XXX_OneofFuncs is for the internal use of the proto package.
  449. func (*Campaign) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
  450. return _Campaign_OneofMarshaler, _Campaign_OneofUnmarshaler, _Campaign_OneofSizer, []interface{}{
  451. (*Campaign_BiddingStrategy)(nil),
  452. (*Campaign_ManualCpc)(nil),
  453. (*Campaign_ManualCpm)(nil),
  454. (*Campaign_ManualCpv)(nil),
  455. (*Campaign_MaximizeConversions)(nil),
  456. (*Campaign_MaximizeConversionValue)(nil),
  457. (*Campaign_TargetCpa)(nil),
  458. (*Campaign_TargetImpressionShare)(nil),
  459. (*Campaign_TargetRoas)(nil),
  460. (*Campaign_TargetSpend)(nil),
  461. (*Campaign_PercentCpc)(nil),
  462. (*Campaign_TargetCpm)(nil),
  463. }
  464. }
  465. func _Campaign_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
  466. m := msg.(*Campaign)
  467. // campaign_bidding_strategy
  468. switch x := m.CampaignBiddingStrategy.(type) {
  469. case *Campaign_BiddingStrategy:
  470. b.EncodeVarint(23<<3 | proto.WireBytes)
  471. if err := b.EncodeMessage(x.BiddingStrategy); err != nil {
  472. return err
  473. }
  474. case *Campaign_ManualCpc:
  475. b.EncodeVarint(24<<3 | proto.WireBytes)
  476. if err := b.EncodeMessage(x.ManualCpc); err != nil {
  477. return err
  478. }
  479. case *Campaign_ManualCpm:
  480. b.EncodeVarint(25<<3 | proto.WireBytes)
  481. if err := b.EncodeMessage(x.ManualCpm); err != nil {
  482. return err
  483. }
  484. case *Campaign_ManualCpv:
  485. b.EncodeVarint(37<<3 | proto.WireBytes)
  486. if err := b.EncodeMessage(x.ManualCpv); err != nil {
  487. return err
  488. }
  489. case *Campaign_MaximizeConversions:
  490. b.EncodeVarint(30<<3 | proto.WireBytes)
  491. if err := b.EncodeMessage(x.MaximizeConversions); err != nil {
  492. return err
  493. }
  494. case *Campaign_MaximizeConversionValue:
  495. b.EncodeVarint(31<<3 | proto.WireBytes)
  496. if err := b.EncodeMessage(x.MaximizeConversionValue); err != nil {
  497. return err
  498. }
  499. case *Campaign_TargetCpa:
  500. b.EncodeVarint(26<<3 | proto.WireBytes)
  501. if err := b.EncodeMessage(x.TargetCpa); err != nil {
  502. return err
  503. }
  504. case *Campaign_TargetImpressionShare:
  505. b.EncodeVarint(48<<3 | proto.WireBytes)
  506. if err := b.EncodeMessage(x.TargetImpressionShare); err != nil {
  507. return err
  508. }
  509. case *Campaign_TargetRoas:
  510. b.EncodeVarint(29<<3 | proto.WireBytes)
  511. if err := b.EncodeMessage(x.TargetRoas); err != nil {
  512. return err
  513. }
  514. case *Campaign_TargetSpend:
  515. b.EncodeVarint(27<<3 | proto.WireBytes)
  516. if err := b.EncodeMessage(x.TargetSpend); err != nil {
  517. return err
  518. }
  519. case *Campaign_PercentCpc:
  520. b.EncodeVarint(34<<3 | proto.WireBytes)
  521. if err := b.EncodeMessage(x.PercentCpc); err != nil {
  522. return err
  523. }
  524. case *Campaign_TargetCpm:
  525. b.EncodeVarint(41<<3 | proto.WireBytes)
  526. if err := b.EncodeMessage(x.TargetCpm); err != nil {
  527. return err
  528. }
  529. case nil:
  530. default:
  531. return fmt.Errorf("Campaign.CampaignBiddingStrategy has unexpected type %T", x)
  532. }
  533. return nil
  534. }
  535. func _Campaign_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
  536. m := msg.(*Campaign)
  537. switch tag {
  538. case 23: // campaign_bidding_strategy.bidding_strategy
  539. if wire != proto.WireBytes {
  540. return true, proto.ErrInternalBadWireType
  541. }
  542. msg := new(wrappers.StringValue)
  543. err := b.DecodeMessage(msg)
  544. m.CampaignBiddingStrategy = &Campaign_BiddingStrategy{msg}
  545. return true, err
  546. case 24: // campaign_bidding_strategy.manual_cpc
  547. if wire != proto.WireBytes {
  548. return true, proto.ErrInternalBadWireType
  549. }
  550. msg := new(common.ManualCpc)
  551. err := b.DecodeMessage(msg)
  552. m.CampaignBiddingStrategy = &Campaign_ManualCpc{msg}
  553. return true, err
  554. case 25: // campaign_bidding_strategy.manual_cpm
  555. if wire != proto.WireBytes {
  556. return true, proto.ErrInternalBadWireType
  557. }
  558. msg := new(common.ManualCpm)
  559. err := b.DecodeMessage(msg)
  560. m.CampaignBiddingStrategy = &Campaign_ManualCpm{msg}
  561. return true, err
  562. case 37: // campaign_bidding_strategy.manual_cpv
  563. if wire != proto.WireBytes {
  564. return true, proto.ErrInternalBadWireType
  565. }
  566. msg := new(common.ManualCpv)
  567. err := b.DecodeMessage(msg)
  568. m.CampaignBiddingStrategy = &Campaign_ManualCpv{msg}
  569. return true, err
  570. case 30: // campaign_bidding_strategy.maximize_conversions
  571. if wire != proto.WireBytes {
  572. return true, proto.ErrInternalBadWireType
  573. }
  574. msg := new(common.MaximizeConversions)
  575. err := b.DecodeMessage(msg)
  576. m.CampaignBiddingStrategy = &Campaign_MaximizeConversions{msg}
  577. return true, err
  578. case 31: // campaign_bidding_strategy.maximize_conversion_value
  579. if wire != proto.WireBytes {
  580. return true, proto.ErrInternalBadWireType
  581. }
  582. msg := new(common.MaximizeConversionValue)
  583. err := b.DecodeMessage(msg)
  584. m.CampaignBiddingStrategy = &Campaign_MaximizeConversionValue{msg}
  585. return true, err
  586. case 26: // campaign_bidding_strategy.target_cpa
  587. if wire != proto.WireBytes {
  588. return true, proto.ErrInternalBadWireType
  589. }
  590. msg := new(common.TargetCpa)
  591. err := b.DecodeMessage(msg)
  592. m.CampaignBiddingStrategy = &Campaign_TargetCpa{msg}
  593. return true, err
  594. case 48: // campaign_bidding_strategy.target_impression_share
  595. if wire != proto.WireBytes {
  596. return true, proto.ErrInternalBadWireType
  597. }
  598. msg := new(common.TargetImpressionShare)
  599. err := b.DecodeMessage(msg)
  600. m.CampaignBiddingStrategy = &Campaign_TargetImpressionShare{msg}
  601. return true, err
  602. case 29: // campaign_bidding_strategy.target_roas
  603. if wire != proto.WireBytes {
  604. return true, proto.ErrInternalBadWireType
  605. }
  606. msg := new(common.TargetRoas)
  607. err := b.DecodeMessage(msg)
  608. m.CampaignBiddingStrategy = &Campaign_TargetRoas{msg}
  609. return true, err
  610. case 27: // campaign_bidding_strategy.target_spend
  611. if wire != proto.WireBytes {
  612. return true, proto.ErrInternalBadWireType
  613. }
  614. msg := new(common.TargetSpend)
  615. err := b.DecodeMessage(msg)
  616. m.CampaignBiddingStrategy = &Campaign_TargetSpend{msg}
  617. return true, err
  618. case 34: // campaign_bidding_strategy.percent_cpc
  619. if wire != proto.WireBytes {
  620. return true, proto.ErrInternalBadWireType
  621. }
  622. msg := new(common.PercentCpc)
  623. err := b.DecodeMessage(msg)
  624. m.CampaignBiddingStrategy = &Campaign_PercentCpc{msg}
  625. return true, err
  626. case 41: // campaign_bidding_strategy.target_cpm
  627. if wire != proto.WireBytes {
  628. return true, proto.ErrInternalBadWireType
  629. }
  630. msg := new(common.TargetCpm)
  631. err := b.DecodeMessage(msg)
  632. m.CampaignBiddingStrategy = &Campaign_TargetCpm{msg}
  633. return true, err
  634. default:
  635. return false, nil
  636. }
  637. }
  638. func _Campaign_OneofSizer(msg proto.Message) (n int) {
  639. m := msg.(*Campaign)
  640. // campaign_bidding_strategy
  641. switch x := m.CampaignBiddingStrategy.(type) {
  642. case *Campaign_BiddingStrategy:
  643. s := proto.Size(x.BiddingStrategy)
  644. n += 2 // tag and wire
  645. n += proto.SizeVarint(uint64(s))
  646. n += s
  647. case *Campaign_ManualCpc:
  648. s := proto.Size(x.ManualCpc)
  649. n += 2 // tag and wire
  650. n += proto.SizeVarint(uint64(s))
  651. n += s
  652. case *Campaign_ManualCpm:
  653. s := proto.Size(x.ManualCpm)
  654. n += 2 // tag and wire
  655. n += proto.SizeVarint(uint64(s))
  656. n += s
  657. case *Campaign_ManualCpv:
  658. s := proto.Size(x.ManualCpv)
  659. n += 2 // tag and wire
  660. n += proto.SizeVarint(uint64(s))
  661. n += s
  662. case *Campaign_MaximizeConversions:
  663. s := proto.Size(x.MaximizeConversions)
  664. n += 2 // tag and wire
  665. n += proto.SizeVarint(uint64(s))
  666. n += s
  667. case *Campaign_MaximizeConversionValue:
  668. s := proto.Size(x.MaximizeConversionValue)
  669. n += 2 // tag and wire
  670. n += proto.SizeVarint(uint64(s))
  671. n += s
  672. case *Campaign_TargetCpa:
  673. s := proto.Size(x.TargetCpa)
  674. n += 2 // tag and wire
  675. n += proto.SizeVarint(uint64(s))
  676. n += s
  677. case *Campaign_TargetImpressionShare:
  678. s := proto.Size(x.TargetImpressionShare)
  679. n += 2 // tag and wire
  680. n += proto.SizeVarint(uint64(s))
  681. n += s
  682. case *Campaign_TargetRoas:
  683. s := proto.Size(x.TargetRoas)
  684. n += 2 // tag and wire
  685. n += proto.SizeVarint(uint64(s))
  686. n += s
  687. case *Campaign_TargetSpend:
  688. s := proto.Size(x.TargetSpend)
  689. n += 2 // tag and wire
  690. n += proto.SizeVarint(uint64(s))
  691. n += s
  692. case *Campaign_PercentCpc:
  693. s := proto.Size(x.PercentCpc)
  694. n += 2 // tag and wire
  695. n += proto.SizeVarint(uint64(s))
  696. n += s
  697. case *Campaign_TargetCpm:
  698. s := proto.Size(x.TargetCpm)
  699. n += 2 // tag and wire
  700. n += proto.SizeVarint(uint64(s))
  701. n += s
  702. case nil:
  703. default:
  704. panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
  705. }
  706. return n
  707. }
  708. // The network settings for the campaign.
  709. type Campaign_NetworkSettings struct {
  710. // Whether ads will be served with google.com search results.
  711. TargetGoogleSearch *wrappers.BoolValue `protobuf:"bytes,1,opt,name=target_google_search,json=targetGoogleSearch,proto3" json:"target_google_search,omitempty"`
  712. // Whether ads will be served on partner sites in the Google Search Network
  713. // (requires `target_google_search` to also be `true`).
  714. TargetSearchNetwork *wrappers.BoolValue `protobuf:"bytes,2,opt,name=target_search_network,json=targetSearchNetwork,proto3" json:"target_search_network,omitempty"`
  715. // Whether ads will be served on specified placements in the Google Display
  716. // Network. Placements are specified using the Placement criterion.
  717. TargetContentNetwork *wrappers.BoolValue `protobuf:"bytes,3,opt,name=target_content_network,json=targetContentNetwork,proto3" json:"target_content_network,omitempty"`
  718. // Whether ads will be served on the Google Partner Network.
  719. // This is available only to some select Google partner accounts.
  720. TargetPartnerSearchNetwork *wrappers.BoolValue `protobuf:"bytes,4,opt,name=target_partner_search_network,json=targetPartnerSearchNetwork,proto3" json:"target_partner_search_network,omitempty"`
  721. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  722. XXX_unrecognized []byte `json:"-"`
  723. XXX_sizecache int32 `json:"-"`
  724. }
  725. func (m *Campaign_NetworkSettings) Reset() { *m = Campaign_NetworkSettings{} }
  726. func (m *Campaign_NetworkSettings) String() string { return proto.CompactTextString(m) }
  727. func (*Campaign_NetworkSettings) ProtoMessage() {}
  728. func (*Campaign_NetworkSettings) Descriptor() ([]byte, []int) {
  729. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 0}
  730. }
  731. func (m *Campaign_NetworkSettings) XXX_Unmarshal(b []byte) error {
  732. return xxx_messageInfo_Campaign_NetworkSettings.Unmarshal(m, b)
  733. }
  734. func (m *Campaign_NetworkSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  735. return xxx_messageInfo_Campaign_NetworkSettings.Marshal(b, m, deterministic)
  736. }
  737. func (dst *Campaign_NetworkSettings) XXX_Merge(src proto.Message) {
  738. xxx_messageInfo_Campaign_NetworkSettings.Merge(dst, src)
  739. }
  740. func (m *Campaign_NetworkSettings) XXX_Size() int {
  741. return xxx_messageInfo_Campaign_NetworkSettings.Size(m)
  742. }
  743. func (m *Campaign_NetworkSettings) XXX_DiscardUnknown() {
  744. xxx_messageInfo_Campaign_NetworkSettings.DiscardUnknown(m)
  745. }
  746. var xxx_messageInfo_Campaign_NetworkSettings proto.InternalMessageInfo
  747. func (m *Campaign_NetworkSettings) GetTargetGoogleSearch() *wrappers.BoolValue {
  748. if m != nil {
  749. return m.TargetGoogleSearch
  750. }
  751. return nil
  752. }
  753. func (m *Campaign_NetworkSettings) GetTargetSearchNetwork() *wrappers.BoolValue {
  754. if m != nil {
  755. return m.TargetSearchNetwork
  756. }
  757. return nil
  758. }
  759. func (m *Campaign_NetworkSettings) GetTargetContentNetwork() *wrappers.BoolValue {
  760. if m != nil {
  761. return m.TargetContentNetwork
  762. }
  763. return nil
  764. }
  765. func (m *Campaign_NetworkSettings) GetTargetPartnerSearchNetwork() *wrappers.BoolValue {
  766. if m != nil {
  767. return m.TargetPartnerSearchNetwork
  768. }
  769. return nil
  770. }
  771. // Campaign-level settings for hotel ads.
  772. type Campaign_HotelSettingInfo struct {
  773. // The linked Hotel Center account.
  774. HotelCenterId *wrappers.Int64Value `protobuf:"bytes,1,opt,name=hotel_center_id,json=hotelCenterId,proto3" json:"hotel_center_id,omitempty"`
  775. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  776. XXX_unrecognized []byte `json:"-"`
  777. XXX_sizecache int32 `json:"-"`
  778. }
  779. func (m *Campaign_HotelSettingInfo) Reset() { *m = Campaign_HotelSettingInfo{} }
  780. func (m *Campaign_HotelSettingInfo) String() string { return proto.CompactTextString(m) }
  781. func (*Campaign_HotelSettingInfo) ProtoMessage() {}
  782. func (*Campaign_HotelSettingInfo) Descriptor() ([]byte, []int) {
  783. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 1}
  784. }
  785. func (m *Campaign_HotelSettingInfo) XXX_Unmarshal(b []byte) error {
  786. return xxx_messageInfo_Campaign_HotelSettingInfo.Unmarshal(m, b)
  787. }
  788. func (m *Campaign_HotelSettingInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  789. return xxx_messageInfo_Campaign_HotelSettingInfo.Marshal(b, m, deterministic)
  790. }
  791. func (dst *Campaign_HotelSettingInfo) XXX_Merge(src proto.Message) {
  792. xxx_messageInfo_Campaign_HotelSettingInfo.Merge(dst, src)
  793. }
  794. func (m *Campaign_HotelSettingInfo) XXX_Size() int {
  795. return xxx_messageInfo_Campaign_HotelSettingInfo.Size(m)
  796. }
  797. func (m *Campaign_HotelSettingInfo) XXX_DiscardUnknown() {
  798. xxx_messageInfo_Campaign_HotelSettingInfo.DiscardUnknown(m)
  799. }
  800. var xxx_messageInfo_Campaign_HotelSettingInfo proto.InternalMessageInfo
  801. func (m *Campaign_HotelSettingInfo) GetHotelCenterId() *wrappers.Int64Value {
  802. if m != nil {
  803. return m.HotelCenterId
  804. }
  805. return nil
  806. }
  807. // The setting for controlling Dynamic Search Ads (DSA).
  808. type Campaign_DynamicSearchAdsSetting struct {
  809. // The Internet domain name that this setting represents, e.g., "google.com"
  810. // or "www.google.com".
  811. DomainName *wrappers.StringValue `protobuf:"bytes,1,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"`
  812. // The language code specifying the language of the domain, e.g., "en".
  813. LanguageCode *wrappers.StringValue `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
  814. // Whether the campaign uses advertiser supplied URLs exclusively.
  815. UseSuppliedUrlsOnly *wrappers.BoolValue `protobuf:"bytes,3,opt,name=use_supplied_urls_only,json=useSuppliedUrlsOnly,proto3" json:"use_supplied_urls_only,omitempty"`
  816. // The list of page feeds associated with the campaign.
  817. Feeds []*wrappers.StringValue `protobuf:"bytes,5,rep,name=feeds,proto3" json:"feeds,omitempty"`
  818. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  819. XXX_unrecognized []byte `json:"-"`
  820. XXX_sizecache int32 `json:"-"`
  821. }
  822. func (m *Campaign_DynamicSearchAdsSetting) Reset() { *m = Campaign_DynamicSearchAdsSetting{} }
  823. func (m *Campaign_DynamicSearchAdsSetting) String() string { return proto.CompactTextString(m) }
  824. func (*Campaign_DynamicSearchAdsSetting) ProtoMessage() {}
  825. func (*Campaign_DynamicSearchAdsSetting) Descriptor() ([]byte, []int) {
  826. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 2}
  827. }
  828. func (m *Campaign_DynamicSearchAdsSetting) XXX_Unmarshal(b []byte) error {
  829. return xxx_messageInfo_Campaign_DynamicSearchAdsSetting.Unmarshal(m, b)
  830. }
  831. func (m *Campaign_DynamicSearchAdsSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  832. return xxx_messageInfo_Campaign_DynamicSearchAdsSetting.Marshal(b, m, deterministic)
  833. }
  834. func (dst *Campaign_DynamicSearchAdsSetting) XXX_Merge(src proto.Message) {
  835. xxx_messageInfo_Campaign_DynamicSearchAdsSetting.Merge(dst, src)
  836. }
  837. func (m *Campaign_DynamicSearchAdsSetting) XXX_Size() int {
  838. return xxx_messageInfo_Campaign_DynamicSearchAdsSetting.Size(m)
  839. }
  840. func (m *Campaign_DynamicSearchAdsSetting) XXX_DiscardUnknown() {
  841. xxx_messageInfo_Campaign_DynamicSearchAdsSetting.DiscardUnknown(m)
  842. }
  843. var xxx_messageInfo_Campaign_DynamicSearchAdsSetting proto.InternalMessageInfo
  844. func (m *Campaign_DynamicSearchAdsSetting) GetDomainName() *wrappers.StringValue {
  845. if m != nil {
  846. return m.DomainName
  847. }
  848. return nil
  849. }
  850. func (m *Campaign_DynamicSearchAdsSetting) GetLanguageCode() *wrappers.StringValue {
  851. if m != nil {
  852. return m.LanguageCode
  853. }
  854. return nil
  855. }
  856. func (m *Campaign_DynamicSearchAdsSetting) GetUseSuppliedUrlsOnly() *wrappers.BoolValue {
  857. if m != nil {
  858. return m.UseSuppliedUrlsOnly
  859. }
  860. return nil
  861. }
  862. func (m *Campaign_DynamicSearchAdsSetting) GetFeeds() []*wrappers.StringValue {
  863. if m != nil {
  864. return m.Feeds
  865. }
  866. return nil
  867. }
  868. // Represents a collection of settings related to ads geotargeting.
  869. type Campaign_GeoTargetTypeSetting struct {
  870. // The setting used for positive geotargeting in this particular campaign.
  871. PositiveGeoTargetType enums.PositiveGeoTargetTypeEnum_PositiveGeoTargetType `protobuf:"varint,1,opt,name=positive_geo_target_type,json=positiveGeoTargetType,proto3,enum=google.ads.googleads.v1.enums.PositiveGeoTargetTypeEnum_PositiveGeoTargetType" json:"positive_geo_target_type,omitempty"`
  872. // The setting used for negative geotargeting in this particular campaign.
  873. NegativeGeoTargetType enums.NegativeGeoTargetTypeEnum_NegativeGeoTargetType `protobuf:"varint,2,opt,name=negative_geo_target_type,json=negativeGeoTargetType,proto3,enum=google.ads.googleads.v1.enums.NegativeGeoTargetTypeEnum_NegativeGeoTargetType" json:"negative_geo_target_type,omitempty"`
  874. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  875. XXX_unrecognized []byte `json:"-"`
  876. XXX_sizecache int32 `json:"-"`
  877. }
  878. func (m *Campaign_GeoTargetTypeSetting) Reset() { *m = Campaign_GeoTargetTypeSetting{} }
  879. func (m *Campaign_GeoTargetTypeSetting) String() string { return proto.CompactTextString(m) }
  880. func (*Campaign_GeoTargetTypeSetting) ProtoMessage() {}
  881. func (*Campaign_GeoTargetTypeSetting) Descriptor() ([]byte, []int) {
  882. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 3}
  883. }
  884. func (m *Campaign_GeoTargetTypeSetting) XXX_Unmarshal(b []byte) error {
  885. return xxx_messageInfo_Campaign_GeoTargetTypeSetting.Unmarshal(m, b)
  886. }
  887. func (m *Campaign_GeoTargetTypeSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  888. return xxx_messageInfo_Campaign_GeoTargetTypeSetting.Marshal(b, m, deterministic)
  889. }
  890. func (dst *Campaign_GeoTargetTypeSetting) XXX_Merge(src proto.Message) {
  891. xxx_messageInfo_Campaign_GeoTargetTypeSetting.Merge(dst, src)
  892. }
  893. func (m *Campaign_GeoTargetTypeSetting) XXX_Size() int {
  894. return xxx_messageInfo_Campaign_GeoTargetTypeSetting.Size(m)
  895. }
  896. func (m *Campaign_GeoTargetTypeSetting) XXX_DiscardUnknown() {
  897. xxx_messageInfo_Campaign_GeoTargetTypeSetting.DiscardUnknown(m)
  898. }
  899. var xxx_messageInfo_Campaign_GeoTargetTypeSetting proto.InternalMessageInfo
  900. func (m *Campaign_GeoTargetTypeSetting) GetPositiveGeoTargetType() enums.PositiveGeoTargetTypeEnum_PositiveGeoTargetType {
  901. if m != nil {
  902. return m.PositiveGeoTargetType
  903. }
  904. return enums.PositiveGeoTargetTypeEnum_UNSPECIFIED
  905. }
  906. func (m *Campaign_GeoTargetTypeSetting) GetNegativeGeoTargetType() enums.NegativeGeoTargetTypeEnum_NegativeGeoTargetType {
  907. if m != nil {
  908. return m.NegativeGeoTargetType
  909. }
  910. return enums.NegativeGeoTargetTypeEnum_UNSPECIFIED
  911. }
  912. // The setting for Shopping campaigns. Defines the universe of products that
  913. // can be advertised by the campaign, and how this campaign interacts with
  914. // other Shopping campaigns.
  915. type Campaign_ShoppingSetting struct {
  916. // ID of the Merchant Center account.
  917. // This field is required for create operations. This field is immutable for
  918. // Shopping campaigns.
  919. MerchantId *wrappers.Int64Value `protobuf:"bytes,1,opt,name=merchant_id,json=merchantId,proto3" json:"merchant_id,omitempty"`
  920. // Sales country of products to include in the campaign.
  921. // This field is required for Shopping campaigns. This field is immutable.
  922. // This field is optional for non-Shopping campaigns, but it must be equal
  923. // to 'ZZ' if set.
  924. SalesCountry *wrappers.StringValue `protobuf:"bytes,2,opt,name=sales_country,json=salesCountry,proto3" json:"sales_country,omitempty"`
  925. // Priority of the campaign. Campaigns with numerically higher priorities
  926. // take precedence over those with lower priorities.
  927. // This field is required for Shopping campaigns, with values between 0 and
  928. // 2, inclusive.
  929. // This field is optional for Smart Shopping campaigns, but must be equal to
  930. // 3 if set.
  931. CampaignPriority *wrappers.Int32Value `protobuf:"bytes,3,opt,name=campaign_priority,json=campaignPriority,proto3" json:"campaign_priority,omitempty"`
  932. // Enable local inventory ads. This field may only be set to false for Smart
  933. // Shopping Campaigns.
  934. EnableLocal *wrappers.BoolValue `protobuf:"bytes,4,opt,name=enable_local,json=enableLocal,proto3" json:"enable_local,omitempty"`
  935. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  936. XXX_unrecognized []byte `json:"-"`
  937. XXX_sizecache int32 `json:"-"`
  938. }
  939. func (m *Campaign_ShoppingSetting) Reset() { *m = Campaign_ShoppingSetting{} }
  940. func (m *Campaign_ShoppingSetting) String() string { return proto.CompactTextString(m) }
  941. func (*Campaign_ShoppingSetting) ProtoMessage() {}
  942. func (*Campaign_ShoppingSetting) Descriptor() ([]byte, []int) {
  943. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 4}
  944. }
  945. func (m *Campaign_ShoppingSetting) XXX_Unmarshal(b []byte) error {
  946. return xxx_messageInfo_Campaign_ShoppingSetting.Unmarshal(m, b)
  947. }
  948. func (m *Campaign_ShoppingSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  949. return xxx_messageInfo_Campaign_ShoppingSetting.Marshal(b, m, deterministic)
  950. }
  951. func (dst *Campaign_ShoppingSetting) XXX_Merge(src proto.Message) {
  952. xxx_messageInfo_Campaign_ShoppingSetting.Merge(dst, src)
  953. }
  954. func (m *Campaign_ShoppingSetting) XXX_Size() int {
  955. return xxx_messageInfo_Campaign_ShoppingSetting.Size(m)
  956. }
  957. func (m *Campaign_ShoppingSetting) XXX_DiscardUnknown() {
  958. xxx_messageInfo_Campaign_ShoppingSetting.DiscardUnknown(m)
  959. }
  960. var xxx_messageInfo_Campaign_ShoppingSetting proto.InternalMessageInfo
  961. func (m *Campaign_ShoppingSetting) GetMerchantId() *wrappers.Int64Value {
  962. if m != nil {
  963. return m.MerchantId
  964. }
  965. return nil
  966. }
  967. func (m *Campaign_ShoppingSetting) GetSalesCountry() *wrappers.StringValue {
  968. if m != nil {
  969. return m.SalesCountry
  970. }
  971. return nil
  972. }
  973. func (m *Campaign_ShoppingSetting) GetCampaignPriority() *wrappers.Int32Value {
  974. if m != nil {
  975. return m.CampaignPriority
  976. }
  977. return nil
  978. }
  979. func (m *Campaign_ShoppingSetting) GetEnableLocal() *wrappers.BoolValue {
  980. if m != nil {
  981. return m.EnableLocal
  982. }
  983. return nil
  984. }
  985. // Selective optimization setting for this campaign, which includes a set of
  986. // conversion actions to optimize this campaign towards.
  987. type Campaign_SelectiveOptimization struct {
  988. // The selected set of conversion actions for optimizing this campaign.
  989. ConversionActions []*wrappers.StringValue `protobuf:"bytes,1,rep,name=conversion_actions,json=conversionActions,proto3" json:"conversion_actions,omitempty"`
  990. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  991. XXX_unrecognized []byte `json:"-"`
  992. XXX_sizecache int32 `json:"-"`
  993. }
  994. func (m *Campaign_SelectiveOptimization) Reset() { *m = Campaign_SelectiveOptimization{} }
  995. func (m *Campaign_SelectiveOptimization) String() string { return proto.CompactTextString(m) }
  996. func (*Campaign_SelectiveOptimization) ProtoMessage() {}
  997. func (*Campaign_SelectiveOptimization) Descriptor() ([]byte, []int) {
  998. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 5}
  999. }
  1000. func (m *Campaign_SelectiveOptimization) XXX_Unmarshal(b []byte) error {
  1001. return xxx_messageInfo_Campaign_SelectiveOptimization.Unmarshal(m, b)
  1002. }
  1003. func (m *Campaign_SelectiveOptimization) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1004. return xxx_messageInfo_Campaign_SelectiveOptimization.Marshal(b, m, deterministic)
  1005. }
  1006. func (dst *Campaign_SelectiveOptimization) XXX_Merge(src proto.Message) {
  1007. xxx_messageInfo_Campaign_SelectiveOptimization.Merge(dst, src)
  1008. }
  1009. func (m *Campaign_SelectiveOptimization) XXX_Size() int {
  1010. return xxx_messageInfo_Campaign_SelectiveOptimization.Size(m)
  1011. }
  1012. func (m *Campaign_SelectiveOptimization) XXX_DiscardUnknown() {
  1013. xxx_messageInfo_Campaign_SelectiveOptimization.DiscardUnknown(m)
  1014. }
  1015. var xxx_messageInfo_Campaign_SelectiveOptimization proto.InternalMessageInfo
  1016. func (m *Campaign_SelectiveOptimization) GetConversionActions() []*wrappers.StringValue {
  1017. if m != nil {
  1018. return m.ConversionActions
  1019. }
  1020. return nil
  1021. }
  1022. // Campaign level settings for tracking information.
  1023. type Campaign_TrackingSetting struct {
  1024. // The url used for dynamic tracking.
  1025. TrackingUrl *wrappers.StringValue `protobuf:"bytes,1,opt,name=tracking_url,json=trackingUrl,proto3" json:"tracking_url,omitempty"`
  1026. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1027. XXX_unrecognized []byte `json:"-"`
  1028. XXX_sizecache int32 `json:"-"`
  1029. }
  1030. func (m *Campaign_TrackingSetting) Reset() { *m = Campaign_TrackingSetting{} }
  1031. func (m *Campaign_TrackingSetting) String() string { return proto.CompactTextString(m) }
  1032. func (*Campaign_TrackingSetting) ProtoMessage() {}
  1033. func (*Campaign_TrackingSetting) Descriptor() ([]byte, []int) {
  1034. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 6}
  1035. }
  1036. func (m *Campaign_TrackingSetting) XXX_Unmarshal(b []byte) error {
  1037. return xxx_messageInfo_Campaign_TrackingSetting.Unmarshal(m, b)
  1038. }
  1039. func (m *Campaign_TrackingSetting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1040. return xxx_messageInfo_Campaign_TrackingSetting.Marshal(b, m, deterministic)
  1041. }
  1042. func (dst *Campaign_TrackingSetting) XXX_Merge(src proto.Message) {
  1043. xxx_messageInfo_Campaign_TrackingSetting.Merge(dst, src)
  1044. }
  1045. func (m *Campaign_TrackingSetting) XXX_Size() int {
  1046. return xxx_messageInfo_Campaign_TrackingSetting.Size(m)
  1047. }
  1048. func (m *Campaign_TrackingSetting) XXX_DiscardUnknown() {
  1049. xxx_messageInfo_Campaign_TrackingSetting.DiscardUnknown(m)
  1050. }
  1051. var xxx_messageInfo_Campaign_TrackingSetting proto.InternalMessageInfo
  1052. func (m *Campaign_TrackingSetting) GetTrackingUrl() *wrappers.StringValue {
  1053. if m != nil {
  1054. return m.TrackingUrl
  1055. }
  1056. return nil
  1057. }
  1058. // Describes how unbranded pharma ads will be displayed.
  1059. type Campaign_VanityPharma struct {
  1060. // The display mode for vanity pharma URLs.
  1061. VanityPharmaDisplayUrlMode enums.VanityPharmaDisplayUrlModeEnum_VanityPharmaDisplayUrlMode `protobuf:"varint,1,opt,name=vanity_pharma_display_url_mode,json=vanityPharmaDisplayUrlMode,proto3,enum=google.ads.googleads.v1.enums.VanityPharmaDisplayUrlModeEnum_VanityPharmaDisplayUrlMode" json:"vanity_pharma_display_url_mode,omitempty"`
  1062. // The text that will be displayed in display URL of the text ad when
  1063. // website description is the selected display mode for vanity pharma URLs.
  1064. VanityPharmaText enums.VanityPharmaTextEnum_VanityPharmaText `protobuf:"varint,2,opt,name=vanity_pharma_text,json=vanityPharmaText,proto3,enum=google.ads.googleads.v1.enums.VanityPharmaTextEnum_VanityPharmaText" json:"vanity_pharma_text,omitempty"`
  1065. XXX_NoUnkeyedLiteral struct{} `json:"-"`
  1066. XXX_unrecognized []byte `json:"-"`
  1067. XXX_sizecache int32 `json:"-"`
  1068. }
  1069. func (m *Campaign_VanityPharma) Reset() { *m = Campaign_VanityPharma{} }
  1070. func (m *Campaign_VanityPharma) String() string { return proto.CompactTextString(m) }
  1071. func (*Campaign_VanityPharma) ProtoMessage() {}
  1072. func (*Campaign_VanityPharma) Descriptor() ([]byte, []int) {
  1073. return fileDescriptor_campaign_b917076c02b5ba7a, []int{0, 7}
  1074. }
  1075. func (m *Campaign_VanityPharma) XXX_Unmarshal(b []byte) error {
  1076. return xxx_messageInfo_Campaign_VanityPharma.Unmarshal(m, b)
  1077. }
  1078. func (m *Campaign_VanityPharma) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
  1079. return xxx_messageInfo_Campaign_VanityPharma.Marshal(b, m, deterministic)
  1080. }
  1081. func (dst *Campaign_VanityPharma) XXX_Merge(src proto.Message) {
  1082. xxx_messageInfo_Campaign_VanityPharma.Merge(dst, src)
  1083. }
  1084. func (m *Campaign_VanityPharma) XXX_Size() int {
  1085. return xxx_messageInfo_Campaign_VanityPharma.Size(m)
  1086. }
  1087. func (m *Campaign_VanityPharma) XXX_DiscardUnknown() {
  1088. xxx_messageInfo_Campaign_VanityPharma.DiscardUnknown(m)
  1089. }
  1090. var xxx_messageInfo_Campaign_VanityPharma proto.InternalMessageInfo
  1091. func (m *Campaign_VanityPharma) GetVanityPharmaDisplayUrlMode() enums.VanityPharmaDisplayUrlModeEnum_VanityPharmaDisplayUrlMode {
  1092. if m != nil {
  1093. return m.VanityPharmaDisplayUrlMode
  1094. }
  1095. return enums.VanityPharmaDisplayUrlModeEnum_UNSPECIFIED
  1096. }
  1097. func (m *Campaign_VanityPharma) GetVanityPharmaText() enums.VanityPharmaTextEnum_VanityPharmaText {
  1098. if m != nil {
  1099. return m.VanityPharmaText
  1100. }
  1101. return enums.VanityPharmaTextEnum_UNSPECIFIED
  1102. }
  1103. func init() {
  1104. proto.RegisterType((*Campaign)(nil), "google.ads.googleads.v1.resources.Campaign")
  1105. proto.RegisterType((*Campaign_NetworkSettings)(nil), "google.ads.googleads.v1.resources.Campaign.NetworkSettings")
  1106. proto.RegisterType((*Campaign_HotelSettingInfo)(nil), "google.ads.googleads.v1.resources.Campaign.HotelSettingInfo")
  1107. proto.RegisterType((*Campaign_DynamicSearchAdsSetting)(nil), "google.ads.googleads.v1.resources.Campaign.DynamicSearchAdsSetting")
  1108. proto.RegisterType((*Campaign_GeoTargetTypeSetting)(nil), "google.ads.googleads.v1.resources.Campaign.GeoTargetTypeSetting")
  1109. proto.RegisterType((*Campaign_ShoppingSetting)(nil), "google.ads.googleads.v1.resources.Campaign.ShoppingSetting")
  1110. proto.RegisterType((*Campaign_SelectiveOptimization)(nil), "google.ads.googleads.v1.resources.Campaign.SelectiveOptimization")
  1111. proto.RegisterType((*Campaign_TrackingSetting)(nil), "google.ads.googleads.v1.resources.Campaign.TrackingSetting")
  1112. proto.RegisterType((*Campaign_VanityPharma)(nil), "google.ads.googleads.v1.resources.Campaign.VanityPharma")
  1113. }
  1114. func init() {
  1115. proto.RegisterFile("google/ads/googleads/v1/resources/campaign.proto", fileDescriptor_campaign_b917076c02b5ba7a)
  1116. }
  1117. var fileDescriptor_campaign_b917076c02b5ba7a = []byte{
  1118. // 1975 bytes of a gzipped FileDescriptorProto
  1119. 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x59, 0x4d, 0x73, 0xdb, 0xc8,
  1120. 0xd1, 0x16, 0xe9, 0x8f, 0xd7, 0x1e, 0x7d, 0x7a, 0x24, 0x4a, 0x10, 0xe5, 0xf5, 0x2b, 0x6f, 0xe2,
  1121. 0x44, 0xbb, 0xde, 0x90, 0x96, 0x9c, 0xf5, 0x26, 0xb2, 0x37, 0x31, 0x45, 0x7b, 0x2d, 0x39, 0x6b,
  1122. 0x99, 0x05, 0xca, 0x8a, 0x6b, 0xcb, 0x2e, 0xd4, 0x10, 0x18, 0x92, 0xa8, 0x05, 0x66, 0xb0, 0x33,
  1123. 0x03, 0x5a, 0xcc, 0x21, 0x95, 0x5b, 0xaa, 0x72, 0x4f, 0xe5, 0x90, 0x54, 0xe5, 0xe3, 0xb8, 0x3f,
  1124. 0x24, 0x87, 0xfc, 0x8a, 0x9c, 0xf3, 0x13, 0x72, 0x4a, 0x61, 0x66, 0x00, 0x81, 0x24, 0x48, 0x80,
  1125. 0x37, 0xa2, 0xbb, 0x9f, 0xa7, 0x1b, 0x3d, 0x3d, 0x3d, 0x8d, 0x21, 0x78, 0xd0, 0xa3, 0xb4, 0xe7,
  1126. 0xe1, 0x3a, 0x72, 0x78, 0x5d, 0xfd, 0x8c, 0x7e, 0x0d, 0xf6, 0xeb, 0x0c, 0x73, 0x1a, 0x32, 0x1b,
  1127. 0xf3, 0xba, 0x8d, 0xfc, 0x00, 0xb9, 0x3d, 0x52, 0x0b, 0x18, 0x15, 0x14, 0xde, 0x55, 0x66, 0x35,
  1128. 0xe4, 0xf0, 0x5a, 0x82, 0xa8, 0x0d, 0xf6, 0x6b, 0x09, 0xa2, 0xfa, 0xd9, 0x34, 0x52, 0x9b, 0xfa,
  1129. 0x3e, 0x25, 0xf5, 0x8e, 0xeb, 0x38, 0x2e, 0xe9, 0x29, 0xc2, 0xea, 0xe7, 0x39, 0xd6, 0x76, 0xc8,
  1130. 0x05, 0xf5, 0xad, 0x00, 0x31, 0xe4, 0x63, 0x81, 0x99, 0x86, 0x1d, 0xe4, 0xc0, 0xba, 0x0c, 0x7f,
  1131. 0x17, 0x62, 0x62, 0x0f, 0x2d, 0x1b, 0x05, 0x1a, 0xf3, 0x8b, 0x1c, 0x0c, 0xc3, 0xc8, 0xb3, 0x84,
  1132. 0xeb, 0x63, 0x4b, 0x87, 0x68, 0x71, 0x2c, 0xc4, 0x65, 0xa8, 0x8f, 0x72, 0xf0, 0x02, 0xb1, 0x1e,
  1133. 0x16, 0x93, 0xb8, 0xa3, 0x69, 0x38, 0x4c, 0x42, 0x9f, 0xd7, 0x91, 0x63, 0x71, 0xcc, 0x06, 0x11,
  1134. 0x8e, 0x06, 0xc2, 0xf5, 0xdd, 0xdf, 0x20, 0xe1, 0x52, 0x62, 0x71, 0x81, 0x44, 0xc8, 0x35, 0xc7,
  1135. 0xd3, 0x3c, 0x8e, 0x01, 0x66, 0xc2, 0xe5, 0x11, 0x89, 0xdd, 0x47, 0x84, 0x60, 0xcf, 0xe2, 0x61,
  1136. 0xc7, 0x12, 0xc3, 0x00, 0x6b, 0x86, 0x27, 0xf3, 0x33, 0xa4, 0xd0, 0x3f, 0x9f, 0x8d, 0x4e, 0x12,
  1137. 0x26, 0x18, 0x12, 0xb8, 0x37, 0x9c, 0xc3, 0x71, 0x87, 0x21, 0xe2, 0x58, 0x1c, 0x75, 0xb1, 0x18,
  1138. 0x5a, 0x3c, 0x74, 0x05, 0xea, 0xb8, 0x9e, 0x2b, 0x86, 0x1a, 0xfd, 0x78, 0x36, 0x3a, 0x2e, 0xcf,
  1139. 0x24, 0x85, 0x23, 0x59, 0x7b, 0x58, 0x14, 0x9c, 0x06, 0xe5, 0xc4, 0x4b, 0x70, 0x0f, 0x09, 0x77,
  1140. 0x80, 0xad, 0x1e, 0xa6, 0x96, 0x5a, 0xf2, 0x39, 0xde, 0x36, 0xa0, 0xdc, 0x9d, 0x81, 0xce, 0x29,
  1141. 0x95, 0x01, 0x22, 0xae, 0x18, 0x5a, 0x41, 0x1f, 0x31, 0x1f, 0x59, 0x8e, 0xcb, 0x03, 0x0f, 0x0d,
  1142. 0xad, 0x90, 0x79, 0x96, 0x4f, 0x1d, 0x9c, 0x57, 0xa6, 0x59, 0x1c, 0x02, 0x5f, 0x08, 0x8d, 0xbb,
  1143. 0xa3, 0x71, 0xf2, 0xa9, 0x13, 0x76, 0xeb, 0x1f, 0x18, 0x0a, 0x02, 0xcc, 0xe2, 0xbc, 0xdc, 0x8e,
  1144. 0x79, 0x03, 0xb7, 0x8e, 0x08, 0xa1, 0x42, 0x96, 0xa9, 0xd6, 0x7e, 0xfc, 0xcf, 0xfb, 0xe0, 0x46,
  1145. 0x53, 0xe7, 0x13, 0xfe, 0x00, 0x2c, 0xc7, 0xfd, 0xc0, 0x22, 0xc8, 0xc7, 0x46, 0x69, 0xb7, 0xb4,
  1146. 0x77, 0xd3, 0x5c, 0x8a, 0x85, 0xa7, 0xc8, 0xc7, 0xf0, 0x3e, 0x28, 0xbb, 0x8e, 0x71, 0x65, 0xb7,
  1147. 0xb4, 0xb7, 0x78, 0xb0, 0xa3, 0x9b, 0x49, 0x2d, 0x76, 0x5e, 0x3b, 0x21, 0xe2, 0xd1, 0x4f, 0xcf,
  1148. 0x91, 0x17, 0x62, 0xb3, 0xec, 0x3a, 0xf0, 0x01, 0xb8, 0x2a, 0x89, 0xae, 0x4a, 0xf3, 0xdb, 0x13,
  1149. 0xe6, 0x6d, 0xc1, 0x5c, 0xd2, 0x53, 0xf6, 0xd2, 0x12, 0xbe, 0x05, 0xd7, 0xd5, 0xb2, 0x1a, 0xd7,
  1150. 0x76, 0x4b, 0x7b, 0x2b, 0x07, 0x4f, 0x6b, 0xd3, 0x5a, 0x97, 0xcc, 0x4b, 0x2d, 0x0e, 0xbe, 0x2d,
  1151. 0x41, 0xcf, 0x49, 0xe8, 0x8f, 0x89, 0x4c, 0xcd, 0x07, 0x43, 0xb0, 0x32, 0x5a, 0x6d, 0x46, 0x45,
  1152. 0x7a, 0x38, 0x2d, 0xea, 0x41, 0x81, 0xb3, 0x1c, 0xa5, 0x35, 0xe6, 0x32, 0x4f, 0x3f, 0xc2, 0xbf,
  1153. 0x96, 0xc0, 0x9d, 0xd9, 0xbd, 0xc2, 0xb8, 0x21, 0xe3, 0xf8, 0x26, 0x27, 0x8e, 0x86, 0xa3, 0xfd,
  1154. 0xbc, 0x4e, 0x51, 0xa4, 0xa2, 0x99, 0xa1, 0x37, 0x77, 0xd0, 0x74, 0x25, 0xfc, 0x43, 0x09, 0x18,
  1155. 0xd3, 0xfa, 0x88, 0x71, 0x53, 0xc6, 0xd6, 0xca, 0x8d, 0x2d, 0x81, 0x37, 0x15, 0xfa, 0x6c, 0x18,
  1156. 0x60, 0x1d, 0x56, 0x96, 0xca, 0xdc, 0x44, 0x99, 0x72, 0xf8, 0xa7, 0x12, 0xb8, 0x3d, 0xab, 0x2d,
  1157. 0x1a, 0x40, 0x06, 0x74, 0x3e, 0x77, 0x40, 0xed, 0xb0, 0x33, 0x23, 0x26, 0xad, 0x35, 0xb7, 0xd1,
  1158. 0x34, 0x15, 0x6c, 0x81, 0x8a, 0x60, 0xc8, 0xfe, 0x36, 0x8a, 0x2a, 0xda, 0xbb, 0x02, 0xfb, 0x81,
  1159. 0x87, 0x04, 0x36, 0x16, 0x0b, 0x14, 0xf7, 0x7a, 0x0c, 0x7d, 0xc3, 0xbc, 0x33, 0x0d, 0x84, 0x36,
  1160. 0xa8, 0x44, 0x44, 0xe3, 0x67, 0x25, 0x37, 0x96, 0x76, 0xaf, 0xec, 0x2d, 0x1e, 0xd4, 0xa7, 0xbe,
  1161. 0xa3, 0x3a, 0xb9, 0x6a, 0x4d, 0x09, 0x6c, 0xc5, 0x38, 0x73, 0x3d, 0x64, 0xde, 0x98, 0x8c, 0xc3,
  1162. 0xef, 0xc0, 0xf6, 0xd4, 0x13, 0xd2, 0xf8, 0xb1, 0x0c, 0xfd, 0x51, 0x9e, 0x23, 0x13, 0x23, 0xef,
  1163. 0xcc, 0xf5, 0xf1, 0x91, 0x82, 0xb7, 0x15, 0xda, 0xdc, 0x64, 0x99, 0x72, 0xd8, 0x05, 0x6b, 0x04,
  1164. 0x8b, 0x0f, 0x94, 0x7d, 0x1b, 0x3b, 0xe2, 0xc6, 0x8a, 0xf4, 0xf4, 0xb8, 0x96, 0x3b, 0x88, 0x24,
  1165. 0xbb, 0xaa, 0x76, 0xaa, 0x38, 0x34, 0x2b, 0x37, 0x57, 0xc9, 0xa8, 0x00, 0x22, 0xb0, 0xdc, 0xa7,
  1166. 0x22, 0x2a, 0x0e, 0xfd, 0x3a, 0xbb, 0xd2, 0xc9, 0x93, 0x79, 0x9c, 0x1c, 0x47, 0x04, 0x9a, 0xf1,
  1167. 0x84, 0x74, 0xa9, 0xb9, 0xd4, 0x4f, 0x49, 0xe0, 0xef, 0x4a, 0xa0, 0xea, 0x0c, 0x09, 0xf2, 0x5d,
  1168. 0xdb, 0xe2, 0x18, 0x31, 0xbb, 0x6f, 0x21, 0x87, 0x27, 0x0e, 0xef, 0x4a, 0x87, 0xcd, 0x79, 0x1c,
  1169. 0x3e, 0x53, 0x6c, 0x6d, 0x49, 0xd6, 0x70, 0x78, 0x9c, 0xcc, 0x2d, 0x27, 0x5b, 0x11, 0x65, 0x93,
  1170. 0xf7, 0x69, 0x10, 0xa4, 0xd7, 0xed, 0x87, 0xf3, 0x67, 0xb3, 0xad, 0x39, 0x62, 0x7f, 0xab, 0x7c,
  1171. 0x54, 0x00, 0xdf, 0x83, 0x5b, 0x13, 0xa3, 0x90, 0x71, 0x5f, 0x3a, 0x7a, 0x90, 0x57, 0x20, 0x67,
  1172. 0x31, 0x30, 0x66, 0x5f, 0x13, 0x63, 0x12, 0xf8, 0x01, 0x6c, 0x8d, 0x1d, 0x9e, 0x89, 0x93, 0xba,
  1173. 0x74, 0xf2, 0x74, 0x9e, 0xb7, 0x79, 0x81, 0xa9, 0xf2, 0x19, 0x6d, 0xcd, 0xd8, 0xe9, 0x46, 0x2f,
  1174. 0x43, 0x0a, 0x9f, 0x83, 0xd5, 0x64, 0x62, 0xe8, 0x84, 0x4e, 0x0f, 0x0b, 0xe3, 0x7a, 0x81, 0x1d,
  1175. 0xbb, 0x12, 0x83, 0x8e, 0x24, 0x06, 0xfe, 0x16, 0x54, 0x32, 0xc7, 0x25, 0x63, 0x53, 0x36, 0xa4,
  1176. 0x97, 0x39, 0x0d, 0x29, 0xde, 0x22, 0x1a, 0x9a, 0xb4, 0xa2, 0x0c, 0xb9, 0xb9, 0xde, 0x99, 0x14,
  1177. 0xc2, 0xc7, 0x00, 0x70, 0x81, 0x98, 0xb0, 0x9c, 0xa8, 0xe7, 0xac, 0x17, 0x78, 0x83, 0x9b, 0xd2,
  1178. 0xfe, 0x59, 0xd4, 0x69, 0xbe, 0x00, 0x37, 0x30, 0x71, 0x14, 0x74, 0xa3, 0x00, 0xf4, 0xff, 0x30,
  1179. 0x71, 0x24, 0xf0, 0x2b, 0xb0, 0xd6, 0x75, 0x09, 0xf2, 0x64, 0xc7, 0xe3, 0x61, 0xb7, 0xeb, 0x5e,
  1180. 0x18, 0x3f, 0x2a, 0x92, 0x3d, 0x89, 0x7a, 0xc3, 0xbc, 0xb6, 0xc4, 0xc0, 0xb7, 0x60, 0x65, 0x64,
  1181. 0xb6, 0xe7, 0xc6, 0x9e, 0xec, 0x71, 0xfb, 0x79, 0x95, 0xf5, 0x55, 0x8c, 0x6a, 0xa2, 0xe0, 0x39,
  1182. 0x11, 0x6c, 0x68, 0x2e, 0x77, 0x53, 0x22, 0x0e, 0xff, 0x58, 0x02, 0x77, 0x06, 0xae, 0x83, 0xa9,
  1183. 0x35, 0x6d, 0x24, 0x35, 0x3e, 0x2d, 0x74, 0x86, 0x1d, 0x45, 0xf0, 0xb6, 0x44, 0xb7, 0x2f, 0xc1,
  1184. 0x6a, 0x91, 0x32, 0x55, 0xe6, 0x8e, 0xf4, 0x9b, 0xad, 0x84, 0xef, 0xc1, 0xf2, 0xc8, 0xcc, 0x66,
  1185. 0x7c, 0x26, 0xd3, 0xf6, 0xb3, 0x79, 0xaa, 0xfc, 0x5c, 0x12, 0xb4, 0x24, 0xde, 0x5c, 0x1a, 0xa4,
  1186. 0x9e, 0xe0, 0x05, 0xd8, 0xe4, 0xd8, 0xc3, 0xb6, 0x9c, 0x4a, 0xd3, 0x43, 0x85, 0xf1, 0x13, 0xe9,
  1187. 0xa7, 0x31, 0x57, 0x6f, 0x88, 0x99, 0xd2, 0xd3, 0x81, 0x59, 0xe1, 0x59, 0xe2, 0xa8, 0x1f, 0x25,
  1188. 0xe7, 0x60, 0xbc, 0x83, 0x6b, 0xf3, 0xf7, 0xa3, 0x33, 0xcd, 0x91, 0xf4, 0x23, 0x31, 0x2a, 0x80,
  1189. 0x27, 0x60, 0x6d, 0x7c, 0xc3, 0x19, 0x5b, 0xf9, 0xa5, 0x77, 0xbc, 0x60, 0xae, 0x8e, 0xed, 0x1f,
  1190. 0xf8, 0x12, 0x00, 0x1f, 0x91, 0x10, 0x79, 0x96, 0x1d, 0xd8, 0x86, 0x21, 0x49, 0x3e, 0xc9, 0xab,
  1191. 0xbc, 0x57, 0x12, 0xd1, 0x0c, 0xec, 0xe3, 0x05, 0xf3, 0xa6, 0x1f, 0x3f, 0x8c, 0x70, 0xf9, 0xc6,
  1192. 0xf6, 0x7c, 0x5c, 0x7e, 0x9a, 0xcb, 0x1f, 0xe1, 0x1a, 0x18, 0xf7, 0xe6, 0xe3, 0x1a, 0xa4, 0xb9,
  1193. 0x06, 0xb0, 0x0f, 0x36, 0x7c, 0x74, 0x11, 0x2d, 0x13, 0xb6, 0x6c, 0x4a, 0x06, 0x98, 0xf1, 0x68,
  1194. 0xce, 0x37, 0xee, 0x48, 0xd6, 0x87, 0xf9, 0xac, 0x0a, 0xdb, 0xbc, 0x84, 0x1e, 0x2f, 0x98, 0xeb,
  1195. 0xfe, 0xa4, 0x18, 0x86, 0x60, 0x3b, 0xc3, 0x93, 0x35, 0x88, 0xb2, 0x6f, 0xfc, 0xbf, 0x74, 0xf7,
  1196. 0xc5, 0xfc, 0xee, 0xe2, 0xc5, 0xdb, 0xf2, 0xb3, 0x55, 0x51, 0xb2, 0xf4, 0xe1, 0x61, 0x07, 0xc8,
  1197. 0xa8, 0x16, 0x4b, 0x96, 0x3a, 0x0e, 0x9a, 0x01, 0x8a, 0x92, 0x25, 0xe2, 0x07, 0x48, 0xc1, 0x96,
  1198. 0xe6, 0x72, 0xfd, 0x80, 0x61, 0x2e, 0x5f, 0x80, 0xf7, 0x11, 0xc3, 0xc6, 0x03, 0x49, 0xfc, 0x79,
  1199. 0x31, 0xe2, 0x93, 0x04, 0xdd, 0x8e, 0xc0, 0xc7, 0x0b, 0x66, 0x45, 0x64, 0x29, 0xe0, 0x2b, 0xb0,
  1200. 0xa8, 0x1d, 0x32, 0x8a, 0xb8, 0xf1, 0x91, 0x74, 0xf2, 0x69, 0x31, 0x27, 0x26, 0x45, 0xd1, 0x5a,
  1201. 0xe8, 0xb7, 0x8f, 0x9e, 0x60, 0x0b, 0x2c, 0x69, 0x3a, 0x1e, 0x60, 0xe2, 0x18, 0x3b, 0x92, 0xef,
  1202. 0x7e, 0x31, 0xbe, 0x76, 0x04, 0x39, 0x5e, 0x30, 0x75, 0x44, 0xf2, 0x31, 0x0a, 0x30, 0xc0, 0xcc,
  1203. 0xc6, 0x44, 0xc8, 0x3d, 0xf2, 0x71, 0xb1, 0x00, 0x5b, 0x0a, 0xa2, 0x36, 0x09, 0x08, 0x92, 0xa7,
  1204. 0x91, 0xc5, 0xf2, 0x8d, 0x4f, 0xe6, 0x5b, 0x2c, 0x3f, 0xbd, 0x58, 0x7e, 0xf5, 0xdf, 0x65, 0xb0,
  1205. 0x3a, 0x36, 0x0b, 0xc2, 0xaf, 0xc1, 0x86, 0xe6, 0x57, 0x44, 0x7a, 0x38, 0x93, 0x5f, 0xac, 0x8b,
  1206. 0x07, 0xd5, 0x89, 0x06, 0x71, 0x44, 0xa9, 0xa7, 0x4e, 0x26, 0xa8, 0x70, 0x2f, 0xa4, 0x81, 0x1a,
  1207. 0xb6, 0xe0, 0x29, 0xa8, 0xc4, 0xe9, 0x54, 0x33, 0x9e, 0x9e, 0x34, 0x8d, 0x72, 0x2e, 0xdd, 0xba,
  1208. 0x4e, 0xa2, 0xc4, 0xe9, 0x28, 0x61, 0x0b, 0x6c, 0xc6, 0x6f, 0x4f, 0x89, 0x88, 0x72, 0x1a, 0x13,
  1209. 0x5e, 0xc9, 0x25, 0xd4, 0xef, 0xd5, 0x54, 0xc0, 0x98, 0xf1, 0x3d, 0xf8, 0x48, 0x33, 0x06, 0x88,
  1210. 0x09, 0x82, 0xd9, 0x78, 0xa4, 0x57, 0x73, 0x89, 0xab, 0x8a, 0xa0, 0xa5, 0xf0, 0x23, 0x01, 0x57,
  1211. 0x7f, 0x0d, 0xd6, 0xc6, 0x07, 0x61, 0xd8, 0x04, 0xab, 0x6a, 0xba, 0x8e, 0xd6, 0x14, 0x33, 0xcb,
  1212. 0x75, 0x74, 0x76, 0x67, 0x7e, 0xf5, 0xab, 0x89, 0xbc, 0x29, 0x21, 0x27, 0x4e, 0xf5, 0x6f, 0x65,
  1213. 0xb0, 0x35, 0x65, 0xe2, 0x85, 0x5f, 0x82, 0x45, 0x87, 0xfa, 0xc8, 0x25, 0x97, 0x97, 0x0d, 0x79,
  1214. 0x63, 0x05, 0x50, 0x00, 0x79, 0x11, 0xd1, 0x00, 0xcb, 0x1e, 0x22, 0xbd, 0x10, 0xf5, 0xa2, 0x36,
  1215. 0xe4, 0x60, 0xbd, 0x58, 0xb3, 0x09, 0x96, 0x62, 0x48, 0x93, 0x3a, 0x18, 0xbe, 0x06, 0x9b, 0x21,
  1216. 0xc7, 0x16, 0x0f, 0x83, 0xc0, 0x73, 0xb1, 0x13, 0x0d, 0x39, 0xdc, 0xa2, 0xc4, 0x1b, 0x16, 0x58,
  1217. 0xa7, 0xf5, 0x90, 0xe3, 0xb6, 0x06, 0xbe, 0x61, 0x1e, 0x7f, 0x4d, 0xbc, 0x21, 0x3c, 0x00, 0xd7,
  1218. 0xba, 0x18, 0x3b, 0xdc, 0xb8, 0x26, 0xa7, 0x9b, 0xd9, 0xb1, 0x28, 0xd3, 0xea, 0xf7, 0x65, 0xb0,
  1219. 0x91, 0x35, 0xce, 0xc2, 0xdf, 0x97, 0x80, 0x31, 0xed, 0xe2, 0x49, 0x66, 0x2b, 0xff, 0xee, 0xa2,
  1220. 0xa5, 0xe1, 0x23, 0xfc, 0x72, 0xa4, 0xc9, 0xd4, 0x98, 0x95, 0x20, 0x4b, 0x2c, 0x23, 0x99, 0x76,
  1221. 0x81, 0x26, 0xd3, 0x9e, 0x1f, 0xc9, 0xa9, 0x86, 0x4f, 0x46, 0x92, 0xa9, 0x31, 0x2b, 0x24, 0x4b,
  1222. 0x5c, 0xfd, 0x73, 0x19, 0xac, 0x8e, 0x7d, 0xc9, 0xc0, 0x27, 0x60, 0xd1, 0xc7, 0xcc, 0xee, 0x23,
  1223. 0x22, 0x0a, 0x16, 0x29, 0x88, 0xed, 0x4f, 0x9c, 0xa8, 0x8c, 0x38, 0xf2, 0x30, 0xb7, 0x6c, 0x1a,
  1224. 0x46, 0xf3, 0x65, 0xb1, 0x32, 0x92, 0x90, 0xa6, 0x42, 0xc0, 0x63, 0x70, 0x2b, 0xf9, 0xc2, 0x08,
  1225. 0x98, 0x4b, 0x59, 0x34, 0x74, 0xce, 0xb8, 0x21, 0x7b, 0x78, 0xa0, 0x58, 0xd6, 0x62, 0x54, 0x4b,
  1226. 0x83, 0xe0, 0x97, 0x60, 0x09, 0x13, 0xd4, 0xf1, 0xb0, 0xe5, 0x51, 0x1b, 0x79, 0x05, 0x76, 0xf5,
  1227. 0xa2, 0xb2, 0xff, 0x3a, 0x32, 0xaf, 0x3a, 0xa0, 0x92, 0x39, 0xca, 0xc1, 0x5f, 0x01, 0x98, 0x3a,
  1228. 0xa9, 0x91, 0x2d, 0xaf, 0x00, 0x8d, 0x52, 0x81, 0x22, 0xbd, 0x75, 0x89, 0x6b, 0x28, 0x58, 0xd5,
  1229. 0x04, 0xab, 0x63, 0xc3, 0x1b, 0xfc, 0x25, 0x58, 0x4a, 0xdf, 0x8d, 0x14, 0xda, 0xcb, 0x8b, 0xa9,
  1230. 0x2b, 0x91, 0xea, 0xdf, 0xcb, 0x60, 0x29, 0x3d, 0xed, 0xc2, 0xbf, 0x44, 0x63, 0xfd, 0xcc, 0x7b,
  1231. 0x53, 0xbd, 0x05, 0xde, 0xe6, 0x14, 0x5e, 0x9a, 0xf5, 0x99, 0xa2, 0x78, 0xc3, 0xbc, 0x57, 0xd4,
  1232. 0x51, 0xd5, 0x37, 0x5d, 0x6d, 0x56, 0x07, 0x53, 0x75, 0x90, 0x01, 0x38, 0x79, 0x23, 0xab, 0xb7,
  1233. 0xc2, 0xb3, 0x39, 0x22, 0x3a, 0xc3, 0x17, 0x62, 0x22, 0x8e, 0x48, 0x68, 0xae, 0x0d, 0xc6, 0x24,
  1234. 0x47, 0x3b, 0x60, 0xfb, 0xf2, 0x43, 0x76, 0x6c, 0x32, 0x3e, 0xfa, 0x6f, 0x09, 0xdc, 0xb3, 0xa9,
  1235. 0x9f, 0x3f, 0x81, 0x1f, 0x2d, 0x37, 0x93, 0xaa, 0xa3, 0x82, 0xb6, 0x4a, 0xdf, 0xbc, 0xd4, 0x98,
  1236. 0x1e, 0x8d, 0x9a, 0x63, 0x8d, 0xb2, 0x5e, 0xbd, 0x87, 0x89, 0x5c, 0xb3, 0xf8, 0x26, 0x3a, 0x70,
  1237. 0xf9, 0x8c, 0x7f, 0x9b, 0x1e, 0x27, 0xbf, 0xfe, 0x51, 0xbe, 0xf2, 0xa2, 0xd1, 0xf8, 0xbe, 0x7c,
  1238. 0x57, 0x1d, 0xaf, 0xb5, 0x86, 0xc3, 0x6b, 0xea, 0x67, 0xf4, 0xeb, 0x7c, 0xbf, 0x66, 0xc6, 0x96,
  1239. 0xff, 0x8a, 0x6d, 0xde, 0x35, 0x1c, 0xfe, 0x2e, 0xb1, 0x79, 0x77, 0xbe, 0xff, 0x2e, 0xb1, 0xf9,
  1240. 0x4f, 0xf9, 0x9e, 0x52, 0x1c, 0x1e, 0x36, 0x1c, 0x7e, 0x78, 0x98, 0x58, 0x1d, 0x1e, 0x9e, 0xef,
  1241. 0x1f, 0x1e, 0x26, 0x76, 0x9d, 0xeb, 0x32, 0xd8, 0x87, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0x11,
  1242. 0x70, 0x61, 0xb0, 0x19, 0x1b, 0x00, 0x00,
  1243. }