1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/ads/googleads/v2/common/bidding.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// Commission is an automatic bidding strategy in which the advertiser pays a 28// certain portion of the conversion value. 29type Commission struct { 30 // Commission rate defines the portion of the conversion value that the 31 // advertiser will be billed. A commission rate of x should be passed into 32 // this field as (x * 1,000,000). For example, 106,000 represents a commission 33 // rate of 0.106 (10.6%). 34 CommissionRateMicros *wrappers.Int64Value `protobuf:"bytes,1,opt,name=commission_rate_micros,json=commissionRateMicros,proto3" json:"commission_rate_micros,omitempty"` 35 XXX_NoUnkeyedLiteral struct{} `json:"-"` 36 XXX_unrecognized []byte `json:"-"` 37 XXX_sizecache int32 `json:"-"` 38} 39 40func (m *Commission) Reset() { *m = Commission{} } 41func (m *Commission) String() string { return proto.CompactTextString(m) } 42func (*Commission) ProtoMessage() {} 43func (*Commission) Descriptor() ([]byte, []int) { 44 return fileDescriptor_4aa9bf865024275f, []int{0} 45} 46 47func (m *Commission) XXX_Unmarshal(b []byte) error { 48 return xxx_messageInfo_Commission.Unmarshal(m, b) 49} 50func (m *Commission) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 51 return xxx_messageInfo_Commission.Marshal(b, m, deterministic) 52} 53func (m *Commission) XXX_Merge(src proto.Message) { 54 xxx_messageInfo_Commission.Merge(m, src) 55} 56func (m *Commission) XXX_Size() int { 57 return xxx_messageInfo_Commission.Size(m) 58} 59func (m *Commission) XXX_DiscardUnknown() { 60 xxx_messageInfo_Commission.DiscardUnknown(m) 61} 62 63var xxx_messageInfo_Commission proto.InternalMessageInfo 64 65func (m *Commission) GetCommissionRateMicros() *wrappers.Int64Value { 66 if m != nil { 67 return m.CommissionRateMicros 68 } 69 return nil 70} 71 72// An automated bidding strategy that raises bids for clicks 73// that seem more likely to lead to a conversion and lowers 74// them for clicks where they seem less likely. 75type EnhancedCpc struct { 76 XXX_NoUnkeyedLiteral struct{} `json:"-"` 77 XXX_unrecognized []byte `json:"-"` 78 XXX_sizecache int32 `json:"-"` 79} 80 81func (m *EnhancedCpc) Reset() { *m = EnhancedCpc{} } 82func (m *EnhancedCpc) String() string { return proto.CompactTextString(m) } 83func (*EnhancedCpc) ProtoMessage() {} 84func (*EnhancedCpc) Descriptor() ([]byte, []int) { 85 return fileDescriptor_4aa9bf865024275f, []int{1} 86} 87 88func (m *EnhancedCpc) XXX_Unmarshal(b []byte) error { 89 return xxx_messageInfo_EnhancedCpc.Unmarshal(m, b) 90} 91func (m *EnhancedCpc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 92 return xxx_messageInfo_EnhancedCpc.Marshal(b, m, deterministic) 93} 94func (m *EnhancedCpc) XXX_Merge(src proto.Message) { 95 xxx_messageInfo_EnhancedCpc.Merge(m, src) 96} 97func (m *EnhancedCpc) XXX_Size() int { 98 return xxx_messageInfo_EnhancedCpc.Size(m) 99} 100func (m *EnhancedCpc) XXX_DiscardUnknown() { 101 xxx_messageInfo_EnhancedCpc.DiscardUnknown(m) 102} 103 104var xxx_messageInfo_EnhancedCpc proto.InternalMessageInfo 105 106// Manual click-based bidding where user pays per click. 107type ManualCpc struct { 108 // Whether bids are to be enhanced based on conversion optimizer data. 109 EnhancedCpcEnabled *wrappers.BoolValue `protobuf:"bytes,1,opt,name=enhanced_cpc_enabled,json=enhancedCpcEnabled,proto3" json:"enhanced_cpc_enabled,omitempty"` 110 XXX_NoUnkeyedLiteral struct{} `json:"-"` 111 XXX_unrecognized []byte `json:"-"` 112 XXX_sizecache int32 `json:"-"` 113} 114 115func (m *ManualCpc) Reset() { *m = ManualCpc{} } 116func (m *ManualCpc) String() string { return proto.CompactTextString(m) } 117func (*ManualCpc) ProtoMessage() {} 118func (*ManualCpc) Descriptor() ([]byte, []int) { 119 return fileDescriptor_4aa9bf865024275f, []int{2} 120} 121 122func (m *ManualCpc) XXX_Unmarshal(b []byte) error { 123 return xxx_messageInfo_ManualCpc.Unmarshal(m, b) 124} 125func (m *ManualCpc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 126 return xxx_messageInfo_ManualCpc.Marshal(b, m, deterministic) 127} 128func (m *ManualCpc) XXX_Merge(src proto.Message) { 129 xxx_messageInfo_ManualCpc.Merge(m, src) 130} 131func (m *ManualCpc) XXX_Size() int { 132 return xxx_messageInfo_ManualCpc.Size(m) 133} 134func (m *ManualCpc) XXX_DiscardUnknown() { 135 xxx_messageInfo_ManualCpc.DiscardUnknown(m) 136} 137 138var xxx_messageInfo_ManualCpc proto.InternalMessageInfo 139 140func (m *ManualCpc) GetEnhancedCpcEnabled() *wrappers.BoolValue { 141 if m != nil { 142 return m.EnhancedCpcEnabled 143 } 144 return nil 145} 146 147// Manual impression-based bidding where user pays per thousand impressions. 148type ManualCpm struct { 149 XXX_NoUnkeyedLiteral struct{} `json:"-"` 150 XXX_unrecognized []byte `json:"-"` 151 XXX_sizecache int32 `json:"-"` 152} 153 154func (m *ManualCpm) Reset() { *m = ManualCpm{} } 155func (m *ManualCpm) String() string { return proto.CompactTextString(m) } 156func (*ManualCpm) ProtoMessage() {} 157func (*ManualCpm) Descriptor() ([]byte, []int) { 158 return fileDescriptor_4aa9bf865024275f, []int{3} 159} 160 161func (m *ManualCpm) XXX_Unmarshal(b []byte) error { 162 return xxx_messageInfo_ManualCpm.Unmarshal(m, b) 163} 164func (m *ManualCpm) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 165 return xxx_messageInfo_ManualCpm.Marshal(b, m, deterministic) 166} 167func (m *ManualCpm) XXX_Merge(src proto.Message) { 168 xxx_messageInfo_ManualCpm.Merge(m, src) 169} 170func (m *ManualCpm) XXX_Size() int { 171 return xxx_messageInfo_ManualCpm.Size(m) 172} 173func (m *ManualCpm) XXX_DiscardUnknown() { 174 xxx_messageInfo_ManualCpm.DiscardUnknown(m) 175} 176 177var xxx_messageInfo_ManualCpm proto.InternalMessageInfo 178 179// View based bidding where user pays per video view. 180type ManualCpv struct { 181 XXX_NoUnkeyedLiteral struct{} `json:"-"` 182 XXX_unrecognized []byte `json:"-"` 183 XXX_sizecache int32 `json:"-"` 184} 185 186func (m *ManualCpv) Reset() { *m = ManualCpv{} } 187func (m *ManualCpv) String() string { return proto.CompactTextString(m) } 188func (*ManualCpv) ProtoMessage() {} 189func (*ManualCpv) Descriptor() ([]byte, []int) { 190 return fileDescriptor_4aa9bf865024275f, []int{4} 191} 192 193func (m *ManualCpv) XXX_Unmarshal(b []byte) error { 194 return xxx_messageInfo_ManualCpv.Unmarshal(m, b) 195} 196func (m *ManualCpv) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 197 return xxx_messageInfo_ManualCpv.Marshal(b, m, deterministic) 198} 199func (m *ManualCpv) XXX_Merge(src proto.Message) { 200 xxx_messageInfo_ManualCpv.Merge(m, src) 201} 202func (m *ManualCpv) XXX_Size() int { 203 return xxx_messageInfo_ManualCpv.Size(m) 204} 205func (m *ManualCpv) XXX_DiscardUnknown() { 206 xxx_messageInfo_ManualCpv.DiscardUnknown(m) 207} 208 209var xxx_messageInfo_ManualCpv proto.InternalMessageInfo 210 211// An automated bidding strategy that sets bids to help get the most conversions 212// for your campaign while spending your budget. 213type MaximizeConversions struct { 214 XXX_NoUnkeyedLiteral struct{} `json:"-"` 215 XXX_unrecognized []byte `json:"-"` 216 XXX_sizecache int32 `json:"-"` 217} 218 219func (m *MaximizeConversions) Reset() { *m = MaximizeConversions{} } 220func (m *MaximizeConversions) String() string { return proto.CompactTextString(m) } 221func (*MaximizeConversions) ProtoMessage() {} 222func (*MaximizeConversions) Descriptor() ([]byte, []int) { 223 return fileDescriptor_4aa9bf865024275f, []int{5} 224} 225 226func (m *MaximizeConversions) XXX_Unmarshal(b []byte) error { 227 return xxx_messageInfo_MaximizeConversions.Unmarshal(m, b) 228} 229func (m *MaximizeConversions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 230 return xxx_messageInfo_MaximizeConversions.Marshal(b, m, deterministic) 231} 232func (m *MaximizeConversions) XXX_Merge(src proto.Message) { 233 xxx_messageInfo_MaximizeConversions.Merge(m, src) 234} 235func (m *MaximizeConversions) XXX_Size() int { 236 return xxx_messageInfo_MaximizeConversions.Size(m) 237} 238func (m *MaximizeConversions) XXX_DiscardUnknown() { 239 xxx_messageInfo_MaximizeConversions.DiscardUnknown(m) 240} 241 242var xxx_messageInfo_MaximizeConversions proto.InternalMessageInfo 243 244// An automated bidding strategy which tries to maximize conversion value 245// given a daily budget. 246type MaximizeConversionValue struct { 247 // The target return on ad spend (ROAS) option. If set, the bid strategy will 248 // maximize revenue while averaging the target return on ad spend. If the 249 // target ROAS is high, the bid strategy may not be able to spend the full 250 // budget. If the target ROAS is not set, the bid strategy will aim to 251 // achieve the highest possible ROAS for the budget. 252 TargetRoas *wrappers.DoubleValue `protobuf:"bytes,1,opt,name=target_roas,json=targetRoas,proto3" json:"target_roas,omitempty"` 253 XXX_NoUnkeyedLiteral struct{} `json:"-"` 254 XXX_unrecognized []byte `json:"-"` 255 XXX_sizecache int32 `json:"-"` 256} 257 258func (m *MaximizeConversionValue) Reset() { *m = MaximizeConversionValue{} } 259func (m *MaximizeConversionValue) String() string { return proto.CompactTextString(m) } 260func (*MaximizeConversionValue) ProtoMessage() {} 261func (*MaximizeConversionValue) Descriptor() ([]byte, []int) { 262 return fileDescriptor_4aa9bf865024275f, []int{6} 263} 264 265func (m *MaximizeConversionValue) XXX_Unmarshal(b []byte) error { 266 return xxx_messageInfo_MaximizeConversionValue.Unmarshal(m, b) 267} 268func (m *MaximizeConversionValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 269 return xxx_messageInfo_MaximizeConversionValue.Marshal(b, m, deterministic) 270} 271func (m *MaximizeConversionValue) XXX_Merge(src proto.Message) { 272 xxx_messageInfo_MaximizeConversionValue.Merge(m, src) 273} 274func (m *MaximizeConversionValue) XXX_Size() int { 275 return xxx_messageInfo_MaximizeConversionValue.Size(m) 276} 277func (m *MaximizeConversionValue) XXX_DiscardUnknown() { 278 xxx_messageInfo_MaximizeConversionValue.DiscardUnknown(m) 279} 280 281var xxx_messageInfo_MaximizeConversionValue proto.InternalMessageInfo 282 283func (m *MaximizeConversionValue) GetTargetRoas() *wrappers.DoubleValue { 284 if m != nil { 285 return m.TargetRoas 286 } 287 return nil 288} 289 290// An automated bidding strategy which sets CPC bids to target impressions on 291// page one, or page one promoted slots on google.com. 292// This strategy is deprecated. 293type PageOnePromoted struct { 294 // The strategy goal of where impressions are desired to be shown on 295 // search result pages. 296 StrategyGoal enums.PageOnePromotedStrategyGoalEnum_PageOnePromotedStrategyGoal `protobuf:"varint,1,opt,name=strategy_goal,json=strategyGoal,proto3,enum=google.ads.googleads.v2.enums.PageOnePromotedStrategyGoalEnum_PageOnePromotedStrategyGoal" json:"strategy_goal,omitempty"` 297 // Maximum bid limit that can be set by the bid strategy. 298 // The limit applies to all keywords managed by the strategy. 299 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 300 // Bid multiplier to be applied to the relevant bid estimate (depending on 301 // the `strategy_goal`) in determining a keyword's new CPC bid. 302 BidModifier *wrappers.DoubleValue `protobuf:"bytes,3,opt,name=bid_modifier,json=bidModifier,proto3" json:"bid_modifier,omitempty"` 303 // Whether the strategy should always follow bid estimate changes, or only 304 // increase. 305 // If false, always sets a keyword's new bid to the current bid estimate. 306 // If true, only updates a keyword's bid if the current bid estimate is 307 // greater than the current bid. 308 OnlyRaiseCpcBids *wrappers.BoolValue `protobuf:"bytes,4,opt,name=only_raise_cpc_bids,json=onlyRaiseCpcBids,proto3" json:"only_raise_cpc_bids,omitempty"` 309 // Whether the strategy is allowed to raise bids when the throttling 310 // rate of the budget it is serving out of rises above a threshold. 311 RaiseCpcBidWhenBudgetConstrained *wrappers.BoolValue `protobuf:"bytes,5,opt,name=raise_cpc_bid_when_budget_constrained,json=raiseCpcBidWhenBudgetConstrained,proto3" json:"raise_cpc_bid_when_budget_constrained,omitempty"` 312 // Whether the strategy is allowed to raise bids on keywords with 313 // lower-range quality scores. 314 RaiseCpcBidWhenQualityScoreIsLow *wrappers.BoolValue `protobuf:"bytes,6,opt,name=raise_cpc_bid_when_quality_score_is_low,json=raiseCpcBidWhenQualityScoreIsLow,proto3" json:"raise_cpc_bid_when_quality_score_is_low,omitempty"` 315 XXX_NoUnkeyedLiteral struct{} `json:"-"` 316 XXX_unrecognized []byte `json:"-"` 317 XXX_sizecache int32 `json:"-"` 318} 319 320func (m *PageOnePromoted) Reset() { *m = PageOnePromoted{} } 321func (m *PageOnePromoted) String() string { return proto.CompactTextString(m) } 322func (*PageOnePromoted) ProtoMessage() {} 323func (*PageOnePromoted) Descriptor() ([]byte, []int) { 324 return fileDescriptor_4aa9bf865024275f, []int{7} 325} 326 327func (m *PageOnePromoted) XXX_Unmarshal(b []byte) error { 328 return xxx_messageInfo_PageOnePromoted.Unmarshal(m, b) 329} 330func (m *PageOnePromoted) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 331 return xxx_messageInfo_PageOnePromoted.Marshal(b, m, deterministic) 332} 333func (m *PageOnePromoted) XXX_Merge(src proto.Message) { 334 xxx_messageInfo_PageOnePromoted.Merge(m, src) 335} 336func (m *PageOnePromoted) XXX_Size() int { 337 return xxx_messageInfo_PageOnePromoted.Size(m) 338} 339func (m *PageOnePromoted) XXX_DiscardUnknown() { 340 xxx_messageInfo_PageOnePromoted.DiscardUnknown(m) 341} 342 343var xxx_messageInfo_PageOnePromoted proto.InternalMessageInfo 344 345func (m *PageOnePromoted) GetStrategyGoal() enums.PageOnePromotedStrategyGoalEnum_PageOnePromotedStrategyGoal { 346 if m != nil { 347 return m.StrategyGoal 348 } 349 return enums.PageOnePromotedStrategyGoalEnum_UNSPECIFIED 350} 351 352func (m *PageOnePromoted) GetCpcBidCeilingMicros() *wrappers.Int64Value { 353 if m != nil { 354 return m.CpcBidCeilingMicros 355 } 356 return nil 357} 358 359func (m *PageOnePromoted) GetBidModifier() *wrappers.DoubleValue { 360 if m != nil { 361 return m.BidModifier 362 } 363 return nil 364} 365 366func (m *PageOnePromoted) GetOnlyRaiseCpcBids() *wrappers.BoolValue { 367 if m != nil { 368 return m.OnlyRaiseCpcBids 369 } 370 return nil 371} 372 373func (m *PageOnePromoted) GetRaiseCpcBidWhenBudgetConstrained() *wrappers.BoolValue { 374 if m != nil { 375 return m.RaiseCpcBidWhenBudgetConstrained 376 } 377 return nil 378} 379 380func (m *PageOnePromoted) GetRaiseCpcBidWhenQualityScoreIsLow() *wrappers.BoolValue { 381 if m != nil { 382 return m.RaiseCpcBidWhenQualityScoreIsLow 383 } 384 return nil 385} 386 387// An automated bid strategy that sets bids to help get as many conversions as 388// possible at the target cost-per-acquisition (CPA) you set. 389type TargetCpa struct { 390 // Average CPA target. 391 // This target should be greater than or equal to minimum billable unit based 392 // on the currency for the account. 393 TargetCpaMicros *wrappers.Int64Value `protobuf:"bytes,1,opt,name=target_cpa_micros,json=targetCpaMicros,proto3" json:"target_cpa_micros,omitempty"` 394 // Maximum bid limit that can be set by the bid strategy. 395 // The limit applies to all keywords managed by the strategy. 396 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 397 // Minimum bid limit that can be set by the bid strategy. 398 // The limit applies to all keywords managed by the strategy. 399 CpcBidFloorMicros *wrappers.Int64Value `protobuf:"bytes,3,opt,name=cpc_bid_floor_micros,json=cpcBidFloorMicros,proto3" json:"cpc_bid_floor_micros,omitempty"` 400 XXX_NoUnkeyedLiteral struct{} `json:"-"` 401 XXX_unrecognized []byte `json:"-"` 402 XXX_sizecache int32 `json:"-"` 403} 404 405func (m *TargetCpa) Reset() { *m = TargetCpa{} } 406func (m *TargetCpa) String() string { return proto.CompactTextString(m) } 407func (*TargetCpa) ProtoMessage() {} 408func (*TargetCpa) Descriptor() ([]byte, []int) { 409 return fileDescriptor_4aa9bf865024275f, []int{8} 410} 411 412func (m *TargetCpa) XXX_Unmarshal(b []byte) error { 413 return xxx_messageInfo_TargetCpa.Unmarshal(m, b) 414} 415func (m *TargetCpa) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 416 return xxx_messageInfo_TargetCpa.Marshal(b, m, deterministic) 417} 418func (m *TargetCpa) XXX_Merge(src proto.Message) { 419 xxx_messageInfo_TargetCpa.Merge(m, src) 420} 421func (m *TargetCpa) XXX_Size() int { 422 return xxx_messageInfo_TargetCpa.Size(m) 423} 424func (m *TargetCpa) XXX_DiscardUnknown() { 425 xxx_messageInfo_TargetCpa.DiscardUnknown(m) 426} 427 428var xxx_messageInfo_TargetCpa proto.InternalMessageInfo 429 430func (m *TargetCpa) GetTargetCpaMicros() *wrappers.Int64Value { 431 if m != nil { 432 return m.TargetCpaMicros 433 } 434 return nil 435} 436 437func (m *TargetCpa) GetCpcBidCeilingMicros() *wrappers.Int64Value { 438 if m != nil { 439 return m.CpcBidCeilingMicros 440 } 441 return nil 442} 443 444func (m *TargetCpa) GetCpcBidFloorMicros() *wrappers.Int64Value { 445 if m != nil { 446 return m.CpcBidFloorMicros 447 } 448 return nil 449} 450 451// Target CPM (cost per thousand impressions) is an automated bidding strategy 452// that sets bids to optimize performance given the target CPM you set. 453type TargetCpm struct { 454 XXX_NoUnkeyedLiteral struct{} `json:"-"` 455 XXX_unrecognized []byte `json:"-"` 456 XXX_sizecache int32 `json:"-"` 457} 458 459func (m *TargetCpm) Reset() { *m = TargetCpm{} } 460func (m *TargetCpm) String() string { return proto.CompactTextString(m) } 461func (*TargetCpm) ProtoMessage() {} 462func (*TargetCpm) Descriptor() ([]byte, []int) { 463 return fileDescriptor_4aa9bf865024275f, []int{9} 464} 465 466func (m *TargetCpm) XXX_Unmarshal(b []byte) error { 467 return xxx_messageInfo_TargetCpm.Unmarshal(m, b) 468} 469func (m *TargetCpm) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 470 return xxx_messageInfo_TargetCpm.Marshal(b, m, deterministic) 471} 472func (m *TargetCpm) XXX_Merge(src proto.Message) { 473 xxx_messageInfo_TargetCpm.Merge(m, src) 474} 475func (m *TargetCpm) XXX_Size() int { 476 return xxx_messageInfo_TargetCpm.Size(m) 477} 478func (m *TargetCpm) XXX_DiscardUnknown() { 479 xxx_messageInfo_TargetCpm.DiscardUnknown(m) 480} 481 482var xxx_messageInfo_TargetCpm proto.InternalMessageInfo 483 484// An automated bidding strategy that sets bids so that a certain percentage of 485// search ads are shown at the top of the first page (or other targeted 486// location). 487// Next Id = 4 488type TargetImpressionShare struct { 489 // The targeted location on the search results page. 490 Location enums.TargetImpressionShareLocationEnum_TargetImpressionShareLocation `protobuf:"varint,1,opt,name=location,proto3,enum=google.ads.googleads.v2.enums.TargetImpressionShareLocationEnum_TargetImpressionShareLocation" json:"location,omitempty"` 491 // The desired fraction of ads to be shown in the targeted location in micros. 492 // E.g. 1% equals 10,000. 493 LocationFractionMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=location_fraction_micros,json=locationFractionMicros,proto3" json:"location_fraction_micros,omitempty"` 494 // The highest CPC bid the automated bidding system is permitted to specify. 495 // This is a required field entered by the advertiser that sets the ceiling 496 // and specified in local micros. 497 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,3,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 498 XXX_NoUnkeyedLiteral struct{} `json:"-"` 499 XXX_unrecognized []byte `json:"-"` 500 XXX_sizecache int32 `json:"-"` 501} 502 503func (m *TargetImpressionShare) Reset() { *m = TargetImpressionShare{} } 504func (m *TargetImpressionShare) String() string { return proto.CompactTextString(m) } 505func (*TargetImpressionShare) ProtoMessage() {} 506func (*TargetImpressionShare) Descriptor() ([]byte, []int) { 507 return fileDescriptor_4aa9bf865024275f, []int{10} 508} 509 510func (m *TargetImpressionShare) XXX_Unmarshal(b []byte) error { 511 return xxx_messageInfo_TargetImpressionShare.Unmarshal(m, b) 512} 513func (m *TargetImpressionShare) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 514 return xxx_messageInfo_TargetImpressionShare.Marshal(b, m, deterministic) 515} 516func (m *TargetImpressionShare) XXX_Merge(src proto.Message) { 517 xxx_messageInfo_TargetImpressionShare.Merge(m, src) 518} 519func (m *TargetImpressionShare) XXX_Size() int { 520 return xxx_messageInfo_TargetImpressionShare.Size(m) 521} 522func (m *TargetImpressionShare) XXX_DiscardUnknown() { 523 xxx_messageInfo_TargetImpressionShare.DiscardUnknown(m) 524} 525 526var xxx_messageInfo_TargetImpressionShare proto.InternalMessageInfo 527 528func (m *TargetImpressionShare) GetLocation() enums.TargetImpressionShareLocationEnum_TargetImpressionShareLocation { 529 if m != nil { 530 return m.Location 531 } 532 return enums.TargetImpressionShareLocationEnum_UNSPECIFIED 533} 534 535func (m *TargetImpressionShare) GetLocationFractionMicros() *wrappers.Int64Value { 536 if m != nil { 537 return m.LocationFractionMicros 538 } 539 return nil 540} 541 542func (m *TargetImpressionShare) GetCpcBidCeilingMicros() *wrappers.Int64Value { 543 if m != nil { 544 return m.CpcBidCeilingMicros 545 } 546 return nil 547} 548 549// An automated bidding strategy that sets bids based on the target fraction of 550// auctions where the advertiser should outrank a specific competitor. 551// This strategy is deprecated. 552type TargetOutrankShare struct { 553 // The target fraction of auctions where the advertiser should outrank the 554 // competitor. 555 // The advertiser outranks the competitor in an auction if either the 556 // advertiser appears above the competitor in the search results, or appears 557 // in the search results when the competitor does not. 558 // Value must be between 1 and 1000000, inclusive. 559 TargetOutrankShareMicros *wrappers.Int32Value `protobuf:"bytes,1,opt,name=target_outrank_share_micros,json=targetOutrankShareMicros,proto3" json:"target_outrank_share_micros,omitempty"` 560 // Competitor's visible domain URL. 561 CompetitorDomain *wrappers.StringValue `protobuf:"bytes,2,opt,name=competitor_domain,json=competitorDomain,proto3" json:"competitor_domain,omitempty"` 562 // Maximum bid limit that can be set by the bid strategy. 563 // The limit applies to all keywords managed by the strategy. 564 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,3,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 565 // Whether the strategy should always follow bid estimate changes, 566 // or only increase. 567 // If false, always set a keyword's new bid to the current bid estimate. 568 // If true, only updates a keyword's bid if the current bid estimate is 569 // greater than the current bid. 570 OnlyRaiseCpcBids *wrappers.BoolValue `protobuf:"bytes,4,opt,name=only_raise_cpc_bids,json=onlyRaiseCpcBids,proto3" json:"only_raise_cpc_bids,omitempty"` 571 // Whether the strategy is allowed to raise bids on keywords with 572 // lower-range quality scores. 573 RaiseCpcBidWhenQualityScoreIsLow *wrappers.BoolValue `protobuf:"bytes,5,opt,name=raise_cpc_bid_when_quality_score_is_low,json=raiseCpcBidWhenQualityScoreIsLow,proto3" json:"raise_cpc_bid_when_quality_score_is_low,omitempty"` 574 XXX_NoUnkeyedLiteral struct{} `json:"-"` 575 XXX_unrecognized []byte `json:"-"` 576 XXX_sizecache int32 `json:"-"` 577} 578 579func (m *TargetOutrankShare) Reset() { *m = TargetOutrankShare{} } 580func (m *TargetOutrankShare) String() string { return proto.CompactTextString(m) } 581func (*TargetOutrankShare) ProtoMessage() {} 582func (*TargetOutrankShare) Descriptor() ([]byte, []int) { 583 return fileDescriptor_4aa9bf865024275f, []int{11} 584} 585 586func (m *TargetOutrankShare) XXX_Unmarshal(b []byte) error { 587 return xxx_messageInfo_TargetOutrankShare.Unmarshal(m, b) 588} 589func (m *TargetOutrankShare) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 590 return xxx_messageInfo_TargetOutrankShare.Marshal(b, m, deterministic) 591} 592func (m *TargetOutrankShare) XXX_Merge(src proto.Message) { 593 xxx_messageInfo_TargetOutrankShare.Merge(m, src) 594} 595func (m *TargetOutrankShare) XXX_Size() int { 596 return xxx_messageInfo_TargetOutrankShare.Size(m) 597} 598func (m *TargetOutrankShare) XXX_DiscardUnknown() { 599 xxx_messageInfo_TargetOutrankShare.DiscardUnknown(m) 600} 601 602var xxx_messageInfo_TargetOutrankShare proto.InternalMessageInfo 603 604func (m *TargetOutrankShare) GetTargetOutrankShareMicros() *wrappers.Int32Value { 605 if m != nil { 606 return m.TargetOutrankShareMicros 607 } 608 return nil 609} 610 611func (m *TargetOutrankShare) GetCompetitorDomain() *wrappers.StringValue { 612 if m != nil { 613 return m.CompetitorDomain 614 } 615 return nil 616} 617 618func (m *TargetOutrankShare) GetCpcBidCeilingMicros() *wrappers.Int64Value { 619 if m != nil { 620 return m.CpcBidCeilingMicros 621 } 622 return nil 623} 624 625func (m *TargetOutrankShare) GetOnlyRaiseCpcBids() *wrappers.BoolValue { 626 if m != nil { 627 return m.OnlyRaiseCpcBids 628 } 629 return nil 630} 631 632func (m *TargetOutrankShare) GetRaiseCpcBidWhenQualityScoreIsLow() *wrappers.BoolValue { 633 if m != nil { 634 return m.RaiseCpcBidWhenQualityScoreIsLow 635 } 636 return nil 637} 638 639// An automated bidding strategy that helps you maximize revenue while 640// averaging a specific target return on ad spend (ROAS). 641type TargetRoas struct { 642 // Required. The desired revenue (based on conversion data) per unit of spend. 643 // Value must be between 0.01 and 1000.0, inclusive. 644 TargetRoas *wrappers.DoubleValue `protobuf:"bytes,1,opt,name=target_roas,json=targetRoas,proto3" json:"target_roas,omitempty"` 645 // Maximum bid limit that can be set by the bid strategy. 646 // The limit applies to all keywords managed by the strategy. 647 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 648 // Minimum bid limit that can be set by the bid strategy. 649 // The limit applies to all keywords managed by the strategy. 650 CpcBidFloorMicros *wrappers.Int64Value `protobuf:"bytes,3,opt,name=cpc_bid_floor_micros,json=cpcBidFloorMicros,proto3" json:"cpc_bid_floor_micros,omitempty"` 651 XXX_NoUnkeyedLiteral struct{} `json:"-"` 652 XXX_unrecognized []byte `json:"-"` 653 XXX_sizecache int32 `json:"-"` 654} 655 656func (m *TargetRoas) Reset() { *m = TargetRoas{} } 657func (m *TargetRoas) String() string { return proto.CompactTextString(m) } 658func (*TargetRoas) ProtoMessage() {} 659func (*TargetRoas) Descriptor() ([]byte, []int) { 660 return fileDescriptor_4aa9bf865024275f, []int{12} 661} 662 663func (m *TargetRoas) XXX_Unmarshal(b []byte) error { 664 return xxx_messageInfo_TargetRoas.Unmarshal(m, b) 665} 666func (m *TargetRoas) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 667 return xxx_messageInfo_TargetRoas.Marshal(b, m, deterministic) 668} 669func (m *TargetRoas) XXX_Merge(src proto.Message) { 670 xxx_messageInfo_TargetRoas.Merge(m, src) 671} 672func (m *TargetRoas) XXX_Size() int { 673 return xxx_messageInfo_TargetRoas.Size(m) 674} 675func (m *TargetRoas) XXX_DiscardUnknown() { 676 xxx_messageInfo_TargetRoas.DiscardUnknown(m) 677} 678 679var xxx_messageInfo_TargetRoas proto.InternalMessageInfo 680 681func (m *TargetRoas) GetTargetRoas() *wrappers.DoubleValue { 682 if m != nil { 683 return m.TargetRoas 684 } 685 return nil 686} 687 688func (m *TargetRoas) GetCpcBidCeilingMicros() *wrappers.Int64Value { 689 if m != nil { 690 return m.CpcBidCeilingMicros 691 } 692 return nil 693} 694 695func (m *TargetRoas) GetCpcBidFloorMicros() *wrappers.Int64Value { 696 if m != nil { 697 return m.CpcBidFloorMicros 698 } 699 return nil 700} 701 702// An automated bid strategy that sets your bids to help get as many clicks 703// as possible within your budget. 704type TargetSpend struct { 705 // The spend target under which to maximize clicks. 706 // A TargetSpend bidder will attempt to spend the smaller of this value 707 // or the natural throttling spend amount. 708 // If not specified, the budget is used as the spend target. 709 TargetSpendMicros *wrappers.Int64Value `protobuf:"bytes,1,opt,name=target_spend_micros,json=targetSpendMicros,proto3" json:"target_spend_micros,omitempty"` 710 // Maximum bid limit that can be set by the bid strategy. 711 // The limit applies to all keywords managed by the strategy. 712 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,2,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 713 XXX_NoUnkeyedLiteral struct{} `json:"-"` 714 XXX_unrecognized []byte `json:"-"` 715 XXX_sizecache int32 `json:"-"` 716} 717 718func (m *TargetSpend) Reset() { *m = TargetSpend{} } 719func (m *TargetSpend) String() string { return proto.CompactTextString(m) } 720func (*TargetSpend) ProtoMessage() {} 721func (*TargetSpend) Descriptor() ([]byte, []int) { 722 return fileDescriptor_4aa9bf865024275f, []int{13} 723} 724 725func (m *TargetSpend) XXX_Unmarshal(b []byte) error { 726 return xxx_messageInfo_TargetSpend.Unmarshal(m, b) 727} 728func (m *TargetSpend) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 729 return xxx_messageInfo_TargetSpend.Marshal(b, m, deterministic) 730} 731func (m *TargetSpend) XXX_Merge(src proto.Message) { 732 xxx_messageInfo_TargetSpend.Merge(m, src) 733} 734func (m *TargetSpend) XXX_Size() int { 735 return xxx_messageInfo_TargetSpend.Size(m) 736} 737func (m *TargetSpend) XXX_DiscardUnknown() { 738 xxx_messageInfo_TargetSpend.DiscardUnknown(m) 739} 740 741var xxx_messageInfo_TargetSpend proto.InternalMessageInfo 742 743func (m *TargetSpend) GetTargetSpendMicros() *wrappers.Int64Value { 744 if m != nil { 745 return m.TargetSpendMicros 746 } 747 return nil 748} 749 750func (m *TargetSpend) GetCpcBidCeilingMicros() *wrappers.Int64Value { 751 if m != nil { 752 return m.CpcBidCeilingMicros 753 } 754 return nil 755} 756 757// A bidding strategy where bids are a fraction of the advertised price for 758// some good or service. 759type PercentCpc struct { 760 // Maximum bid limit that can be set by the bid strategy. This is 761 // an optional field entered by the advertiser and specified in local micros. 762 // Note: A zero value is interpreted in the same way as having bid_ceiling 763 // undefined. 764 CpcBidCeilingMicros *wrappers.Int64Value `protobuf:"bytes,1,opt,name=cpc_bid_ceiling_micros,json=cpcBidCeilingMicros,proto3" json:"cpc_bid_ceiling_micros,omitempty"` 765 // Adjusts the bid for each auction upward or downward, depending on the 766 // likelihood of a conversion. Individual bids may exceed 767 // cpc_bid_ceiling_micros, but the average bid amount for a campaign should 768 // not. 769 EnhancedCpcEnabled *wrappers.BoolValue `protobuf:"bytes,2,opt,name=enhanced_cpc_enabled,json=enhancedCpcEnabled,proto3" json:"enhanced_cpc_enabled,omitempty"` 770 XXX_NoUnkeyedLiteral struct{} `json:"-"` 771 XXX_unrecognized []byte `json:"-"` 772 XXX_sizecache int32 `json:"-"` 773} 774 775func (m *PercentCpc) Reset() { *m = PercentCpc{} } 776func (m *PercentCpc) String() string { return proto.CompactTextString(m) } 777func (*PercentCpc) ProtoMessage() {} 778func (*PercentCpc) Descriptor() ([]byte, []int) { 779 return fileDescriptor_4aa9bf865024275f, []int{14} 780} 781 782func (m *PercentCpc) XXX_Unmarshal(b []byte) error { 783 return xxx_messageInfo_PercentCpc.Unmarshal(m, b) 784} 785func (m *PercentCpc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 786 return xxx_messageInfo_PercentCpc.Marshal(b, m, deterministic) 787} 788func (m *PercentCpc) XXX_Merge(src proto.Message) { 789 xxx_messageInfo_PercentCpc.Merge(m, src) 790} 791func (m *PercentCpc) XXX_Size() int { 792 return xxx_messageInfo_PercentCpc.Size(m) 793} 794func (m *PercentCpc) XXX_DiscardUnknown() { 795 xxx_messageInfo_PercentCpc.DiscardUnknown(m) 796} 797 798var xxx_messageInfo_PercentCpc proto.InternalMessageInfo 799 800func (m *PercentCpc) GetCpcBidCeilingMicros() *wrappers.Int64Value { 801 if m != nil { 802 return m.CpcBidCeilingMicros 803 } 804 return nil 805} 806 807func (m *PercentCpc) GetEnhancedCpcEnabled() *wrappers.BoolValue { 808 if m != nil { 809 return m.EnhancedCpcEnabled 810 } 811 return nil 812} 813 814func init() { 815 proto.RegisterType((*Commission)(nil), "google.ads.googleads.v2.common.Commission") 816 proto.RegisterType((*EnhancedCpc)(nil), "google.ads.googleads.v2.common.EnhancedCpc") 817 proto.RegisterType((*ManualCpc)(nil), "google.ads.googleads.v2.common.ManualCpc") 818 proto.RegisterType((*ManualCpm)(nil), "google.ads.googleads.v2.common.ManualCpm") 819 proto.RegisterType((*ManualCpv)(nil), "google.ads.googleads.v2.common.ManualCpv") 820 proto.RegisterType((*MaximizeConversions)(nil), "google.ads.googleads.v2.common.MaximizeConversions") 821 proto.RegisterType((*MaximizeConversionValue)(nil), "google.ads.googleads.v2.common.MaximizeConversionValue") 822 proto.RegisterType((*PageOnePromoted)(nil), "google.ads.googleads.v2.common.PageOnePromoted") 823 proto.RegisterType((*TargetCpa)(nil), "google.ads.googleads.v2.common.TargetCpa") 824 proto.RegisterType((*TargetCpm)(nil), "google.ads.googleads.v2.common.TargetCpm") 825 proto.RegisterType((*TargetImpressionShare)(nil), "google.ads.googleads.v2.common.TargetImpressionShare") 826 proto.RegisterType((*TargetOutrankShare)(nil), "google.ads.googleads.v2.common.TargetOutrankShare") 827 proto.RegisterType((*TargetRoas)(nil), "google.ads.googleads.v2.common.TargetRoas") 828 proto.RegisterType((*TargetSpend)(nil), "google.ads.googleads.v2.common.TargetSpend") 829 proto.RegisterType((*PercentCpc)(nil), "google.ads.googleads.v2.common.PercentCpc") 830} 831 832func init() { 833 proto.RegisterFile("google/ads/googleads/v2/common/bidding.proto", fileDescriptor_4aa9bf865024275f) 834} 835 836var fileDescriptor_4aa9bf865024275f = []byte{ 837 // 951 bytes of a gzipped FileDescriptorProto 838 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x96, 0x51, 0x6f, 0x1b, 0x45, 839 0x10, 0x80, 0x65, 0xa7, 0xad, 0xe8, 0x3a, 0xa5, 0xe4, 0x92, 0x06, 0x2b, 0xad, 0xaa, 0xea, 0x24, 840 0x04, 0x0f, 0xe8, 0x4e, 0x72, 0x11, 0x0f, 0x46, 0x08, 0xd9, 0x97, 0x34, 0xb2, 0x48, 0x54, 0xd7, 841 0x2e, 0x01, 0xa2, 0x88, 0xd5, 0x7a, 0x77, 0x73, 0x59, 0xf5, 0x6e, 0xe7, 0xd8, 0xdd, 0x4b, 0x48, 842 0x5f, 0xf8, 0x2f, 0x3c, 0x22, 0x7e, 0x02, 0xef, 0x48, 0x88, 0xff, 0x81, 0x04, 0xaf, 0xfc, 0x00, 843 0x74, 0xbb, 0x7b, 0x76, 0x8b, 0x93, 0xb8, 0x09, 0x41, 0xe2, 0xc9, 0xbb, 0xde, 0x99, 0x6f, 0x66, 844 0x67, 0x66, 0xe7, 0x06, 0x7d, 0x98, 0x02, 0xa4, 0x19, 0x8f, 0x09, 0xd3, 0xb1, 0x5b, 0x56, 0xab, 845 0xe3, 0x4e, 0x4c, 0x21, 0xcf, 0x41, 0xc6, 0x13, 0xc1, 0x98, 0x90, 0x69, 0x54, 0x28, 0x30, 0x10, 846 0x3c, 0x74, 0x22, 0x11, 0x61, 0x3a, 0x9a, 0x4a, 0x47, 0xc7, 0x9d, 0xc8, 0x49, 0x6f, 0x24, 0xe7, 847 0xd1, 0xb8, 0x2c, 0x73, 0x1d, 0x17, 0x24, 0xe5, 0x18, 0x24, 0xc7, 0x85, 0x82, 0x1c, 0x0c, 0x67, 848 0x58, 0x1b, 0x45, 0x0c, 0x4f, 0x4f, 0x71, 0x0a, 0x24, 0x73, 0x46, 0x36, 0x36, 0x2f, 0x86, 0x18, 849 0xa2, 0x52, 0x6e, 0xb0, 0xc8, 0x0b, 0xc5, 0xb5, 0x16, 0x20, 0xb1, 0x3e, 0x22, 0x8a, 0xe3, 0x0c, 850 0x28, 0x31, 0x02, 0xa4, 0xa7, 0x78, 0x57, 0x63, 0xbb, 0x9b, 0x94, 0x87, 0xf1, 0x89, 0x22, 0x45, 851 0xc1, 0x95, 0xf6, 0xe7, 0x0f, 0x6a, 0x2b, 0x85, 0x88, 0x89, 0x94, 0x60, 0xac, 0xb2, 0x3f, 0x0d, 852 0x31, 0x42, 0x09, 0xe4, 0xb9, 0xb0, 0x06, 0x82, 0x67, 0x68, 0x9d, 0x4e, 0x77, 0xb8, 0xf2, 0x18, 853 0xe7, 0x82, 0x2a, 0xd0, 0xed, 0xc6, 0xa3, 0xc6, 0x07, 0xad, 0xce, 0x7d, 0x1f, 0x8c, 0xa8, 0x36, 854 0x16, 0x0d, 0xa4, 0xf9, 0xf8, 0xa3, 0x3d, 0x92, 0x95, 0x7c, 0xb4, 0x36, 0x53, 0x1d, 0x11, 0xc3, 855 0x77, 0xad, 0x62, 0x78, 0x07, 0xb5, 0xb6, 0xe4, 0x11, 0x91, 0x94, 0xb3, 0xa4, 0xa0, 0xe1, 0xd7, 856 0xe8, 0xf6, 0x2e, 0x91, 0x25, 0xc9, 0x92, 0x82, 0x06, 0x3b, 0x68, 0x8d, 0xfb, 0x33, 0x4c, 0x0b, 857 0x8a, 0xb9, 0x24, 0x93, 0x8c, 0x33, 0x6f, 0x6c, 0x63, 0xce, 0x58, 0x1f, 0x20, 0x73, 0xb6, 0x02, 858 0x3e, 0x63, 0x6e, 0x39, 0xad, 0xb0, 0x35, 0x43, 0xe7, 0xaf, 0x6e, 0x8e, 0xc3, 0x7b, 0x68, 0x75, 859 0x97, 0x7c, 0x27, 0x72, 0xf1, 0x92, 0x27, 0x20, 0x8f, 0xb9, 0xaa, 0x7c, 0xd4, 0xe1, 0x57, 0xe8, 860 0xdd, 0xf9, 0xbf, 0x2d, 0x3f, 0xf8, 0x14, 0xb5, 0x7c, 0xf8, 0x15, 0x90, 0xfa, 0xf6, 0x0f, 0xe6, 861 0x1c, 0xda, 0x84, 0x72, 0x92, 0x71, 0xe7, 0x12, 0x72, 0x0a, 0x23, 0x20, 0x3a, 0xfc, 0xed, 0x06, 862 0xba, 0x3b, 0x24, 0x29, 0x7f, 0x2a, 0xf9, 0xd0, 0x57, 0x40, 0xf0, 0x3d, 0xba, 0xf3, 0x5a, 0x11, 863 0x58, 0xe8, 0xdb, 0x9d, 0xfd, 0xe8, 0xbc, 0x52, 0xb3, 0x55, 0x10, 0xfd, 0x03, 0x33, 0xf6, 0x88, 864 0x6d, 0x20, 0xd9, 0x96, 0x2c, 0xf3, 0x8b, 0xce, 0x47, 0xcb, 0xfa, 0x95, 0x5d, 0x30, 0x44, 0xeb, 865 0x55, 0x90, 0x27, 0x82, 0x61, 0xca, 0x45, 0x26, 0x64, 0x5a, 0x27, 0xb7, 0xb9, 0x38, 0xb9, 0xab, 866 0xb4, 0xa0, 0x7d, 0xc1, 0x12, 0xa7, 0xe8, 0x72, 0x1b, 0x7c, 0x86, 0x96, 0x2b, 0x5a, 0x0e, 0x4c, 867 0x1c, 0x0a, 0xae, 0xda, 0x4b, 0x6f, 0x10, 0xa6, 0xd6, 0x44, 0xb0, 0x5d, 0xaf, 0x10, 0x0c, 0xd0, 868 0x2a, 0xc8, 0xec, 0x14, 0x2b, 0x22, 0x34, 0xc7, 0xde, 0x3b, 0xdd, 0xbe, 0xb1, 0x30, 0xff, 0xef, 869 0x54, 0x6a, 0xa3, 0x4a, 0x2b, 0xb1, 0x7e, 0xe9, 0xe0, 0x05, 0x7a, 0xef, 0x35, 0x0a, 0x3e, 0x39, 870 0xe2, 0x12, 0x4f, 0x4a, 0x56, 0x25, 0x91, 0x82, 0xac, 0x42, 0x21, 0x24, 0x67, 0xed, 0x9b, 0x0b, 871 0xe1, 0x8f, 0xd4, 0x0c, 0xfc, 0xe5, 0x11, 0x97, 0x7d, 0x0b, 0x49, 0x66, 0x8c, 0x20, 0x47, 0xef, 872 0x9f, 0x61, 0xec, 0xdb, 0x92, 0x64, 0xc2, 0x9c, 0x62, 0x4d, 0x41, 0x71, 0x2c, 0x34, 0xce, 0xe0, 873 0xa4, 0x7d, 0xeb, 0xd2, 0xe6, 0x9e, 0x39, 0xcc, 0xb8, 0xa2, 0x0c, 0xf4, 0x0e, 0x9c, 0x84, 0x7f, 874 0x35, 0xd0, 0xed, 0xe7, 0xb6, 0xba, 0x92, 0x82, 0x04, 0xdb, 0x68, 0xc5, 0xd7, 0x26, 0x2d, 0xc8, 875 0x25, 0xde, 0xe7, 0x5d, 0x53, 0x23, 0x7c, 0xfa, 0xae, 0xbf, 0x20, 0x76, 0xd0, 0x5a, 0x4d, 0x3c, 876 0xcc, 0x00, 0x54, 0xcd, 0x5b, 0x5a, 0xcc, 0x5b, 0x71, 0xbc, 0x27, 0x95, 0x9a, 0x6f, 0x1d, 0xad, 877 0xd9, 0xad, 0xf3, 0xf0, 0xe7, 0x26, 0xba, 0xe7, 0x76, 0x83, 0x69, 0x43, 0x1c, 0x57, 0xfd, 0x30, 878 0x78, 0x89, 0xde, 0xaa, 0x5b, 0xa2, 0x7f, 0x53, 0xdf, 0x2c, 0x78, 0x53, 0x67, 0x72, 0x76, 0x3c, 879 0xc3, 0xbe, 0xaa, 0x0b, 0x25, 0x46, 0x53, 0x7b, 0xc1, 0x17, 0xa8, 0x5d, 0xaf, 0xf1, 0xa1, 0x22, 880 0xd4, 0x2e, 0xde, 0x3c, 0x88, 0xeb, 0xb5, 0xf2, 0x13, 0xaf, 0xbb, 0x30, 0x33, 0x4b, 0x57, 0xcb, 881 0x4c, 0xf8, 0xcb, 0x12, 0x0a, 0xdc, 0xa5, 0x9e, 0x96, 0x46, 0x11, 0xf9, 0xc2, 0xc5, 0x6e, 0x1f, 882 0xdd, 0xf7, 0xb5, 0x04, 0xee, 0x6f, 0xff, 0x8d, 0x59, 0x5c, 0x55, 0x8f, 0x3b, 0xce, 0x5a, 0xdb, 883 0xcc, 0x51, 0xfd, 0x25, 0x06, 0x68, 0x85, 0x42, 0x5e, 0x70, 0x23, 0x0c, 0x28, 0xcc, 0x20, 0x27, 884 0x42, 0xfa, 0xa0, 0xcc, 0xb7, 0x88, 0xb1, 0x51, 0x42, 0xa6, 0xfe, 0x71, 0xcf, 0xd4, 0x36, 0xad, 885 0xd6, 0xf5, 0xc7, 0xe3, 0x3a, 0x3b, 0xcf, 0x25, 0x9a, 0xc1, 0xcd, 0x6b, 0x68, 0x06, 0x7f, 0x36, 886 0x10, 0x7a, 0x3e, 0xfd, 0xd4, 0xfc, 0xcb, 0x2f, 0xd5, 0xff, 0xbe, 0x07, 0xfc, 0xd4, 0x40, 0x2d, 887 0x77, 0xdb, 0x71, 0xc1, 0x25, 0x0b, 0x3e, 0x47, 0xab, 0xfe, 0xba, 0xba, 0xda, 0x5f, 0xa2, 0xfd, 888 0xf9, 0xa6, 0x69, 0x31, 0xff, 0x55, 0x03, 0xac, 0xdc, 0x45, 0x43, 0xae, 0x28, 0x97, 0xa6, 0x1a, 889 0x70, 0xce, 0x37, 0xd0, 0xb8, 0x7a, 0x74, 0xcf, 0x1c, 0x99, 0x9a, 0x57, 0x19, 0x99, 0xfa, 0xbf, 890 0x37, 0x50, 0x48, 0x21, 0x8f, 0x2e, 0x9e, 0x76, 0xfb, 0xcb, 0x7d, 0x37, 0x1c, 0x0f, 0x2b, 0xea, 891 0xb0, 0xb1, 0xef, 0x07, 0xd7, 0x28, 0x85, 0x8c, 0xc8, 0x34, 0x02, 0x95, 0xc6, 0x29, 0x97, 0xd6, 892 0x66, 0x3d, 0xc8, 0x16, 0x42, 0x9f, 0x37, 0x6a, 0x7f, 0xe2, 0x7e, 0x7e, 0x68, 0x2e, 0x6d, 0xf7, 893 0x7a, 0x3f, 0x36, 0x1f, 0x6e, 0x3b, 0x58, 0x8f, 0xe9, 0xc8, 0x2d, 0xab, 0xd5, 0x5e, 0x27, 0x4a, 894 0xac, 0xd8, 0xaf, 0xb5, 0xc0, 0x41, 0x8f, 0xe9, 0x83, 0xa9, 0xc0, 0xc1, 0x5e, 0xe7, 0xc0, 0x09, 895 0xfc, 0xd1, 0x0c, 0xdd, 0xbf, 0xdd, 0x6e, 0x8f, 0xe9, 0x6e, 0x77, 0x2a, 0xd2, 0xed, 0xee, 0x75, 896 0xba, 0x5d, 0x27, 0x34, 0xb9, 0x65, 0xbd, 0x7b, 0xfc, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x89, 897 0x97, 0x6e, 0x16, 0x07, 0x0c, 0x00, 0x00, 898} 899