1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/ads/googleads/v1/common/ad_type_infos.proto
3
4package common
5
6import (
7	fmt "fmt"
8	math "math"
9
10	proto "github.com/golang/protobuf/proto"
11	wrappers "github.com/golang/protobuf/ptypes/wrappers"
12	enums "google.golang.org/genproto/googleapis/ads/googleads/v1/enums"
13	_ "google.golang.org/genproto/googleapis/api/annotations"
14)
15
16// Reference imports to suppress errors if they are not otherwise used.
17var _ = proto.Marshal
18var _ = fmt.Errorf
19var _ = math.Inf
20
21// This is a compile-time assertion to ensure that this generated file
22// is compatible with the proto package it is being compiled against.
23// A compilation error at this line likely means your copy of the
24// proto package needs to be updated.
25const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
26
27// A text ad.
28type TextAdInfo struct {
29	// The headline of the ad.
30	Headline *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline,proto3" json:"headline,omitempty"`
31	// The first line of the ad's description.
32	Description1 *wrappers.StringValue `protobuf:"bytes,2,opt,name=description1,proto3" json:"description1,omitempty"`
33	// The second line of the ad's description.
34	Description2         *wrappers.StringValue `protobuf:"bytes,3,opt,name=description2,proto3" json:"description2,omitempty"`
35	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
36	XXX_unrecognized     []byte                `json:"-"`
37	XXX_sizecache        int32                 `json:"-"`
38}
39
40func (m *TextAdInfo) Reset()         { *m = TextAdInfo{} }
41func (m *TextAdInfo) String() string { return proto.CompactTextString(m) }
42func (*TextAdInfo) ProtoMessage()    {}
43func (*TextAdInfo) Descriptor() ([]byte, []int) {
44	return fileDescriptor_2709d6977cd7f379, []int{0}
45}
46
47func (m *TextAdInfo) XXX_Unmarshal(b []byte) error {
48	return xxx_messageInfo_TextAdInfo.Unmarshal(m, b)
49}
50func (m *TextAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
51	return xxx_messageInfo_TextAdInfo.Marshal(b, m, deterministic)
52}
53func (m *TextAdInfo) XXX_Merge(src proto.Message) {
54	xxx_messageInfo_TextAdInfo.Merge(m, src)
55}
56func (m *TextAdInfo) XXX_Size() int {
57	return xxx_messageInfo_TextAdInfo.Size(m)
58}
59func (m *TextAdInfo) XXX_DiscardUnknown() {
60	xxx_messageInfo_TextAdInfo.DiscardUnknown(m)
61}
62
63var xxx_messageInfo_TextAdInfo proto.InternalMessageInfo
64
65func (m *TextAdInfo) GetHeadline() *wrappers.StringValue {
66	if m != nil {
67		return m.Headline
68	}
69	return nil
70}
71
72func (m *TextAdInfo) GetDescription1() *wrappers.StringValue {
73	if m != nil {
74		return m.Description1
75	}
76	return nil
77}
78
79func (m *TextAdInfo) GetDescription2() *wrappers.StringValue {
80	if m != nil {
81		return m.Description2
82	}
83	return nil
84}
85
86// An expanded text ad.
87type ExpandedTextAdInfo struct {
88	// The first part of the ad's headline.
89	HeadlinePart1 *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline_part1,json=headlinePart1,proto3" json:"headline_part1,omitempty"`
90	// The second part of the ad's headline.
91	HeadlinePart2 *wrappers.StringValue `protobuf:"bytes,2,opt,name=headline_part2,json=headlinePart2,proto3" json:"headline_part2,omitempty"`
92	// The third part of the ad's headline.
93	HeadlinePart3 *wrappers.StringValue `protobuf:"bytes,6,opt,name=headline_part3,json=headlinePart3,proto3" json:"headline_part3,omitempty"`
94	// The description of the ad.
95	Description *wrappers.StringValue `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
96	// The second description of the ad.
97	Description2 *wrappers.StringValue `protobuf:"bytes,7,opt,name=description2,proto3" json:"description2,omitempty"`
98	// The text that can appear alongside the ad's displayed URL.
99	Path1 *wrappers.StringValue `protobuf:"bytes,4,opt,name=path1,proto3" json:"path1,omitempty"`
100	// Additional text that can appear alongside the ad's displayed URL.
101	Path2                *wrappers.StringValue `protobuf:"bytes,5,opt,name=path2,proto3" json:"path2,omitempty"`
102	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
103	XXX_unrecognized     []byte                `json:"-"`
104	XXX_sizecache        int32                 `json:"-"`
105}
106
107func (m *ExpandedTextAdInfo) Reset()         { *m = ExpandedTextAdInfo{} }
108func (m *ExpandedTextAdInfo) String() string { return proto.CompactTextString(m) }
109func (*ExpandedTextAdInfo) ProtoMessage()    {}
110func (*ExpandedTextAdInfo) Descriptor() ([]byte, []int) {
111	return fileDescriptor_2709d6977cd7f379, []int{1}
112}
113
114func (m *ExpandedTextAdInfo) XXX_Unmarshal(b []byte) error {
115	return xxx_messageInfo_ExpandedTextAdInfo.Unmarshal(m, b)
116}
117func (m *ExpandedTextAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
118	return xxx_messageInfo_ExpandedTextAdInfo.Marshal(b, m, deterministic)
119}
120func (m *ExpandedTextAdInfo) XXX_Merge(src proto.Message) {
121	xxx_messageInfo_ExpandedTextAdInfo.Merge(m, src)
122}
123func (m *ExpandedTextAdInfo) XXX_Size() int {
124	return xxx_messageInfo_ExpandedTextAdInfo.Size(m)
125}
126func (m *ExpandedTextAdInfo) XXX_DiscardUnknown() {
127	xxx_messageInfo_ExpandedTextAdInfo.DiscardUnknown(m)
128}
129
130var xxx_messageInfo_ExpandedTextAdInfo proto.InternalMessageInfo
131
132func (m *ExpandedTextAdInfo) GetHeadlinePart1() *wrappers.StringValue {
133	if m != nil {
134		return m.HeadlinePart1
135	}
136	return nil
137}
138
139func (m *ExpandedTextAdInfo) GetHeadlinePart2() *wrappers.StringValue {
140	if m != nil {
141		return m.HeadlinePart2
142	}
143	return nil
144}
145
146func (m *ExpandedTextAdInfo) GetHeadlinePart3() *wrappers.StringValue {
147	if m != nil {
148		return m.HeadlinePart3
149	}
150	return nil
151}
152
153func (m *ExpandedTextAdInfo) GetDescription() *wrappers.StringValue {
154	if m != nil {
155		return m.Description
156	}
157	return nil
158}
159
160func (m *ExpandedTextAdInfo) GetDescription2() *wrappers.StringValue {
161	if m != nil {
162		return m.Description2
163	}
164	return nil
165}
166
167func (m *ExpandedTextAdInfo) GetPath1() *wrappers.StringValue {
168	if m != nil {
169		return m.Path1
170	}
171	return nil
172}
173
174func (m *ExpandedTextAdInfo) GetPath2() *wrappers.StringValue {
175	if m != nil {
176		return m.Path2
177	}
178	return nil
179}
180
181// A call-only ad.
182type CallOnlyAdInfo struct {
183	// The country code in the ad.
184	CountryCode *wrappers.StringValue `protobuf:"bytes,1,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
185	// The phone number in the ad.
186	PhoneNumber *wrappers.StringValue `protobuf:"bytes,2,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
187	// The business name in the ad.
188	BusinessName *wrappers.StringValue `protobuf:"bytes,3,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"`
189	// First headline in the ad.
190	Headline1 *wrappers.StringValue `protobuf:"bytes,11,opt,name=headline1,proto3" json:"headline1,omitempty"`
191	// Second headline in the ad.
192	Headline2 *wrappers.StringValue `protobuf:"bytes,12,opt,name=headline2,proto3" json:"headline2,omitempty"`
193	// The first line of the ad's description.
194	Description1 *wrappers.StringValue `protobuf:"bytes,4,opt,name=description1,proto3" json:"description1,omitempty"`
195	// The second line of the ad's description.
196	Description2 *wrappers.StringValue `protobuf:"bytes,5,opt,name=description2,proto3" json:"description2,omitempty"`
197	// Whether to enable call tracking for the creative. Enabling call
198	// tracking also enables call conversions.
199	CallTracked *wrappers.BoolValue `protobuf:"bytes,6,opt,name=call_tracked,json=callTracked,proto3" json:"call_tracked,omitempty"`
200	// Whether to disable call conversion for the creative.
201	// If set to `true`, disables call conversions even when `call_tracked` is
202	// `true`.
203	// If `call_tracked` is `false`, this field is ignored.
204	DisableCallConversion *wrappers.BoolValue `protobuf:"bytes,7,opt,name=disable_call_conversion,json=disableCallConversion,proto3" json:"disable_call_conversion,omitempty"`
205	// The URL to be used for phone number verification.
206	PhoneNumberVerificationUrl *wrappers.StringValue `protobuf:"bytes,8,opt,name=phone_number_verification_url,json=phoneNumberVerificationUrl,proto3" json:"phone_number_verification_url,omitempty"`
207	// The conversion action to attribute a call conversion to. If not set a
208	// default conversion action is used. This field only has effect if
209	// call_tracked is set to true. Otherwise this field is ignored.
210	ConversionAction *wrappers.StringValue `protobuf:"bytes,9,opt,name=conversion_action,json=conversionAction,proto3" json:"conversion_action,omitempty"`
211	// The call conversion behavior of this call only ad. It can use its own call
212	// conversion setting, inherit the account level setting, or be disabled.
213	ConversionReportingState enums.CallConversionReportingStateEnum_CallConversionReportingState `protobuf:"varint,10,opt,name=conversion_reporting_state,json=conversionReportingState,proto3,enum=google.ads.googleads.v1.enums.CallConversionReportingStateEnum_CallConversionReportingState" json:"conversion_reporting_state,omitempty"`
214	XXX_NoUnkeyedLiteral     struct{}                                                            `json:"-"`
215	XXX_unrecognized         []byte                                                              `json:"-"`
216	XXX_sizecache            int32                                                               `json:"-"`
217}
218
219func (m *CallOnlyAdInfo) Reset()         { *m = CallOnlyAdInfo{} }
220func (m *CallOnlyAdInfo) String() string { return proto.CompactTextString(m) }
221func (*CallOnlyAdInfo) ProtoMessage()    {}
222func (*CallOnlyAdInfo) Descriptor() ([]byte, []int) {
223	return fileDescriptor_2709d6977cd7f379, []int{2}
224}
225
226func (m *CallOnlyAdInfo) XXX_Unmarshal(b []byte) error {
227	return xxx_messageInfo_CallOnlyAdInfo.Unmarshal(m, b)
228}
229func (m *CallOnlyAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
230	return xxx_messageInfo_CallOnlyAdInfo.Marshal(b, m, deterministic)
231}
232func (m *CallOnlyAdInfo) XXX_Merge(src proto.Message) {
233	xxx_messageInfo_CallOnlyAdInfo.Merge(m, src)
234}
235func (m *CallOnlyAdInfo) XXX_Size() int {
236	return xxx_messageInfo_CallOnlyAdInfo.Size(m)
237}
238func (m *CallOnlyAdInfo) XXX_DiscardUnknown() {
239	xxx_messageInfo_CallOnlyAdInfo.DiscardUnknown(m)
240}
241
242var xxx_messageInfo_CallOnlyAdInfo proto.InternalMessageInfo
243
244func (m *CallOnlyAdInfo) GetCountryCode() *wrappers.StringValue {
245	if m != nil {
246		return m.CountryCode
247	}
248	return nil
249}
250
251func (m *CallOnlyAdInfo) GetPhoneNumber() *wrappers.StringValue {
252	if m != nil {
253		return m.PhoneNumber
254	}
255	return nil
256}
257
258func (m *CallOnlyAdInfo) GetBusinessName() *wrappers.StringValue {
259	if m != nil {
260		return m.BusinessName
261	}
262	return nil
263}
264
265func (m *CallOnlyAdInfo) GetHeadline1() *wrappers.StringValue {
266	if m != nil {
267		return m.Headline1
268	}
269	return nil
270}
271
272func (m *CallOnlyAdInfo) GetHeadline2() *wrappers.StringValue {
273	if m != nil {
274		return m.Headline2
275	}
276	return nil
277}
278
279func (m *CallOnlyAdInfo) GetDescription1() *wrappers.StringValue {
280	if m != nil {
281		return m.Description1
282	}
283	return nil
284}
285
286func (m *CallOnlyAdInfo) GetDescription2() *wrappers.StringValue {
287	if m != nil {
288		return m.Description2
289	}
290	return nil
291}
292
293func (m *CallOnlyAdInfo) GetCallTracked() *wrappers.BoolValue {
294	if m != nil {
295		return m.CallTracked
296	}
297	return nil
298}
299
300func (m *CallOnlyAdInfo) GetDisableCallConversion() *wrappers.BoolValue {
301	if m != nil {
302		return m.DisableCallConversion
303	}
304	return nil
305}
306
307func (m *CallOnlyAdInfo) GetPhoneNumberVerificationUrl() *wrappers.StringValue {
308	if m != nil {
309		return m.PhoneNumberVerificationUrl
310	}
311	return nil
312}
313
314func (m *CallOnlyAdInfo) GetConversionAction() *wrappers.StringValue {
315	if m != nil {
316		return m.ConversionAction
317	}
318	return nil
319}
320
321func (m *CallOnlyAdInfo) GetConversionReportingState() enums.CallConversionReportingStateEnum_CallConversionReportingState {
322	if m != nil {
323		return m.ConversionReportingState
324	}
325	return enums.CallConversionReportingStateEnum_UNSPECIFIED
326}
327
328// An expanded dynamic search ad.
329type ExpandedDynamicSearchAdInfo struct {
330	// The description of the ad.
331	Description          *wrappers.StringValue `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
332	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
333	XXX_unrecognized     []byte                `json:"-"`
334	XXX_sizecache        int32                 `json:"-"`
335}
336
337func (m *ExpandedDynamicSearchAdInfo) Reset()         { *m = ExpandedDynamicSearchAdInfo{} }
338func (m *ExpandedDynamicSearchAdInfo) String() string { return proto.CompactTextString(m) }
339func (*ExpandedDynamicSearchAdInfo) ProtoMessage()    {}
340func (*ExpandedDynamicSearchAdInfo) Descriptor() ([]byte, []int) {
341	return fileDescriptor_2709d6977cd7f379, []int{3}
342}
343
344func (m *ExpandedDynamicSearchAdInfo) XXX_Unmarshal(b []byte) error {
345	return xxx_messageInfo_ExpandedDynamicSearchAdInfo.Unmarshal(m, b)
346}
347func (m *ExpandedDynamicSearchAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
348	return xxx_messageInfo_ExpandedDynamicSearchAdInfo.Marshal(b, m, deterministic)
349}
350func (m *ExpandedDynamicSearchAdInfo) XXX_Merge(src proto.Message) {
351	xxx_messageInfo_ExpandedDynamicSearchAdInfo.Merge(m, src)
352}
353func (m *ExpandedDynamicSearchAdInfo) XXX_Size() int {
354	return xxx_messageInfo_ExpandedDynamicSearchAdInfo.Size(m)
355}
356func (m *ExpandedDynamicSearchAdInfo) XXX_DiscardUnknown() {
357	xxx_messageInfo_ExpandedDynamicSearchAdInfo.DiscardUnknown(m)
358}
359
360var xxx_messageInfo_ExpandedDynamicSearchAdInfo proto.InternalMessageInfo
361
362func (m *ExpandedDynamicSearchAdInfo) GetDescription() *wrappers.StringValue {
363	if m != nil {
364		return m.Description
365	}
366	return nil
367}
368
369// A hotel ad.
370type HotelAdInfo struct {
371	XXX_NoUnkeyedLiteral struct{} `json:"-"`
372	XXX_unrecognized     []byte   `json:"-"`
373	XXX_sizecache        int32    `json:"-"`
374}
375
376func (m *HotelAdInfo) Reset()         { *m = HotelAdInfo{} }
377func (m *HotelAdInfo) String() string { return proto.CompactTextString(m) }
378func (*HotelAdInfo) ProtoMessage()    {}
379func (*HotelAdInfo) Descriptor() ([]byte, []int) {
380	return fileDescriptor_2709d6977cd7f379, []int{4}
381}
382
383func (m *HotelAdInfo) XXX_Unmarshal(b []byte) error {
384	return xxx_messageInfo_HotelAdInfo.Unmarshal(m, b)
385}
386func (m *HotelAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
387	return xxx_messageInfo_HotelAdInfo.Marshal(b, m, deterministic)
388}
389func (m *HotelAdInfo) XXX_Merge(src proto.Message) {
390	xxx_messageInfo_HotelAdInfo.Merge(m, src)
391}
392func (m *HotelAdInfo) XXX_Size() int {
393	return xxx_messageInfo_HotelAdInfo.Size(m)
394}
395func (m *HotelAdInfo) XXX_DiscardUnknown() {
396	xxx_messageInfo_HotelAdInfo.DiscardUnknown(m)
397}
398
399var xxx_messageInfo_HotelAdInfo proto.InternalMessageInfo
400
401// A Smart Shopping ad.
402type ShoppingSmartAdInfo struct {
403	XXX_NoUnkeyedLiteral struct{} `json:"-"`
404	XXX_unrecognized     []byte   `json:"-"`
405	XXX_sizecache        int32    `json:"-"`
406}
407
408func (m *ShoppingSmartAdInfo) Reset()         { *m = ShoppingSmartAdInfo{} }
409func (m *ShoppingSmartAdInfo) String() string { return proto.CompactTextString(m) }
410func (*ShoppingSmartAdInfo) ProtoMessage()    {}
411func (*ShoppingSmartAdInfo) Descriptor() ([]byte, []int) {
412	return fileDescriptor_2709d6977cd7f379, []int{5}
413}
414
415func (m *ShoppingSmartAdInfo) XXX_Unmarshal(b []byte) error {
416	return xxx_messageInfo_ShoppingSmartAdInfo.Unmarshal(m, b)
417}
418func (m *ShoppingSmartAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
419	return xxx_messageInfo_ShoppingSmartAdInfo.Marshal(b, m, deterministic)
420}
421func (m *ShoppingSmartAdInfo) XXX_Merge(src proto.Message) {
422	xxx_messageInfo_ShoppingSmartAdInfo.Merge(m, src)
423}
424func (m *ShoppingSmartAdInfo) XXX_Size() int {
425	return xxx_messageInfo_ShoppingSmartAdInfo.Size(m)
426}
427func (m *ShoppingSmartAdInfo) XXX_DiscardUnknown() {
428	xxx_messageInfo_ShoppingSmartAdInfo.DiscardUnknown(m)
429}
430
431var xxx_messageInfo_ShoppingSmartAdInfo proto.InternalMessageInfo
432
433// A standard Shopping ad.
434type ShoppingProductAdInfo struct {
435	XXX_NoUnkeyedLiteral struct{} `json:"-"`
436	XXX_unrecognized     []byte   `json:"-"`
437	XXX_sizecache        int32    `json:"-"`
438}
439
440func (m *ShoppingProductAdInfo) Reset()         { *m = ShoppingProductAdInfo{} }
441func (m *ShoppingProductAdInfo) String() string { return proto.CompactTextString(m) }
442func (*ShoppingProductAdInfo) ProtoMessage()    {}
443func (*ShoppingProductAdInfo) Descriptor() ([]byte, []int) {
444	return fileDescriptor_2709d6977cd7f379, []int{6}
445}
446
447func (m *ShoppingProductAdInfo) XXX_Unmarshal(b []byte) error {
448	return xxx_messageInfo_ShoppingProductAdInfo.Unmarshal(m, b)
449}
450func (m *ShoppingProductAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
451	return xxx_messageInfo_ShoppingProductAdInfo.Marshal(b, m, deterministic)
452}
453func (m *ShoppingProductAdInfo) XXX_Merge(src proto.Message) {
454	xxx_messageInfo_ShoppingProductAdInfo.Merge(m, src)
455}
456func (m *ShoppingProductAdInfo) XXX_Size() int {
457	return xxx_messageInfo_ShoppingProductAdInfo.Size(m)
458}
459func (m *ShoppingProductAdInfo) XXX_DiscardUnknown() {
460	xxx_messageInfo_ShoppingProductAdInfo.DiscardUnknown(m)
461}
462
463var xxx_messageInfo_ShoppingProductAdInfo proto.InternalMessageInfo
464
465// A Shopping Comparison Listing ad.
466type ShoppingComparisonListingAdInfo struct {
467	// Headline of the ad. This field is required. Allowed length is between 25
468	// and 45 characters.
469	Headline             *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline,proto3" json:"headline,omitempty"`
470	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
471	XXX_unrecognized     []byte                `json:"-"`
472	XXX_sizecache        int32                 `json:"-"`
473}
474
475func (m *ShoppingComparisonListingAdInfo) Reset()         { *m = ShoppingComparisonListingAdInfo{} }
476func (m *ShoppingComparisonListingAdInfo) String() string { return proto.CompactTextString(m) }
477func (*ShoppingComparisonListingAdInfo) ProtoMessage()    {}
478func (*ShoppingComparisonListingAdInfo) Descriptor() ([]byte, []int) {
479	return fileDescriptor_2709d6977cd7f379, []int{7}
480}
481
482func (m *ShoppingComparisonListingAdInfo) XXX_Unmarshal(b []byte) error {
483	return xxx_messageInfo_ShoppingComparisonListingAdInfo.Unmarshal(m, b)
484}
485func (m *ShoppingComparisonListingAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
486	return xxx_messageInfo_ShoppingComparisonListingAdInfo.Marshal(b, m, deterministic)
487}
488func (m *ShoppingComparisonListingAdInfo) XXX_Merge(src proto.Message) {
489	xxx_messageInfo_ShoppingComparisonListingAdInfo.Merge(m, src)
490}
491func (m *ShoppingComparisonListingAdInfo) XXX_Size() int {
492	return xxx_messageInfo_ShoppingComparisonListingAdInfo.Size(m)
493}
494func (m *ShoppingComparisonListingAdInfo) XXX_DiscardUnknown() {
495	xxx_messageInfo_ShoppingComparisonListingAdInfo.DiscardUnknown(m)
496}
497
498var xxx_messageInfo_ShoppingComparisonListingAdInfo proto.InternalMessageInfo
499
500func (m *ShoppingComparisonListingAdInfo) GetHeadline() *wrappers.StringValue {
501	if m != nil {
502		return m.Headline
503	}
504	return nil
505}
506
507// A Gmail ad.
508type GmailAdInfo struct {
509	// The Gmail teaser.
510	Teaser *GmailTeaser `protobuf:"bytes,1,opt,name=teaser,proto3" json:"teaser,omitempty"`
511	// The MediaFile resource name of the header image. Valid image types are GIF,
512	// JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must
513	// be between 3:1 and 5:1 (+-1%).
514	HeaderImage *wrappers.StringValue `protobuf:"bytes,2,opt,name=header_image,json=headerImage,proto3" json:"header_image,omitempty"`
515	// The MediaFile resource name of the marketing image. Valid image types are
516	// GIF, JPEG and PNG. The image must either be landscape with a minimum size
517	// of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a
518	// minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%)
519	MarketingImage *wrappers.StringValue `protobuf:"bytes,3,opt,name=marketing_image,json=marketingImage,proto3" json:"marketing_image,omitempty"`
520	// Headline of the marketing image.
521	MarketingImageHeadline *wrappers.StringValue `protobuf:"bytes,4,opt,name=marketing_image_headline,json=marketingImageHeadline,proto3" json:"marketing_image_headline,omitempty"`
522	// Description of the marketing image.
523	MarketingImageDescription *wrappers.StringValue `protobuf:"bytes,5,opt,name=marketing_image_description,json=marketingImageDescription,proto3" json:"marketing_image_description,omitempty"`
524	// Display-call-to-action of the marketing image.
525	MarketingImageDisplayCallToAction *DisplayCallToAction `protobuf:"bytes,6,opt,name=marketing_image_display_call_to_action,json=marketingImageDisplayCallToAction,proto3" json:"marketing_image_display_call_to_action,omitempty"`
526	// Product images. Up to 15 images are supported.
527	ProductImages []*ProductImage `protobuf:"bytes,7,rep,name=product_images,json=productImages,proto3" json:"product_images,omitempty"`
528	// Product videos. Up to 7 videos are supported. At least one product video
529	// or a marketing image must be specified.
530	ProductVideos        []*ProductVideo `protobuf:"bytes,8,rep,name=product_videos,json=productVideos,proto3" json:"product_videos,omitempty"`
531	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
532	XXX_unrecognized     []byte          `json:"-"`
533	XXX_sizecache        int32           `json:"-"`
534}
535
536func (m *GmailAdInfo) Reset()         { *m = GmailAdInfo{} }
537func (m *GmailAdInfo) String() string { return proto.CompactTextString(m) }
538func (*GmailAdInfo) ProtoMessage()    {}
539func (*GmailAdInfo) Descriptor() ([]byte, []int) {
540	return fileDescriptor_2709d6977cd7f379, []int{8}
541}
542
543func (m *GmailAdInfo) XXX_Unmarshal(b []byte) error {
544	return xxx_messageInfo_GmailAdInfo.Unmarshal(m, b)
545}
546func (m *GmailAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
547	return xxx_messageInfo_GmailAdInfo.Marshal(b, m, deterministic)
548}
549func (m *GmailAdInfo) XXX_Merge(src proto.Message) {
550	xxx_messageInfo_GmailAdInfo.Merge(m, src)
551}
552func (m *GmailAdInfo) XXX_Size() int {
553	return xxx_messageInfo_GmailAdInfo.Size(m)
554}
555func (m *GmailAdInfo) XXX_DiscardUnknown() {
556	xxx_messageInfo_GmailAdInfo.DiscardUnknown(m)
557}
558
559var xxx_messageInfo_GmailAdInfo proto.InternalMessageInfo
560
561func (m *GmailAdInfo) GetTeaser() *GmailTeaser {
562	if m != nil {
563		return m.Teaser
564	}
565	return nil
566}
567
568func (m *GmailAdInfo) GetHeaderImage() *wrappers.StringValue {
569	if m != nil {
570		return m.HeaderImage
571	}
572	return nil
573}
574
575func (m *GmailAdInfo) GetMarketingImage() *wrappers.StringValue {
576	if m != nil {
577		return m.MarketingImage
578	}
579	return nil
580}
581
582func (m *GmailAdInfo) GetMarketingImageHeadline() *wrappers.StringValue {
583	if m != nil {
584		return m.MarketingImageHeadline
585	}
586	return nil
587}
588
589func (m *GmailAdInfo) GetMarketingImageDescription() *wrappers.StringValue {
590	if m != nil {
591		return m.MarketingImageDescription
592	}
593	return nil
594}
595
596func (m *GmailAdInfo) GetMarketingImageDisplayCallToAction() *DisplayCallToAction {
597	if m != nil {
598		return m.MarketingImageDisplayCallToAction
599	}
600	return nil
601}
602
603func (m *GmailAdInfo) GetProductImages() []*ProductImage {
604	if m != nil {
605		return m.ProductImages
606	}
607	return nil
608}
609
610func (m *GmailAdInfo) GetProductVideos() []*ProductVideo {
611	if m != nil {
612		return m.ProductVideos
613	}
614	return nil
615}
616
617// Gmail teaser data. The teaser is a small header that acts as an invitation
618// to view the rest of the ad (the body).
619type GmailTeaser struct {
620	// Headline of the teaser.
621	Headline *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline,proto3" json:"headline,omitempty"`
622	// Description of the teaser.
623	Description *wrappers.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
624	// Business name of the advertiser.
625	BusinessName *wrappers.StringValue `protobuf:"bytes,3,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"`
626	// The MediaFile resource name of the logo image. Valid image types are GIF,
627	// JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must
628	// be 1:1 (+-1%).
629	LogoImage            *wrappers.StringValue `protobuf:"bytes,4,opt,name=logo_image,json=logoImage,proto3" json:"logo_image,omitempty"`
630	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
631	XXX_unrecognized     []byte                `json:"-"`
632	XXX_sizecache        int32                 `json:"-"`
633}
634
635func (m *GmailTeaser) Reset()         { *m = GmailTeaser{} }
636func (m *GmailTeaser) String() string { return proto.CompactTextString(m) }
637func (*GmailTeaser) ProtoMessage()    {}
638func (*GmailTeaser) Descriptor() ([]byte, []int) {
639	return fileDescriptor_2709d6977cd7f379, []int{9}
640}
641
642func (m *GmailTeaser) XXX_Unmarshal(b []byte) error {
643	return xxx_messageInfo_GmailTeaser.Unmarshal(m, b)
644}
645func (m *GmailTeaser) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
646	return xxx_messageInfo_GmailTeaser.Marshal(b, m, deterministic)
647}
648func (m *GmailTeaser) XXX_Merge(src proto.Message) {
649	xxx_messageInfo_GmailTeaser.Merge(m, src)
650}
651func (m *GmailTeaser) XXX_Size() int {
652	return xxx_messageInfo_GmailTeaser.Size(m)
653}
654func (m *GmailTeaser) XXX_DiscardUnknown() {
655	xxx_messageInfo_GmailTeaser.DiscardUnknown(m)
656}
657
658var xxx_messageInfo_GmailTeaser proto.InternalMessageInfo
659
660func (m *GmailTeaser) GetHeadline() *wrappers.StringValue {
661	if m != nil {
662		return m.Headline
663	}
664	return nil
665}
666
667func (m *GmailTeaser) GetDescription() *wrappers.StringValue {
668	if m != nil {
669		return m.Description
670	}
671	return nil
672}
673
674func (m *GmailTeaser) GetBusinessName() *wrappers.StringValue {
675	if m != nil {
676		return m.BusinessName
677	}
678	return nil
679}
680
681func (m *GmailTeaser) GetLogoImage() *wrappers.StringValue {
682	if m != nil {
683		return m.LogoImage
684	}
685	return nil
686}
687
688// Data for display call to action. The call to action is a piece of the ad
689// that prompts the user to do something. Like clicking a link or making a phone
690// call.
691type DisplayCallToAction struct {
692	// Text for the display-call-to-action.
693	Text *wrappers.StringValue `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
694	// Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for
695	// white.
696	TextColor *wrappers.StringValue `protobuf:"bytes,2,opt,name=text_color,json=textColor,proto3" json:"text_color,omitempty"`
697	// Identifies the url collection in the ad.url_collections field. If not set
698	// the url defaults to final_url.
699	UrlCollectionId      *wrappers.StringValue `protobuf:"bytes,3,opt,name=url_collection_id,json=urlCollectionId,proto3" json:"url_collection_id,omitempty"`
700	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
701	XXX_unrecognized     []byte                `json:"-"`
702	XXX_sizecache        int32                 `json:"-"`
703}
704
705func (m *DisplayCallToAction) Reset()         { *m = DisplayCallToAction{} }
706func (m *DisplayCallToAction) String() string { return proto.CompactTextString(m) }
707func (*DisplayCallToAction) ProtoMessage()    {}
708func (*DisplayCallToAction) Descriptor() ([]byte, []int) {
709	return fileDescriptor_2709d6977cd7f379, []int{10}
710}
711
712func (m *DisplayCallToAction) XXX_Unmarshal(b []byte) error {
713	return xxx_messageInfo_DisplayCallToAction.Unmarshal(m, b)
714}
715func (m *DisplayCallToAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
716	return xxx_messageInfo_DisplayCallToAction.Marshal(b, m, deterministic)
717}
718func (m *DisplayCallToAction) XXX_Merge(src proto.Message) {
719	xxx_messageInfo_DisplayCallToAction.Merge(m, src)
720}
721func (m *DisplayCallToAction) XXX_Size() int {
722	return xxx_messageInfo_DisplayCallToAction.Size(m)
723}
724func (m *DisplayCallToAction) XXX_DiscardUnknown() {
725	xxx_messageInfo_DisplayCallToAction.DiscardUnknown(m)
726}
727
728var xxx_messageInfo_DisplayCallToAction proto.InternalMessageInfo
729
730func (m *DisplayCallToAction) GetText() *wrappers.StringValue {
731	if m != nil {
732		return m.Text
733	}
734	return nil
735}
736
737func (m *DisplayCallToAction) GetTextColor() *wrappers.StringValue {
738	if m != nil {
739		return m.TextColor
740	}
741	return nil
742}
743
744func (m *DisplayCallToAction) GetUrlCollectionId() *wrappers.StringValue {
745	if m != nil {
746		return m.UrlCollectionId
747	}
748	return nil
749}
750
751// Product image specific data.
752type ProductImage struct {
753	// The MediaFile resource name of the product image. Valid image types are
754	// GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio
755	// must be 1:1 (+-1%).
756	ProductImage *wrappers.StringValue `protobuf:"bytes,1,opt,name=product_image,json=productImage,proto3" json:"product_image,omitempty"`
757	// Description of the product.
758	Description *wrappers.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
759	// Display-call-to-action of the product image.
760	DisplayCallToAction  *DisplayCallToAction `protobuf:"bytes,3,opt,name=display_call_to_action,json=displayCallToAction,proto3" json:"display_call_to_action,omitempty"`
761	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
762	XXX_unrecognized     []byte               `json:"-"`
763	XXX_sizecache        int32                `json:"-"`
764}
765
766func (m *ProductImage) Reset()         { *m = ProductImage{} }
767func (m *ProductImage) String() string { return proto.CompactTextString(m) }
768func (*ProductImage) ProtoMessage()    {}
769func (*ProductImage) Descriptor() ([]byte, []int) {
770	return fileDescriptor_2709d6977cd7f379, []int{11}
771}
772
773func (m *ProductImage) XXX_Unmarshal(b []byte) error {
774	return xxx_messageInfo_ProductImage.Unmarshal(m, b)
775}
776func (m *ProductImage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
777	return xxx_messageInfo_ProductImage.Marshal(b, m, deterministic)
778}
779func (m *ProductImage) XXX_Merge(src proto.Message) {
780	xxx_messageInfo_ProductImage.Merge(m, src)
781}
782func (m *ProductImage) XXX_Size() int {
783	return xxx_messageInfo_ProductImage.Size(m)
784}
785func (m *ProductImage) XXX_DiscardUnknown() {
786	xxx_messageInfo_ProductImage.DiscardUnknown(m)
787}
788
789var xxx_messageInfo_ProductImage proto.InternalMessageInfo
790
791func (m *ProductImage) GetProductImage() *wrappers.StringValue {
792	if m != nil {
793		return m.ProductImage
794	}
795	return nil
796}
797
798func (m *ProductImage) GetDescription() *wrappers.StringValue {
799	if m != nil {
800		return m.Description
801	}
802	return nil
803}
804
805func (m *ProductImage) GetDisplayCallToAction() *DisplayCallToAction {
806	if m != nil {
807		return m.DisplayCallToAction
808	}
809	return nil
810}
811
812// Product video specific data.
813type ProductVideo struct {
814	// The MediaFile resource name of a video which must be hosted on YouTube.
815	ProductVideo         *wrappers.StringValue `protobuf:"bytes,1,opt,name=product_video,json=productVideo,proto3" json:"product_video,omitempty"`
816	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
817	XXX_unrecognized     []byte                `json:"-"`
818	XXX_sizecache        int32                 `json:"-"`
819}
820
821func (m *ProductVideo) Reset()         { *m = ProductVideo{} }
822func (m *ProductVideo) String() string { return proto.CompactTextString(m) }
823func (*ProductVideo) ProtoMessage()    {}
824func (*ProductVideo) Descriptor() ([]byte, []int) {
825	return fileDescriptor_2709d6977cd7f379, []int{12}
826}
827
828func (m *ProductVideo) XXX_Unmarshal(b []byte) error {
829	return xxx_messageInfo_ProductVideo.Unmarshal(m, b)
830}
831func (m *ProductVideo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
832	return xxx_messageInfo_ProductVideo.Marshal(b, m, deterministic)
833}
834func (m *ProductVideo) XXX_Merge(src proto.Message) {
835	xxx_messageInfo_ProductVideo.Merge(m, src)
836}
837func (m *ProductVideo) XXX_Size() int {
838	return xxx_messageInfo_ProductVideo.Size(m)
839}
840func (m *ProductVideo) XXX_DiscardUnknown() {
841	xxx_messageInfo_ProductVideo.DiscardUnknown(m)
842}
843
844var xxx_messageInfo_ProductVideo proto.InternalMessageInfo
845
846func (m *ProductVideo) GetProductVideo() *wrappers.StringValue {
847	if m != nil {
848		return m.ProductVideo
849	}
850	return nil
851}
852
853// An image ad.
854type ImageAdInfo struct {
855	// Width in pixels of the full size image.
856	PixelWidth *wrappers.Int64Value `protobuf:"bytes,4,opt,name=pixel_width,json=pixelWidth,proto3" json:"pixel_width,omitempty"`
857	// Height in pixels of the full size image.
858	PixelHeight *wrappers.Int64Value `protobuf:"bytes,5,opt,name=pixel_height,json=pixelHeight,proto3" json:"pixel_height,omitempty"`
859	// URL of the full size image.
860	ImageUrl *wrappers.StringValue `protobuf:"bytes,6,opt,name=image_url,json=imageUrl,proto3" json:"image_url,omitempty"`
861	// Width in pixels of the preview size image.
862	PreviewPixelWidth *wrappers.Int64Value `protobuf:"bytes,7,opt,name=preview_pixel_width,json=previewPixelWidth,proto3" json:"preview_pixel_width,omitempty"`
863	// Height in pixels of the preview size image.
864	PreviewPixelHeight *wrappers.Int64Value `protobuf:"bytes,8,opt,name=preview_pixel_height,json=previewPixelHeight,proto3" json:"preview_pixel_height,omitempty"`
865	// URL of the preview size image.
866	PreviewImageUrl *wrappers.StringValue `protobuf:"bytes,9,opt,name=preview_image_url,json=previewImageUrl,proto3" json:"preview_image_url,omitempty"`
867	// The mime type of the image.
868	MimeType enums.MimeTypeEnum_MimeType `protobuf:"varint,10,opt,name=mime_type,json=mimeType,proto3,enum=google.ads.googleads.v1.enums.MimeTypeEnum_MimeType" json:"mime_type,omitempty"`
869	// The name of the image. If the image was created from a MediaFile, this is
870	// the MediaFile's name. If the image was created from bytes, this is empty.
871	Name *wrappers.StringValue `protobuf:"bytes,11,opt,name=name,proto3" json:"name,omitempty"`
872	// The image to create the ImageAd from. This can be specified in one of
873	// two ways.
874	// 1. An existing MediaFile resource.
875	// 2. The raw image data as bytes.
876	//
877	// Types that are valid to be assigned to Image:
878	//	*ImageAdInfo_MediaFile
879	//	*ImageAdInfo_Data
880	//	*ImageAdInfo_AdIdToCopyImageFrom
881	Image                isImageAdInfo_Image `protobuf_oneof:"image"`
882	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
883	XXX_unrecognized     []byte              `json:"-"`
884	XXX_sizecache        int32               `json:"-"`
885}
886
887func (m *ImageAdInfo) Reset()         { *m = ImageAdInfo{} }
888func (m *ImageAdInfo) String() string { return proto.CompactTextString(m) }
889func (*ImageAdInfo) ProtoMessage()    {}
890func (*ImageAdInfo) Descriptor() ([]byte, []int) {
891	return fileDescriptor_2709d6977cd7f379, []int{13}
892}
893
894func (m *ImageAdInfo) XXX_Unmarshal(b []byte) error {
895	return xxx_messageInfo_ImageAdInfo.Unmarshal(m, b)
896}
897func (m *ImageAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
898	return xxx_messageInfo_ImageAdInfo.Marshal(b, m, deterministic)
899}
900func (m *ImageAdInfo) XXX_Merge(src proto.Message) {
901	xxx_messageInfo_ImageAdInfo.Merge(m, src)
902}
903func (m *ImageAdInfo) XXX_Size() int {
904	return xxx_messageInfo_ImageAdInfo.Size(m)
905}
906func (m *ImageAdInfo) XXX_DiscardUnknown() {
907	xxx_messageInfo_ImageAdInfo.DiscardUnknown(m)
908}
909
910var xxx_messageInfo_ImageAdInfo proto.InternalMessageInfo
911
912func (m *ImageAdInfo) GetPixelWidth() *wrappers.Int64Value {
913	if m != nil {
914		return m.PixelWidth
915	}
916	return nil
917}
918
919func (m *ImageAdInfo) GetPixelHeight() *wrappers.Int64Value {
920	if m != nil {
921		return m.PixelHeight
922	}
923	return nil
924}
925
926func (m *ImageAdInfo) GetImageUrl() *wrappers.StringValue {
927	if m != nil {
928		return m.ImageUrl
929	}
930	return nil
931}
932
933func (m *ImageAdInfo) GetPreviewPixelWidth() *wrappers.Int64Value {
934	if m != nil {
935		return m.PreviewPixelWidth
936	}
937	return nil
938}
939
940func (m *ImageAdInfo) GetPreviewPixelHeight() *wrappers.Int64Value {
941	if m != nil {
942		return m.PreviewPixelHeight
943	}
944	return nil
945}
946
947func (m *ImageAdInfo) GetPreviewImageUrl() *wrappers.StringValue {
948	if m != nil {
949		return m.PreviewImageUrl
950	}
951	return nil
952}
953
954func (m *ImageAdInfo) GetMimeType() enums.MimeTypeEnum_MimeType {
955	if m != nil {
956		return m.MimeType
957	}
958	return enums.MimeTypeEnum_UNSPECIFIED
959}
960
961func (m *ImageAdInfo) GetName() *wrappers.StringValue {
962	if m != nil {
963		return m.Name
964	}
965	return nil
966}
967
968type isImageAdInfo_Image interface {
969	isImageAdInfo_Image()
970}
971
972type ImageAdInfo_MediaFile struct {
973	MediaFile *wrappers.StringValue `protobuf:"bytes,1,opt,name=media_file,json=mediaFile,proto3,oneof"`
974}
975
976type ImageAdInfo_Data struct {
977	Data *wrappers.BytesValue `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
978}
979
980type ImageAdInfo_AdIdToCopyImageFrom struct {
981	AdIdToCopyImageFrom *wrappers.Int64Value `protobuf:"bytes,3,opt,name=ad_id_to_copy_image_from,json=adIdToCopyImageFrom,proto3,oneof"`
982}
983
984func (*ImageAdInfo_MediaFile) isImageAdInfo_Image() {}
985
986func (*ImageAdInfo_Data) isImageAdInfo_Image() {}
987
988func (*ImageAdInfo_AdIdToCopyImageFrom) isImageAdInfo_Image() {}
989
990func (m *ImageAdInfo) GetImage() isImageAdInfo_Image {
991	if m != nil {
992		return m.Image
993	}
994	return nil
995}
996
997func (m *ImageAdInfo) GetMediaFile() *wrappers.StringValue {
998	if x, ok := m.GetImage().(*ImageAdInfo_MediaFile); ok {
999		return x.MediaFile
1000	}
1001	return nil
1002}
1003
1004func (m *ImageAdInfo) GetData() *wrappers.BytesValue {
1005	if x, ok := m.GetImage().(*ImageAdInfo_Data); ok {
1006		return x.Data
1007	}
1008	return nil
1009}
1010
1011func (m *ImageAdInfo) GetAdIdToCopyImageFrom() *wrappers.Int64Value {
1012	if x, ok := m.GetImage().(*ImageAdInfo_AdIdToCopyImageFrom); ok {
1013		return x.AdIdToCopyImageFrom
1014	}
1015	return nil
1016}
1017
1018// XXX_OneofWrappers is for the internal use of the proto package.
1019func (*ImageAdInfo) XXX_OneofWrappers() []interface{} {
1020	return []interface{}{
1021		(*ImageAdInfo_MediaFile)(nil),
1022		(*ImageAdInfo_Data)(nil),
1023		(*ImageAdInfo_AdIdToCopyImageFrom)(nil),
1024	}
1025}
1026
1027// Representation of video bumper in-stream ad format (very short in-stream
1028// non-skippable video ad).
1029type VideoBumperInStreamAdInfo struct {
1030	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1031	XXX_unrecognized     []byte   `json:"-"`
1032	XXX_sizecache        int32    `json:"-"`
1033}
1034
1035func (m *VideoBumperInStreamAdInfo) Reset()         { *m = VideoBumperInStreamAdInfo{} }
1036func (m *VideoBumperInStreamAdInfo) String() string { return proto.CompactTextString(m) }
1037func (*VideoBumperInStreamAdInfo) ProtoMessage()    {}
1038func (*VideoBumperInStreamAdInfo) Descriptor() ([]byte, []int) {
1039	return fileDescriptor_2709d6977cd7f379, []int{14}
1040}
1041
1042func (m *VideoBumperInStreamAdInfo) XXX_Unmarshal(b []byte) error {
1043	return xxx_messageInfo_VideoBumperInStreamAdInfo.Unmarshal(m, b)
1044}
1045func (m *VideoBumperInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1046	return xxx_messageInfo_VideoBumperInStreamAdInfo.Marshal(b, m, deterministic)
1047}
1048func (m *VideoBumperInStreamAdInfo) XXX_Merge(src proto.Message) {
1049	xxx_messageInfo_VideoBumperInStreamAdInfo.Merge(m, src)
1050}
1051func (m *VideoBumperInStreamAdInfo) XXX_Size() int {
1052	return xxx_messageInfo_VideoBumperInStreamAdInfo.Size(m)
1053}
1054func (m *VideoBumperInStreamAdInfo) XXX_DiscardUnknown() {
1055	xxx_messageInfo_VideoBumperInStreamAdInfo.DiscardUnknown(m)
1056}
1057
1058var xxx_messageInfo_VideoBumperInStreamAdInfo proto.InternalMessageInfo
1059
1060// Representation of video non-skippable in-stream ad format (15 second
1061// in-stream non-skippable video ad).
1062type VideoNonSkippableInStreamAdInfo struct {
1063	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1064	XXX_unrecognized     []byte   `json:"-"`
1065	XXX_sizecache        int32    `json:"-"`
1066}
1067
1068func (m *VideoNonSkippableInStreamAdInfo) Reset()         { *m = VideoNonSkippableInStreamAdInfo{} }
1069func (m *VideoNonSkippableInStreamAdInfo) String() string { return proto.CompactTextString(m) }
1070func (*VideoNonSkippableInStreamAdInfo) ProtoMessage()    {}
1071func (*VideoNonSkippableInStreamAdInfo) Descriptor() ([]byte, []int) {
1072	return fileDescriptor_2709d6977cd7f379, []int{15}
1073}
1074
1075func (m *VideoNonSkippableInStreamAdInfo) XXX_Unmarshal(b []byte) error {
1076	return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Unmarshal(m, b)
1077}
1078func (m *VideoNonSkippableInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1079	return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Marshal(b, m, deterministic)
1080}
1081func (m *VideoNonSkippableInStreamAdInfo) XXX_Merge(src proto.Message) {
1082	xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Merge(m, src)
1083}
1084func (m *VideoNonSkippableInStreamAdInfo) XXX_Size() int {
1085	return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Size(m)
1086}
1087func (m *VideoNonSkippableInStreamAdInfo) XXX_DiscardUnknown() {
1088	xxx_messageInfo_VideoNonSkippableInStreamAdInfo.DiscardUnknown(m)
1089}
1090
1091var xxx_messageInfo_VideoNonSkippableInStreamAdInfo proto.InternalMessageInfo
1092
1093// Representation of video TrueView in-stream ad format (ad shown during video
1094// playback, often at beginning, which displays a skip button a few seconds into
1095// the video).
1096type VideoTrueViewInStreamAdInfo struct {
1097	// Label on the CTA (call-to-action) button taking the user to the video ad's
1098	// final URL.
1099	// Required for TrueView for action campaigns, optional otherwise.
1100	ActionButtonLabel *wrappers.StringValue `protobuf:"bytes,1,opt,name=action_button_label,json=actionButtonLabel,proto3" json:"action_button_label,omitempty"`
1101	// Additional text displayed with the CTA (call-to-action) button to give
1102	// context and encourage clicking on the button.
1103	ActionHeadline *wrappers.StringValue `protobuf:"bytes,2,opt,name=action_headline,json=actionHeadline,proto3" json:"action_headline,omitempty"`
1104	// The MediaFile resource name of the companion banner used with the ad.
1105	CompanionBanner      *wrappers.StringValue `protobuf:"bytes,3,opt,name=companion_banner,json=companionBanner,proto3" json:"companion_banner,omitempty"`
1106	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1107	XXX_unrecognized     []byte                `json:"-"`
1108	XXX_sizecache        int32                 `json:"-"`
1109}
1110
1111func (m *VideoTrueViewInStreamAdInfo) Reset()         { *m = VideoTrueViewInStreamAdInfo{} }
1112func (m *VideoTrueViewInStreamAdInfo) String() string { return proto.CompactTextString(m) }
1113func (*VideoTrueViewInStreamAdInfo) ProtoMessage()    {}
1114func (*VideoTrueViewInStreamAdInfo) Descriptor() ([]byte, []int) {
1115	return fileDescriptor_2709d6977cd7f379, []int{16}
1116}
1117
1118func (m *VideoTrueViewInStreamAdInfo) XXX_Unmarshal(b []byte) error {
1119	return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Unmarshal(m, b)
1120}
1121func (m *VideoTrueViewInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1122	return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Marshal(b, m, deterministic)
1123}
1124func (m *VideoTrueViewInStreamAdInfo) XXX_Merge(src proto.Message) {
1125	xxx_messageInfo_VideoTrueViewInStreamAdInfo.Merge(m, src)
1126}
1127func (m *VideoTrueViewInStreamAdInfo) XXX_Size() int {
1128	return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Size(m)
1129}
1130func (m *VideoTrueViewInStreamAdInfo) XXX_DiscardUnknown() {
1131	xxx_messageInfo_VideoTrueViewInStreamAdInfo.DiscardUnknown(m)
1132}
1133
1134var xxx_messageInfo_VideoTrueViewInStreamAdInfo proto.InternalMessageInfo
1135
1136func (m *VideoTrueViewInStreamAdInfo) GetActionButtonLabel() *wrappers.StringValue {
1137	if m != nil {
1138		return m.ActionButtonLabel
1139	}
1140	return nil
1141}
1142
1143func (m *VideoTrueViewInStreamAdInfo) GetActionHeadline() *wrappers.StringValue {
1144	if m != nil {
1145		return m.ActionHeadline
1146	}
1147	return nil
1148}
1149
1150func (m *VideoTrueViewInStreamAdInfo) GetCompanionBanner() *wrappers.StringValue {
1151	if m != nil {
1152		return m.CompanionBanner
1153	}
1154	return nil
1155}
1156
1157// Representation of video out-stream ad format (ad shown alongside a feed
1158// with automatic playback, without sound).
1159type VideoOutstreamAdInfo struct {
1160	// The headline of the ad.
1161	Headline *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline,proto3" json:"headline,omitempty"`
1162	// The description line.
1163	Description          *wrappers.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
1164	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1165	XXX_unrecognized     []byte                `json:"-"`
1166	XXX_sizecache        int32                 `json:"-"`
1167}
1168
1169func (m *VideoOutstreamAdInfo) Reset()         { *m = VideoOutstreamAdInfo{} }
1170func (m *VideoOutstreamAdInfo) String() string { return proto.CompactTextString(m) }
1171func (*VideoOutstreamAdInfo) ProtoMessage()    {}
1172func (*VideoOutstreamAdInfo) Descriptor() ([]byte, []int) {
1173	return fileDescriptor_2709d6977cd7f379, []int{17}
1174}
1175
1176func (m *VideoOutstreamAdInfo) XXX_Unmarshal(b []byte) error {
1177	return xxx_messageInfo_VideoOutstreamAdInfo.Unmarshal(m, b)
1178}
1179func (m *VideoOutstreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1180	return xxx_messageInfo_VideoOutstreamAdInfo.Marshal(b, m, deterministic)
1181}
1182func (m *VideoOutstreamAdInfo) XXX_Merge(src proto.Message) {
1183	xxx_messageInfo_VideoOutstreamAdInfo.Merge(m, src)
1184}
1185func (m *VideoOutstreamAdInfo) XXX_Size() int {
1186	return xxx_messageInfo_VideoOutstreamAdInfo.Size(m)
1187}
1188func (m *VideoOutstreamAdInfo) XXX_DiscardUnknown() {
1189	xxx_messageInfo_VideoOutstreamAdInfo.DiscardUnknown(m)
1190}
1191
1192var xxx_messageInfo_VideoOutstreamAdInfo proto.InternalMessageInfo
1193
1194func (m *VideoOutstreamAdInfo) GetHeadline() *wrappers.StringValue {
1195	if m != nil {
1196		return m.Headline
1197	}
1198	return nil
1199}
1200
1201func (m *VideoOutstreamAdInfo) GetDescription() *wrappers.StringValue {
1202	if m != nil {
1203		return m.Description
1204	}
1205	return nil
1206}
1207
1208// A video ad.
1209type VideoAdInfo struct {
1210	// The MediaFile resource to use for the video.
1211	MediaFile *wrappers.StringValue `protobuf:"bytes,1,opt,name=media_file,json=mediaFile,proto3" json:"media_file,omitempty"`
1212	// Format-specific schema for the different video formats.
1213	//
1214	// Types that are valid to be assigned to Format:
1215	//	*VideoAdInfo_InStream
1216	//	*VideoAdInfo_Bumper
1217	//	*VideoAdInfo_OutStream
1218	//	*VideoAdInfo_NonSkippable
1219	Format               isVideoAdInfo_Format `protobuf_oneof:"format"`
1220	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
1221	XXX_unrecognized     []byte               `json:"-"`
1222	XXX_sizecache        int32                `json:"-"`
1223}
1224
1225func (m *VideoAdInfo) Reset()         { *m = VideoAdInfo{} }
1226func (m *VideoAdInfo) String() string { return proto.CompactTextString(m) }
1227func (*VideoAdInfo) ProtoMessage()    {}
1228func (*VideoAdInfo) Descriptor() ([]byte, []int) {
1229	return fileDescriptor_2709d6977cd7f379, []int{18}
1230}
1231
1232func (m *VideoAdInfo) XXX_Unmarshal(b []byte) error {
1233	return xxx_messageInfo_VideoAdInfo.Unmarshal(m, b)
1234}
1235func (m *VideoAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1236	return xxx_messageInfo_VideoAdInfo.Marshal(b, m, deterministic)
1237}
1238func (m *VideoAdInfo) XXX_Merge(src proto.Message) {
1239	xxx_messageInfo_VideoAdInfo.Merge(m, src)
1240}
1241func (m *VideoAdInfo) XXX_Size() int {
1242	return xxx_messageInfo_VideoAdInfo.Size(m)
1243}
1244func (m *VideoAdInfo) XXX_DiscardUnknown() {
1245	xxx_messageInfo_VideoAdInfo.DiscardUnknown(m)
1246}
1247
1248var xxx_messageInfo_VideoAdInfo proto.InternalMessageInfo
1249
1250func (m *VideoAdInfo) GetMediaFile() *wrappers.StringValue {
1251	if m != nil {
1252		return m.MediaFile
1253	}
1254	return nil
1255}
1256
1257type isVideoAdInfo_Format interface {
1258	isVideoAdInfo_Format()
1259}
1260
1261type VideoAdInfo_InStream struct {
1262	InStream *VideoTrueViewInStreamAdInfo `protobuf:"bytes,2,opt,name=in_stream,json=inStream,proto3,oneof"`
1263}
1264
1265type VideoAdInfo_Bumper struct {
1266	Bumper *VideoBumperInStreamAdInfo `protobuf:"bytes,3,opt,name=bumper,proto3,oneof"`
1267}
1268
1269type VideoAdInfo_OutStream struct {
1270	OutStream *VideoOutstreamAdInfo `protobuf:"bytes,4,opt,name=out_stream,json=outStream,proto3,oneof"`
1271}
1272
1273type VideoAdInfo_NonSkippable struct {
1274	NonSkippable *VideoNonSkippableInStreamAdInfo `protobuf:"bytes,5,opt,name=non_skippable,json=nonSkippable,proto3,oneof"`
1275}
1276
1277func (*VideoAdInfo_InStream) isVideoAdInfo_Format() {}
1278
1279func (*VideoAdInfo_Bumper) isVideoAdInfo_Format() {}
1280
1281func (*VideoAdInfo_OutStream) isVideoAdInfo_Format() {}
1282
1283func (*VideoAdInfo_NonSkippable) isVideoAdInfo_Format() {}
1284
1285func (m *VideoAdInfo) GetFormat() isVideoAdInfo_Format {
1286	if m != nil {
1287		return m.Format
1288	}
1289	return nil
1290}
1291
1292func (m *VideoAdInfo) GetInStream() *VideoTrueViewInStreamAdInfo {
1293	if x, ok := m.GetFormat().(*VideoAdInfo_InStream); ok {
1294		return x.InStream
1295	}
1296	return nil
1297}
1298
1299func (m *VideoAdInfo) GetBumper() *VideoBumperInStreamAdInfo {
1300	if x, ok := m.GetFormat().(*VideoAdInfo_Bumper); ok {
1301		return x.Bumper
1302	}
1303	return nil
1304}
1305
1306func (m *VideoAdInfo) GetOutStream() *VideoOutstreamAdInfo {
1307	if x, ok := m.GetFormat().(*VideoAdInfo_OutStream); ok {
1308		return x.OutStream
1309	}
1310	return nil
1311}
1312
1313func (m *VideoAdInfo) GetNonSkippable() *VideoNonSkippableInStreamAdInfo {
1314	if x, ok := m.GetFormat().(*VideoAdInfo_NonSkippable); ok {
1315		return x.NonSkippable
1316	}
1317	return nil
1318}
1319
1320// XXX_OneofWrappers is for the internal use of the proto package.
1321func (*VideoAdInfo) XXX_OneofWrappers() []interface{} {
1322	return []interface{}{
1323		(*VideoAdInfo_InStream)(nil),
1324		(*VideoAdInfo_Bumper)(nil),
1325		(*VideoAdInfo_OutStream)(nil),
1326		(*VideoAdInfo_NonSkippable)(nil),
1327	}
1328}
1329
1330// A responsive search ad.
1331//
1332// Responsive search ads let you create an ad that adapts to show more text, and
1333// more relevant messages, to your customers. Enter multiple headlines and
1334// descriptions when creating a responsive search ad, and over time, Google Ads
1335// will automatically test different combinations and learn which combinations
1336// perform best. By adapting your ad's content to more closely match potential
1337// customers' search terms, responsive search ads may improve your campaign's
1338// performance.
1339//
1340// More information at https://support.google.com/google-ads/answer/7684791
1341type ResponsiveSearchAdInfo struct {
1342	// List of text assets for headlines. When the ad serves the headlines will
1343	// be selected from this list.
1344	Headlines []*AdTextAsset `protobuf:"bytes,1,rep,name=headlines,proto3" json:"headlines,omitempty"`
1345	// List of text assets for descriptions. When the ad serves the descriptions
1346	// will be selected from this list.
1347	Descriptions []*AdTextAsset `protobuf:"bytes,2,rep,name=descriptions,proto3" json:"descriptions,omitempty"`
1348	// First part of text that may appear appended to the url displayed in the ad.
1349	Path1 *wrappers.StringValue `protobuf:"bytes,3,opt,name=path1,proto3" json:"path1,omitempty"`
1350	// Second part of text that may appear appended to the url displayed in the
1351	// ad. This field can only be set when path1 is also set.
1352	Path2                *wrappers.StringValue `protobuf:"bytes,4,opt,name=path2,proto3" json:"path2,omitempty"`
1353	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1354	XXX_unrecognized     []byte                `json:"-"`
1355	XXX_sizecache        int32                 `json:"-"`
1356}
1357
1358func (m *ResponsiveSearchAdInfo) Reset()         { *m = ResponsiveSearchAdInfo{} }
1359func (m *ResponsiveSearchAdInfo) String() string { return proto.CompactTextString(m) }
1360func (*ResponsiveSearchAdInfo) ProtoMessage()    {}
1361func (*ResponsiveSearchAdInfo) Descriptor() ([]byte, []int) {
1362	return fileDescriptor_2709d6977cd7f379, []int{19}
1363}
1364
1365func (m *ResponsiveSearchAdInfo) XXX_Unmarshal(b []byte) error {
1366	return xxx_messageInfo_ResponsiveSearchAdInfo.Unmarshal(m, b)
1367}
1368func (m *ResponsiveSearchAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1369	return xxx_messageInfo_ResponsiveSearchAdInfo.Marshal(b, m, deterministic)
1370}
1371func (m *ResponsiveSearchAdInfo) XXX_Merge(src proto.Message) {
1372	xxx_messageInfo_ResponsiveSearchAdInfo.Merge(m, src)
1373}
1374func (m *ResponsiveSearchAdInfo) XXX_Size() int {
1375	return xxx_messageInfo_ResponsiveSearchAdInfo.Size(m)
1376}
1377func (m *ResponsiveSearchAdInfo) XXX_DiscardUnknown() {
1378	xxx_messageInfo_ResponsiveSearchAdInfo.DiscardUnknown(m)
1379}
1380
1381var xxx_messageInfo_ResponsiveSearchAdInfo proto.InternalMessageInfo
1382
1383func (m *ResponsiveSearchAdInfo) GetHeadlines() []*AdTextAsset {
1384	if m != nil {
1385		return m.Headlines
1386	}
1387	return nil
1388}
1389
1390func (m *ResponsiveSearchAdInfo) GetDescriptions() []*AdTextAsset {
1391	if m != nil {
1392		return m.Descriptions
1393	}
1394	return nil
1395}
1396
1397func (m *ResponsiveSearchAdInfo) GetPath1() *wrappers.StringValue {
1398	if m != nil {
1399		return m.Path1
1400	}
1401	return nil
1402}
1403
1404func (m *ResponsiveSearchAdInfo) GetPath2() *wrappers.StringValue {
1405	if m != nil {
1406		return m.Path2
1407	}
1408	return nil
1409}
1410
1411// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads'
1412// in the Google Ads UI.
1413type LegacyResponsiveDisplayAdInfo struct {
1414	// The short version of the ad's headline.
1415	ShortHeadline *wrappers.StringValue `protobuf:"bytes,1,opt,name=short_headline,json=shortHeadline,proto3" json:"short_headline,omitempty"`
1416	// The long version of the ad's headline.
1417	LongHeadline *wrappers.StringValue `protobuf:"bytes,2,opt,name=long_headline,json=longHeadline,proto3" json:"long_headline,omitempty"`
1418	// The description of the ad.
1419	Description *wrappers.StringValue `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
1420	// The business name in the ad.
1421	BusinessName *wrappers.StringValue `protobuf:"bytes,4,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"`
1422	// Advertiser's consent to allow flexible color. When true, the ad may be
1423	// served with different color if necessary. When false, the ad will be served
1424	// with the specified colors or a neutral color.
1425	// The default value is true.
1426	// Must be true if main_color and accent_color are not set.
1427	AllowFlexibleColor *wrappers.BoolValue `protobuf:"bytes,5,opt,name=allow_flexible_color,json=allowFlexibleColor,proto3" json:"allow_flexible_color,omitempty"`
1428	// The accent color of the ad in hexadecimal, e.g. #ffffff for white.
1429	// If one of main_color and accent_color is set, the other is required as
1430	// well.
1431	AccentColor *wrappers.StringValue `protobuf:"bytes,6,opt,name=accent_color,json=accentColor,proto3" json:"accent_color,omitempty"`
1432	// The main color of the ad in hexadecimal, e.g. #ffffff for white.
1433	// If one of main_color and accent_color is set, the other is required as
1434	// well.
1435	MainColor *wrappers.StringValue `protobuf:"bytes,7,opt,name=main_color,json=mainColor,proto3" json:"main_color,omitempty"`
1436	// The call-to-action text for the ad.
1437	CallToActionText *wrappers.StringValue `protobuf:"bytes,8,opt,name=call_to_action_text,json=callToActionText,proto3" json:"call_to_action_text,omitempty"`
1438	// The MediaFile resource name of the logo image used in the ad.
1439	LogoImage *wrappers.StringValue `protobuf:"bytes,9,opt,name=logo_image,json=logoImage,proto3" json:"logo_image,omitempty"`
1440	// The MediaFile resource name of the square logo image used in the ad.
1441	SquareLogoImage *wrappers.StringValue `protobuf:"bytes,10,opt,name=square_logo_image,json=squareLogoImage,proto3" json:"square_logo_image,omitempty"`
1442	// The MediaFile resource name of the marketing image used in the ad.
1443	MarketingImage *wrappers.StringValue `protobuf:"bytes,11,opt,name=marketing_image,json=marketingImage,proto3" json:"marketing_image,omitempty"`
1444	// The MediaFile resource name of the square marketing image used in the ad.
1445	SquareMarketingImage *wrappers.StringValue `protobuf:"bytes,12,opt,name=square_marketing_image,json=squareMarketingImage,proto3" json:"square_marketing_image,omitempty"`
1446	// Specifies which format the ad will be served in. Default is ALL_FORMATS.
1447	FormatSetting enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting `protobuf:"varint,13,opt,name=format_setting,json=formatSetting,proto3,enum=google.ads.googleads.v1.enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting" json:"format_setting,omitempty"`
1448	// Prefix before price. E.g. 'as low as'.
1449	PricePrefix *wrappers.StringValue `protobuf:"bytes,14,opt,name=price_prefix,json=pricePrefix,proto3" json:"price_prefix,omitempty"`
1450	// Promotion text used for dyanmic formats of responsive ads. For example
1451	// 'Free two-day shipping'.
1452	PromoText            *wrappers.StringValue `protobuf:"bytes,15,opt,name=promo_text,json=promoText,proto3" json:"promo_text,omitempty"`
1453	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1454	XXX_unrecognized     []byte                `json:"-"`
1455	XXX_sizecache        int32                 `json:"-"`
1456}
1457
1458func (m *LegacyResponsiveDisplayAdInfo) Reset()         { *m = LegacyResponsiveDisplayAdInfo{} }
1459func (m *LegacyResponsiveDisplayAdInfo) String() string { return proto.CompactTextString(m) }
1460func (*LegacyResponsiveDisplayAdInfo) ProtoMessage()    {}
1461func (*LegacyResponsiveDisplayAdInfo) Descriptor() ([]byte, []int) {
1462	return fileDescriptor_2709d6977cd7f379, []int{20}
1463}
1464
1465func (m *LegacyResponsiveDisplayAdInfo) XXX_Unmarshal(b []byte) error {
1466	return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Unmarshal(m, b)
1467}
1468func (m *LegacyResponsiveDisplayAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1469	return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Marshal(b, m, deterministic)
1470}
1471func (m *LegacyResponsiveDisplayAdInfo) XXX_Merge(src proto.Message) {
1472	xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Merge(m, src)
1473}
1474func (m *LegacyResponsiveDisplayAdInfo) XXX_Size() int {
1475	return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Size(m)
1476}
1477func (m *LegacyResponsiveDisplayAdInfo) XXX_DiscardUnknown() {
1478	xxx_messageInfo_LegacyResponsiveDisplayAdInfo.DiscardUnknown(m)
1479}
1480
1481var xxx_messageInfo_LegacyResponsiveDisplayAdInfo proto.InternalMessageInfo
1482
1483func (m *LegacyResponsiveDisplayAdInfo) GetShortHeadline() *wrappers.StringValue {
1484	if m != nil {
1485		return m.ShortHeadline
1486	}
1487	return nil
1488}
1489
1490func (m *LegacyResponsiveDisplayAdInfo) GetLongHeadline() *wrappers.StringValue {
1491	if m != nil {
1492		return m.LongHeadline
1493	}
1494	return nil
1495}
1496
1497func (m *LegacyResponsiveDisplayAdInfo) GetDescription() *wrappers.StringValue {
1498	if m != nil {
1499		return m.Description
1500	}
1501	return nil
1502}
1503
1504func (m *LegacyResponsiveDisplayAdInfo) GetBusinessName() *wrappers.StringValue {
1505	if m != nil {
1506		return m.BusinessName
1507	}
1508	return nil
1509}
1510
1511func (m *LegacyResponsiveDisplayAdInfo) GetAllowFlexibleColor() *wrappers.BoolValue {
1512	if m != nil {
1513		return m.AllowFlexibleColor
1514	}
1515	return nil
1516}
1517
1518func (m *LegacyResponsiveDisplayAdInfo) GetAccentColor() *wrappers.StringValue {
1519	if m != nil {
1520		return m.AccentColor
1521	}
1522	return nil
1523}
1524
1525func (m *LegacyResponsiveDisplayAdInfo) GetMainColor() *wrappers.StringValue {
1526	if m != nil {
1527		return m.MainColor
1528	}
1529	return nil
1530}
1531
1532func (m *LegacyResponsiveDisplayAdInfo) GetCallToActionText() *wrappers.StringValue {
1533	if m != nil {
1534		return m.CallToActionText
1535	}
1536	return nil
1537}
1538
1539func (m *LegacyResponsiveDisplayAdInfo) GetLogoImage() *wrappers.StringValue {
1540	if m != nil {
1541		return m.LogoImage
1542	}
1543	return nil
1544}
1545
1546func (m *LegacyResponsiveDisplayAdInfo) GetSquareLogoImage() *wrappers.StringValue {
1547	if m != nil {
1548		return m.SquareLogoImage
1549	}
1550	return nil
1551}
1552
1553func (m *LegacyResponsiveDisplayAdInfo) GetMarketingImage() *wrappers.StringValue {
1554	if m != nil {
1555		return m.MarketingImage
1556	}
1557	return nil
1558}
1559
1560func (m *LegacyResponsiveDisplayAdInfo) GetSquareMarketingImage() *wrappers.StringValue {
1561	if m != nil {
1562		return m.SquareMarketingImage
1563	}
1564	return nil
1565}
1566
1567func (m *LegacyResponsiveDisplayAdInfo) GetFormatSetting() enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting {
1568	if m != nil {
1569		return m.FormatSetting
1570	}
1571	return enums.DisplayAdFormatSettingEnum_UNSPECIFIED
1572}
1573
1574func (m *LegacyResponsiveDisplayAdInfo) GetPricePrefix() *wrappers.StringValue {
1575	if m != nil {
1576		return m.PricePrefix
1577	}
1578	return nil
1579}
1580
1581func (m *LegacyResponsiveDisplayAdInfo) GetPromoText() *wrappers.StringValue {
1582	if m != nil {
1583		return m.PromoText
1584	}
1585	return nil
1586}
1587
1588// An app ad.
1589type AppAdInfo struct {
1590	// An optional text asset that, if specified, must always be displayed when
1591	// the ad is served.
1592	MandatoryAdText *AdTextAsset `protobuf:"bytes,1,opt,name=mandatory_ad_text,json=mandatoryAdText,proto3" json:"mandatory_ad_text,omitempty"`
1593	// List of text assets for headlines. When the ad serves the headlines will
1594	// be selected from this list.
1595	Headlines []*AdTextAsset `protobuf:"bytes,2,rep,name=headlines,proto3" json:"headlines,omitempty"`
1596	// List of text assets for descriptions. When the ad serves the descriptions
1597	// will be selected from this list.
1598	Descriptions []*AdTextAsset `protobuf:"bytes,3,rep,name=descriptions,proto3" json:"descriptions,omitempty"`
1599	// List of image assets that may be displayed with the ad.
1600	Images []*AdImageAsset `protobuf:"bytes,4,rep,name=images,proto3" json:"images,omitempty"`
1601	// List of YouTube video assets that may be displayed with the ad.
1602	YoutubeVideos []*AdVideoAsset `protobuf:"bytes,5,rep,name=youtube_videos,json=youtubeVideos,proto3" json:"youtube_videos,omitempty"`
1603	// List of media bundle assets that may be used with the ad.
1604	Html5MediaBundles    []*AdMediaBundleAsset `protobuf:"bytes,6,rep,name=html5_media_bundles,json=html5MediaBundles,proto3" json:"html5_media_bundles,omitempty"`
1605	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1606	XXX_unrecognized     []byte                `json:"-"`
1607	XXX_sizecache        int32                 `json:"-"`
1608}
1609
1610func (m *AppAdInfo) Reset()         { *m = AppAdInfo{} }
1611func (m *AppAdInfo) String() string { return proto.CompactTextString(m) }
1612func (*AppAdInfo) ProtoMessage()    {}
1613func (*AppAdInfo) Descriptor() ([]byte, []int) {
1614	return fileDescriptor_2709d6977cd7f379, []int{21}
1615}
1616
1617func (m *AppAdInfo) XXX_Unmarshal(b []byte) error {
1618	return xxx_messageInfo_AppAdInfo.Unmarshal(m, b)
1619}
1620func (m *AppAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1621	return xxx_messageInfo_AppAdInfo.Marshal(b, m, deterministic)
1622}
1623func (m *AppAdInfo) XXX_Merge(src proto.Message) {
1624	xxx_messageInfo_AppAdInfo.Merge(m, src)
1625}
1626func (m *AppAdInfo) XXX_Size() int {
1627	return xxx_messageInfo_AppAdInfo.Size(m)
1628}
1629func (m *AppAdInfo) XXX_DiscardUnknown() {
1630	xxx_messageInfo_AppAdInfo.DiscardUnknown(m)
1631}
1632
1633var xxx_messageInfo_AppAdInfo proto.InternalMessageInfo
1634
1635func (m *AppAdInfo) GetMandatoryAdText() *AdTextAsset {
1636	if m != nil {
1637		return m.MandatoryAdText
1638	}
1639	return nil
1640}
1641
1642func (m *AppAdInfo) GetHeadlines() []*AdTextAsset {
1643	if m != nil {
1644		return m.Headlines
1645	}
1646	return nil
1647}
1648
1649func (m *AppAdInfo) GetDescriptions() []*AdTextAsset {
1650	if m != nil {
1651		return m.Descriptions
1652	}
1653	return nil
1654}
1655
1656func (m *AppAdInfo) GetImages() []*AdImageAsset {
1657	if m != nil {
1658		return m.Images
1659	}
1660	return nil
1661}
1662
1663func (m *AppAdInfo) GetYoutubeVideos() []*AdVideoAsset {
1664	if m != nil {
1665		return m.YoutubeVideos
1666	}
1667	return nil
1668}
1669
1670func (m *AppAdInfo) GetHtml5MediaBundles() []*AdMediaBundleAsset {
1671	if m != nil {
1672		return m.Html5MediaBundles
1673	}
1674	return nil
1675}
1676
1677// App engagement ads allow you to write text encouraging a specific action in
1678// the app, like checking in, making a purchase, or booking a flight.
1679// They allow you to send users to a specific part of your app where they can
1680// find what they're looking for easier and faster.
1681type AppEngagementAdInfo struct {
1682	// List of text assets for headlines. When the ad serves the headlines will
1683	// be selected from this list.
1684	Headlines []*AdTextAsset `protobuf:"bytes,1,rep,name=headlines,proto3" json:"headlines,omitempty"`
1685	// List of text assets for descriptions. When the ad serves the descriptions
1686	// will be selected from this list.
1687	Descriptions []*AdTextAsset `protobuf:"bytes,2,rep,name=descriptions,proto3" json:"descriptions,omitempty"`
1688	// List of image assets that may be displayed with the ad.
1689	Images []*AdImageAsset `protobuf:"bytes,3,rep,name=images,proto3" json:"images,omitempty"`
1690	// List of video assets that may be displayed with the ad.
1691	Videos               []*AdVideoAsset `protobuf:"bytes,4,rep,name=videos,proto3" json:"videos,omitempty"`
1692	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
1693	XXX_unrecognized     []byte          `json:"-"`
1694	XXX_sizecache        int32           `json:"-"`
1695}
1696
1697func (m *AppEngagementAdInfo) Reset()         { *m = AppEngagementAdInfo{} }
1698func (m *AppEngagementAdInfo) String() string { return proto.CompactTextString(m) }
1699func (*AppEngagementAdInfo) ProtoMessage()    {}
1700func (*AppEngagementAdInfo) Descriptor() ([]byte, []int) {
1701	return fileDescriptor_2709d6977cd7f379, []int{22}
1702}
1703
1704func (m *AppEngagementAdInfo) XXX_Unmarshal(b []byte) error {
1705	return xxx_messageInfo_AppEngagementAdInfo.Unmarshal(m, b)
1706}
1707func (m *AppEngagementAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1708	return xxx_messageInfo_AppEngagementAdInfo.Marshal(b, m, deterministic)
1709}
1710func (m *AppEngagementAdInfo) XXX_Merge(src proto.Message) {
1711	xxx_messageInfo_AppEngagementAdInfo.Merge(m, src)
1712}
1713func (m *AppEngagementAdInfo) XXX_Size() int {
1714	return xxx_messageInfo_AppEngagementAdInfo.Size(m)
1715}
1716func (m *AppEngagementAdInfo) XXX_DiscardUnknown() {
1717	xxx_messageInfo_AppEngagementAdInfo.DiscardUnknown(m)
1718}
1719
1720var xxx_messageInfo_AppEngagementAdInfo proto.InternalMessageInfo
1721
1722func (m *AppEngagementAdInfo) GetHeadlines() []*AdTextAsset {
1723	if m != nil {
1724		return m.Headlines
1725	}
1726	return nil
1727}
1728
1729func (m *AppEngagementAdInfo) GetDescriptions() []*AdTextAsset {
1730	if m != nil {
1731		return m.Descriptions
1732	}
1733	return nil
1734}
1735
1736func (m *AppEngagementAdInfo) GetImages() []*AdImageAsset {
1737	if m != nil {
1738		return m.Images
1739	}
1740	return nil
1741}
1742
1743func (m *AppEngagementAdInfo) GetVideos() []*AdVideoAsset {
1744	if m != nil {
1745		return m.Videos
1746	}
1747	return nil
1748}
1749
1750// A legacy app install ad that only can be used by a few select customers.
1751type LegacyAppInstallAdInfo struct {
1752	// The id of the mobile app.
1753	AppId *wrappers.StringValue `protobuf:"bytes,1,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"`
1754	// The app store the mobile app is available in.
1755	AppStore enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore `protobuf:"varint,2,opt,name=app_store,json=appStore,proto3,enum=google.ads.googleads.v1.enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore" json:"app_store,omitempty"`
1756	// The headline of the ad.
1757	Headline *wrappers.StringValue `protobuf:"bytes,3,opt,name=headline,proto3" json:"headline,omitempty"`
1758	// The first description line of the ad.
1759	Description1 *wrappers.StringValue `protobuf:"bytes,4,opt,name=description1,proto3" json:"description1,omitempty"`
1760	// The second description line of the ad.
1761	Description2         *wrappers.StringValue `protobuf:"bytes,5,opt,name=description2,proto3" json:"description2,omitempty"`
1762	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
1763	XXX_unrecognized     []byte                `json:"-"`
1764	XXX_sizecache        int32                 `json:"-"`
1765}
1766
1767func (m *LegacyAppInstallAdInfo) Reset()         { *m = LegacyAppInstallAdInfo{} }
1768func (m *LegacyAppInstallAdInfo) String() string { return proto.CompactTextString(m) }
1769func (*LegacyAppInstallAdInfo) ProtoMessage()    {}
1770func (*LegacyAppInstallAdInfo) Descriptor() ([]byte, []int) {
1771	return fileDescriptor_2709d6977cd7f379, []int{23}
1772}
1773
1774func (m *LegacyAppInstallAdInfo) XXX_Unmarshal(b []byte) error {
1775	return xxx_messageInfo_LegacyAppInstallAdInfo.Unmarshal(m, b)
1776}
1777func (m *LegacyAppInstallAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1778	return xxx_messageInfo_LegacyAppInstallAdInfo.Marshal(b, m, deterministic)
1779}
1780func (m *LegacyAppInstallAdInfo) XXX_Merge(src proto.Message) {
1781	xxx_messageInfo_LegacyAppInstallAdInfo.Merge(m, src)
1782}
1783func (m *LegacyAppInstallAdInfo) XXX_Size() int {
1784	return xxx_messageInfo_LegacyAppInstallAdInfo.Size(m)
1785}
1786func (m *LegacyAppInstallAdInfo) XXX_DiscardUnknown() {
1787	xxx_messageInfo_LegacyAppInstallAdInfo.DiscardUnknown(m)
1788}
1789
1790var xxx_messageInfo_LegacyAppInstallAdInfo proto.InternalMessageInfo
1791
1792func (m *LegacyAppInstallAdInfo) GetAppId() *wrappers.StringValue {
1793	if m != nil {
1794		return m.AppId
1795	}
1796	return nil
1797}
1798
1799func (m *LegacyAppInstallAdInfo) GetAppStore() enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore {
1800	if m != nil {
1801		return m.AppStore
1802	}
1803	return enums.LegacyAppInstallAdAppStoreEnum_UNSPECIFIED
1804}
1805
1806func (m *LegacyAppInstallAdInfo) GetHeadline() *wrappers.StringValue {
1807	if m != nil {
1808		return m.Headline
1809	}
1810	return nil
1811}
1812
1813func (m *LegacyAppInstallAdInfo) GetDescription1() *wrappers.StringValue {
1814	if m != nil {
1815		return m.Description1
1816	}
1817	return nil
1818}
1819
1820func (m *LegacyAppInstallAdInfo) GetDescription2() *wrappers.StringValue {
1821	if m != nil {
1822		return m.Description2
1823	}
1824	return nil
1825}
1826
1827// A responsive display ad.
1828type ResponsiveDisplayAdInfo struct {
1829	// Marketing images to be used in the ad. Valid image types are GIF,
1830	// JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must
1831	// be 1.91:1 (+-1%). At least one marketing_image is required. Combined with
1832	// square_marketing_images the maximum is 15.
1833	MarketingImages []*AdImageAsset `protobuf:"bytes,1,rep,name=marketing_images,json=marketingImages,proto3" json:"marketing_images,omitempty"`
1834	// Square marketing images to be used in the ad. Valid image types are GIF,
1835	// JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must
1836	// be 1:1 (+-1%). At least one square marketing_image is required. Combined
1837	// with marketing_images the maximum is 15.
1838	SquareMarketingImages []*AdImageAsset `protobuf:"bytes,2,rep,name=square_marketing_images,json=squareMarketingImages,proto3" json:"square_marketing_images,omitempty"`
1839	// Logo images to be used in the ad. Valid image types are GIF,
1840	// JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must
1841	// be 4:1 (+-1%). Combined with square_logo_images the maximum is 5.
1842	LogoImages []*AdImageAsset `protobuf:"bytes,3,rep,name=logo_images,json=logoImages,proto3" json:"logo_images,omitempty"`
1843	// Square logo images to be used in the ad. Valid image types are GIF,
1844	// JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must
1845	// be 1:1 (+-1%). Combined with square_logo_images the maximum is 5.
1846	SquareLogoImages []*AdImageAsset `protobuf:"bytes,4,rep,name=square_logo_images,json=squareLogoImages,proto3" json:"square_logo_images,omitempty"`
1847	// Short format headlines for the ad. The maximum length is 30 characters.
1848	// At least 1 and max 5 headlines can be specified.
1849	Headlines []*AdTextAsset `protobuf:"bytes,5,rep,name=headlines,proto3" json:"headlines,omitempty"`
1850	// A required long format headline. The maximum length is 90 characters.
1851	LongHeadline *AdTextAsset `protobuf:"bytes,6,opt,name=long_headline,json=longHeadline,proto3" json:"long_headline,omitempty"`
1852	// Descriptive texts for the ad. The maximum length is 90 characters. At
1853	// least 1 and max 5 headlines can be specified.
1854	Descriptions []*AdTextAsset `protobuf:"bytes,7,rep,name=descriptions,proto3" json:"descriptions,omitempty"`
1855	// Optional YouTube vidoes for the ad. A maximum of 5 videos can be specified.
1856	YoutubeVideos []*AdVideoAsset `protobuf:"bytes,8,rep,name=youtube_videos,json=youtubeVideos,proto3" json:"youtube_videos,omitempty"`
1857	// The advertiser/brand name. Maximum display width is 25.
1858	BusinessName *wrappers.StringValue `protobuf:"bytes,9,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"`
1859	// The main color of the ad in hexadecimal, e.g. #ffffff for white.
1860	// If one of main_color and accent_color is set, the other is required as
1861	// well.
1862	MainColor *wrappers.StringValue `protobuf:"bytes,10,opt,name=main_color,json=mainColor,proto3" json:"main_color,omitempty"`
1863	// The accent color of the ad in hexadecimal, e.g. #ffffff for white.
1864	// If one of main_color and accent_color is set, the other is required as
1865	// well.
1866	AccentColor *wrappers.StringValue `protobuf:"bytes,11,opt,name=accent_color,json=accentColor,proto3" json:"accent_color,omitempty"`
1867	// Advertiser's consent to allow flexible color. When true, the ad may be
1868	// served with different color if necessary. When false, the ad will be served
1869	// with the specified colors or a neutral color.
1870	// The default value is true.
1871	// Must be true if main_color and accent_color are not set.
1872	AllowFlexibleColor *wrappers.BoolValue `protobuf:"bytes,12,opt,name=allow_flexible_color,json=allowFlexibleColor,proto3" json:"allow_flexible_color,omitempty"`
1873	// The call-to-action text for the ad. Maximum display width is 30.
1874	CallToActionText *wrappers.StringValue `protobuf:"bytes,13,opt,name=call_to_action_text,json=callToActionText,proto3" json:"call_to_action_text,omitempty"`
1875	// Prefix before price. E.g. 'as low as'.
1876	PricePrefix *wrappers.StringValue `protobuf:"bytes,14,opt,name=price_prefix,json=pricePrefix,proto3" json:"price_prefix,omitempty"`
1877	// Promotion text used for dyanmic formats of responsive ads. For example
1878	// 'Free two-day shipping'.
1879	PromoText *wrappers.StringValue `protobuf:"bytes,15,opt,name=promo_text,json=promoText,proto3" json:"promo_text,omitempty"`
1880	// Specifies which format the ad will be served in. Default is ALL_FORMATS.
1881	FormatSetting        enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting `protobuf:"varint,16,opt,name=format_setting,json=formatSetting,proto3,enum=google.ads.googleads.v1.enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting" json:"format_setting,omitempty"`
1882	XXX_NoUnkeyedLiteral struct{}                                                `json:"-"`
1883	XXX_unrecognized     []byte                                                  `json:"-"`
1884	XXX_sizecache        int32                                                   `json:"-"`
1885}
1886
1887func (m *ResponsiveDisplayAdInfo) Reset()         { *m = ResponsiveDisplayAdInfo{} }
1888func (m *ResponsiveDisplayAdInfo) String() string { return proto.CompactTextString(m) }
1889func (*ResponsiveDisplayAdInfo) ProtoMessage()    {}
1890func (*ResponsiveDisplayAdInfo) Descriptor() ([]byte, []int) {
1891	return fileDescriptor_2709d6977cd7f379, []int{24}
1892}
1893
1894func (m *ResponsiveDisplayAdInfo) XXX_Unmarshal(b []byte) error {
1895	return xxx_messageInfo_ResponsiveDisplayAdInfo.Unmarshal(m, b)
1896}
1897func (m *ResponsiveDisplayAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1898	return xxx_messageInfo_ResponsiveDisplayAdInfo.Marshal(b, m, deterministic)
1899}
1900func (m *ResponsiveDisplayAdInfo) XXX_Merge(src proto.Message) {
1901	xxx_messageInfo_ResponsiveDisplayAdInfo.Merge(m, src)
1902}
1903func (m *ResponsiveDisplayAdInfo) XXX_Size() int {
1904	return xxx_messageInfo_ResponsiveDisplayAdInfo.Size(m)
1905}
1906func (m *ResponsiveDisplayAdInfo) XXX_DiscardUnknown() {
1907	xxx_messageInfo_ResponsiveDisplayAdInfo.DiscardUnknown(m)
1908}
1909
1910var xxx_messageInfo_ResponsiveDisplayAdInfo proto.InternalMessageInfo
1911
1912func (m *ResponsiveDisplayAdInfo) GetMarketingImages() []*AdImageAsset {
1913	if m != nil {
1914		return m.MarketingImages
1915	}
1916	return nil
1917}
1918
1919func (m *ResponsiveDisplayAdInfo) GetSquareMarketingImages() []*AdImageAsset {
1920	if m != nil {
1921		return m.SquareMarketingImages
1922	}
1923	return nil
1924}
1925
1926func (m *ResponsiveDisplayAdInfo) GetLogoImages() []*AdImageAsset {
1927	if m != nil {
1928		return m.LogoImages
1929	}
1930	return nil
1931}
1932
1933func (m *ResponsiveDisplayAdInfo) GetSquareLogoImages() []*AdImageAsset {
1934	if m != nil {
1935		return m.SquareLogoImages
1936	}
1937	return nil
1938}
1939
1940func (m *ResponsiveDisplayAdInfo) GetHeadlines() []*AdTextAsset {
1941	if m != nil {
1942		return m.Headlines
1943	}
1944	return nil
1945}
1946
1947func (m *ResponsiveDisplayAdInfo) GetLongHeadline() *AdTextAsset {
1948	if m != nil {
1949		return m.LongHeadline
1950	}
1951	return nil
1952}
1953
1954func (m *ResponsiveDisplayAdInfo) GetDescriptions() []*AdTextAsset {
1955	if m != nil {
1956		return m.Descriptions
1957	}
1958	return nil
1959}
1960
1961func (m *ResponsiveDisplayAdInfo) GetYoutubeVideos() []*AdVideoAsset {
1962	if m != nil {
1963		return m.YoutubeVideos
1964	}
1965	return nil
1966}
1967
1968func (m *ResponsiveDisplayAdInfo) GetBusinessName() *wrappers.StringValue {
1969	if m != nil {
1970		return m.BusinessName
1971	}
1972	return nil
1973}
1974
1975func (m *ResponsiveDisplayAdInfo) GetMainColor() *wrappers.StringValue {
1976	if m != nil {
1977		return m.MainColor
1978	}
1979	return nil
1980}
1981
1982func (m *ResponsiveDisplayAdInfo) GetAccentColor() *wrappers.StringValue {
1983	if m != nil {
1984		return m.AccentColor
1985	}
1986	return nil
1987}
1988
1989func (m *ResponsiveDisplayAdInfo) GetAllowFlexibleColor() *wrappers.BoolValue {
1990	if m != nil {
1991		return m.AllowFlexibleColor
1992	}
1993	return nil
1994}
1995
1996func (m *ResponsiveDisplayAdInfo) GetCallToActionText() *wrappers.StringValue {
1997	if m != nil {
1998		return m.CallToActionText
1999	}
2000	return nil
2001}
2002
2003func (m *ResponsiveDisplayAdInfo) GetPricePrefix() *wrappers.StringValue {
2004	if m != nil {
2005		return m.PricePrefix
2006	}
2007	return nil
2008}
2009
2010func (m *ResponsiveDisplayAdInfo) GetPromoText() *wrappers.StringValue {
2011	if m != nil {
2012		return m.PromoText
2013	}
2014	return nil
2015}
2016
2017func (m *ResponsiveDisplayAdInfo) GetFormatSetting() enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting {
2018	if m != nil {
2019		return m.FormatSetting
2020	}
2021	return enums.DisplayAdFormatSettingEnum_UNSPECIFIED
2022}
2023
2024// A generic type of display ad. The exact ad format is controlled by the
2025// display_upload_product_type field, which determines what kinds of data
2026// need to be included with the ad.
2027type DisplayUploadAdInfo struct {
2028	// The product type of this ad. See comments on the enum for details.
2029	DisplayUploadProductType enums.DisplayUploadProductTypeEnum_DisplayUploadProductType `protobuf:"varint,1,opt,name=display_upload_product_type,json=displayUploadProductType,proto3,enum=google.ads.googleads.v1.enums.DisplayUploadProductTypeEnum_DisplayUploadProductType" json:"display_upload_product_type,omitempty"`
2030	// The asset data that makes up the ad.
2031	//
2032	// Types that are valid to be assigned to MediaAsset:
2033	//	*DisplayUploadAdInfo_MediaBundle
2034	MediaAsset           isDisplayUploadAdInfo_MediaAsset `protobuf_oneof:"media_asset"`
2035	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
2036	XXX_unrecognized     []byte                           `json:"-"`
2037	XXX_sizecache        int32                            `json:"-"`
2038}
2039
2040func (m *DisplayUploadAdInfo) Reset()         { *m = DisplayUploadAdInfo{} }
2041func (m *DisplayUploadAdInfo) String() string { return proto.CompactTextString(m) }
2042func (*DisplayUploadAdInfo) ProtoMessage()    {}
2043func (*DisplayUploadAdInfo) Descriptor() ([]byte, []int) {
2044	return fileDescriptor_2709d6977cd7f379, []int{25}
2045}
2046
2047func (m *DisplayUploadAdInfo) XXX_Unmarshal(b []byte) error {
2048	return xxx_messageInfo_DisplayUploadAdInfo.Unmarshal(m, b)
2049}
2050func (m *DisplayUploadAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
2051	return xxx_messageInfo_DisplayUploadAdInfo.Marshal(b, m, deterministic)
2052}
2053func (m *DisplayUploadAdInfo) XXX_Merge(src proto.Message) {
2054	xxx_messageInfo_DisplayUploadAdInfo.Merge(m, src)
2055}
2056func (m *DisplayUploadAdInfo) XXX_Size() int {
2057	return xxx_messageInfo_DisplayUploadAdInfo.Size(m)
2058}
2059func (m *DisplayUploadAdInfo) XXX_DiscardUnknown() {
2060	xxx_messageInfo_DisplayUploadAdInfo.DiscardUnknown(m)
2061}
2062
2063var xxx_messageInfo_DisplayUploadAdInfo proto.InternalMessageInfo
2064
2065func (m *DisplayUploadAdInfo) GetDisplayUploadProductType() enums.DisplayUploadProductTypeEnum_DisplayUploadProductType {
2066	if m != nil {
2067		return m.DisplayUploadProductType
2068	}
2069	return enums.DisplayUploadProductTypeEnum_UNSPECIFIED
2070}
2071
2072type isDisplayUploadAdInfo_MediaAsset interface {
2073	isDisplayUploadAdInfo_MediaAsset()
2074}
2075
2076type DisplayUploadAdInfo_MediaBundle struct {
2077	MediaBundle *AdMediaBundleAsset `protobuf:"bytes,2,opt,name=media_bundle,json=mediaBundle,proto3,oneof"`
2078}
2079
2080func (*DisplayUploadAdInfo_MediaBundle) isDisplayUploadAdInfo_MediaAsset() {}
2081
2082func (m *DisplayUploadAdInfo) GetMediaAsset() isDisplayUploadAdInfo_MediaAsset {
2083	if m != nil {
2084		return m.MediaAsset
2085	}
2086	return nil
2087}
2088
2089func (m *DisplayUploadAdInfo) GetMediaBundle() *AdMediaBundleAsset {
2090	if x, ok := m.GetMediaAsset().(*DisplayUploadAdInfo_MediaBundle); ok {
2091		return x.MediaBundle
2092	}
2093	return nil
2094}
2095
2096// XXX_OneofWrappers is for the internal use of the proto package.
2097func (*DisplayUploadAdInfo) XXX_OneofWrappers() []interface{} {
2098	return []interface{}{
2099		(*DisplayUploadAdInfo_MediaBundle)(nil),
2100	}
2101}
2102
2103func init() {
2104	proto.RegisterType((*TextAdInfo)(nil), "google.ads.googleads.v1.common.TextAdInfo")
2105	proto.RegisterType((*ExpandedTextAdInfo)(nil), "google.ads.googleads.v1.common.ExpandedTextAdInfo")
2106	proto.RegisterType((*CallOnlyAdInfo)(nil), "google.ads.googleads.v1.common.CallOnlyAdInfo")
2107	proto.RegisterType((*ExpandedDynamicSearchAdInfo)(nil), "google.ads.googleads.v1.common.ExpandedDynamicSearchAdInfo")
2108	proto.RegisterType((*HotelAdInfo)(nil), "google.ads.googleads.v1.common.HotelAdInfo")
2109	proto.RegisterType((*ShoppingSmartAdInfo)(nil), "google.ads.googleads.v1.common.ShoppingSmartAdInfo")
2110	proto.RegisterType((*ShoppingProductAdInfo)(nil), "google.ads.googleads.v1.common.ShoppingProductAdInfo")
2111	proto.RegisterType((*ShoppingComparisonListingAdInfo)(nil), "google.ads.googleads.v1.common.ShoppingComparisonListingAdInfo")
2112	proto.RegisterType((*GmailAdInfo)(nil), "google.ads.googleads.v1.common.GmailAdInfo")
2113	proto.RegisterType((*GmailTeaser)(nil), "google.ads.googleads.v1.common.GmailTeaser")
2114	proto.RegisterType((*DisplayCallToAction)(nil), "google.ads.googleads.v1.common.DisplayCallToAction")
2115	proto.RegisterType((*ProductImage)(nil), "google.ads.googleads.v1.common.ProductImage")
2116	proto.RegisterType((*ProductVideo)(nil), "google.ads.googleads.v1.common.ProductVideo")
2117	proto.RegisterType((*ImageAdInfo)(nil), "google.ads.googleads.v1.common.ImageAdInfo")
2118	proto.RegisterType((*VideoBumperInStreamAdInfo)(nil), "google.ads.googleads.v1.common.VideoBumperInStreamAdInfo")
2119	proto.RegisterType((*VideoNonSkippableInStreamAdInfo)(nil), "google.ads.googleads.v1.common.VideoNonSkippableInStreamAdInfo")
2120	proto.RegisterType((*VideoTrueViewInStreamAdInfo)(nil), "google.ads.googleads.v1.common.VideoTrueViewInStreamAdInfo")
2121	proto.RegisterType((*VideoOutstreamAdInfo)(nil), "google.ads.googleads.v1.common.VideoOutstreamAdInfo")
2122	proto.RegisterType((*VideoAdInfo)(nil), "google.ads.googleads.v1.common.VideoAdInfo")
2123	proto.RegisterType((*ResponsiveSearchAdInfo)(nil), "google.ads.googleads.v1.common.ResponsiveSearchAdInfo")
2124	proto.RegisterType((*LegacyResponsiveDisplayAdInfo)(nil), "google.ads.googleads.v1.common.LegacyResponsiveDisplayAdInfo")
2125	proto.RegisterType((*AppAdInfo)(nil), "google.ads.googleads.v1.common.AppAdInfo")
2126	proto.RegisterType((*AppEngagementAdInfo)(nil), "google.ads.googleads.v1.common.AppEngagementAdInfo")
2127	proto.RegisterType((*LegacyAppInstallAdInfo)(nil), "google.ads.googleads.v1.common.LegacyAppInstallAdInfo")
2128	proto.RegisterType((*ResponsiveDisplayAdInfo)(nil), "google.ads.googleads.v1.common.ResponsiveDisplayAdInfo")
2129	proto.RegisterType((*DisplayUploadAdInfo)(nil), "google.ads.googleads.v1.common.DisplayUploadAdInfo")
2130}
2131
2132func init() {
2133	proto.RegisterFile("google/ads/googleads/v1/common/ad_type_infos.proto", fileDescriptor_2709d6977cd7f379)
2134}
2135
2136var fileDescriptor_2709d6977cd7f379 = []byte{
2137	// 2377 bytes of a gzipped FileDescriptorProto
2138	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0xcb, 0x6e, 0x23, 0x59,
2139	0x19, 0x8e, 0xe3, 0x5c, 0xec, 0xdf, 0x76, 0x2e, 0x95, 0xbe, 0x78, 0x92, 0xb9, 0xd6, 0x02, 0x8d,
2140	0x04, 0xe3, 0x10, 0xf7, 0x80, 0x98, 0x34, 0x3d, 0x8d, 0x93, 0x74, 0xb7, 0xa3, 0x49, 0x77, 0x67,
2141	0x9c, 0x74, 0x1a, 0x35, 0x41, 0xa5, 0x13, 0xd7, 0x89, 0x53, 0xea, 0xaa, 0x73, 0x0e, 0x75, 0xaa,
2142	0xd2, 0xc9, 0x76, 0x16, 0xb0, 0x45, 0x9a, 0x15, 0x88, 0x15, 0x4b, 0x24, 0x1e, 0x81, 0x15, 0xac,
2143	0x46, 0x82, 0x27, 0xe0, 0x09, 0xe0, 0x11, 0x66, 0x01, 0x3a, 0x97, 0x2a, 0x97, 0xed, 0x38, 0x3e,
2144	0x8e, 0x47, 0xb4, 0x58, 0xb9, 0x2e, 0xff, 0xf7, 0xd5, 0xb9, 0xfc, 0x97, 0xaf, 0xfe, 0x32, 0xd4,
2145	0x3b, 0x94, 0x76, 0x7c, 0xbc, 0x8e, 0x5c, 0xbe, 0xae, 0x0e, 0xc5, 0xd1, 0xf9, 0xc6, 0x7a, 0x9b,
2146	0x06, 0x01, 0x25, 0xeb, 0xc8, 0x75, 0xa2, 0x4b, 0x86, 0x1d, 0x8f, 0x9c, 0x52, 0x5e, 0x63, 0x21,
2147	0x8d, 0xa8, 0xf5, 0xbe, 0x32, 0xac, 0x21, 0x97, 0xd7, 0x52, 0x4c, 0xed, 0x7c, 0xa3, 0xa6, 0x30,
2148	0xab, 0x9f, 0x8c, 0xe6, 0x44, 0x9c, 0xe3, 0x48, 0xd1, 0xad, 0x6e, 0x0f, 0x33, 0xc7, 0x24, 0x0e,
2149	0xf8, 0x7a, 0x1b, 0xf9, 0xbe, 0xd3, 0xa6, 0xe4, 0x1c, 0x87, 0xdc, 0xa3, 0xc4, 0x09, 0x31, 0xa3,
2150	0x61, 0xe4, 0x91, 0x8e, 0xc3, 0x23, 0x14, 0x61, 0x4d, 0xf2, 0xe0, 0x7a, 0x12, 0xd7, 0xe3, 0xcc,
2151	0x47, 0x97, 0x0e, 0x72, 0x9d, 0x53, 0x1a, 0x06, 0x28, 0x72, 0x38, 0x8e, 0x04, 0x89, 0x86, 0x3f,
2152	0x34, 0x83, 0xc7, 0xcc, 0xa7, 0xc8, 0x75, 0x58, 0x48, 0xdd, 0xb8, 0x1d, 0xc9, 0x95, 0x31, 0x9b,
2153	0x84, 0x8f, 0x3b, 0xa8, 0x7d, 0xe9, 0x20, 0xc6, 0x1c, 0x8f, 0xf0, 0x48, 0x4c, 0x49, 0xac, 0x02,
2154	0x63, 0x0e, 0x8f, 0x68, 0x98, 0x90, 0x7c, 0x72, 0x3d, 0x49, 0xe0, 0x05, 0x38, 0xfb, 0xcc, 0x77,
2155	0x13, 0x73, 0xe6, 0xad, 0x23, 0x42, 0x68, 0x84, 0x22, 0x8f, 0x12, 0xbd, 0x4b, 0xab, 0x7a, 0x97,
2156	0xd6, 0xe5, 0xd9, 0x49, 0x7c, 0xba, 0xfe, 0x26, 0x44, 0x8c, 0xe1, 0x50, 0xdf, 0xb7, 0xbf, 0xc9,
2157	0x01, 0x1c, 0xe2, 0x8b, 0xa8, 0xe1, 0xee, 0x92, 0x53, 0x6a, 0xfd, 0x04, 0x0a, 0x67, 0x18, 0xb9,
2158	0xbe, 0x47, 0x70, 0x35, 0xf7, 0x61, 0xee, 0xe3, 0x52, 0xfd, 0x5d, 0xbd, 0xb9, 0xb5, 0x84, 0xa1,
2159	0x76, 0x10, 0x85, 0x1e, 0xe9, 0x1c, 0x21, 0x3f, 0xc6, 0xad, 0xd4, 0xda, 0xfa, 0x19, 0x94, 0x5d,
2160	0xcc, 0xdb, 0xa1, 0xc7, 0xc4, 0xe3, 0x37, 0xaa, 0xd3, 0x06, 0xe8, 0x1e, 0x44, 0x1f, 0x43, 0xbd,
2161	0x9a, 0x1f, 0x93, 0xa1, 0x6e, 0xff, 0x3d, 0x0f, 0xd6, 0xa3, 0x0b, 0x86, 0x88, 0x8b, 0xdd, 0xcc,
2162	0xa4, 0xb6, 0x61, 0x21, 0x19, 0xa6, 0xc3, 0x50, 0x18, 0x6d, 0x18, 0x4d, 0xad, 0x92, 0x60, 0xf6,
2163	0x05, 0x64, 0x80, 0xa4, 0x6e, 0x34, 0xc3, 0x1e, 0x92, 0xfa, 0x00, 0xc9, 0xbd, 0xea, 0xdc, 0xb8,
2164	0x24, 0xf7, 0xac, 0xcf, 0xa1, 0x94, 0x99, 0xb5, 0xd1, 0x32, 0x65, 0x01, 0x03, 0xeb, 0x3c, 0x3f,
2165	0xee, 0x3a, 0x5b, 0x75, 0x98, 0x65, 0x28, 0x3a, 0xdb, 0xa8, 0xce, 0x18, 0x40, 0x95, 0x69, 0x82,
2166	0xa9, 0x57, 0x67, 0x4d, 0x31, 0x75, 0xfb, 0xcf, 0xf3, 0xb0, 0xb0, 0x8d, 0x7c, 0xff, 0x39, 0xf1,
2167	0x2f, 0xf5, 0x5e, 0x3e, 0x84, 0x72, 0x9b, 0xc6, 0x24, 0x0a, 0x2f, 0x9d, 0x36, 0x75, 0xcd, 0x9c,
2168	0xb4, 0xa4, 0x11, 0xdb, 0xd4, 0xc5, 0x82, 0x80, 0x9d, 0x51, 0x82, 0x1d, 0x12, 0x07, 0x27, 0x38,
2169	0x34, 0xda, 0xc5, 0x92, 0x44, 0x3c, 0x93, 0x00, 0xab, 0x01, 0x95, 0x93, 0x98, 0x7b, 0x04, 0x73,
2170	0xee, 0x10, 0x14, 0x60, 0x33, 0x3f, 0x4d, 0x20, 0xcf, 0x50, 0x80, 0xad, 0x4d, 0x28, 0x26, 0x5b,
2171	0xba, 0x51, 0x2d, 0x19, 0xc0, 0xbb, 0xe6, 0x59, 0x6c, 0xbd, 0x5a, 0x1e, 0x07, 0x5b, 0x1f, 0x88,
2172	0xd1, 0x99, 0x89, 0x63, 0x74, 0x76, 0x6c, 0xdf, 0x79, 0x00, 0x65, 0x99, 0xcb, 0xa3, 0x10, 0xb5,
2173	0x5f, 0x63, 0x57, 0x07, 0xc0, 0xea, 0x00, 0xc3, 0x16, 0xa5, 0x7e, 0xb2, 0x7d, 0xc8, 0xf7, 0x0f,
2174	0x95, 0xb9, 0xd5, 0x82, 0xbb, 0xae, 0xc7, 0xd1, 0x89, 0x8f, 0x9d, 0xbe, 0x92, 0xa0, 0xfd, 0xf8,
2175	0x3a, 0xa6, 0xdb, 0x1a, 0x2a, 0x7c, 0x6a, 0x3b, 0x05, 0x5a, 0x0e, 0xbc, 0x97, 0x75, 0x09, 0xe7,
2176	0x1c, 0x87, 0xde, 0xa9, 0xd7, 0x96, 0x79, 0xd4, 0x89, 0x43, 0xbf, 0x5a, 0x30, 0x98, 0xe5, 0x6a,
2177	0xc6, 0x47, 0x8e, 0x32, 0x04, 0x2f, 0x42, 0xdf, 0xda, 0x85, 0xe5, 0x4c, 0xe9, 0x42, 0x6d, 0x19,
2178	0xb7, 0x45, 0x03, 0xd2, 0xa5, 0x2e, 0xac, 0x21, 0x51, 0xd6, 0xef, 0x73, 0xb0, 0x3a, 0xbc, 0x0c,
2179	0x56, 0xe1, 0xc3, 0xdc, 0xc7, 0x0b, 0xf5, 0xe3, 0xda, 0xb0, 0xda, 0x2c, 0x4b, 0x48, 0xad, 0x77,
2180	0xfe, 0xad, 0x84, 0xe3, 0x40, 0x50, 0x3c, 0x22, 0x71, 0x70, 0xad, 0x41, 0xab, 0xda, 0x1e, 0x72,
2181	0xc7, 0xfe, 0x25, 0xac, 0x25, 0xe9, 0x77, 0xe7, 0x92, 0xa0, 0xc0, 0x6b, 0x1f, 0x60, 0x14, 0xb6,
2182	0xcf, 0x74, 0xec, 0xf6, 0x25, 0xae, 0xdc, 0x98, 0x89, 0xcb, 0xae, 0x40, 0xa9, 0x49, 0x23, 0xec,
2183	0x2b, 0x3a, 0xfb, 0x36, 0xac, 0x1c, 0x9c, 0x51, 0xc6, 0xc4, 0xe3, 0x03, 0x14, 0xea, 0x6c, 0x6f,
2184	0xdf, 0x85, 0xdb, 0xc9, 0xe5, 0x7d, 0x55, 0xa1, 0xf5, 0x8d, 0x5f, 0xc0, 0x07, 0xc9, 0x8d, 0x6d,
2185	0x1a, 0x30, 0x14, 0x7a, 0x9c, 0x92, 0x3d, 0x8f, 0x8b, 0xf1, 0x4f, 0x5a, 0xfe, 0xec, 0xbf, 0xce,
2186	0x42, 0xe9, 0x49, 0x80, 0x3c, 0x3f, 0xad, 0x39, 0x73, 0x11, 0x46, 0x1c, 0x87, 0x9a, 0xe7, 0xfb,
2187	0xb5, 0xeb, 0xe5, 0x52, 0x4d, 0x82, 0x0f, 0x25, 0xa4, 0xa5, 0xa1, 0x22, 0x57, 0x89, 0x07, 0xe0,
2188	0xd0, 0xf1, 0x02, 0xd4, 0xc1, 0x66, 0xb9, 0x4a, 0x21, 0x76, 0x05, 0xc0, 0x7a, 0x04, 0x8b, 0x01,
2189	0x0a, 0x5f, 0x63, 0xe9, 0x21, 0x8a, 0xc3, 0x24, 0x5b, 0x2d, 0xa4, 0x20, 0x45, 0x73, 0x04, 0xd5,
2190	0x3e, 0x1a, 0x27, 0x5d, 0x26, 0x93, 0x1c, 0x72, 0xa7, 0x97, 0xaf, 0x99, 0x68, 0x86, 0x63, 0x58,
2191	0xeb, 0xe7, 0xcd, 0x3a, 0x88, 0x49, 0x72, 0x79, 0xa7, 0x97, 0x7a, 0x27, 0x53, 0xe7, 0x7e, 0x9d,
2192	0x83, 0xef, 0x0d, 0xd0, 0x6b, 0x09, 0xa7, 0x52, 0x10, 0x4d, 0x62, 0x51, 0x25, 0xa1, 0x7b, 0xa3,
2193	0xf6, 0x68, 0x47, 0xa1, 0x45, 0x74, 0x1c, 0x52, 0x15, 0x90, 0xad, 0x8f, 0xfa, 0x06, 0x30, 0x68,
2194	0x62, 0x1d, 0xc0, 0x42, 0xa2, 0x15, 0xe5, 0x28, 0x78, 0x75, 0xfe, 0xc3, 0xfc, 0xc7, 0xa5, 0xfa,
2195	0x0f, 0x46, 0x3d, 0x4f, 0xfb, 0xaf, 0x24, 0x6e, 0x55, 0x58, 0xe6, 0x8c, 0x67, 0x49, 0xcf, 0x3d,
2196	0x17, 0x53, 0x5e, 0x2d, 0x8c, 0x45, 0x7a, 0x24, 0x40, 0x29, 0xa9, 0x3c, 0xe3, 0xf6, 0x6f, 0xa6,
2197	0xb5, 0x17, 0x2b, 0x47, 0x9c, 0x40, 0x0e, 0xf6, 0xc5, 0xfa, 0xf4, 0xb8, 0x22, 0xe5, 0x3b, 0xa8,
2198	0xb2, 0xf7, 0x01, 0x7c, 0xda, 0xa1, 0xda, 0xef, 0x4d, 0xfc, 0xb4, 0x28, 0xec, 0xe5, 0xfa, 0xda,
2199	0xff, 0xc8, 0xc1, 0xca, 0x55, 0x7b, 0xf9, 0x43, 0x98, 0x89, 0xf0, 0x45, 0x64, 0xb4, 0x1a, 0xd2,
2200	0x52, 0x0c, 0x43, 0xfc, 0x3a, 0x6d, 0xea, 0x53, 0x33, 0xb9, 0x51, 0x14, 0xf6, 0xdb, 0xc2, 0xdc,
2201	0x6a, 0xc2, 0x72, 0x1c, 0x8a, 0x2a, 0xe7, 0xfb, 0x58, 0x0e, 0xc0, 0xf1, 0x5c, 0xa3, 0xa5, 0x58,
2202	0x8c, 0x43, 0x7f, 0x3b, 0x45, 0xed, 0xba, 0xf6, 0xb7, 0x39, 0x28, 0x67, 0xfd, 0x49, 0xac, 0x70,
2203	0x8f, 0x57, 0x1a, 0x4d, 0xa9, 0x9c, 0x75, 0xc2, 0x89, 0x37, 0xf9, 0x0c, 0xee, 0x0c, 0x09, 0xc8,
2204	0xfc, 0xcd, 0x03, 0x72, 0xc5, 0x1d, 0xbc, 0x68, 0x7f, 0x99, 0x4e, 0x5e, 0x7a, 0x7a, 0x76, 0xf2,
2205	0x32, 0x7a, 0xc6, 0x9a, 0xbc, 0xa4, 0xb0, 0xbf, 0x9a, 0x83, 0x92, 0x5c, 0x06, 0x9d, 0xf1, 0x7f,
2206	0x0a, 0x25, 0xe6, 0x5d, 0x60, 0xdf, 0x79, 0xe3, 0xb9, 0xd1, 0x99, 0xf6, 0xb7, 0xb5, 0x01, 0xc2,
2207	0x5d, 0x12, 0xfd, 0xf8, 0x53, 0xc5, 0x07, 0xd2, 0xfe, 0xa5, 0x30, 0xb7, 0x3e, 0x87, 0xb2, 0x42,
2208	0x9f, 0x61, 0xaf, 0x73, 0x16, 0xe9, 0xdc, 0x77, 0x2d, 0x5c, 0x3d, 0xae, 0x29, 0xed, 0xad, 0xcf,
2209	0xa0, 0xa8, 0x32, 0x9c, 0xd0, 0x2b, 0x26, 0x2f, 0x15, 0x05, 0x69, 0x2e, 0xd4, 0xc9, 0x17, 0xb0,
2210	0xc2, 0x42, 0x7c, 0xee, 0xe1, 0x37, 0x4e, 0x76, 0x02, 0xf3, 0xa3, 0x47, 0xb0, 0xac, 0x71, 0xfb,
2211	0xdd, 0x79, 0x3c, 0x85, 0x5b, 0xbd, 0x64, 0x7a, 0x3e, 0x85, 0xd1, 0x6c, 0x56, 0x96, 0x4d, 0x4f,
2212	0xab, 0x09, 0xc9, 0x33, 0x9c, 0xee, 0xf4, 0x4c, 0x94, 0xd3, 0xa2, 0x86, 0xed, 0x26, 0xb3, 0xfc,
2213	0x12, 0x8a, 0xe9, 0x9b, 0xb3, 0x96, 0x49, 0x9f, 0x8e, 0x90, 0x49, 0x4f, 0xbd, 0x00, 0x1f, 0x5e,
2214	0x32, 0x25, 0x89, 0x92, 0x93, 0x56, 0x21, 0xd0, 0x47, 0x22, 0x17, 0xc8, 0xd4, 0x64, 0xa2, 0xe0,
2215	0xa5, 0xa5, 0xf5, 0x00, 0x20, 0xc0, 0xae, 0x87, 0x9c, 0x53, 0xcf, 0x37, 0x0a, 0xb8, 0xe6, 0x54,
2216	0xab, 0x28, 0x11, 0x8f, 0x3d, 0x1f, 0x5b, 0x1b, 0x30, 0xe3, 0xa2, 0x08, 0xe9, 0x40, 0x1b, 0x5c,
2217	0xcc, 0xad, 0xcb, 0x08, 0xf3, 0x04, 0x27, 0x4d, 0xad, 0x43, 0xa8, 0x22, 0xd7, 0xf1, 0x5c, 0x11,
2218	0x5b, 0x6d, 0xca, 0x2e, 0xf5, 0x32, 0x9e, 0x86, 0x34, 0xd0, 0x41, 0x76, 0xdd, 0x9e, 0x34, 0xa7,
2219	0x5a, 0x2b, 0xc8, 0xdd, 0x75, 0x0f, 0xe9, 0x36, 0x65, 0x97, 0x72, 0x2d, 0x1f, 0x87, 0x34, 0xd8,
2220	0x9a, 0x87, 0x59, 0xc9, 0x63, 0xaf, 0xc1, 0x3b, 0x32, 0x1a, 0xb6, 0xe2, 0x80, 0xe1, 0x70, 0x97,
2221	0x1c, 0x44, 0x21, 0x46, 0x81, 0x16, 0x5c, 0x1f, 0xc1, 0x07, 0xf2, 0xe6, 0x33, 0x4a, 0x0e, 0x5e,
2222	0x7b, 0x8c, 0x09, 0xe9, 0xdd, 0x67, 0xf2, 0x6d, 0x0e, 0xd6, 0xa4, 0xcd, 0x61, 0x18, 0xe3, 0x23,
2223	0xb1, 0x5f, 0x3d, 0xf7, 0xad, 0x3d, 0x58, 0x51, 0x19, 0xc1, 0x39, 0x89, 0xa3, 0x88, 0x12, 0xc7,
2224	0x47, 0x27, 0xd8, 0x37, 0x8a, 0xd6, 0x65, 0x05, 0xdc, 0x92, 0xb8, 0x3d, 0x01, 0x13, 0x72, 0x48,
2225	0xb3, 0xa5, 0x55, 0xcd, 0x24, 0x67, 0x2d, 0x28, 0x50, 0x2a, 0x5b, 0x9e, 0xc0, 0x52, 0x5b, 0x08,
2226	0x48, 0x22, 0xc7, 0x85, 0x08, 0xc1, 0xa1, 0x59, 0x4e, 0x4e, 0x51, 0x5b, 0x12, 0x64, 0xff, 0x36,
2227	0x07, 0xb7, 0xe4, 0xec, 0x9f, 0xc7, 0x11, 0xcf, 0x4e, 0xfb, 0xad, 0xd5, 0x5d, 0xfb, 0x6f, 0x79,
2228	0x28, 0xc9, 0x21, 0xe9, 0x91, 0xdc, 0x1f, 0xd7, 0x63, 0xb3, 0xfe, 0xfa, 0x0a, 0x8a, 0x1e, 0x71,
2229	0xd4, 0xcc, 0xf4, 0x50, 0xee, 0x8f, 0x4a, 0xe9, 0xd7, 0x78, 0x43, 0x73, 0xaa, 0x55, 0xf0, 0xf4,
2230	0x15, 0xeb, 0x00, 0xe6, 0x4e, 0xa4, 0xd3, 0xe9, 0xa5, 0xff, 0xcc, 0x88, 0xf8, 0x2a, 0x3f, 0x6d,
2231	0x4e, 0xb5, 0x34, 0x95, 0xf5, 0x02, 0x80, 0xc6, 0x51, 0x32, 0x62, 0x95, 0xc2, 0x3f, 0x35, 0x22,
2232	0xee, 0xdb, 0x41, 0x11, 0xb7, 0x34, 0x8e, 0xf4, 0x58, 0x4f, 0xa1, 0x42, 0x28, 0x71, 0x78, 0x12,
2233	0x04, 0x3a, 0xbb, 0x3f, 0x34, 0x62, 0x1e, 0x1e, 0x3d, 0xcd, 0xa9, 0x56, 0x99, 0x64, 0xee, 0x6e,
2234	0x15, 0x60, 0x4e, 0xf5, 0x35, 0xed, 0x3f, 0x4c, 0xc3, 0x9d, 0x16, 0xe6, 0x8c, 0x12, 0xee, 0x9d,
2235	0xe3, 0x9e, 0xb7, 0xb0, 0xdd, 0x6e, 0x03, 0x81, 0x57, 0x73, 0x52, 0x33, 0x8e, 0x7c, 0x39, 0x69,
2236	0xa8, 0x76, 0x1a, 0xe7, 0x38, 0xea, 0xf6, 0x13, 0xb8, 0xf5, 0xbc, 0xa7, 0x1b, 0xc0, 0xab, 0xd3,
2237	0xe3, 0xb3, 0xf5, 0x10, 0x74, 0x1b, 0x4b, 0xf9, 0x1b, 0x34, 0x96, 0x66, 0xcc, 0x1b, 0x4b, 0xff,
2238	0x2c, 0xc0, 0x7b, 0x7b, 0xb2, 0x19, 0xdb, 0x5d, 0x24, 0xad, 0x25, 0xba, 0x3d, 0x43, 0x7e, 0x46,
2239	0xc3, 0xc8, 0x19, 0x2b, 0x0e, 0x2b, 0x12, 0x93, 0x26, 0x8a, 0x06, 0x54, 0x7c, 0x4a, 0x3a, 0xe3,
2240	0x65, 0x9b, 0xb2, 0x80, 0x34, 0x87, 0xc4, 0x73, 0x7e, 0x62, 0x1d, 0x3d, 0x33, 0xb6, 0x8e, 0xde,
2241	0x83, 0x5b, 0xc8, 0xf7, 0xe9, 0x1b, 0xe7, 0xd4, 0xc7, 0x17, 0x9e, 0xec, 0xbc, 0x48, 0x29, 0x3b,
2242	0x3b, 0xb2, 0xdf, 0x62, 0x49, 0xdc, 0x63, 0x0d, 0x53, 0x8a, 0xf6, 0x21, 0x94, 0x51, 0xbb, 0x8d,
2243	0x49, 0x22, 0x88, 0x4d, 0xb4, 0x4a, 0x49, 0x21, 0x14, 0x81, 0xc8, 0x48, 0xc8, 0x23, 0x1a, 0x3e,
2244	0x6f, 0x94, 0x91, 0x90, 0x47, 0x14, 0xf8, 0x0b, 0x58, 0xe9, 0x55, 0x9a, 0x8e, 0x54, 0xf3, 0x05,
2245	0xa3, 0x5e, 0x4c, 0x46, 0x50, 0x1e, 0x6a, 0x65, 0x9f, 0x79, 0xc1, 0x28, 0x8e, 0xf5, 0x82, 0x21,
2246	0x94, 0x0d, 0xff, 0x55, 0x8c, 0x42, 0xec, 0x64, 0x38, 0xc0, 0xa4, 0x8a, 0x28, 0xd8, 0x5e, 0xca,
2247	0x74, 0xc5, 0x4b, 0x7e, 0xe9, 0x06, 0x2f, 0xf9, 0x2d, 0xb8, 0xa3, 0x07, 0xd4, 0xcf, 0x66, 0xd2,
2248	0x65, 0xbc, 0xa5, 0xb0, 0x4f, 0x7b, 0x39, 0xdf, 0xc0, 0x42, 0xef, 0x87, 0x96, 0x6a, 0x45, 0x2a,
2249	0xaf, 0xfd, 0x11, 0xca, 0x2b, 0x8d, 0xc5, 0xc7, 0x12, 0x7d, 0xa0, 0xc0, 0x52, 0x87, 0x5d, 0x7d,
2250	0xab, 0x55, 0x39, 0xcd, 0x9e, 0xca, 0x2e, 0x6f, 0xe8, 0xb5, 0xb1, 0xc3, 0x42, 0x7c, 0xea, 0x5d,
2251	0x54, 0x17, 0x8c, 0xba, 0xbc, 0x02, 0xb1, 0x2f, 0x01, 0x62, 0x6f, 0x59, 0x48, 0x03, 0xaa, 0xfc,
2252	0x63, 0xd1, 0x64, 0x6f, 0xa5, 0xbd, 0x70, 0x0c, 0xfb, 0x3f, 0x79, 0x28, 0x36, 0x18, 0xd3, 0xa9,
2253	0xe4, 0x25, 0x2c, 0x07, 0x88, 0xb8, 0x28, 0xa2, 0xa1, 0xfc, 0xf4, 0x94, 0x79, 0x7f, 0x1c, 0x2b,
2254	0x55, 0x2e, 0xa6, 0x2c, 0xea, 0x6a, 0x6f, 0x26, 0x9f, 0xfe, 0x4e, 0x33, 0x79, 0x7e, 0xd2, 0x4c,
2255	0xbe, 0x03, 0x73, 0xba, 0xd7, 0x31, 0x63, 0xd6, 0x96, 0x68, 0xb8, 0xea, 0x65, 0x4a, 0x72, 0x69,
2256	0xac, 0x75, 0x00, 0x0b, 0x97, 0x34, 0x8e, 0xe2, 0x13, 0x9c, 0x34, 0x39, 0x66, 0x4d, 0xd9, 0x94,
2257	0x88, 0x91, 0x6c, 0x15, 0xcd, 0xa1, 0x9a, 0x1c, 0xd6, 0x09, 0xac, 0x9c, 0x45, 0x81, 0xff, 0x23,
2258	0x47, 0x09, 0x9b, 0x93, 0x98, 0xb8, 0x3e, 0xe6, 0xd5, 0x39, 0xc9, 0x5c, 0x1f, 0xcd, 0xfc, 0x54,
2259	0xc0, 0xb6, 0x24, 0x4a, 0xf1, 0x2f, 0x4b, 0xba, 0xcc, 0x65, 0x6e, 0xff, 0x65, 0x1a, 0x56, 0x1a,
2260	0x8c, 0x3d, 0x22, 0x1d, 0xd4, 0xc1, 0x01, 0x26, 0xd1, 0xff, 0x41, 0xf1, 0xed, 0x6e, 0x59, 0x7e,
2261	0x82, 0x2d, 0xdb, 0x81, 0x39, 0xbd, 0x55, 0x33, 0x37, 0xd8, 0x2a, 0x8d, 0xb5, 0xbf, 0xca, 0xc3,
2262	0x1d, 0x55, 0xa0, 0x1b, 0x8c, 0xed, 0xaa, 0x6f, 0xa5, 0x7a, 0x09, 0xef, 0xc1, 0x9c, 0xfc, 0x80,
2263	0xea, 0x1a, 0x55, 0xe4, 0x59, 0xc4, 0xd8, 0xae, 0x6b, 0xc5, 0x50, 0x4c, 0x3f, 0xb3, 0xca, 0x2a,
2264	0xbc, 0x50, 0xff, 0xf9, 0x88, 0x1c, 0x34, 0xf8, 0xf8, 0x06, 0x63, 0x07, 0x82, 0x40, 0xe6, 0xa1,
2265	0xe1, 0xb7, 0x5b, 0x05, 0xa4, 0x8f, 0x7a, 0x74, 0x7c, 0x7e, 0xa2, 0xcf, 0xa9, 0x6f, 0xe1, 0x53,
2266	0x8d, 0xfd, 0x3b, 0x80, 0xbb, 0xc3, 0xf4, 0xd1, 0x4b, 0x58, 0xea, 0x2b, 0x13, 0x89, 0x3f, 0x8f,
2267	0xe7, 0x36, 0x8b, 0xbd, 0x55, 0x88, 0x5b, 0x2e, 0xdc, 0xbd, 0xba, 0x0c, 0x25, 0x1e, 0x3e, 0x1e,
2268	0xff, 0xed, 0xab, 0xea, 0x12, 0xb7, 0x9e, 0x42, 0xa9, 0x5b, 0x76, 0x6f, 0xe6, 0xf0, 0x90, 0xd6,
2269	0x72, 0x6e, 0xbd, 0x02, 0x6b, 0xa0, 0x98, 0xdf, 0x2c, 0xf3, 0x2d, 0xf5, 0x55, 0x77, 0xde, 0x9b,
2270	0x32, 0x66, 0x27, 0x4a, 0x19, 0xfb, 0xfd, 0x7a, 0x74, 0x6e, 0xfc, 0x2a, 0xd4, 0x2b, 0x4f, 0xfb,
2271	0x93, 0xd0, 0xfc, 0xa4, 0x49, 0x68, 0x30, 0xe3, 0x17, 0x26, 0xcf, 0xf8, 0x03, 0x22, 0xb8, 0x78,
2272	0x93, 0x66, 0x72, 0x46, 0x75, 0xc2, 0x78, 0xaa, 0xb3, 0x5f, 0xf3, 0x96, 0xc6, 0xd5, 0xbc, 0xc3,
2273	0x24, 0x78, 0xf9, 0x46, 0x12, 0x7c, 0x88, 0x08, 0xae, 0xdc, 0x48, 0x04, 0xbf, 0x55, 0xa5, 0x75,
2274	0x85, 0xc0, 0x5c, 0xfa, 0x9f, 0x08, 0x4c, 0xfb, 0xeb, 0xe9, 0xf4, 0xfb, 0xc0, 0x0b, 0xf9, 0x77,
2275	0x20, 0x9d, 0x17, 0xbf, 0xce, 0xc1, 0xda, 0x35, 0xff, 0x13, 0x92, 0x35, 0x6b, 0xa1, 0x7e, 0x68,
2276	0x36, 0x3c, 0xc5, 0xac, 0x1b, 0xd7, 0x69, 0x27, 0x72, 0xd8, 0xcd, 0x56, 0xd5, 0x1d, 0x72, 0xc7,
2277	0x7a, 0x09, 0xe5, 0xac, 0xd8, 0xd1, 0xef, 0xa1, 0x37, 0xd0, 0x3a, 0xcd, 0xa9, 0x56, 0x29, 0xe8,
2278	0x5e, 0xdb, 0xaa, 0x80, 0x3a, 0x55, 0x7f, 0xe5, 0xda, 0xfa, 0x77, 0x0e, 0xec, 0x36, 0x0d, 0x46,
2279	0xf0, 0x6e, 0x2d, 0x35, 0x5c, 0x31, 0x2c, 0xb1, 0x60, 0x7c, 0x5f, 0xec, 0xf0, 0x7e, 0xee, 0xd5,
2280	0x8e, 0xc6, 0x74, 0xa8, 0x8f, 0x48, 0xa7, 0x46, 0xc3, 0xce, 0x7a, 0x07, 0x13, 0xb9, 0xff, 0xc9,
2281	0xbf, 0xa0, 0x98, 0xc7, 0x87, 0xfd, 0x9b, 0xec, 0xbe, 0xfa, 0xf9, 0xe3, 0x74, 0xfe, 0x49, 0xa3,
2282	0xf1, 0xa7, 0xe9, 0xf7, 0x9f, 0x28, 0xb2, 0x86, 0xcb, 0x6b, 0xea, 0x50, 0x1c, 0x1d, 0x6d, 0xd4,
2283	0xb6, 0xa5, 0xd9, 0x37, 0x89, 0xc1, 0x71, 0xc3, 0xe5, 0xc7, 0xa9, 0xc1, 0xf1, 0xd1, 0xc6, 0xb1,
2284	0x32, 0xf8, 0xd7, 0xb4, 0xad, 0xae, 0x6e, 0x6e, 0x36, 0x5c, 0xbe, 0xb9, 0x99, 0x9a, 0x6c, 0x6e,
2285	0x1e, 0x6d, 0x6c, 0x6e, 0x2a, 0xa3, 0x93, 0x39, 0x39, 0xba, 0x7b, 0xff, 0x0d, 0x00, 0x00, 0xff,
2286	0xff, 0xc7, 0x10, 0x34, 0xf2, 0x3e, 0x27, 0x00, 0x00,
2287}
2288