
    PIii                     t    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dl
mZ 	  G d d	eee      Zy
)    )AbstractObject)AbstractCrudObject)ObjectParser)FacebookRequest)TypeChecker)HasAdLabels)CanValidatec                       e Zd Zd^ fd	Z G d dej
                        Z G d d      Z G d d      Z G d d	      Z G d
 d      Z	 G d d      Z
 G d d      Z G d d      Z G d d      Z G d d      Z G d d      Z G d d      Z G d d      Z G d d      Zed        Zd_dZd_d Zd_d!Zd_d"Zd_d#Zd_d$Zd_d%Zd_d&Zd_d'Zd_d(Zd_d)Zd_d*Z d_d+Z!d`d,Z"d_d-Z#i d.d/d0d1d2d3d4dd5d/d6d7d8d9d:d/d;d/d<d/d=d9d>d9d?dd@dAdBd/dCd	dDd9i dEd/dFd9dGd9dHd9dId9dJd9dKdLdMdAdNd/dOd/dPd/dQdRdSd/dTdUdVdWdXd/dYd d/d/dRd/dRd/dAddAd/dAdZdZd[dZd\Z$ed]        Z% xZ&S )aCampaignc                 >    d| _         t        t        |   |||       y )NT)_isCampaignsuperr   __init__)selffbid	parent_idapi	__class__s       r/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/adobjects/campaign.pyr   zCampaign.__init__   s    h&tY<    c                       e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0Z2d1Z3y2)3Campaign.Field
account_idadlabelsadvantage_state_infobid_strategyboosted_object_idbrand_lift_studiesbudget_rebalance_flagbudget_remainingbuying_typecampaign_group_active_timecan_create_brand_lift_studycan_use_spend_capconfigured_statuscreated_timedaily_budgeteffective_status#has_secondary_skadnetwork_reportingidis_adset_budget_sharing_enabledis_budget_schedule_enabledis_direct_send_campaignis_message_campaignis_skadnetwork_attributionissues_infolast_budget_toggling_timelifetime_budgetname	objectivepacing_typeprimary_attributionpromoted_objectrecommendationssmart_promotion_typesource_campaignsource_campaign_idsource_recommendation_typespecial_ad_categoriesspecial_ad_categoryspecial_ad_category_country	spend_cap
start_timestatus	stop_time
topline_idupdated_timeadbatchbudget_schedule_specsexecution_optionsiterative_split_test_configsN)4__name__
__module____qualname__r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI    r   r   Fieldr   !   s   !
5%/1 7-#%A"&C#//%%-.S+*K'%A"";3%A"#$?!+	#3++5+1%A" 73&C#	!
	!
% 7/'E$r   rN   c                       e Zd ZdZdZdZdZy)Campaign.BidStrategyCOST_CAPLOWEST_COST_WITHOUT_CAPLOWEST_COST_WITH_BID_CAPLOWEST_COST_WITH_MIN_ROASN)rJ   rK   rL   cost_caplowest_cost_without_caplowest_cost_with_bid_caplowest_cost_with_min_roasrM   r   r   BidStrategyrP   T   s    ";#= $?!r   rY   c                       e Zd ZdZdZdZdZy)Campaign.ConfiguredStatusACTIVEARCHIVEDDELETEDPAUSEDNrJ   rK   rL   activearchiveddeletedpausedrM   r   r   ConfiguredStatusr[   Z       r   re   c                   $    e Zd ZdZdZdZdZdZdZy)Campaign.EffectiveStatusr\   r]   r^   
IN_PROCESSr_   WITH_ISSUESN)	rJ   rK   rL   ra   rb   rc   
in_processrd   with_issuesrM   r   r   EffectiveStatusrh   `   s     !
#r   rm   c                       e Zd ZdZdZdZdZy)Campaign.Statusr\   r]   r^   r_   Nr`   rM   r   r   Statusro   h   rf   r   rp   c                   \    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZy)Campaign.DatePresetdata_maximumlast_14dlast_28dlast_30dlast_3dlast_7dlast_90d
last_monthlast_quarterlast_week_mon_sunlast_week_sun_sat	last_yearmaximum
this_monththis_quarterthis_week_mon_todaythis_week_sun_today	this_yeartoday	yesterdayN)rJ   rK   rL   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   rM   r   r   
DatePresetrr   n   sj    %!
%//	!
%33		r   r   c                       e Zd ZdZdZy)Campaign.ExecutionOptionsinclude_recommendationsvalidate_onlyN)rJ   rK   rL   r   r   rM   r   r   ExecutionOptionsr      s    ";'r   r   c                   `    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZy)Campaign.ObjectiveAPP_INSTALLSBRAND_AWARENESSCONVERSIONSEVENT_RESPONSESLEAD_GENERATIONLINK_CLICKSLOCAL_AWARENESSMESSAGESOFFER_CLAIMSOUTCOME_APP_PROMOTIONOUTCOME_AWARENESSOUTCOME_ENGAGEMENTOUTCOME_LEADSOUTCOME_SALESOUTCOME_TRAFFIC
PAGE_LIKESPOST_ENGAGEMENTPRODUCT_CATALOG_SALESREACHSTORE_VISITSVIDEO_VIEWSN)rJ   rK   rL   app_installsbrand_awarenessconversionsevent_responseslead_generationlink_clickslocal_awarenessmessagesoffer_claimsoutcome_app_promotionoutcome_awarenessoutcome_engagementoutcome_leadsoutcome_salesoutcome_traffic
page_likespost_engagementproduct_catalog_salesreachstore_visitsvideo_viewsrM   r   r   	Objectiver      so    %+#++#+% 7/1''+!
+ 7%#r   r   c                       e Zd ZdZdZy)Campaign.SmartPromotionTypeGUIDED_CREATIONSMART_APP_PROMOTIONN)rJ   rK   rL   guided_creationsmart_app_promotionrM   r   r   SmartPromotionTyper      s    +3r   r   c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	Campaign.SpecialAdCategoriesCREDIT
EMPLOYMENTFINANCIAL_PRODUCTS_SERVICESHOUSINGISSUES_ELECTIONS_POLITICSNONEONLINE_GAMBLING_AND_GAMINGN
rJ   rK   rL   credit
employmentfinancial_products_serviceshousingissues_elections_politicsnoneonline_gambling_and_gamingrM   r   r   SpecialAdCategoriesr      (    !
&C#$?!%A"r   r   c                      e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/d.Z0d/Z1d0Z2d1Z3d2Z4d3Z5d4Z6d5Z7d6Z8d7Z9d8Z:d9Z;d:Z<d;Z=d<Z>d=Z?d>Z@d?ZAd@ZBdAZCdBZDdCZEdDZFdEZGdFZHdGZIdHZJdIZKdJZLdKZMdLZNdMZOdNZPdOZQdPZRdQZSdRZTdSZUdTZVdUZWdVZXdWZYdXZZdYZ[dZZ\d[Z]d\Z^d]Z_d^Z`d_Zad`ZbdaZcdbZddcZeddZfdeZgdfZhdgZidhZjdiZkdjZldkZmdlZndmZodnZpdoZqdpZrdqZsdrZtdsZudtZvduZwdvZxdwZydxZzdyZ{dzZ|d{Z}d|Z~d}Zd~ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZy)!Campaign.SpecialAdCategoryCountryACADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBLBMBNBOBQBRBSBTBVBWBYBZCACCCDCFCGCHCICKCLCMCNCOCRCUCVCWCXCYCZDEDJDKDMDODZECEEEGEHERESETFIFJFKFMFOFRGAGBGDGEGFGGGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUIDIEILIMINIOIQIRISITJEJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMEMFMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORSRURWSASBSCSDSESGSHSISJSKSLSMSNSOSRSSSTSVSXSYSZTCTDTFTGTHTJTKTLTMTNTOTRTTTVTWTZUAUGUMUSUYUZVAVCVEVGVIVNVUWFWSXKYEYTZAZMZWN)rJ   rK   rL   acadaeafagaialamanaoaqarvalue_asatauawaxazbabbbdbebfbgbhbibjblbmbnbobqbrbsbtbvbwbybzcacccdcfcgchcickclcmcncocrcucvcwcxcyczdedjdkdmdodzeceeegeheresetfifjfkfmfofrgagbgdgegfggghgiglgmgngpgqgrgsgtgugwgyhkhmhnhrhthur*   ieilimvalue_inioiqirvalue_isitjejmjojpkekgkhkikmknkpkrkwkykzlalblclilklrlsltlulvlymamcmdmemfmgmhmkmlmmmnmompmqmrmsmtmumvmwmxmymznancnenfngninlnonpnrnunzompapepfpgphpkplpmpnprpsptpwpyqarerorsrurwsasbscsdsesgshsisjskslsmsnsosrssstsvsxsysztctdtftgthtjtktltmtntotrtttvtwtzuaugumusuyuzvavcvevgvivnvuwfwsxkyeytzazmzwrM   r   r   SpecialAdCategoryCountryr      s   r   r  c                       e Zd ZdZdZy)Campaign.OperatorALLANYN)rJ   rK   rL   allanyrM   r   r   Operatorr    s    r   r  c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	Campaign.SpecialAdCategoryr   r   r   r   r   r   r   Nr   rM   r   r   SpecialAdCategoryr    r   r   r  c                       e Zd ZdZdZdZy)Campaign.StatusOptionr\   INHERITED_FROM_SOURCEr_   N)rJ   rK   rL   ra   inherited_from_sourcerd   rM   r   r   StatusOptionr    s     7r   r  c                      y)N	campaignsrM   )clss    r   get_endpointzCampaign.get_endpoint  s    r   c                 ^    ddl m}  || j                  |      j                  ||||||      S )Nr   )	AdAccount)r   r   )%facebook_business.adobjects.adaccountr  _apicreate_campaign)	r   r   fieldsparamsbatchsuccessfailurependingr  s	            r   
api_createzCampaign.api_create  s0    CTYYY7GGPVX]_fhoqxyyr   c                 p   ddl m} ||||j                  d       i }i }	t        | d   dd| j                  t        ||	      t        dt        |       	      }
|
j                  |       |
j                  |       ||
j                  |||
       |
S |r|
S | j                          |
j                         S )Nr   	api_utils:`success` and `failure` callback only work for batch call.r*   DELETE/NODEreuse_objectnode_idmethodendpointr   param_checkertarget_classapi_typeresponse_parserr  r  )facebook_business.utilsr  warningr   r  r   r   r   
add_params
add_fieldsadd_to_batchassure_callexecuter   r  r  r  r  r  r  r  param_typesenumsrequests              r   
api_deletezCampaign.api_delete  s    5=g1W5H


X
Y

!J		%k59+(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddddd}dg di}	t        | d	   d
d| j                  t        ||	      t        dt        |             }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r  r  mapdate_preset_enumbool)am_call_tagsdate_presetfrom_adtable
time_range)rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r*   GETr  r  r  r  r  )r  r  r   r   r  r   r   r   r  r  r  r  r  r  s              r   api_getzCampaign.api_get  s    5=g1W5H


X
Y!-"	
  !
0 "J		%k59!(d;	
 	6"6"   INN??$$r   c                 d   ddl m} ||||j                  d       i dddddd	d
ddddddddddddddddddddddddddddddd d!d"d#dd$d%d$d&}t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         t        j                  j
                  j                         d'}	t        | d(   d)d*| j                  t!        ||	      t        d+t#        | ,      -      }
|
j%                  |       |
j'                  |       ||
j)                  |||.       |
S |r|
S | j+                          |
j-                         S )/Nr   r  r  r   list<Object>adset_bid_amountsr  adset_budgets	list<map>r   bid_strategy_enumr   r  rG   r'   unsigned intrH   list<execution_options_enum>r+   r,   r-   r.   r/   rI   r2   migrate_to_advantage_plusr3   stringobjective_enumlist<string>Objectsmart_promotion_type_enumz list<special_ad_categories_enum>special_ad_category_enumz&list<special_ad_category_country_enum>datetimestatus_enum)r4   r5   r7   r9   r=   r>   r?   r@   rA   rB   rC   )r  execution_options_enumr  r"  special_ad_categories_enumr#   special_ad_category_country_enumr%  r*   POSTr  r  r  r  r  )r  r  r   r   rY   __dict__valuesr   r   r   r   r  r  rp   r   r  r   r   r  r  r  r  r  r  s              r   
api_updatezCampaign.api_update  sz   5=g1W5H


X
Y


 [
 /	

 $V
 $^
 N
  !?
 .v
 )&
 &v
 "6
 )&
 +N
 ~
  (!
" H#
$ *)'$?%G#=+S'$##9
> "*!5!5!>!>!E!E!G&.&?&?&H&H&O&O&Q&0099@@B)1)D)D)M)M)T)T)V*2*F*F*O*O*V*V*X(0(B(B(K(K(R(R(T080Q0Q0Z0Z0a0a0c#??33::<	
 "J		%k59!(d;	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} i }	i }
t        | d   dd| j                  t        |	|
      |dt        || j                  	      
      }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r  r  )AdStudyr*   r  z/ad_studiesEDGEr  r   r  r  )r  r  r   #facebook_business.adobjects.adstudyr.  r   r  r   r   r  r  r  r  r  )r   r  r  r  r  r  r  r  r.  r  r  r	  s               r   get_ad_studieszCampaign.get_ad_studies^  s    5=g1W5H


X
Y?

!J"		%k59 (g499M	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddd}dt        j                  j
                  j                         i}	t        | d   d	d
| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r  r  r  r  )r   rH   r&  r*   r)  z	/adlabelsr/  r0  r  r  )r  r  r   r   r   r*  r+  r   r  r   r   r  r  r  r  r  r  s              r   create_ad_labelzCampaign.create_ad_label}  s    5=g1W5H


X
Y&!?

 %h&?&?&H&H&O&O&Q
 "J 		%k59!(hDIIN	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddi}	i }
t        | d   dd	| j                  t        |	|
      |d
t        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r  r  )AdRulepass_evaluationr  r*   r  z/adrules_governedr/  r0  r  r  )r  r  r   "facebook_business.adobjects.adruler6  r   r  r   r   r  r  r  r  r  )r   r  r  r  r  r  r  r  r6  r  r  r	  s               r   get_ad_rules_governedzCampaign.get_ad_rules_governed  s    5=g1W5H


X
Y=v

!J(		%k59(f$))L	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddddd	}	d|j
                  j                  j                         i}
t        | d
   dd| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j!                         S )Nr   r  r  )Adr  r   r  int)r  r(   r  updated_sincer*   r  z/adsr/  r0  r  r  )r  r  r   facebook_business.adobjects.adr;  r   r*  r+  r   r  r   r   r  r  r  r  r  )r   r  r  r  r  r  r  r  r;  r  r  r	  s               r   get_adszCampaign.get_ads  s    5=g1W5H


X
Y5- ."	
  6 6 = = ?
 "J		%k59(bdiiH	
 	6"6"   INN??$$r   c                 "   ddl m} ||||j                  d       ddlm} ddddd	}	|j
                  j                  j                         |j                  j                  j                         d
}
t        | d   dd| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j!                          |j#                         S )Nr   r  r  )AdSetr  list<effective_status_enum>r  r  r  r(   is_completedr  r  effective_status_enumr*   r  z/adsetsr/  r0  r  r  )r  r  r   !facebook_business.adobjects.adsetrA  r   r*  r+  rm   r   r  r   r   r  r  r  r  r  )r   r  r  r  r  r  r  r  rA  r  r  r	  s               r   get_ad_setszCampaign.get_ad_sets  s   5=g1W5H


X
Y;- ="	
 !& 0 0 9 9 @ @ B%*%:%:%C%C%J%J%L
 "J		%k59(eK	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddd}	i }
t        | d   dd	| j                  t        |	|
      |d
t        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j                         S )Nr   r  r  HighDemandPeriodr$  )
time_start	time_stopr*   r  /budget_schedulesr/  r0  r  r  )r  r  r   ,facebook_business.adobjects.highdemandperiodrK  r   r  r   r   r  r  r  r  r  r   r  r  r  r  r  r  r  rK  r  r  r	  s               r   get_budget_scheduleszCampaign.get_budget_schedules  s    5=g1W5H


X
YQ$#

!J(		%k59)(6FDIIV	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       ddlm} ddddd}	d|j
                  j                  j                         i}
t        | d   d	d
| j                  t        |	|
      |dt        || j                              }|j                  |       |j                  |       ||j                  |||       |S |r|S | j                          |j!                         S )Nr   r  r  rJ  r  budget_value_type_enum)budget_valuebudget_value_typetime_endrL  r*   r)  rN  r/  r0  r  r  )r  r  r   rO  rK  BudgetValueTyper*  r+  r   r  r   r   r  r  r  r  r  rP  s               r   create_budget_schedulezCampaign.create_budget_schedule(  s    5=g1W5H


X
YQ*!9&(	
 %&6&F&F&O&O&V&V&X
 "J(		%k59)(6FDIIV	
 	6"6"   INN??$$r   c                 6   ddl m} ||||j                  d       ddddd}t        j                  j
                  j                         t        j                  j
                  j                         d	}	t        | d
   dd| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j!                         S )Nr   r  r  r  rB  r  r  rC  rE  r*   r  /copiesr/  r0  r  r  )r  r  r   r   r   r*  r+  rm   r   r  r   r   r  r  r  r  r  r  s              r   
get_copieszCampaign.get_copiesL  s   5=g1W5H


X
Y- ="	
 !) 3 3 < < C C E%-%=%=%F%F%M%M%O
 "J		%k59!(hDIIN	
 	6"6"   INN??$$r   c                    ddl m} ||||j                  d       dddddddd}dt        j                  j
                  j                         i}	t        | d	   d
d| j                  t        ||	      t        dt        t        | j                              }
|
j                  |       |
j                  |       ||
j                  |||       |
S |r|
S | j                          |
j                         S )Nr   r  r  r  r$  r!  status_option_enum)	deep_copyend_timer  parameter_overridesrename_optionsrA   status_optionr*   r)  rZ  r/  r0  r  r  )r  r  r   r   r  r*  r+  r   r  r   r   r  r  r  r  r  r  s              r   create_copyzCampaign.create_copyp  s    5=g1W5H


X
Y")/#+&$1
 !("7"7"@"@"G"G"I
 "J		%k59!(hDIIN	
 	6"6"   INN??$$r   c                     ddl m} ||||j                  d       ddlm}	 |r| j                  ||||||      S i ddddd	d
ddddddddddddddddddddddddddd dd!dd"d#ddd$}
|	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         d%}t        | d&   d'd(| j                   t#        |
|      |	d)t%        |	| j                   *      d+,	      }|j'                  |       |j)                  |       ||j+                  |||-       |S |r|S | j-                          |j/                         S ).Nr   r  r  AdsInsightsaction_attribution_windows%list<action_attribution_windows_enum>action_breakdownslist<action_breakdowns_enum>action_report_timeaction_report_time_enum
breakdownslist<breakdowns_enum>r  r  default_summaryr  export_columnsr   export_formatr  export_namer  	filteringr  graph_cachelevel
level_enumlimitr<  product_id_limitsortsummary$list<summary_action_breakdowns_enum>r  r  summary_action_breakdownstime_incrementr  time_rangesuse_account_attribution_settinguse_unified_attribution_settingaction_attribution_windows_enumaction_breakdowns_enumrl  breakdowns_enumr  rv  summary_action_breakdowns_enumr*   r  	/insightsr/  r0  F	r  r  r  r   r  r  r  r  include_summaryr  )r  r  r   'facebook_business.adobjects.adsinsightsrf  get_insights_asyncActionAttributionWindowsr*  r+  ActionBreakdownsActionReportTime
Breakdownsr   LevelSummaryActionBreakdownsr   r  r   r   r  r  r  r  r  )r   r  r  is_asyncr  r  r  r  r  rf  r  r  r	  s                r   get_insightszCampaign.get_insights  s   5=g1W5H


X
YG((RYZ
Z
(*Q
!?
 !";
 1	

 -
 v
 n
 X
 8
 n
 
 6
 \
 U
 
  N!
" ~#
$ *P&&/5/5/
4 0;/S/S/\/\/c/c/e&1&B&B&K&K&R&R&T'2'C'C'L'L'S'S'U*55>>EEG + 6 6 ? ? F F H%++44;;=.9.Q.Q.Z.Z.a.a.c
 "J 		%k59$(ktyyQ!

 	6"6"   INN??$$r   c                 x   ddl m} ||||j                  d       ddlm} ddlm}	 i dddd	d
dddddddddddddddddddddddddd dd!dd"dd#d$ddd%}
|	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         |	j                  j                  j                         d&}|Lj!                  d      j!                  d      n	t#               d<   d   j%                  fd'|D               t'        | d(   d)d*| j(                  t+        |
|      |d+t-        || j(                  ,      d-.	      }|j/                         ||j1                  |||/       |S |r|S | j3                          |j5                         S )0Nr   r  r  )AdReportRunre  rg  rh  ri  rj  rk  rl  rm  rn  r  r  ro  r  rp  r   rq  r  rr  r  rs  r  rt  ru  rv  rw  r<  rx  ry  rz  r{  r  r  r|  r  c              3   2   K   | ]  }|d    vs|  yw)r  NrM   ).0fieldr  s     r   	<genexpr>z.Campaign.get_insights_async.<locals>.<genexpr>  s     #_efU]N^A^E#_s   r*   r)  r  r/  r0  Fr  r  )r  r  r   'facebook_business.adobjects.adreportrunr  r  rf  r  r*  r+  r  r  r  r   r  r  getlistextendr   r  r   r   r  r  r  r  )r   r  r  r  r  r  r  r  r  rf  r  r  r	  s     `          r   r  zCampaign.get_insights_async  s   5=g1W5H


X
YGG
(*Q
!?
 !";
 1	

 -
 v
 n
 X
 8
 n
 
 6
 \
 U
 
  N!
" ~#
$ *P&&/5/5/
4 0;/S/S/\/\/c/c/e&1&B&B&K&K&R&R&T'2'C'C'L'L'S'S'U*55>>EEG + 6 6 ? ? F F H%++44;;=.9.Q.Q.Z.Z.a.a.c
 7=zz(7K7Wvzz(3]a]cF88###_v#__!J 		%k59$(ktyyQ!

 	6"   INN??$$r   r   r  r   zlist<AdLabel>r   AdCampaignGroupAdvantageStater   r   r   zlist<AdStudy>r   r  r    r!   r"   r#   r$   r%   r&   r$  r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   zlist<AdCampaignIssuesInfo>r1   r2   r3   r4   r5   r   r6   r7   AdPromotedObjectr8   zlist<AdRecommendation>r9   r:   r  zlist<ExecutionOptions>)r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   c                 h   i }t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j
                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d	<   t         j                  j                  j                         |d
<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   t         j                  j                  j                         |d<   |S )NrY   re   rm   rp   r   r   r   r   r   r  r  r  r  )r   rY   r*  r+  re   rm   rp   r   r   r   r   r   r  r  r  r  )r  field_enum_infos     r   _get_field_enum_infozCampaign._get_field_enum_infoL  s   )1)=)=)F)F)M)M)O&.6.G.G.P.P.W.W.Y*+-5-E-E-N-N-U-U-W)*$,OO$<$<$C$C$E!(0(;(;(D(D(K(K(M%.6.G.G.P.P.W.W.Y*+'/'9'9'B'B'I'I'K$080K0K0T0T0[0[0],-191M1M1V1V1]1]1_-.6>6W6W6`6`6g6g6i23&.&7&7&@&@&G&G&I
#/7/I/I/R/R/Y/Y/[+,*2*?*?*H*H*O*O*Q'r   )NNN)NNNNNF)NNFNNNF)'rJ   rK   rL   r   r   rN   rY   re   rm   rp   r   r   r   r   r   r  r  r  r  classmethodr  r  r
  r  r,  r2  r4  r9  r?  rH  rQ  rX  r[  rc  r  r  _field_typesr  __classcell__)r   s   @r   r   r      s   =1F$$ 1Ff@ @ $ $    ,( ($ $.4 4B B| || B B   z%<6%p@%D%>%B%@"%H#%J%B"%H"%H$%L>%@A%F2h2O2 	 ?2 		2
 	X2 	o2 	 2 	H2 	x2 	%h2 	&v2 	V2 	/2 	
2 	2  	-!2" 	.v#2$ 	h%2& 	*6'2( 	%f)2* 	"6+2, 	v-2. 	%f/20 	3122 	$Z324 	8526 	728 	X92: 	~;2< 	x=2> 	-?2@ 	3A2B 	C2D 	:E2F '&.!/''5 "!!/5(6c2Lf  r   r   N)*facebook_business.adobjects.abstractobjectr   .facebook_business.adobjects.abstractcrudobjectr   (facebook_business.adobjects.objectparserr   facebook_business.apir   facebook_business.typecheckerr   facebook_business.mixinsr   r	   r   rM   r   r   <module>r     s7    F M A 1 5 0 0EEr   