1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/ads/googleads/v2/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/v2/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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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.v2.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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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_7b1cab7fbeab5508, []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.v2.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_7b1cab7fbeab5508, []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 // The MediaFile resource name of the companion banner used with the ad. 1031 CompanionBanner *wrappers.StringValue `protobuf:"bytes,1,opt,name=companion_banner,json=companionBanner,proto3" json:"companion_banner,omitempty"` 1032 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1033 XXX_unrecognized []byte `json:"-"` 1034 XXX_sizecache int32 `json:"-"` 1035} 1036 1037func (m *VideoBumperInStreamAdInfo) Reset() { *m = VideoBumperInStreamAdInfo{} } 1038func (m *VideoBumperInStreamAdInfo) String() string { return proto.CompactTextString(m) } 1039func (*VideoBumperInStreamAdInfo) ProtoMessage() {} 1040func (*VideoBumperInStreamAdInfo) Descriptor() ([]byte, []int) { 1041 return fileDescriptor_7b1cab7fbeab5508, []int{14} 1042} 1043 1044func (m *VideoBumperInStreamAdInfo) XXX_Unmarshal(b []byte) error { 1045 return xxx_messageInfo_VideoBumperInStreamAdInfo.Unmarshal(m, b) 1046} 1047func (m *VideoBumperInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1048 return xxx_messageInfo_VideoBumperInStreamAdInfo.Marshal(b, m, deterministic) 1049} 1050func (m *VideoBumperInStreamAdInfo) XXX_Merge(src proto.Message) { 1051 xxx_messageInfo_VideoBumperInStreamAdInfo.Merge(m, src) 1052} 1053func (m *VideoBumperInStreamAdInfo) XXX_Size() int { 1054 return xxx_messageInfo_VideoBumperInStreamAdInfo.Size(m) 1055} 1056func (m *VideoBumperInStreamAdInfo) XXX_DiscardUnknown() { 1057 xxx_messageInfo_VideoBumperInStreamAdInfo.DiscardUnknown(m) 1058} 1059 1060var xxx_messageInfo_VideoBumperInStreamAdInfo proto.InternalMessageInfo 1061 1062func (m *VideoBumperInStreamAdInfo) GetCompanionBanner() *wrappers.StringValue { 1063 if m != nil { 1064 return m.CompanionBanner 1065 } 1066 return nil 1067} 1068 1069// Representation of video non-skippable in-stream ad format (15 second 1070// in-stream non-skippable video ad). 1071type VideoNonSkippableInStreamAdInfo struct { 1072 // The MediaFile resource name of the companion banner used with the ad. 1073 CompanionBanner *wrappers.StringValue `protobuf:"bytes,1,opt,name=companion_banner,json=companionBanner,proto3" json:"companion_banner,omitempty"` 1074 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1075 XXX_unrecognized []byte `json:"-"` 1076 XXX_sizecache int32 `json:"-"` 1077} 1078 1079func (m *VideoNonSkippableInStreamAdInfo) Reset() { *m = VideoNonSkippableInStreamAdInfo{} } 1080func (m *VideoNonSkippableInStreamAdInfo) String() string { return proto.CompactTextString(m) } 1081func (*VideoNonSkippableInStreamAdInfo) ProtoMessage() {} 1082func (*VideoNonSkippableInStreamAdInfo) Descriptor() ([]byte, []int) { 1083 return fileDescriptor_7b1cab7fbeab5508, []int{15} 1084} 1085 1086func (m *VideoNonSkippableInStreamAdInfo) XXX_Unmarshal(b []byte) error { 1087 return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Unmarshal(m, b) 1088} 1089func (m *VideoNonSkippableInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1090 return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Marshal(b, m, deterministic) 1091} 1092func (m *VideoNonSkippableInStreamAdInfo) XXX_Merge(src proto.Message) { 1093 xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Merge(m, src) 1094} 1095func (m *VideoNonSkippableInStreamAdInfo) XXX_Size() int { 1096 return xxx_messageInfo_VideoNonSkippableInStreamAdInfo.Size(m) 1097} 1098func (m *VideoNonSkippableInStreamAdInfo) XXX_DiscardUnknown() { 1099 xxx_messageInfo_VideoNonSkippableInStreamAdInfo.DiscardUnknown(m) 1100} 1101 1102var xxx_messageInfo_VideoNonSkippableInStreamAdInfo proto.InternalMessageInfo 1103 1104func (m *VideoNonSkippableInStreamAdInfo) GetCompanionBanner() *wrappers.StringValue { 1105 if m != nil { 1106 return m.CompanionBanner 1107 } 1108 return nil 1109} 1110 1111// Representation of video TrueView in-stream ad format (ad shown during video 1112// playback, often at beginning, which displays a skip button a few seconds into 1113// the video). 1114type VideoTrueViewInStreamAdInfo struct { 1115 // Label on the CTA (call-to-action) button taking the user to the video ad's 1116 // final URL. 1117 // Required for TrueView for action campaigns, optional otherwise. 1118 ActionButtonLabel *wrappers.StringValue `protobuf:"bytes,1,opt,name=action_button_label,json=actionButtonLabel,proto3" json:"action_button_label,omitempty"` 1119 // Additional text displayed with the CTA (call-to-action) button to give 1120 // context and encourage clicking on the button. 1121 ActionHeadline *wrappers.StringValue `protobuf:"bytes,2,opt,name=action_headline,json=actionHeadline,proto3" json:"action_headline,omitempty"` 1122 // The MediaFile resource name of the companion banner used with the ad. 1123 CompanionBanner *wrappers.StringValue `protobuf:"bytes,3,opt,name=companion_banner,json=companionBanner,proto3" json:"companion_banner,omitempty"` 1124 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1125 XXX_unrecognized []byte `json:"-"` 1126 XXX_sizecache int32 `json:"-"` 1127} 1128 1129func (m *VideoTrueViewInStreamAdInfo) Reset() { *m = VideoTrueViewInStreamAdInfo{} } 1130func (m *VideoTrueViewInStreamAdInfo) String() string { return proto.CompactTextString(m) } 1131func (*VideoTrueViewInStreamAdInfo) ProtoMessage() {} 1132func (*VideoTrueViewInStreamAdInfo) Descriptor() ([]byte, []int) { 1133 return fileDescriptor_7b1cab7fbeab5508, []int{16} 1134} 1135 1136func (m *VideoTrueViewInStreamAdInfo) XXX_Unmarshal(b []byte) error { 1137 return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Unmarshal(m, b) 1138} 1139func (m *VideoTrueViewInStreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1140 return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Marshal(b, m, deterministic) 1141} 1142func (m *VideoTrueViewInStreamAdInfo) XXX_Merge(src proto.Message) { 1143 xxx_messageInfo_VideoTrueViewInStreamAdInfo.Merge(m, src) 1144} 1145func (m *VideoTrueViewInStreamAdInfo) XXX_Size() int { 1146 return xxx_messageInfo_VideoTrueViewInStreamAdInfo.Size(m) 1147} 1148func (m *VideoTrueViewInStreamAdInfo) XXX_DiscardUnknown() { 1149 xxx_messageInfo_VideoTrueViewInStreamAdInfo.DiscardUnknown(m) 1150} 1151 1152var xxx_messageInfo_VideoTrueViewInStreamAdInfo proto.InternalMessageInfo 1153 1154func (m *VideoTrueViewInStreamAdInfo) GetActionButtonLabel() *wrappers.StringValue { 1155 if m != nil { 1156 return m.ActionButtonLabel 1157 } 1158 return nil 1159} 1160 1161func (m *VideoTrueViewInStreamAdInfo) GetActionHeadline() *wrappers.StringValue { 1162 if m != nil { 1163 return m.ActionHeadline 1164 } 1165 return nil 1166} 1167 1168func (m *VideoTrueViewInStreamAdInfo) GetCompanionBanner() *wrappers.StringValue { 1169 if m != nil { 1170 return m.CompanionBanner 1171 } 1172 return nil 1173} 1174 1175// Representation of video out-stream ad format (ad shown alongside a feed 1176// with automatic playback, without sound). 1177type VideoOutstreamAdInfo struct { 1178 // The headline of the ad. 1179 Headline *wrappers.StringValue `protobuf:"bytes,1,opt,name=headline,proto3" json:"headline,omitempty"` 1180 // The description line. 1181 Description *wrappers.StringValue `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` 1182 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1183 XXX_unrecognized []byte `json:"-"` 1184 XXX_sizecache int32 `json:"-"` 1185} 1186 1187func (m *VideoOutstreamAdInfo) Reset() { *m = VideoOutstreamAdInfo{} } 1188func (m *VideoOutstreamAdInfo) String() string { return proto.CompactTextString(m) } 1189func (*VideoOutstreamAdInfo) ProtoMessage() {} 1190func (*VideoOutstreamAdInfo) Descriptor() ([]byte, []int) { 1191 return fileDescriptor_7b1cab7fbeab5508, []int{17} 1192} 1193 1194func (m *VideoOutstreamAdInfo) XXX_Unmarshal(b []byte) error { 1195 return xxx_messageInfo_VideoOutstreamAdInfo.Unmarshal(m, b) 1196} 1197func (m *VideoOutstreamAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1198 return xxx_messageInfo_VideoOutstreamAdInfo.Marshal(b, m, deterministic) 1199} 1200func (m *VideoOutstreamAdInfo) XXX_Merge(src proto.Message) { 1201 xxx_messageInfo_VideoOutstreamAdInfo.Merge(m, src) 1202} 1203func (m *VideoOutstreamAdInfo) XXX_Size() int { 1204 return xxx_messageInfo_VideoOutstreamAdInfo.Size(m) 1205} 1206func (m *VideoOutstreamAdInfo) XXX_DiscardUnknown() { 1207 xxx_messageInfo_VideoOutstreamAdInfo.DiscardUnknown(m) 1208} 1209 1210var xxx_messageInfo_VideoOutstreamAdInfo proto.InternalMessageInfo 1211 1212func (m *VideoOutstreamAdInfo) GetHeadline() *wrappers.StringValue { 1213 if m != nil { 1214 return m.Headline 1215 } 1216 return nil 1217} 1218 1219func (m *VideoOutstreamAdInfo) GetDescription() *wrappers.StringValue { 1220 if m != nil { 1221 return m.Description 1222 } 1223 return nil 1224} 1225 1226// A video ad. 1227type VideoAdInfo struct { 1228 // The MediaFile resource to use for the video. 1229 MediaFile *wrappers.StringValue `protobuf:"bytes,1,opt,name=media_file,json=mediaFile,proto3" json:"media_file,omitempty"` 1230 // Format-specific schema for the different video formats. 1231 // 1232 // Types that are valid to be assigned to Format: 1233 // *VideoAdInfo_InStream 1234 // *VideoAdInfo_Bumper 1235 // *VideoAdInfo_OutStream 1236 // *VideoAdInfo_NonSkippable 1237 Format isVideoAdInfo_Format `protobuf_oneof:"format"` 1238 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1239 XXX_unrecognized []byte `json:"-"` 1240 XXX_sizecache int32 `json:"-"` 1241} 1242 1243func (m *VideoAdInfo) Reset() { *m = VideoAdInfo{} } 1244func (m *VideoAdInfo) String() string { return proto.CompactTextString(m) } 1245func (*VideoAdInfo) ProtoMessage() {} 1246func (*VideoAdInfo) Descriptor() ([]byte, []int) { 1247 return fileDescriptor_7b1cab7fbeab5508, []int{18} 1248} 1249 1250func (m *VideoAdInfo) XXX_Unmarshal(b []byte) error { 1251 return xxx_messageInfo_VideoAdInfo.Unmarshal(m, b) 1252} 1253func (m *VideoAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1254 return xxx_messageInfo_VideoAdInfo.Marshal(b, m, deterministic) 1255} 1256func (m *VideoAdInfo) XXX_Merge(src proto.Message) { 1257 xxx_messageInfo_VideoAdInfo.Merge(m, src) 1258} 1259func (m *VideoAdInfo) XXX_Size() int { 1260 return xxx_messageInfo_VideoAdInfo.Size(m) 1261} 1262func (m *VideoAdInfo) XXX_DiscardUnknown() { 1263 xxx_messageInfo_VideoAdInfo.DiscardUnknown(m) 1264} 1265 1266var xxx_messageInfo_VideoAdInfo proto.InternalMessageInfo 1267 1268func (m *VideoAdInfo) GetMediaFile() *wrappers.StringValue { 1269 if m != nil { 1270 return m.MediaFile 1271 } 1272 return nil 1273} 1274 1275type isVideoAdInfo_Format interface { 1276 isVideoAdInfo_Format() 1277} 1278 1279type VideoAdInfo_InStream struct { 1280 InStream *VideoTrueViewInStreamAdInfo `protobuf:"bytes,2,opt,name=in_stream,json=inStream,proto3,oneof"` 1281} 1282 1283type VideoAdInfo_Bumper struct { 1284 Bumper *VideoBumperInStreamAdInfo `protobuf:"bytes,3,opt,name=bumper,proto3,oneof"` 1285} 1286 1287type VideoAdInfo_OutStream struct { 1288 OutStream *VideoOutstreamAdInfo `protobuf:"bytes,4,opt,name=out_stream,json=outStream,proto3,oneof"` 1289} 1290 1291type VideoAdInfo_NonSkippable struct { 1292 NonSkippable *VideoNonSkippableInStreamAdInfo `protobuf:"bytes,5,opt,name=non_skippable,json=nonSkippable,proto3,oneof"` 1293} 1294 1295func (*VideoAdInfo_InStream) isVideoAdInfo_Format() {} 1296 1297func (*VideoAdInfo_Bumper) isVideoAdInfo_Format() {} 1298 1299func (*VideoAdInfo_OutStream) isVideoAdInfo_Format() {} 1300 1301func (*VideoAdInfo_NonSkippable) isVideoAdInfo_Format() {} 1302 1303func (m *VideoAdInfo) GetFormat() isVideoAdInfo_Format { 1304 if m != nil { 1305 return m.Format 1306 } 1307 return nil 1308} 1309 1310func (m *VideoAdInfo) GetInStream() *VideoTrueViewInStreamAdInfo { 1311 if x, ok := m.GetFormat().(*VideoAdInfo_InStream); ok { 1312 return x.InStream 1313 } 1314 return nil 1315} 1316 1317func (m *VideoAdInfo) GetBumper() *VideoBumperInStreamAdInfo { 1318 if x, ok := m.GetFormat().(*VideoAdInfo_Bumper); ok { 1319 return x.Bumper 1320 } 1321 return nil 1322} 1323 1324func (m *VideoAdInfo) GetOutStream() *VideoOutstreamAdInfo { 1325 if x, ok := m.GetFormat().(*VideoAdInfo_OutStream); ok { 1326 return x.OutStream 1327 } 1328 return nil 1329} 1330 1331func (m *VideoAdInfo) GetNonSkippable() *VideoNonSkippableInStreamAdInfo { 1332 if x, ok := m.GetFormat().(*VideoAdInfo_NonSkippable); ok { 1333 return x.NonSkippable 1334 } 1335 return nil 1336} 1337 1338// XXX_OneofWrappers is for the internal use of the proto package. 1339func (*VideoAdInfo) XXX_OneofWrappers() []interface{} { 1340 return []interface{}{ 1341 (*VideoAdInfo_InStream)(nil), 1342 (*VideoAdInfo_Bumper)(nil), 1343 (*VideoAdInfo_OutStream)(nil), 1344 (*VideoAdInfo_NonSkippable)(nil), 1345 } 1346} 1347 1348// A responsive search ad. 1349// 1350// Responsive search ads let you create an ad that adapts to show more text, and 1351// more relevant messages, to your customers. Enter multiple headlines and 1352// descriptions when creating a responsive search ad, and over time, Google Ads 1353// will automatically test different combinations and learn which combinations 1354// perform best. By adapting your ad's content to more closely match potential 1355// customers' search terms, responsive search ads may improve your campaign's 1356// performance. 1357// 1358// More information at https://support.google.com/google-ads/answer/7684791 1359type ResponsiveSearchAdInfo struct { 1360 // List of text assets for headlines. When the ad serves the headlines will 1361 // be selected from this list. 1362 Headlines []*AdTextAsset `protobuf:"bytes,1,rep,name=headlines,proto3" json:"headlines,omitempty"` 1363 // List of text assets for descriptions. When the ad serves the descriptions 1364 // will be selected from this list. 1365 Descriptions []*AdTextAsset `protobuf:"bytes,2,rep,name=descriptions,proto3" json:"descriptions,omitempty"` 1366 // First part of text that may appear appended to the url displayed in the ad. 1367 Path1 *wrappers.StringValue `protobuf:"bytes,3,opt,name=path1,proto3" json:"path1,omitempty"` 1368 // Second part of text that may appear appended to the url displayed in the 1369 // ad. This field can only be set when path1 is also set. 1370 Path2 *wrappers.StringValue `protobuf:"bytes,4,opt,name=path2,proto3" json:"path2,omitempty"` 1371 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1372 XXX_unrecognized []byte `json:"-"` 1373 XXX_sizecache int32 `json:"-"` 1374} 1375 1376func (m *ResponsiveSearchAdInfo) Reset() { *m = ResponsiveSearchAdInfo{} } 1377func (m *ResponsiveSearchAdInfo) String() string { return proto.CompactTextString(m) } 1378func (*ResponsiveSearchAdInfo) ProtoMessage() {} 1379func (*ResponsiveSearchAdInfo) Descriptor() ([]byte, []int) { 1380 return fileDescriptor_7b1cab7fbeab5508, []int{19} 1381} 1382 1383func (m *ResponsiveSearchAdInfo) XXX_Unmarshal(b []byte) error { 1384 return xxx_messageInfo_ResponsiveSearchAdInfo.Unmarshal(m, b) 1385} 1386func (m *ResponsiveSearchAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1387 return xxx_messageInfo_ResponsiveSearchAdInfo.Marshal(b, m, deterministic) 1388} 1389func (m *ResponsiveSearchAdInfo) XXX_Merge(src proto.Message) { 1390 xxx_messageInfo_ResponsiveSearchAdInfo.Merge(m, src) 1391} 1392func (m *ResponsiveSearchAdInfo) XXX_Size() int { 1393 return xxx_messageInfo_ResponsiveSearchAdInfo.Size(m) 1394} 1395func (m *ResponsiveSearchAdInfo) XXX_DiscardUnknown() { 1396 xxx_messageInfo_ResponsiveSearchAdInfo.DiscardUnknown(m) 1397} 1398 1399var xxx_messageInfo_ResponsiveSearchAdInfo proto.InternalMessageInfo 1400 1401func (m *ResponsiveSearchAdInfo) GetHeadlines() []*AdTextAsset { 1402 if m != nil { 1403 return m.Headlines 1404 } 1405 return nil 1406} 1407 1408func (m *ResponsiveSearchAdInfo) GetDescriptions() []*AdTextAsset { 1409 if m != nil { 1410 return m.Descriptions 1411 } 1412 return nil 1413} 1414 1415func (m *ResponsiveSearchAdInfo) GetPath1() *wrappers.StringValue { 1416 if m != nil { 1417 return m.Path1 1418 } 1419 return nil 1420} 1421 1422func (m *ResponsiveSearchAdInfo) GetPath2() *wrappers.StringValue { 1423 if m != nil { 1424 return m.Path2 1425 } 1426 return nil 1427} 1428 1429// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' 1430// in the Google Ads UI. 1431type LegacyResponsiveDisplayAdInfo struct { 1432 // The short version of the ad's headline. 1433 ShortHeadline *wrappers.StringValue `protobuf:"bytes,1,opt,name=short_headline,json=shortHeadline,proto3" json:"short_headline,omitempty"` 1434 // The long version of the ad's headline. 1435 LongHeadline *wrappers.StringValue `protobuf:"bytes,2,opt,name=long_headline,json=longHeadline,proto3" json:"long_headline,omitempty"` 1436 // The description of the ad. 1437 Description *wrappers.StringValue `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 1438 // The business name in the ad. 1439 BusinessName *wrappers.StringValue `protobuf:"bytes,4,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"` 1440 // Advertiser's consent to allow flexible color. When true, the ad may be 1441 // served with different color if necessary. When false, the ad will be served 1442 // with the specified colors or a neutral color. 1443 // The default value is true. 1444 // Must be true if main_color and accent_color are not set. 1445 AllowFlexibleColor *wrappers.BoolValue `protobuf:"bytes,5,opt,name=allow_flexible_color,json=allowFlexibleColor,proto3" json:"allow_flexible_color,omitempty"` 1446 // The accent color of the ad in hexadecimal, e.g. #ffffff for white. 1447 // If one of main_color and accent_color is set, the other is required as 1448 // well. 1449 AccentColor *wrappers.StringValue `protobuf:"bytes,6,opt,name=accent_color,json=accentColor,proto3" json:"accent_color,omitempty"` 1450 // The main color of the ad in hexadecimal, e.g. #ffffff for white. 1451 // If one of main_color and accent_color is set, the other is required as 1452 // well. 1453 MainColor *wrappers.StringValue `protobuf:"bytes,7,opt,name=main_color,json=mainColor,proto3" json:"main_color,omitempty"` 1454 // The call-to-action text for the ad. 1455 CallToActionText *wrappers.StringValue `protobuf:"bytes,8,opt,name=call_to_action_text,json=callToActionText,proto3" json:"call_to_action_text,omitempty"` 1456 // The MediaFile resource name of the logo image used in the ad. 1457 LogoImage *wrappers.StringValue `protobuf:"bytes,9,opt,name=logo_image,json=logoImage,proto3" json:"logo_image,omitempty"` 1458 // The MediaFile resource name of the square logo image used in the ad. 1459 SquareLogoImage *wrappers.StringValue `protobuf:"bytes,10,opt,name=square_logo_image,json=squareLogoImage,proto3" json:"square_logo_image,omitempty"` 1460 // The MediaFile resource name of the marketing image used in the ad. 1461 MarketingImage *wrappers.StringValue `protobuf:"bytes,11,opt,name=marketing_image,json=marketingImage,proto3" json:"marketing_image,omitempty"` 1462 // The MediaFile resource name of the square marketing image used in the ad. 1463 SquareMarketingImage *wrappers.StringValue `protobuf:"bytes,12,opt,name=square_marketing_image,json=squareMarketingImage,proto3" json:"square_marketing_image,omitempty"` 1464 // Specifies which format the ad will be served in. Default is ALL_FORMATS. 1465 FormatSetting enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting `protobuf:"varint,13,opt,name=format_setting,json=formatSetting,proto3,enum=google.ads.googleads.v2.enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting" json:"format_setting,omitempty"` 1466 // Prefix before price. E.g. 'as low as'. 1467 PricePrefix *wrappers.StringValue `protobuf:"bytes,14,opt,name=price_prefix,json=pricePrefix,proto3" json:"price_prefix,omitempty"` 1468 // Promotion text used for dyanmic formats of responsive ads. For example 1469 // 'Free two-day shipping'. 1470 PromoText *wrappers.StringValue `protobuf:"bytes,15,opt,name=promo_text,json=promoText,proto3" json:"promo_text,omitempty"` 1471 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1472 XXX_unrecognized []byte `json:"-"` 1473 XXX_sizecache int32 `json:"-"` 1474} 1475 1476func (m *LegacyResponsiveDisplayAdInfo) Reset() { *m = LegacyResponsiveDisplayAdInfo{} } 1477func (m *LegacyResponsiveDisplayAdInfo) String() string { return proto.CompactTextString(m) } 1478func (*LegacyResponsiveDisplayAdInfo) ProtoMessage() {} 1479func (*LegacyResponsiveDisplayAdInfo) Descriptor() ([]byte, []int) { 1480 return fileDescriptor_7b1cab7fbeab5508, []int{20} 1481} 1482 1483func (m *LegacyResponsiveDisplayAdInfo) XXX_Unmarshal(b []byte) error { 1484 return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Unmarshal(m, b) 1485} 1486func (m *LegacyResponsiveDisplayAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1487 return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Marshal(b, m, deterministic) 1488} 1489func (m *LegacyResponsiveDisplayAdInfo) XXX_Merge(src proto.Message) { 1490 xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Merge(m, src) 1491} 1492func (m *LegacyResponsiveDisplayAdInfo) XXX_Size() int { 1493 return xxx_messageInfo_LegacyResponsiveDisplayAdInfo.Size(m) 1494} 1495func (m *LegacyResponsiveDisplayAdInfo) XXX_DiscardUnknown() { 1496 xxx_messageInfo_LegacyResponsiveDisplayAdInfo.DiscardUnknown(m) 1497} 1498 1499var xxx_messageInfo_LegacyResponsiveDisplayAdInfo proto.InternalMessageInfo 1500 1501func (m *LegacyResponsiveDisplayAdInfo) GetShortHeadline() *wrappers.StringValue { 1502 if m != nil { 1503 return m.ShortHeadline 1504 } 1505 return nil 1506} 1507 1508func (m *LegacyResponsiveDisplayAdInfo) GetLongHeadline() *wrappers.StringValue { 1509 if m != nil { 1510 return m.LongHeadline 1511 } 1512 return nil 1513} 1514 1515func (m *LegacyResponsiveDisplayAdInfo) GetDescription() *wrappers.StringValue { 1516 if m != nil { 1517 return m.Description 1518 } 1519 return nil 1520} 1521 1522func (m *LegacyResponsiveDisplayAdInfo) GetBusinessName() *wrappers.StringValue { 1523 if m != nil { 1524 return m.BusinessName 1525 } 1526 return nil 1527} 1528 1529func (m *LegacyResponsiveDisplayAdInfo) GetAllowFlexibleColor() *wrappers.BoolValue { 1530 if m != nil { 1531 return m.AllowFlexibleColor 1532 } 1533 return nil 1534} 1535 1536func (m *LegacyResponsiveDisplayAdInfo) GetAccentColor() *wrappers.StringValue { 1537 if m != nil { 1538 return m.AccentColor 1539 } 1540 return nil 1541} 1542 1543func (m *LegacyResponsiveDisplayAdInfo) GetMainColor() *wrappers.StringValue { 1544 if m != nil { 1545 return m.MainColor 1546 } 1547 return nil 1548} 1549 1550func (m *LegacyResponsiveDisplayAdInfo) GetCallToActionText() *wrappers.StringValue { 1551 if m != nil { 1552 return m.CallToActionText 1553 } 1554 return nil 1555} 1556 1557func (m *LegacyResponsiveDisplayAdInfo) GetLogoImage() *wrappers.StringValue { 1558 if m != nil { 1559 return m.LogoImage 1560 } 1561 return nil 1562} 1563 1564func (m *LegacyResponsiveDisplayAdInfo) GetSquareLogoImage() *wrappers.StringValue { 1565 if m != nil { 1566 return m.SquareLogoImage 1567 } 1568 return nil 1569} 1570 1571func (m *LegacyResponsiveDisplayAdInfo) GetMarketingImage() *wrappers.StringValue { 1572 if m != nil { 1573 return m.MarketingImage 1574 } 1575 return nil 1576} 1577 1578func (m *LegacyResponsiveDisplayAdInfo) GetSquareMarketingImage() *wrappers.StringValue { 1579 if m != nil { 1580 return m.SquareMarketingImage 1581 } 1582 return nil 1583} 1584 1585func (m *LegacyResponsiveDisplayAdInfo) GetFormatSetting() enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting { 1586 if m != nil { 1587 return m.FormatSetting 1588 } 1589 return enums.DisplayAdFormatSettingEnum_UNSPECIFIED 1590} 1591 1592func (m *LegacyResponsiveDisplayAdInfo) GetPricePrefix() *wrappers.StringValue { 1593 if m != nil { 1594 return m.PricePrefix 1595 } 1596 return nil 1597} 1598 1599func (m *LegacyResponsiveDisplayAdInfo) GetPromoText() *wrappers.StringValue { 1600 if m != nil { 1601 return m.PromoText 1602 } 1603 return nil 1604} 1605 1606// An app ad. 1607type AppAdInfo struct { 1608 // An optional text asset that, if specified, must always be displayed when 1609 // the ad is served. 1610 MandatoryAdText *AdTextAsset `protobuf:"bytes,1,opt,name=mandatory_ad_text,json=mandatoryAdText,proto3" json:"mandatory_ad_text,omitempty"` 1611 // List of text assets for headlines. When the ad serves the headlines will 1612 // be selected from this list. 1613 Headlines []*AdTextAsset `protobuf:"bytes,2,rep,name=headlines,proto3" json:"headlines,omitempty"` 1614 // List of text assets for descriptions. When the ad serves the descriptions 1615 // will be selected from this list. 1616 Descriptions []*AdTextAsset `protobuf:"bytes,3,rep,name=descriptions,proto3" json:"descriptions,omitempty"` 1617 // List of image assets that may be displayed with the ad. 1618 Images []*AdImageAsset `protobuf:"bytes,4,rep,name=images,proto3" json:"images,omitempty"` 1619 // List of YouTube video assets that may be displayed with the ad. 1620 YoutubeVideos []*AdVideoAsset `protobuf:"bytes,5,rep,name=youtube_videos,json=youtubeVideos,proto3" json:"youtube_videos,omitempty"` 1621 // List of media bundle assets that may be used with the ad. 1622 Html5MediaBundles []*AdMediaBundleAsset `protobuf:"bytes,6,rep,name=html5_media_bundles,json=html5MediaBundles,proto3" json:"html5_media_bundles,omitempty"` 1623 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1624 XXX_unrecognized []byte `json:"-"` 1625 XXX_sizecache int32 `json:"-"` 1626} 1627 1628func (m *AppAdInfo) Reset() { *m = AppAdInfo{} } 1629func (m *AppAdInfo) String() string { return proto.CompactTextString(m) } 1630func (*AppAdInfo) ProtoMessage() {} 1631func (*AppAdInfo) Descriptor() ([]byte, []int) { 1632 return fileDescriptor_7b1cab7fbeab5508, []int{21} 1633} 1634 1635func (m *AppAdInfo) XXX_Unmarshal(b []byte) error { 1636 return xxx_messageInfo_AppAdInfo.Unmarshal(m, b) 1637} 1638func (m *AppAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1639 return xxx_messageInfo_AppAdInfo.Marshal(b, m, deterministic) 1640} 1641func (m *AppAdInfo) XXX_Merge(src proto.Message) { 1642 xxx_messageInfo_AppAdInfo.Merge(m, src) 1643} 1644func (m *AppAdInfo) XXX_Size() int { 1645 return xxx_messageInfo_AppAdInfo.Size(m) 1646} 1647func (m *AppAdInfo) XXX_DiscardUnknown() { 1648 xxx_messageInfo_AppAdInfo.DiscardUnknown(m) 1649} 1650 1651var xxx_messageInfo_AppAdInfo proto.InternalMessageInfo 1652 1653func (m *AppAdInfo) GetMandatoryAdText() *AdTextAsset { 1654 if m != nil { 1655 return m.MandatoryAdText 1656 } 1657 return nil 1658} 1659 1660func (m *AppAdInfo) GetHeadlines() []*AdTextAsset { 1661 if m != nil { 1662 return m.Headlines 1663 } 1664 return nil 1665} 1666 1667func (m *AppAdInfo) GetDescriptions() []*AdTextAsset { 1668 if m != nil { 1669 return m.Descriptions 1670 } 1671 return nil 1672} 1673 1674func (m *AppAdInfo) GetImages() []*AdImageAsset { 1675 if m != nil { 1676 return m.Images 1677 } 1678 return nil 1679} 1680 1681func (m *AppAdInfo) GetYoutubeVideos() []*AdVideoAsset { 1682 if m != nil { 1683 return m.YoutubeVideos 1684 } 1685 return nil 1686} 1687 1688func (m *AppAdInfo) GetHtml5MediaBundles() []*AdMediaBundleAsset { 1689 if m != nil { 1690 return m.Html5MediaBundles 1691 } 1692 return nil 1693} 1694 1695// App engagement ads allow you to write text encouraging a specific action in 1696// the app, like checking in, making a purchase, or booking a flight. 1697// They allow you to send users to a specific part of your app where they can 1698// find what they're looking for easier and faster. 1699type AppEngagementAdInfo struct { 1700 // List of text assets for headlines. When the ad serves the headlines will 1701 // be selected from this list. 1702 Headlines []*AdTextAsset `protobuf:"bytes,1,rep,name=headlines,proto3" json:"headlines,omitempty"` 1703 // List of text assets for descriptions. When the ad serves the descriptions 1704 // will be selected from this list. 1705 Descriptions []*AdTextAsset `protobuf:"bytes,2,rep,name=descriptions,proto3" json:"descriptions,omitempty"` 1706 // List of image assets that may be displayed with the ad. 1707 Images []*AdImageAsset `protobuf:"bytes,3,rep,name=images,proto3" json:"images,omitempty"` 1708 // List of video assets that may be displayed with the ad. 1709 Videos []*AdVideoAsset `protobuf:"bytes,4,rep,name=videos,proto3" json:"videos,omitempty"` 1710 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1711 XXX_unrecognized []byte `json:"-"` 1712 XXX_sizecache int32 `json:"-"` 1713} 1714 1715func (m *AppEngagementAdInfo) Reset() { *m = AppEngagementAdInfo{} } 1716func (m *AppEngagementAdInfo) String() string { return proto.CompactTextString(m) } 1717func (*AppEngagementAdInfo) ProtoMessage() {} 1718func (*AppEngagementAdInfo) Descriptor() ([]byte, []int) { 1719 return fileDescriptor_7b1cab7fbeab5508, []int{22} 1720} 1721 1722func (m *AppEngagementAdInfo) XXX_Unmarshal(b []byte) error { 1723 return xxx_messageInfo_AppEngagementAdInfo.Unmarshal(m, b) 1724} 1725func (m *AppEngagementAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1726 return xxx_messageInfo_AppEngagementAdInfo.Marshal(b, m, deterministic) 1727} 1728func (m *AppEngagementAdInfo) XXX_Merge(src proto.Message) { 1729 xxx_messageInfo_AppEngagementAdInfo.Merge(m, src) 1730} 1731func (m *AppEngagementAdInfo) XXX_Size() int { 1732 return xxx_messageInfo_AppEngagementAdInfo.Size(m) 1733} 1734func (m *AppEngagementAdInfo) XXX_DiscardUnknown() { 1735 xxx_messageInfo_AppEngagementAdInfo.DiscardUnknown(m) 1736} 1737 1738var xxx_messageInfo_AppEngagementAdInfo proto.InternalMessageInfo 1739 1740func (m *AppEngagementAdInfo) GetHeadlines() []*AdTextAsset { 1741 if m != nil { 1742 return m.Headlines 1743 } 1744 return nil 1745} 1746 1747func (m *AppEngagementAdInfo) GetDescriptions() []*AdTextAsset { 1748 if m != nil { 1749 return m.Descriptions 1750 } 1751 return nil 1752} 1753 1754func (m *AppEngagementAdInfo) GetImages() []*AdImageAsset { 1755 if m != nil { 1756 return m.Images 1757 } 1758 return nil 1759} 1760 1761func (m *AppEngagementAdInfo) GetVideos() []*AdVideoAsset { 1762 if m != nil { 1763 return m.Videos 1764 } 1765 return nil 1766} 1767 1768// A legacy app install ad that only can be used by a few select customers. 1769type LegacyAppInstallAdInfo struct { 1770 // The id of the mobile app. 1771 AppId *wrappers.StringValue `protobuf:"bytes,1,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"` 1772 // The app store the mobile app is available in. 1773 AppStore enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore `protobuf:"varint,2,opt,name=app_store,json=appStore,proto3,enum=google.ads.googleads.v2.enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore" json:"app_store,omitempty"` 1774 // The headline of the ad. 1775 Headline *wrappers.StringValue `protobuf:"bytes,3,opt,name=headline,proto3" json:"headline,omitempty"` 1776 // The first description line of the ad. 1777 Description1 *wrappers.StringValue `protobuf:"bytes,4,opt,name=description1,proto3" json:"description1,omitempty"` 1778 // The second description line of the ad. 1779 Description2 *wrappers.StringValue `protobuf:"bytes,5,opt,name=description2,proto3" json:"description2,omitempty"` 1780 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1781 XXX_unrecognized []byte `json:"-"` 1782 XXX_sizecache int32 `json:"-"` 1783} 1784 1785func (m *LegacyAppInstallAdInfo) Reset() { *m = LegacyAppInstallAdInfo{} } 1786func (m *LegacyAppInstallAdInfo) String() string { return proto.CompactTextString(m) } 1787func (*LegacyAppInstallAdInfo) ProtoMessage() {} 1788func (*LegacyAppInstallAdInfo) Descriptor() ([]byte, []int) { 1789 return fileDescriptor_7b1cab7fbeab5508, []int{23} 1790} 1791 1792func (m *LegacyAppInstallAdInfo) XXX_Unmarshal(b []byte) error { 1793 return xxx_messageInfo_LegacyAppInstallAdInfo.Unmarshal(m, b) 1794} 1795func (m *LegacyAppInstallAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1796 return xxx_messageInfo_LegacyAppInstallAdInfo.Marshal(b, m, deterministic) 1797} 1798func (m *LegacyAppInstallAdInfo) XXX_Merge(src proto.Message) { 1799 xxx_messageInfo_LegacyAppInstallAdInfo.Merge(m, src) 1800} 1801func (m *LegacyAppInstallAdInfo) XXX_Size() int { 1802 return xxx_messageInfo_LegacyAppInstallAdInfo.Size(m) 1803} 1804func (m *LegacyAppInstallAdInfo) XXX_DiscardUnknown() { 1805 xxx_messageInfo_LegacyAppInstallAdInfo.DiscardUnknown(m) 1806} 1807 1808var xxx_messageInfo_LegacyAppInstallAdInfo proto.InternalMessageInfo 1809 1810func (m *LegacyAppInstallAdInfo) GetAppId() *wrappers.StringValue { 1811 if m != nil { 1812 return m.AppId 1813 } 1814 return nil 1815} 1816 1817func (m *LegacyAppInstallAdInfo) GetAppStore() enums.LegacyAppInstallAdAppStoreEnum_LegacyAppInstallAdAppStore { 1818 if m != nil { 1819 return m.AppStore 1820 } 1821 return enums.LegacyAppInstallAdAppStoreEnum_UNSPECIFIED 1822} 1823 1824func (m *LegacyAppInstallAdInfo) GetHeadline() *wrappers.StringValue { 1825 if m != nil { 1826 return m.Headline 1827 } 1828 return nil 1829} 1830 1831func (m *LegacyAppInstallAdInfo) GetDescription1() *wrappers.StringValue { 1832 if m != nil { 1833 return m.Description1 1834 } 1835 return nil 1836} 1837 1838func (m *LegacyAppInstallAdInfo) GetDescription2() *wrappers.StringValue { 1839 if m != nil { 1840 return m.Description2 1841 } 1842 return nil 1843} 1844 1845// A responsive display ad. 1846type ResponsiveDisplayAdInfo struct { 1847 // Marketing images to be used in the ad. Valid image types are GIF, 1848 // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must 1849 // be 1.91:1 (+-1%). At least one marketing_image is required. Combined with 1850 // square_marketing_images the maximum is 15. 1851 MarketingImages []*AdImageAsset `protobuf:"bytes,1,rep,name=marketing_images,json=marketingImages,proto3" json:"marketing_images,omitempty"` 1852 // Square marketing images to be used in the ad. Valid image types are GIF, 1853 // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must 1854 // be 1:1 (+-1%). At least one square marketing_image is required. Combined 1855 // with marketing_images the maximum is 15. 1856 SquareMarketingImages []*AdImageAsset `protobuf:"bytes,2,rep,name=square_marketing_images,json=squareMarketingImages,proto3" json:"square_marketing_images,omitempty"` 1857 // Logo images to be used in the ad. Valid image types are GIF, 1858 // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must 1859 // be 4:1 (+-1%). Combined with square_logo_images the maximum is 5. 1860 LogoImages []*AdImageAsset `protobuf:"bytes,3,rep,name=logo_images,json=logoImages,proto3" json:"logo_images,omitempty"` 1861 // Square logo images to be used in the ad. Valid image types are GIF, 1862 // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must 1863 // be 1:1 (+-1%). Combined with square_logo_images the maximum is 5. 1864 SquareLogoImages []*AdImageAsset `protobuf:"bytes,4,rep,name=square_logo_images,json=squareLogoImages,proto3" json:"square_logo_images,omitempty"` 1865 // Short format headlines for the ad. The maximum length is 30 characters. 1866 // At least 1 and max 5 headlines can be specified. 1867 Headlines []*AdTextAsset `protobuf:"bytes,5,rep,name=headlines,proto3" json:"headlines,omitempty"` 1868 // A required long format headline. The maximum length is 90 characters. 1869 LongHeadline *AdTextAsset `protobuf:"bytes,6,opt,name=long_headline,json=longHeadline,proto3" json:"long_headline,omitempty"` 1870 // Descriptive texts for the ad. The maximum length is 90 characters. At 1871 // least 1 and max 5 headlines can be specified. 1872 Descriptions []*AdTextAsset `protobuf:"bytes,7,rep,name=descriptions,proto3" json:"descriptions,omitempty"` 1873 // Optional YouTube vidoes for the ad. A maximum of 5 videos can be specified. 1874 YoutubeVideos []*AdVideoAsset `protobuf:"bytes,8,rep,name=youtube_videos,json=youtubeVideos,proto3" json:"youtube_videos,omitempty"` 1875 // The advertiser/brand name. Maximum display width is 25. 1876 BusinessName *wrappers.StringValue `protobuf:"bytes,9,opt,name=business_name,json=businessName,proto3" json:"business_name,omitempty"` 1877 // The main color of the ad in hexadecimal, e.g. #ffffff for white. 1878 // If one of main_color and accent_color is set, the other is required as 1879 // well. 1880 MainColor *wrappers.StringValue `protobuf:"bytes,10,opt,name=main_color,json=mainColor,proto3" json:"main_color,omitempty"` 1881 // The accent color of the ad in hexadecimal, e.g. #ffffff for white. 1882 // If one of main_color and accent_color is set, the other is required as 1883 // well. 1884 AccentColor *wrappers.StringValue `protobuf:"bytes,11,opt,name=accent_color,json=accentColor,proto3" json:"accent_color,omitempty"` 1885 // Advertiser's consent to allow flexible color. When true, the ad may be 1886 // served with different color if necessary. When false, the ad will be served 1887 // with the specified colors or a neutral color. 1888 // The default value is true. 1889 // Must be true if main_color and accent_color are not set. 1890 AllowFlexibleColor *wrappers.BoolValue `protobuf:"bytes,12,opt,name=allow_flexible_color,json=allowFlexibleColor,proto3" json:"allow_flexible_color,omitempty"` 1891 // The call-to-action text for the ad. Maximum display width is 30. 1892 CallToActionText *wrappers.StringValue `protobuf:"bytes,13,opt,name=call_to_action_text,json=callToActionText,proto3" json:"call_to_action_text,omitempty"` 1893 // Prefix before price. E.g. 'as low as'. 1894 PricePrefix *wrappers.StringValue `protobuf:"bytes,14,opt,name=price_prefix,json=pricePrefix,proto3" json:"price_prefix,omitempty"` 1895 // Promotion text used for dyanmic formats of responsive ads. For example 1896 // 'Free two-day shipping'. 1897 PromoText *wrappers.StringValue `protobuf:"bytes,15,opt,name=promo_text,json=promoText,proto3" json:"promo_text,omitempty"` 1898 // Specifies which format the ad will be served in. Default is ALL_FORMATS. 1899 FormatSetting enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting `protobuf:"varint,16,opt,name=format_setting,json=formatSetting,proto3,enum=google.ads.googleads.v2.enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting" json:"format_setting,omitempty"` 1900 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1901 XXX_unrecognized []byte `json:"-"` 1902 XXX_sizecache int32 `json:"-"` 1903} 1904 1905func (m *ResponsiveDisplayAdInfo) Reset() { *m = ResponsiveDisplayAdInfo{} } 1906func (m *ResponsiveDisplayAdInfo) String() string { return proto.CompactTextString(m) } 1907func (*ResponsiveDisplayAdInfo) ProtoMessage() {} 1908func (*ResponsiveDisplayAdInfo) Descriptor() ([]byte, []int) { 1909 return fileDescriptor_7b1cab7fbeab5508, []int{24} 1910} 1911 1912func (m *ResponsiveDisplayAdInfo) XXX_Unmarshal(b []byte) error { 1913 return xxx_messageInfo_ResponsiveDisplayAdInfo.Unmarshal(m, b) 1914} 1915func (m *ResponsiveDisplayAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1916 return xxx_messageInfo_ResponsiveDisplayAdInfo.Marshal(b, m, deterministic) 1917} 1918func (m *ResponsiveDisplayAdInfo) XXX_Merge(src proto.Message) { 1919 xxx_messageInfo_ResponsiveDisplayAdInfo.Merge(m, src) 1920} 1921func (m *ResponsiveDisplayAdInfo) XXX_Size() int { 1922 return xxx_messageInfo_ResponsiveDisplayAdInfo.Size(m) 1923} 1924func (m *ResponsiveDisplayAdInfo) XXX_DiscardUnknown() { 1925 xxx_messageInfo_ResponsiveDisplayAdInfo.DiscardUnknown(m) 1926} 1927 1928var xxx_messageInfo_ResponsiveDisplayAdInfo proto.InternalMessageInfo 1929 1930func (m *ResponsiveDisplayAdInfo) GetMarketingImages() []*AdImageAsset { 1931 if m != nil { 1932 return m.MarketingImages 1933 } 1934 return nil 1935} 1936 1937func (m *ResponsiveDisplayAdInfo) GetSquareMarketingImages() []*AdImageAsset { 1938 if m != nil { 1939 return m.SquareMarketingImages 1940 } 1941 return nil 1942} 1943 1944func (m *ResponsiveDisplayAdInfo) GetLogoImages() []*AdImageAsset { 1945 if m != nil { 1946 return m.LogoImages 1947 } 1948 return nil 1949} 1950 1951func (m *ResponsiveDisplayAdInfo) GetSquareLogoImages() []*AdImageAsset { 1952 if m != nil { 1953 return m.SquareLogoImages 1954 } 1955 return nil 1956} 1957 1958func (m *ResponsiveDisplayAdInfo) GetHeadlines() []*AdTextAsset { 1959 if m != nil { 1960 return m.Headlines 1961 } 1962 return nil 1963} 1964 1965func (m *ResponsiveDisplayAdInfo) GetLongHeadline() *AdTextAsset { 1966 if m != nil { 1967 return m.LongHeadline 1968 } 1969 return nil 1970} 1971 1972func (m *ResponsiveDisplayAdInfo) GetDescriptions() []*AdTextAsset { 1973 if m != nil { 1974 return m.Descriptions 1975 } 1976 return nil 1977} 1978 1979func (m *ResponsiveDisplayAdInfo) GetYoutubeVideos() []*AdVideoAsset { 1980 if m != nil { 1981 return m.YoutubeVideos 1982 } 1983 return nil 1984} 1985 1986func (m *ResponsiveDisplayAdInfo) GetBusinessName() *wrappers.StringValue { 1987 if m != nil { 1988 return m.BusinessName 1989 } 1990 return nil 1991} 1992 1993func (m *ResponsiveDisplayAdInfo) GetMainColor() *wrappers.StringValue { 1994 if m != nil { 1995 return m.MainColor 1996 } 1997 return nil 1998} 1999 2000func (m *ResponsiveDisplayAdInfo) GetAccentColor() *wrappers.StringValue { 2001 if m != nil { 2002 return m.AccentColor 2003 } 2004 return nil 2005} 2006 2007func (m *ResponsiveDisplayAdInfo) GetAllowFlexibleColor() *wrappers.BoolValue { 2008 if m != nil { 2009 return m.AllowFlexibleColor 2010 } 2011 return nil 2012} 2013 2014func (m *ResponsiveDisplayAdInfo) GetCallToActionText() *wrappers.StringValue { 2015 if m != nil { 2016 return m.CallToActionText 2017 } 2018 return nil 2019} 2020 2021func (m *ResponsiveDisplayAdInfo) GetPricePrefix() *wrappers.StringValue { 2022 if m != nil { 2023 return m.PricePrefix 2024 } 2025 return nil 2026} 2027 2028func (m *ResponsiveDisplayAdInfo) GetPromoText() *wrappers.StringValue { 2029 if m != nil { 2030 return m.PromoText 2031 } 2032 return nil 2033} 2034 2035func (m *ResponsiveDisplayAdInfo) GetFormatSetting() enums.DisplayAdFormatSettingEnum_DisplayAdFormatSetting { 2036 if m != nil { 2037 return m.FormatSetting 2038 } 2039 return enums.DisplayAdFormatSettingEnum_UNSPECIFIED 2040} 2041 2042// A generic type of display ad. The exact ad format is controlled by the 2043// display_upload_product_type field, which determines what kinds of data 2044// need to be included with the ad. 2045type DisplayUploadAdInfo struct { 2046 // The product type of this ad. See comments on the enum for details. 2047 DisplayUploadProductType enums.DisplayUploadProductTypeEnum_DisplayUploadProductType `protobuf:"varint,1,opt,name=display_upload_product_type,json=displayUploadProductType,proto3,enum=google.ads.googleads.v2.enums.DisplayUploadProductTypeEnum_DisplayUploadProductType" json:"display_upload_product_type,omitempty"` 2048 // The asset data that makes up the ad. 2049 // 2050 // Types that are valid to be assigned to MediaAsset: 2051 // *DisplayUploadAdInfo_MediaBundle 2052 MediaAsset isDisplayUploadAdInfo_MediaAsset `protobuf_oneof:"media_asset"` 2053 XXX_NoUnkeyedLiteral struct{} `json:"-"` 2054 XXX_unrecognized []byte `json:"-"` 2055 XXX_sizecache int32 `json:"-"` 2056} 2057 2058func (m *DisplayUploadAdInfo) Reset() { *m = DisplayUploadAdInfo{} } 2059func (m *DisplayUploadAdInfo) String() string { return proto.CompactTextString(m) } 2060func (*DisplayUploadAdInfo) ProtoMessage() {} 2061func (*DisplayUploadAdInfo) Descriptor() ([]byte, []int) { 2062 return fileDescriptor_7b1cab7fbeab5508, []int{25} 2063} 2064 2065func (m *DisplayUploadAdInfo) XXX_Unmarshal(b []byte) error { 2066 return xxx_messageInfo_DisplayUploadAdInfo.Unmarshal(m, b) 2067} 2068func (m *DisplayUploadAdInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 2069 return xxx_messageInfo_DisplayUploadAdInfo.Marshal(b, m, deterministic) 2070} 2071func (m *DisplayUploadAdInfo) XXX_Merge(src proto.Message) { 2072 xxx_messageInfo_DisplayUploadAdInfo.Merge(m, src) 2073} 2074func (m *DisplayUploadAdInfo) XXX_Size() int { 2075 return xxx_messageInfo_DisplayUploadAdInfo.Size(m) 2076} 2077func (m *DisplayUploadAdInfo) XXX_DiscardUnknown() { 2078 xxx_messageInfo_DisplayUploadAdInfo.DiscardUnknown(m) 2079} 2080 2081var xxx_messageInfo_DisplayUploadAdInfo proto.InternalMessageInfo 2082 2083func (m *DisplayUploadAdInfo) GetDisplayUploadProductType() enums.DisplayUploadProductTypeEnum_DisplayUploadProductType { 2084 if m != nil { 2085 return m.DisplayUploadProductType 2086 } 2087 return enums.DisplayUploadProductTypeEnum_UNSPECIFIED 2088} 2089 2090type isDisplayUploadAdInfo_MediaAsset interface { 2091 isDisplayUploadAdInfo_MediaAsset() 2092} 2093 2094type DisplayUploadAdInfo_MediaBundle struct { 2095 MediaBundle *AdMediaBundleAsset `protobuf:"bytes,2,opt,name=media_bundle,json=mediaBundle,proto3,oneof"` 2096} 2097 2098func (*DisplayUploadAdInfo_MediaBundle) isDisplayUploadAdInfo_MediaAsset() {} 2099 2100func (m *DisplayUploadAdInfo) GetMediaAsset() isDisplayUploadAdInfo_MediaAsset { 2101 if m != nil { 2102 return m.MediaAsset 2103 } 2104 return nil 2105} 2106 2107func (m *DisplayUploadAdInfo) GetMediaBundle() *AdMediaBundleAsset { 2108 if x, ok := m.GetMediaAsset().(*DisplayUploadAdInfo_MediaBundle); ok { 2109 return x.MediaBundle 2110 } 2111 return nil 2112} 2113 2114// XXX_OneofWrappers is for the internal use of the proto package. 2115func (*DisplayUploadAdInfo) XXX_OneofWrappers() []interface{} { 2116 return []interface{}{ 2117 (*DisplayUploadAdInfo_MediaBundle)(nil), 2118 } 2119} 2120 2121func init() { 2122 proto.RegisterType((*TextAdInfo)(nil), "google.ads.googleads.v2.common.TextAdInfo") 2123 proto.RegisterType((*ExpandedTextAdInfo)(nil), "google.ads.googleads.v2.common.ExpandedTextAdInfo") 2124 proto.RegisterType((*CallOnlyAdInfo)(nil), "google.ads.googleads.v2.common.CallOnlyAdInfo") 2125 proto.RegisterType((*ExpandedDynamicSearchAdInfo)(nil), "google.ads.googleads.v2.common.ExpandedDynamicSearchAdInfo") 2126 proto.RegisterType((*HotelAdInfo)(nil), "google.ads.googleads.v2.common.HotelAdInfo") 2127 proto.RegisterType((*ShoppingSmartAdInfo)(nil), "google.ads.googleads.v2.common.ShoppingSmartAdInfo") 2128 proto.RegisterType((*ShoppingProductAdInfo)(nil), "google.ads.googleads.v2.common.ShoppingProductAdInfo") 2129 proto.RegisterType((*ShoppingComparisonListingAdInfo)(nil), "google.ads.googleads.v2.common.ShoppingComparisonListingAdInfo") 2130 proto.RegisterType((*GmailAdInfo)(nil), "google.ads.googleads.v2.common.GmailAdInfo") 2131 proto.RegisterType((*GmailTeaser)(nil), "google.ads.googleads.v2.common.GmailTeaser") 2132 proto.RegisterType((*DisplayCallToAction)(nil), "google.ads.googleads.v2.common.DisplayCallToAction") 2133 proto.RegisterType((*ProductImage)(nil), "google.ads.googleads.v2.common.ProductImage") 2134 proto.RegisterType((*ProductVideo)(nil), "google.ads.googleads.v2.common.ProductVideo") 2135 proto.RegisterType((*ImageAdInfo)(nil), "google.ads.googleads.v2.common.ImageAdInfo") 2136 proto.RegisterType((*VideoBumperInStreamAdInfo)(nil), "google.ads.googleads.v2.common.VideoBumperInStreamAdInfo") 2137 proto.RegisterType((*VideoNonSkippableInStreamAdInfo)(nil), "google.ads.googleads.v2.common.VideoNonSkippableInStreamAdInfo") 2138 proto.RegisterType((*VideoTrueViewInStreamAdInfo)(nil), "google.ads.googleads.v2.common.VideoTrueViewInStreamAdInfo") 2139 proto.RegisterType((*VideoOutstreamAdInfo)(nil), "google.ads.googleads.v2.common.VideoOutstreamAdInfo") 2140 proto.RegisterType((*VideoAdInfo)(nil), "google.ads.googleads.v2.common.VideoAdInfo") 2141 proto.RegisterType((*ResponsiveSearchAdInfo)(nil), "google.ads.googleads.v2.common.ResponsiveSearchAdInfo") 2142 proto.RegisterType((*LegacyResponsiveDisplayAdInfo)(nil), "google.ads.googleads.v2.common.LegacyResponsiveDisplayAdInfo") 2143 proto.RegisterType((*AppAdInfo)(nil), "google.ads.googleads.v2.common.AppAdInfo") 2144 proto.RegisterType((*AppEngagementAdInfo)(nil), "google.ads.googleads.v2.common.AppEngagementAdInfo") 2145 proto.RegisterType((*LegacyAppInstallAdInfo)(nil), "google.ads.googleads.v2.common.LegacyAppInstallAdInfo") 2146 proto.RegisterType((*ResponsiveDisplayAdInfo)(nil), "google.ads.googleads.v2.common.ResponsiveDisplayAdInfo") 2147 proto.RegisterType((*DisplayUploadAdInfo)(nil), "google.ads.googleads.v2.common.DisplayUploadAdInfo") 2148} 2149 2150func init() { 2151 proto.RegisterFile("google/ads/googleads/v2/common/ad_type_infos.proto", fileDescriptor_7b1cab7fbeab5508) 2152} 2153 2154var fileDescriptor_7b1cab7fbeab5508 = []byte{ 2155 // 2387 bytes of a gzipped FileDescriptorProto 2156 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0xcb, 0x72, 0x1b, 0x59, 2157 0x19, 0xb6, 0x2c, 0x5f, 0xa4, 0x5f, 0x92, 0x2f, 0xed, 0x5c, 0x34, 0xce, 0x5c, 0x42, 0x2f, 0xa8, 2158 0x54, 0xc1, 0xc8, 0x44, 0x09, 0x14, 0xe3, 0x90, 0x09, 0xb2, 0x9d, 0x44, 0xae, 0x71, 0x12, 0x8f, 2159 0xec, 0x38, 0x54, 0x30, 0xd5, 0x75, 0xa4, 0x3e, 0x96, 0x9b, 0x74, 0x9f, 0x73, 0xe8, 0xd3, 0xed, 2160 0xd8, 0xdb, 0x59, 0xc0, 0x96, 0xaa, 0x59, 0x41, 0xb1, 0x62, 0x49, 0x15, 0x8f, 0xc0, 0x0a, 0x56, 2161 0x53, 0x05, 0x4f, 0xc0, 0x13, 0xc0, 0x23, 0xcc, 0x02, 0xea, 0x5c, 0xba, 0xd5, 0x92, 0x2c, 0xeb, 2162 0xc8, 0x1e, 0x48, 0xcd, 0x4a, 0x52, 0xf7, 0xff, 0x7d, 0xe7, 0xf6, 0x5f, 0xbe, 0xfe, 0x5b, 0x50, 2163 0xef, 0x52, 0xda, 0xf5, 0xf1, 0x1a, 0x72, 0xf9, 0x9a, 0xfa, 0x2a, 0xbe, 0x9d, 0xd4, 0xd7, 0x3a, 2164 0x34, 0x08, 0x28, 0x59, 0x43, 0xae, 0x13, 0x9d, 0x31, 0xec, 0x78, 0xe4, 0x88, 0xf2, 0x1a, 0x0b, 2165 0x69, 0x44, 0xad, 0x0f, 0x95, 0x61, 0x0d, 0xb9, 0xbc, 0x96, 0x62, 0x6a, 0x27, 0xf5, 0x9a, 0xc2, 2166 0xac, 0x7e, 0x3c, 0x9e, 0x13, 0x71, 0x8e, 0x23, 0x45, 0xb7, 0xba, 0x39, 0xca, 0x1c, 0x93, 0x38, 2167 0xe0, 0x6b, 0x1d, 0xe4, 0xfb, 0x4e, 0x87, 0x92, 0x13, 0x1c, 0x72, 0x8f, 0x12, 0x27, 0xc4, 0x8c, 2168 0x86, 0x91, 0x47, 0xba, 0x0e, 0x8f, 0x50, 0x84, 0x35, 0xc9, 0xc3, 0x8b, 0x49, 0x5c, 0x8f, 0x33, 2169 0x1f, 0x9d, 0x39, 0xc8, 0x75, 0x8e, 0x68, 0x18, 0xa0, 0xc8, 0xe1, 0x38, 0x12, 0x24, 0x1a, 0xfe, 2170 0xc8, 0x0c, 0x1e, 0x33, 0x9f, 0x22, 0xd7, 0x61, 0x21, 0x75, 0xe3, 0x4e, 0x24, 0x77, 0xc6, 0x6c, 2171 0x11, 0x3e, 0xee, 0xa2, 0xce, 0x99, 0x83, 0x18, 0x73, 0x3c, 0xc2, 0x23, 0xb1, 0x24, 0xb1, 0x0b, 2172 0x8c, 0x39, 0x3c, 0xa2, 0x61, 0x42, 0xf2, 0xf1, 0xc5, 0x24, 0x81, 0x17, 0xe0, 0xec, 0x98, 0xfa, 2173 0x1c, 0xd6, 0xe4, 0xaf, 0x76, 0x7c, 0xb4, 0xf6, 0x36, 0x44, 0x8c, 0xe1, 0x50, 0x9f, 0xd3, 0xea, 2174 0xfb, 0x09, 0x1d, 0xf3, 0xd6, 0x10, 0x21, 0x34, 0x42, 0x91, 0x47, 0x89, 0xbe, 0x6b, 0x7f, 0x95, 2175 0x03, 0xd8, 0xc7, 0xa7, 0x51, 0xc3, 0xdd, 0x26, 0x47, 0xd4, 0xfa, 0x31, 0x14, 0x8e, 0x31, 0x72, 2176 0x7d, 0x8f, 0xe0, 0x6a, 0xee, 0x76, 0xee, 0x4e, 0xa9, 0xfe, 0xbe, 0x3e, 0xdc, 0x5a, 0xc2, 0x5f, 2177 0xdb, 0x8b, 0x42, 0x8f, 0x74, 0x0f, 0x90, 0x1f, 0xe3, 0x56, 0x6a, 0x6d, 0xfd, 0x14, 0xca, 0x2e, 2178 0xe6, 0x9d, 0xd0, 0x63, 0x82, 0xfe, 0x6e, 0x75, 0xda, 0x00, 0xdd, 0x87, 0x18, 0x60, 0xa8, 0x57, 2179 0xf3, 0x13, 0x32, 0xd4, 0xed, 0xbf, 0xe7, 0xc1, 0x7a, 0x7c, 0xca, 0x10, 0x71, 0xb1, 0x9b, 0x59, 2180 0xd4, 0x26, 0x2c, 0x24, 0xd3, 0x74, 0x18, 0x0a, 0xa3, 0xbb, 0x46, 0x4b, 0xab, 0x24, 0x98, 0x5d, 2181 0x01, 0x19, 0x22, 0xa9, 0x1b, 0xad, 0xb0, 0x8f, 0xa4, 0x3e, 0x44, 0x72, 0xaf, 0x3a, 0x37, 0x29, 2182 0xc9, 0x3d, 0xeb, 0x53, 0x28, 0x65, 0x56, 0x6d, 0xb4, 0x4d, 0x59, 0xc0, 0xd0, 0x3e, 0xcf, 0x4f, 2183 0xba, 0xcf, 0x56, 0x1d, 0x66, 0x19, 0x8a, 0x8e, 0xef, 0x56, 0x67, 0x0c, 0xa0, 0xca, 0x34, 0xc1, 2184 0xd4, 0xab, 0xb3, 0xa6, 0x98, 0xba, 0xfd, 0xe7, 0x79, 0x58, 0xd8, 0x44, 0xbe, 0xff, 0x82, 0xf8, 2185 0x67, 0xfa, 0x2c, 0x1f, 0x41, 0xb9, 0x43, 0x63, 0x12, 0x85, 0x67, 0x4e, 0x87, 0xba, 0x66, 0x4e, 2186 0x5a, 0xd2, 0x88, 0x4d, 0xea, 0x62, 0x41, 0xc0, 0x8e, 0x29, 0xc1, 0x0e, 0x89, 0x83, 0x36, 0x0e, 2187 0x8d, 0x4e, 0xb1, 0x24, 0x11, 0xcf, 0x25, 0xc0, 0x6a, 0x40, 0xa5, 0x1d, 0x73, 0x8f, 0x60, 0xce, 2188 0x1d, 0x82, 0x02, 0x6c, 0xe6, 0xa7, 0x09, 0xe4, 0x39, 0x0a, 0xb0, 0xb5, 0x0e, 0xc5, 0xe4, 0x48, 2189 0xef, 0x56, 0x4b, 0x06, 0xf0, 0x9e, 0x79, 0x16, 0x5b, 0xaf, 0x96, 0x27, 0xc1, 0xd6, 0x87, 0x62, 2190 0x74, 0xe6, 0xca, 0x31, 0x3a, 0x3b, 0xb1, 0xef, 0x3c, 0x84, 0xb2, 0xcc, 0xe5, 0x51, 0x88, 0x3a, 2191 0x6f, 0xb0, 0xab, 0x03, 0x60, 0x75, 0x88, 0x61, 0x83, 0x52, 0x3f, 0x39, 0x3e, 0xe4, 0xfb, 0xfb, 2192 0xca, 0xdc, 0x6a, 0xc1, 0x4d, 0xd7, 0xe3, 0xa8, 0xed, 0x63, 0x67, 0xa0, 0x24, 0x68, 0x3f, 0xbe, 2193 0x88, 0xe9, 0xba, 0x86, 0x0a, 0x9f, 0xda, 0x4c, 0x81, 0x96, 0x03, 0x1f, 0x64, 0x5d, 0xc2, 0x39, 2194 0xc1, 0xa1, 0x77, 0xe4, 0x75, 0x64, 0x9e, 0x74, 0xe2, 0xd0, 0xaf, 0x16, 0x0c, 0x56, 0xb9, 0x9a, 2195 0xf1, 0x91, 0x83, 0x0c, 0xc1, 0xcb, 0xd0, 0xb7, 0xb6, 0x61, 0x39, 0x53, 0xba, 0x50, 0x47, 0xc6, 2196 0x6d, 0xd1, 0x80, 0x74, 0xa9, 0x07, 0x6b, 0x48, 0x94, 0xf5, 0xfb, 0x1c, 0xac, 0x8e, 0x2e, 0x83, 2197 0x55, 0xb8, 0x9d, 0xbb, 0xb3, 0x50, 0x3f, 0xac, 0x8d, 0xaa, 0xcd, 0xb2, 0x84, 0xd4, 0xfa, 0xd7, 2198 0xdf, 0x4a, 0x38, 0xf6, 0x04, 0xc5, 0x63, 0x12, 0x07, 0x17, 0x1a, 0xb4, 0xaa, 0x9d, 0x11, 0x77, 2199 0xec, 0x5f, 0xc0, 0xad, 0x24, 0xfd, 0x6e, 0x9d, 0x11, 0x14, 0x78, 0x9d, 0x3d, 0x8c, 0xc2, 0xce, 2200 0xb1, 0x8e, 0xdd, 0x81, 0xc4, 0x95, 0x9b, 0x30, 0x71, 0xd9, 0x15, 0x28, 0x35, 0x69, 0x84, 0x7d, 2201 0x45, 0x67, 0x5f, 0x87, 0x95, 0xbd, 0x63, 0xca, 0x98, 0x18, 0x3e, 0x40, 0xa1, 0xce, 0xf6, 0xf6, 2202 0x4d, 0xb8, 0x9e, 0x5c, 0xde, 0x55, 0x15, 0x5a, 0xdf, 0xf8, 0x39, 0x7c, 0x94, 0xdc, 0xd8, 0xa4, 2203 0x01, 0x43, 0xa1, 0xc7, 0x29, 0xd9, 0xf1, 0xb8, 0x98, 0xff, 0x55, 0xcb, 0x9f, 0xfd, 0xd7, 0x59, 2204 0x28, 0x3d, 0x0d, 0x90, 0xe7, 0xa7, 0x35, 0x67, 0x2e, 0xc2, 0x88, 0xe3, 0x50, 0xf3, 0x7c, 0xaf, 2205 0x76, 0xb1, 0x5c, 0xaa, 0x49, 0xf0, 0xbe, 0x84, 0xb4, 0x34, 0x54, 0xe4, 0x2a, 0x31, 0x00, 0x0e, 2206 0x1d, 0x2f, 0x40, 0x5d, 0x6c, 0x96, 0xab, 0x14, 0x62, 0x5b, 0x00, 0xac, 0xc7, 0xb0, 0x18, 0xa0, 2207 0xf0, 0x0d, 0x96, 0x1e, 0xa2, 0x38, 0x4c, 0xb2, 0xd5, 0x42, 0x0a, 0x52, 0x34, 0x07, 0x50, 0x1d, 2208 0xa0, 0x71, 0xd2, 0x6d, 0x32, 0xc9, 0x21, 0x37, 0xfa, 0xf9, 0x9a, 0x89, 0x66, 0x38, 0x84, 0x5b, 2209 0x83, 0xbc, 0x59, 0x07, 0x31, 0x49, 0x2e, 0xef, 0xf5, 0x53, 0x6f, 0x65, 0xea, 0xdc, 0xaf, 0x73, 2210 0xf0, 0xdd, 0x21, 0x7a, 0x2d, 0xe1, 0x54, 0x0a, 0xa2, 0x49, 0x2c, 0xaa, 0x24, 0x74, 0x6f, 0xdc, 2211 0x19, 0x6d, 0x29, 0xb4, 0x88, 0x8e, 0x7d, 0xaa, 0x02, 0xb2, 0xf5, 0x9d, 0x81, 0x09, 0x0c, 0x9b, 2212 0x58, 0x7b, 0xb0, 0x90, 0x68, 0x45, 0x39, 0x0b, 0x5e, 0x9d, 0xbf, 0x9d, 0xbf, 0x53, 0xaa, 0x7f, 2213 0x7f, 0xdc, 0x78, 0xda, 0x7f, 0x25, 0x71, 0xab, 0xc2, 0x32, 0xbf, 0x78, 0x96, 0xf4, 0xc4, 0x73, 2214 0x31, 0xe5, 0xd5, 0xc2, 0x44, 0xa4, 0x07, 0x02, 0x94, 0x92, 0xca, 0x5f, 0xdc, 0xfe, 0xcd, 0xb4, 2215 0xf6, 0x62, 0xe5, 0x88, 0x57, 0x90, 0x83, 0x03, 0xb1, 0x3e, 0x3d, 0xa9, 0x48, 0xf9, 0x06, 0xaa, 2216 0xec, 0x03, 0x00, 0x9f, 0x76, 0xa9, 0xf6, 0x7b, 0x13, 0x3f, 0x2d, 0x0a, 0x7b, 0xb9, 0xbf, 0xf6, 2217 0x3f, 0x72, 0xb0, 0x72, 0xde, 0x59, 0xfe, 0x00, 0x66, 0x22, 0x7c, 0x1a, 0x19, 0xed, 0x86, 0xb4, 2218 0x14, 0xd3, 0x10, 0x9f, 0x4e, 0x87, 0xfa, 0xd4, 0x4c, 0x6e, 0x14, 0x85, 0xfd, 0xa6, 0x30, 0xb7, 2219 0x9a, 0xb0, 0x1c, 0x87, 0xa2, 0xca, 0xf9, 0x3e, 0x96, 0x13, 0x70, 0x3c, 0xd7, 0x68, 0x2b, 0x16, 2220 0xe3, 0xd0, 0xdf, 0x4c, 0x51, 0xdb, 0xae, 0xfd, 0x75, 0x0e, 0xca, 0x59, 0x7f, 0x12, 0x3b, 0xdc, 2221 0xe7, 0x95, 0x46, 0x4b, 0x2a, 0x67, 0x9d, 0xf0, 0xca, 0x87, 0x7c, 0x0c, 0x37, 0x46, 0x04, 0x64, 2222 0xfe, 0xf2, 0x01, 0xb9, 0xe2, 0x0e, 0x5f, 0xb4, 0x3f, 0x4f, 0x17, 0x2f, 0x3d, 0x3d, 0xbb, 0x78, 2223 0x19, 0x3d, 0x13, 0x2d, 0x5e, 0x52, 0xd8, 0x5f, 0xcc, 0x41, 0x49, 0x6e, 0x83, 0xce, 0xf8, 0x3f, 2224 0x81, 0x12, 0xf3, 0x4e, 0xb1, 0xef, 0xbc, 0xf5, 0xdc, 0xe8, 0x58, 0xfb, 0xdb, 0xad, 0x21, 0xc2, 2225 0x6d, 0x12, 0xfd, 0xe8, 0xbe, 0xe2, 0x03, 0x69, 0xff, 0x4a, 0x98, 0x5b, 0x9f, 0x42, 0x59, 0xa1, 2226 0x8f, 0xb1, 0xd7, 0x3d, 0x8e, 0x74, 0xee, 0xbb, 0x10, 0xae, 0x86, 0x6b, 0x4a, 0x7b, 0xeb, 0x13, 2227 0x28, 0xaa, 0x0c, 0x27, 0xf4, 0x8a, 0xc9, 0x43, 0x45, 0x41, 0x9a, 0x0b, 0x75, 0xf2, 0x19, 0xac, 2228 0xb0, 0x10, 0x9f, 0x78, 0xf8, 0xad, 0x93, 0x5d, 0xc0, 0xfc, 0xf8, 0x19, 0x2c, 0x6b, 0xdc, 0x6e, 2229 0x6f, 0x1d, 0xcf, 0xe0, 0x5a, 0x3f, 0x99, 0x5e, 0x4f, 0x61, 0x3c, 0x9b, 0x95, 0x65, 0xd3, 0xcb, 2230 0x6a, 0x42, 0x32, 0x86, 0xd3, 0x5b, 0x9e, 0x89, 0x72, 0x5a, 0xd4, 0xb0, 0xed, 0x64, 0x95, 0x9f, 2231 0x43, 0x31, 0x7d, 0x72, 0xd6, 0x32, 0xe9, 0xfe, 0x18, 0x99, 0xf4, 0xcc, 0x0b, 0xf0, 0xfe, 0x19, 2232 0x53, 0x92, 0x28, 0xf9, 0xd1, 0x2a, 0x04, 0xfa, 0x9b, 0xc8, 0x05, 0x32, 0x35, 0x99, 0x28, 0x78, 2233 0x69, 0x69, 0x3d, 0x04, 0x08, 0xb0, 0xeb, 0x21, 0xe7, 0xc8, 0xf3, 0x8d, 0x02, 0xae, 0x39, 0xd5, 2234 0x2a, 0x4a, 0xc4, 0x13, 0xcf, 0xc7, 0xd6, 0x5d, 0x98, 0x71, 0x51, 0x84, 0x74, 0xa0, 0x0d, 0x6f, 2235 0xe6, 0xc6, 0x59, 0x84, 0x79, 0x82, 0x93, 0xa6, 0xd6, 0x3e, 0x54, 0x91, 0xeb, 0x78, 0xae, 0x88, 2236 0xad, 0x0e, 0x65, 0x67, 0x7a, 0x1b, 0x8f, 0x42, 0x1a, 0xe8, 0x20, 0xbb, 0xe8, 0x4c, 0x9a, 0x53, 2237 0xad, 0x15, 0xe4, 0x6e, 0xbb, 0xfb, 0x74, 0x93, 0xb2, 0x33, 0xb9, 0x97, 0x4f, 0x42, 0x1a, 0x6c, 2238 0xcc, 0xc3, 0xac, 0xe4, 0xb1, 0x5d, 0x78, 0x4f, 0x46, 0xc3, 0x46, 0x1c, 0x30, 0x1c, 0x6e, 0x93, 2239 0xbd, 0x28, 0xc4, 0x28, 0xd0, 0x11, 0xf1, 0x14, 0x96, 0x3a, 0x42, 0x68, 0x11, 0x91, 0xb7, 0xda, 2240 0x88, 0x90, 0x54, 0x0d, 0x8d, 0x39, 0xbb, 0x14, 0xb5, 0x21, 0x41, 0xf6, 0x2f, 0xe1, 0x23, 0x39, 2241 0xca, 0x73, 0x4a, 0xf6, 0xde, 0x78, 0x8c, 0x09, 0x0d, 0xff, 0xbf, 0x1a, 0xeb, 0xeb, 0x1c, 0xdc, 2242 0x92, 0x83, 0xed, 0x87, 0x31, 0x3e, 0x10, 0x1e, 0xd4, 0x3f, 0xd0, 0x0e, 0xac, 0xa8, 0x1c, 0xe5, 2243 0xb4, 0xe3, 0x28, 0xa2, 0xc4, 0xf1, 0x51, 0x1b, 0xfb, 0x46, 0x63, 0x2d, 0x2b, 0xe0, 0x86, 0xc4, 2244 0xed, 0x08, 0x98, 0x10, 0x68, 0x9a, 0x2d, 0xad, 0xb3, 0x26, 0x59, 0x74, 0x41, 0x81, 0x52, 0x21, 2245 0x75, 0xde, 0xea, 0xf3, 0x97, 0x59, 0xfd, 0x6f, 0x73, 0x70, 0x4d, 0xae, 0xfe, 0x45, 0x1c, 0xf1, 2246 0xec, 0xb2, 0xdf, 0x99, 0x12, 0xb0, 0xff, 0x96, 0x87, 0x92, 0x9c, 0x92, 0x9e, 0xc9, 0x83, 0x49, 2247 0x63, 0x28, 0x1b, 0x41, 0xaf, 0xa1, 0xe8, 0x11, 0x47, 0xad, 0x4c, 0x4f, 0xe5, 0xc1, 0xb8, 0x22, 2248 0x73, 0x81, 0x37, 0x34, 0xa7, 0x5a, 0x05, 0x4f, 0x5f, 0xb1, 0xf6, 0x60, 0xae, 0x2d, 0xc3, 0x40, 2249 0x6f, 0xfd, 0x27, 0x46, 0xc4, 0xe7, 0x45, 0x4e, 0x73, 0xaa, 0xa5, 0xa9, 0xac, 0x97, 0x00, 0x34, 2250 0x8e, 0x92, 0x19, 0xab, 0xa2, 0x72, 0xdf, 0x88, 0x78, 0xe0, 0x04, 0x45, 0x26, 0xa1, 0x71, 0xa4, 2251 0xe7, 0x7a, 0x04, 0x15, 0x42, 0x89, 0xc3, 0x93, 0x68, 0xd2, 0xf5, 0xe6, 0x91, 0x11, 0xf3, 0xe8, 2252 0x30, 0x6c, 0x4e, 0xb5, 0xca, 0x24, 0x73, 0x77, 0xa3, 0x00, 0x73, 0xaa, 0xd3, 0x6a, 0xff, 0x61, 2253 0x1a, 0x6e, 0xb4, 0x30, 0x67, 0x94, 0x70, 0xef, 0x04, 0xf7, 0x3d, 0x17, 0x6e, 0xf7, 0x5a, 0x1a, 2254 0xbc, 0x9a, 0x93, 0x2a, 0x76, 0xec, 0xe3, 0x52, 0x43, 0x35, 0xf8, 0x38, 0xc7, 0x51, 0xaf, 0xc3, 2255 0xc1, 0xad, 0x17, 0x7d, 0xfd, 0x09, 0x5e, 0x9d, 0x9e, 0x9c, 0xad, 0x8f, 0xa0, 0xd7, 0xea, 0xca, 2256 0x5f, 0xa2, 0xd5, 0x35, 0x63, 0xde, 0xea, 0xfa, 0x67, 0x01, 0x3e, 0xd8, 0x91, 0xed, 0xe1, 0xde, 2257 0x26, 0x69, 0x75, 0xd3, 0xeb, 0x62, 0xf2, 0x63, 0x1a, 0x46, 0xce, 0x44, 0x71, 0x58, 0x91, 0x98, 2258 0x34, 0x51, 0x34, 0xa0, 0xe2, 0x53, 0xd2, 0x9d, 0x2c, 0xdb, 0x94, 0x05, 0xa4, 0x39, 0x22, 0x9e, 2259 0xf3, 0x57, 0x56, 0xf6, 0x33, 0x13, 0x2b, 0xfb, 0x1d, 0xb8, 0x86, 0x7c, 0x9f, 0xbe, 0x75, 0x8e, 2260 0x7c, 0x7c, 0xea, 0xc9, 0x5e, 0x90, 0x14, 0xd7, 0xb3, 0x63, 0x3b, 0x40, 0x96, 0xc4, 0x3d, 0xd1, 2261 0x30, 0xa5, 0xb1, 0x1f, 0x41, 0x19, 0x75, 0x3a, 0x98, 0x24, 0x12, 0xdd, 0x44, 0x3d, 0x95, 0x14, 2262 0x42, 0x11, 0x88, 0x8c, 0x84, 0x3c, 0xa2, 0xe1, 0xf3, 0x46, 0x19, 0x09, 0x79, 0x44, 0x81, 0x3f, 2263 0x83, 0x95, 0x7e, 0xed, 0xeb, 0xc8, 0xe7, 0x8b, 0x82, 0x51, 0x77, 0x28, 0x23, 0x71, 0xf7, 0xf5, 2264 0xb3, 0x46, 0xe6, 0x91, 0xa7, 0x38, 0xd1, 0x23, 0x8f, 0xd0, 0x5a, 0xfc, 0x57, 0x31, 0x0a, 0xb1, 2265 0x93, 0xe1, 0x00, 0x93, 0x2a, 0xa2, 0x60, 0x3b, 0x29, 0xd3, 0x39, 0x6d, 0x87, 0xd2, 0x25, 0xda, 2266 0x0e, 0x2d, 0xb8, 0xa1, 0x27, 0x34, 0xc8, 0x66, 0xd2, 0xf7, 0xbc, 0xa6, 0xb0, 0xcf, 0xfa, 0x39, 2267 0xdf, 0xc2, 0x42, 0xff, 0xab, 0x9f, 0x6a, 0x45, 0x6a, 0xc1, 0xdd, 0x31, 0x5a, 0x30, 0x8d, 0xc5, 2268 0x27, 0x12, 0xbd, 0xa7, 0xc0, 0x52, 0x19, 0x9e, 0x7f, 0xab, 0x55, 0x39, 0xca, 0xfe, 0x94, 0x7d, 2269 0xe7, 0xd0, 0xeb, 0x60, 0x87, 0x85, 0xf8, 0xc8, 0x3b, 0xad, 0x2e, 0x18, 0xf5, 0x9d, 0x05, 0x62, 2270 0x57, 0x02, 0xc4, 0xd9, 0xb2, 0x90, 0x06, 0x54, 0xf9, 0xc7, 0xa2, 0xc9, 0xd9, 0x4a, 0x7b, 0xe1, 2271 0x18, 0xf6, 0x7f, 0xf2, 0x50, 0x6c, 0x30, 0xa6, 0x53, 0xc9, 0x2b, 0x58, 0x0e, 0x10, 0x71, 0x51, 2272 0x44, 0x43, 0xf9, 0x32, 0x2c, 0xf3, 0x44, 0x3b, 0x51, 0xaa, 0x5c, 0x4c, 0x59, 0xd4, 0xd5, 0xfe, 2273 0x4c, 0x3e, 0xfd, 0x8d, 0x66, 0xf2, 0xfc, 0x55, 0x33, 0xf9, 0x16, 0xcc, 0xe9, 0xee, 0xcb, 0x8c, 2274 0x59, 0xa3, 0xa4, 0xe1, 0xaa, 0xc7, 0x3b, 0xc9, 0xa5, 0xb1, 0xd6, 0x1e, 0x2c, 0x9c, 0xd1, 0x38, 2275 0x8a, 0xdb, 0x38, 0x69, 0xbb, 0xcc, 0x9a, 0xb2, 0x29, 0x11, 0x23, 0xd9, 0x2a, 0x9a, 0x43, 0xb5, 2276 0x5d, 0xac, 0x36, 0xac, 0x1c, 0x47, 0x81, 0xff, 0x43, 0x47, 0x09, 0x9b, 0x76, 0x4c, 0x5c, 0x1f, 2277 0xf3, 0xea, 0x9c, 0x64, 0xae, 0x8f, 0x67, 0x7e, 0x26, 0x60, 0x1b, 0x12, 0xa5, 0xf8, 0x97, 0x25, 2278 0x5d, 0xe6, 0x32, 0xb7, 0xff, 0x32, 0x0d, 0x2b, 0x0d, 0xc6, 0x1e, 0x93, 0x2e, 0xea, 0xe2, 0x00, 2279 0x93, 0xe8, 0x5b, 0x50, 0x7c, 0x7b, 0x47, 0x96, 0xbf, 0xc2, 0x91, 0x6d, 0xc1, 0x9c, 0x3e, 0xaa, 2280 0x99, 0x4b, 0x1c, 0x95, 0xc6, 0xda, 0x5f, 0xe4, 0xe1, 0x86, 0x2a, 0xd0, 0x0d, 0xc6, 0xb6, 0xd5, 2281 0xdb, 0x5b, 0xbd, 0x85, 0xf7, 0x60, 0x4e, 0xbe, 0xd2, 0x75, 0x8d, 0x2a, 0xf2, 0x2c, 0x62, 0x6c, 2282 0xdb, 0xb5, 0x62, 0x28, 0xa6, 0x2f, 0x7e, 0x65, 0x15, 0x5e, 0xa8, 0xff, 0x6c, 0x4c, 0x0e, 0x1a, 2283 0x1e, 0xbe, 0xc1, 0xd8, 0x9e, 0x20, 0x90, 0x79, 0x68, 0xf4, 0xed, 0x56, 0x01, 0xe9, 0x6f, 0x7d, 2284 0x3a, 0x3e, 0x7f, 0xa5, 0x17, 0xbc, 0xef, 0xe0, 0xe5, 0x91, 0xfd, 0x3b, 0x80, 0x9b, 0xa3, 0xf4, 2285 0xd1, 0x2b, 0x58, 0x1a, 0x28, 0x13, 0x89, 0x3f, 0x4f, 0xe6, 0x36, 0x8b, 0xfd, 0x55, 0x88, 0x5b, 2286 0x2e, 0xdc, 0x3c, 0xbf, 0x0c, 0x25, 0x1e, 0x3e, 0x19, 0xff, 0xf5, 0xf3, 0xea, 0x12, 0xb7, 0x9e, 2287 0x41, 0xa9, 0x57, 0x76, 0x2f, 0xe7, 0xf0, 0x90, 0xd6, 0x72, 0x6e, 0xbd, 0x06, 0x6b, 0xa8, 0x98, 2288 0x5f, 0x2e, 0xf3, 0x2d, 0x0d, 0x54, 0x77, 0xde, 0x9f, 0x32, 0x66, 0xaf, 0x94, 0x32, 0x76, 0x07, 2289 0xf5, 0xe8, 0xdc, 0xe4, 0x55, 0xa8, 0x5f, 0x9e, 0x0e, 0x26, 0xa1, 0xf9, 0xab, 0x26, 0xa1, 0xe1, 2290 0x8c, 0x5f, 0xb8, 0x7a, 0xc6, 0x1f, 0x12, 0xc1, 0xc5, 0xcb, 0xb4, 0xb7, 0x33, 0xaa, 0x13, 0x26, 2291 0x53, 0x9d, 0x83, 0x9a, 0xb7, 0x34, 0xa9, 0xe6, 0x1d, 0x25, 0xc1, 0xcb, 0x97, 0x92, 0xe0, 0x23, 2292 0x44, 0x70, 0xe5, 0x52, 0x22, 0xf8, 0x9d, 0x2a, 0xad, 0x73, 0x04, 0xe6, 0xd2, 0xff, 0x45, 0x60, 2293 0xda, 0x5f, 0x4e, 0xa7, 0x6f, 0x2c, 0x5e, 0xca, 0x3f, 0x28, 0xe9, 0xbc, 0xf8, 0x65, 0x0e, 0x6e, 2294 0x5d, 0xf0, 0xcf, 0x25, 0x59, 0xb3, 0x16, 0xea, 0xfb, 0x66, 0xd3, 0x53, 0xcc, 0xba, 0x95, 0x9e, 2295 0xf6, 0x46, 0x47, 0xdd, 0x6c, 0x55, 0xdd, 0x11, 0x77, 0xac, 0x57, 0x50, 0xce, 0x8a, 0x1d, 0xfd, 2296 0x1c, 0x7a, 0x09, 0xad, 0xd3, 0x9c, 0x6a, 0x95, 0x82, 0xde, 0xb5, 0x8d, 0x0a, 0xa8, 0x9f, 0xea, 2297 0xcf, 0x65, 0x1b, 0xff, 0xce, 0x81, 0xdd, 0xa1, 0xc1, 0x18, 0xde, 0x8d, 0xa5, 0x86, 0x2b, 0xa6, 2298 0x25, 0x36, 0x8c, 0xef, 0x8a, 0x13, 0xde, 0xcd, 0xbd, 0xde, 0xd2, 0x98, 0x2e, 0xf5, 0x11, 0xe9, 2299 0xd6, 0x68, 0xd8, 0x5d, 0xeb, 0x62, 0x22, 0xcf, 0x3f, 0xf9, 0x5f, 0x16, 0xf3, 0xf8, 0xa8, 0xff, 2300 0xb7, 0x3d, 0x50, 0x1f, 0x7f, 0x9c, 0xce, 0x3f, 0x6d, 0x34, 0xfe, 0x34, 0xfd, 0xe1, 0x53, 0x45, 2301 0xd6, 0x70, 0x79, 0x4d, 0x7d, 0x15, 0xdf, 0x0e, 0xea, 0xb5, 0x4d, 0x69, 0xf6, 0x55, 0x62, 0x70, 2302 0xd8, 0x70, 0xf9, 0x61, 0x6a, 0x70, 0x78, 0x50, 0x3f, 0x54, 0x06, 0xff, 0x9a, 0xb6, 0xd5, 0xd5, 2303 0xf5, 0xf5, 0x86, 0xcb, 0xd7, 0xd7, 0x53, 0x93, 0xf5, 0xf5, 0x83, 0xfa, 0xfa, 0xba, 0x32, 0x6a, 2304 0xcf, 0xc9, 0xd9, 0xdd, 0xfb, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0e, 0x56, 0x6f, 0xfe, 0xd0, 2305 0x27, 0x00, 0x00, 2306} 2307