o
    t¨Êh™V  ã                   @   sh  d Z G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG d	d
„ d
eƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZ	G dd„ deƒZ
G dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd „ d eƒZG d!d"„ d"eƒZG d#d$„ d$eƒZG d%d&„ d&eƒZG d'd(„ d(eƒZG d)d*„ d*eƒZG d+d,„ d,eƒZd-S ).z"v3/mail/send response body builderc                   @   s´   e Zd ZdZ	d+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d!d"„ Zd#d$„ Zd%d&„ Zd'd(„ Zd)d*„ ZdS ),ÚMailz*Creates the response body for v3/mail/sendNc                 C   sÂ   d | _ d | _d | _d | _d | _d | _d | _d | _d | _d | _	d | _
d | _d | _d | _d | _d | _d | _|rY|r[|r]|r_|  |¡ tƒ }| |¡ |  |¡ |  |¡ |  |¡ d S d S d S d S d S ©N)Ú
from_emailÚsubjectÚpersonalizationsÚcontentsÚattachmentsÚtemplate_idÚsectionsÚheadersÚ
categoriesÚcustom_argsÚsend_atÚbatch_idÚasmÚip_pool_nameÚmail_settingsÚtracking_settingsÚreply_toÚset_fromÚPersonalizationÚadd_toÚadd_personalizationÚset_subjectÚadd_content)Úselfr   r   Úto_emailÚcontentÚpersonalization© r   úL/var/www/html/env/lib/python3.10/site-packages/sendgrid/helpers/mail/mail.pyÚ__init__   s2   



úzMail.__init__c                 C   s   |   ¡  d S r   ©Úget©r   r   r   r   Ú__str__$   s   zMail.__str__c                 C   sè  i }| j dur| j  ¡ |d< | jdur| j|d< | jdur'dd„ | jD ƒ|d< | jdur6dd„ | jD ƒ|d< | jdurEd	d„ | jD ƒ|d
< | jdurO| j|d< | jdurgi }| jD ]	}| | ¡ ¡ qY||d< | j	duri }| j	D ]	}| | ¡ ¡ qq||d< | j
durŽdd„ | j
D ƒ|d< | jdur¦i }| jD ]	}| | ¡ ¡ q˜||d< | jdur°| j|d< | jdurº| j|d< | jdurÄ| j|d< | jdurÎ| j|d< | jdurÚ| j ¡ |d< | jduræ| j ¡ |d< | jdurò| j ¡ |d< |S )z-
        :return: response body dict
        NÚfromr   c                 S   ó   g | ]}|  ¡ ‘qS r   r!   )Ú.0r   r   r   r   Ú
<listcomp>2   s    ÿÿzMail.get.<locals>.<listcomp>r   c                 S   r&   r   r!   ©r'   Úobr   r   r   r(   8   ó    r   c                 S   r&   r   r!   r)   r   r   r   r(   ;   r+   r   r   r	   r
   c                 S   r&   r   r!   )r'   Úcategoryr   r   r   r(   M   r+   r   r   r   r   r   r   r   r   r   )r   r"   r   r   r   r   r   r	   Úupdater
   r   r   r   r   r   r   r   r   r   )r   Úmailr	   Úkeyr
   r   r   r   r   r"   '   sb   




þ









ÿ












zMail.getc                 C   ó
   || _ d S r   )r   ©r   Úemailr   r   r   r   l   ó   
zMail.set_fromc                 C   r0   r   ©r   ©r   r   r   r   r   r   o   r3   zMail.set_subjectc                 C   ó    | j d u rg | _ | j  |¡ d S r   )r   Úappend)r   r   r   r   r   r   r   ó   
zMail.add_personalizationc                 C   r6   r   )r   r7   ©r   r   r   r   r   r   w   r8   zMail.add_contentc                 C   r6   r   )r   r7   ©r   Ú
attachmentr   r   r   Úadd_attachment|   r8   zMail.add_attachmentc                 C   r0   r   )r   )r   r   r   r   r   Úset_template_id�   r3   zMail.set_template_idc                 C   r6   r   )r	   r7   ©r   Úsectionr   r   r   Úadd_section„   r8   zMail.add_sectionc                 C   sT   | j d u rg | _ t|tƒr"t| ¡ ƒd \}}| j  t||ƒ¡ d S | j  |¡ d S )Né    )r
   Ú
isinstanceÚdictÚlistÚitemsr7   ÚHeader)r   ÚheaderÚkÚvr   r   r   Ú
add_header‰   s   

zMail.add_headerc                 C   r6   r   )r   r7   )r   r,   r   r   r   Úadd_category’   r8   zMail.add_categoryc                 C   r6   r   )r   r7   ©r   Ú
custom_argr   r   r   Úadd_custom_arg—   r8   zMail.add_custom_argc                 C   r0   r   ©r   ©r   r   r   r   r   Úset_send_atœ   r3   zMail.set_send_atc                 C   r0   r   )r   )r   r   r   r   r   Úset_batch_idŸ   r3   zMail.set_batch_idc                 C   s   |  ¡ | _d S r   )r"   r   ©r   r   r   r   r   Úset_asm¢   s   zMail.set_asmc                 C   r0   r   )r   ©r   r   r   r   r   Úset_mail_settings¥   r3   zMail.set_mail_settingsc                 C   r0   r   )r   ©r   r   r   r   r   Úset_tracking_settings¨   r3   zMail.set_tracking_settingsc                 C   r0   r   )r   )r   r   r   r   r   Úset_ip_pool_name«   r3   zMail.set_ip_pool_namec                 C   r0   r   )r   )r   r   r   r   r   Úset_reply_to®   r3   zMail.set_reply_to©NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r    r$   r"   r   r   r   r   r<   r=   r@   rJ   rK   rN   rQ   rR   rT   rV   rX   rY   rZ   r   r   r   r   r      s.    
ÿE	r   c                   @   ó.   e Zd Zd
dd„Zdd„ Zdd„ Zdd	„ ZdS )ÚEmailNc                 C   s.   |d ur|nd | _ |d ur|| _d S d | _d S r   ©Únamer2   )r   r2   rc   r   r   r   r    ¹   ó   zEmail.__init__c                 C   r0   r   ©rc   ©r   rc   r   r   r   Úset_name½   r3   zEmail.set_namec                 C   r0   r   )r2   r1   r   r   r   Ú	set_emailÀ   r3   zEmail.set_emailc                 C   ó0   i }| j d ur| j |d< | jd ur| j|d< |S )Nrc   r2   rb   r1   r   r   r   r"   Ã   ó   



z	Email.get©NN)r\   r]   r^   r    rg   rh   r"   r   r   r   r   ra   ·   ó
    
ra   c                   @   r`   )ÚContentNc                 C   ó.   |d ur|nd | _ |d ur|| _d S d | _d S r   ©ÚtypeÚvalue)r   Útype_rq   r   r   r   r    Ï   rd   zContent.__init__c                 C   r0   r   ©rp   )r   rr   r   r   r   Úset_typeÓ   r3   zContent.set_typec                 C   r0   r   ©rq   ©r   rq   r   r   r   Ú	set_valueÖ   r3   zContent.set_valuec                 C   ri   )Nrp   rq   ro   r9   r   r   r   r"   Ù   s   



zContent.getrk   )r\   r]   r^   r    rt   rw   r"   r   r   r   r   rm   Í   rl   rm   c                   @   r`   )rF   Nc                 C   rn   r   ©r/   rq   ©r   r/   rq   r   r   r   r    æ   rd   zHeader.__init__c                 C   r0   r   ©r/   ©r   r/   r   r   r   Úset_keyê   r3   zHeader.set_keyc                 C   r0   r   ru   rv   r   r   r   rw   í   r3   zHeader.set_valuec                 C   ó(   i }| j d ur| jd ur| j|| j < |S r   rx   ©r   rG   r   r   r   r"   ð   ó   z
Header.getrk   ©r\   r]   r^   r    r|   rw   r"   r   r   r   r   rF   ä   rl   rF   c                   @   r`   )ÚSubstitutionNc                 C   s6   |d urt |ƒnd | _|d urt |ƒ| _d S d | _d S r   )Ústrr/   rq   ry   r   r   r   r    ù   s    zSubstitution.__init__c                 C   ó    |d urt |ƒ| _d S d | _d S r   )r‚   r/   r{   r   r   r   r|   ý   ó    zSubstitution.set_keyc                 C   rƒ   r   )r‚   rq   rv   r   r   r   rw      r„   zSubstitution.set_valuec                 C   r}   r   rx   ©r   Úsubstitutionr   r   r   r"     r   zSubstitution.getrk   r€   r   r   r   r   r�   ÷   rl   r�   c                   @   r`   )ÚSectionNc                 C   rn   r   rx   ry   r   r   r   r      rd   zSection.__init__c                 C   r0   r   rz   r{   r   r   r   r|     r3   zSection.set_keyc                 C   r0   r   ru   rv   r   r   r   rw     r3   zSection.set_valuec                 C   r}   r   rx   r>   r   r   r   r"     r   zSection.getrk   r€   r   r   r   r   r‡   
  rl   r‡   c                   @   r`   )Ú	CustomArgNc                 C   rn   r   rx   ry   r   r   r   r      rd   zCustomArg.__init__c                 C   r0   r   rz   r{   r   r   r   r|   #  r3   zCustomArg.set_keyc                 C   r0   r   ru   rv   r   r   r   rw   &  r3   zCustomArg.set_valuec                 C   r}   r   rx   rL   r   r   r   r"   )  r   zCustomArg.getrk   r€   r   r   r   r   rˆ     rl   rˆ   c                   @   s\   e Z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S )r   c                 C   s4   d | _ d | _d | _d | _d | _d | _d | _d | _d S r   )ÚtosÚccsÚbccsr   r
   Úsubstitutionsr   r   r#   r   r   r   r    2  s   
zPersonalization.__init__c                 C   ó$   | j d u rg | _ | j  | ¡ ¡ d S r   )r‰   r7   r"   r1   r   r   r   r   <  ó   
zPersonalization.add_toc                 C   r�   r   )rŠ   r7   r"   r1   r   r   r   Úadd_ccA  rŽ   zPersonalization.add_ccc                 C   r�   r   )r‹   r7   r"   r1   r   r   r   Úadd_bccF  rŽ   zPersonalization.add_bccc                 C   r0   r   r4   r5   r   r   r   r   K  r3   zPersonalization.set_subjectc                 C   r�   r   )r
   r7   r"   r~   r   r   r   rJ   N  rŽ   zPersonalization.add_headerc                 C   r�   r   )rŒ   r7   r"   r…   r   r   r   Úadd_substitutionS  rŽ   z Personalization.add_substitutionc                 C   r�   r   )r   r7   r"   rL   r   r   r   rN   X  rŽ   zPersonalization.add_custom_argc                 C   r0   r   rO   rP   r   r   r   rQ   ]  r3   zPersonalization.set_send_atc                 C   sð   i }| j d ur| j |d< | jd ur| j|d< | jd ur | j|d< | jd ur*| j|d< | jd ur@i }| jD ]}| |¡ q4||d< | jd urVi }| jD ]}| |¡ qJ||d< | jd urli }| jD ]}| |¡ q`||d< | jd urv| j|d< |S )	NÚtoÚccÚbccr   r
   rŒ   r   r   )	r‰   rŠ   r‹   r   r
   r-   rŒ   r   r   )r   r   r
   r/   rŒ   r   r   r   r   r"   `  s6   















zPersonalization.getN)r\   r]   r^   r    r   r�   r�   r   rJ   r‘   rN   rQ   r"   r   r   r   r   r   0  s    
r   c                   @   óD   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dS )Ú
Attachmentc                 C   ó"   d | _ d | _d | _d | _d | _d S r   ©r   rp   ÚfilenameÚdispositionÚ
content_idr#   r   r   r   r    ‡  ó
   
zAttachment.__init__c                 C   r0   r   )r   r9   r   r   r   Úset_contentŽ  r3   zAttachment.set_contentc                 C   r0   r   rs   )r   rp   r   r   r   rt   ‘  r3   zAttachment.set_typec                 C   r0   r   )r™   )r   r™   r   r   r   Úset_filename”  r3   zAttachment.set_filenamec                 C   r0   r   )rš   )r   rš   r   r   r   Úset_disposition—  r3   zAttachment.set_dispositionc                 C   r0   r   )r›   )r   r›   r   r   r   Úset_content_idš  r3   zAttachment.set_content_idc                 C   sl   i }| j d ur| j |d< | jd ur| j|d< | jd ur | j|d< | jd ur*| j|d< | jd ur4| j|d< |S )Nr   rp   r™   rš   r›   r˜   r:   r   r   r   r"   �  s   









zAttachment.getN)
r\   r]   r^   r    r�   rt   rž   rŸ   r    r"   r   r   r   r   r–   …  ó    r–   c                   @   ó   e Zd Zddd„Zdd„ ZdS )ÚCategoryNc                 C   ó   |d ur	|| _ d S d | _ d S r   re   rf   r   r   r   r    ²  ó   zCategory.__init__c                 C   s   | j S r   re   r#   r   r   r   r"   µ  s   zCategory.getr   ©r\   r]   r^   r    r"   r   r   r   r   r£   °  ó    
r£   c                   @   r¢   )ÚASMNc                 C   rn   r   ©Úgroup_idÚgroups_to_display)r   rª   r«   r   r   r   r    »  ó
   
ÿÿzASM.__init__c                 C   ri   )Nrª   r«   r©   rS   r   r   r   r"   À  rj   zASM.getrk   r¦   r   r   r   r   r¨   ¹  s    
r¨   c                   @   r¢   )ÚBCCSettingsNc                 C   rn   r   )Úenabler2   )r   r®   r2   r   r   r   r    Ì  rd   zBCCSettings.__init__c                 C   s<   i }| j d ur| j |d< | jd ur| j ¡ }|d |d< |S )Nr®   r2   )r®   r2   r"   )r   Úbcc_settingsr2   r   r   r   r"   Ð  s   



zBCCSettings.getrk   r¦   r   r   r   r   r­   Ê  s    
r­   c                   @   r¢   )ÚBypassListManagementNc                 C   r¤   r   ©r®   ©r   r®   r   r   r   r    Ý  r¥   zBypassListManagement.__init__c                 C   ó   i }| j d ur| j |d< |S ©Nr®   r±   ©r   Úbypass_list_managementr   r   r   r"   à  ó   

zBypassListManagement.getr   r¦   r   r   r   r   r°   Û  r§   r°   c                   @   ó6   e Zd Zddd„Zdd„ Zdd„ Zdd	„ Zd
d„ ZdS )ÚFooterSettingsNc                 C   s8   |d ur|nd | _ |r|n|| _|r|| _d S || _d S r   ©r®   ÚtextÚhtml)r   r®   r»   r¼   r   r   r   r    é  s   zFooterSettings.__init__c                 C   r0   r   r±   r²   r   r   r   Ú
set_enableî  r3   zFooterSettings.set_enablec                 C   r0   r   ©r»   ©r   r»   r   r   r   Úset_textñ  r3   zFooterSettings.set_textc                 C   r0   r   ©r¼   ©r   r¼   r   r   r   Úset_htmlô  r3   zFooterSettings.set_htmlc                 C   óD   i }| j d ur| j |d< | jd ur| j|d< | jd ur | j|d< |S )Nr®   r»   r¼   rº   ©r   Úfooter_settingsr   r   r   r"   ÷  s   





zFooterSettings.get©NNN)r\   r]   r^   r    r½   rÀ   rÃ   r"   r   r   r   r   r¹   ç  ó    
r¹   c                   @   r¢   )ÚSandBoxModeNc                 C   s   |r|| _ d S d| _ d S )NFr±   r²   r   r   r   r      s   zSandBoxMode.__init__c                 C   r³   r´   r±   ©r   Úsandbox_moder   r   r   r"   	  r·   zSandBoxMode.getr   r¦   r   r   r   r   rÉ     r§   rÉ   c                   @   r¸   )Ú	SpamCheckNc                 C   s@   |d ur|nd | _ |d ur|nd | _|d ur|| _d S d | _d S r   ©r®   Ú	thresholdÚpost_to_url)r   r®   rÎ   rÏ   r   r   r   r      s   zSpamCheck.__init__c                 C   r0   r   r±   r²   r   r   r   r½     r3   zSpamCheck.set_enablec                 C   r0   r   )rÎ   )r   rÎ   r   r   r   Úset_threshold  r3   zSpamCheck.set_thresholdc                 C   r0   r   )rÏ   )r   rÏ   r   r   r   Úset_post_to_url  r3   zSpamCheck.set_post_to_urlc                 C   rÄ   )Nr®   rÎ   rÏ   rÍ   ©r   Ú
spam_checkr   r   r   r"      s   





zSpamCheck.getrÇ   )r\   r]   r^   r    r½   rÐ   rÑ   r"   r   r   r   r   rÌ     rÈ   rÌ   c                   @   r•   )ÚMailSettingsc                 C   r—   r   )r¯   r¶   rÆ   rË   rÓ   r#   r   r   r   r    -  rœ   zMailSettings.__init__c                 C   r0   r   )r¯   )r   r¯   r   r   r   Úset_bcc_settings4  r3   zMailSettings.set_bcc_settingsc                 C   r0   r   )r¶   rµ   r   r   r   Úset_bypass_list_management7  r3   z'MailSettings.set_bypass_list_managementc                 C   r0   r   )rÆ   rÅ   r   r   r   Úset_footer_settings:  r3   z MailSettings.set_footer_settingsc                 C   r0   r   )rË   rÊ   r   r   r   Úset_sandbox_mode=  r3   zMailSettings.set_sandbox_modec                 C   r0   r   )rÓ   rÒ   r   r   r   Úset_spam_check@  r3   zMailSettings.set_spam_checkc                 C   s€   i }| j d ur| j  ¡ |d< | jd ur| j ¡ |d< | jd ur&| j ¡ |d< | jd ur2| j ¡ |d< | jd ur>| j ¡ |d< |S )Nr”   r¶   ÚfooterrË   rÓ   )r¯   r"   r¶   rÆ   rË   rÓ   rU   r   r   r   r"   C  s   

ÿÿ


zMailSettings.getN)
r\   r]   r^   r    rÕ   rÖ   r×   rØ   rÙ   r"   r   r   r   r   rÔ   +  r¡   rÔ   c                   @   r`   )ÚClickTrackingNc                 C   s*   |r|nd | _ |d ur|| _d S d | _d S r   ©r®   Úenable_text)r   r®   rÝ   r   r   r   r    U  s   zClickTracking.__init__c                 C   r0   r   r±   r²   r   r   r   r½   Y  r3   zClickTracking.set_enablec                 C   r0   r   )rÝ   )r   rÝ   r   r   r   Úset_enable_text\  r3   zClickTracking.set_enable_textc                 C   ri   )Nr®   rÝ   rÜ   ©r   Úclick_trackingr   r   r   r"   _  ó   



zClickTracking.getrk   )r\   r]   r^   r    r½   rÞ   r"   r   r   r   r   rÛ   S  rl   rÛ   c                   @   r`   )ÚOpenTrackingNc                 C   rn   r   ©r®   Úsubstitution_tag)r   r®   rä   r   r   r   r    j  r¬   zOpenTracking.__init__c                 C   r0   r   r±   r²   r   r   r   r½   o  r3   zOpenTracking.set_enablec                 C   r0   r   ©rä   ©r   rä   r   r   r   Úset_substitution_tagr  r3   z!OpenTracking.set_substitution_tagc                 C   ri   )Nr®   rä   rã   ©r   Úopen_trackingr   r   r   r"   u  rá   zOpenTracking.getrk   )r\   r]   r^   r    r½   rç   r"   r   r   r   r   râ   h  s
    
râ   c                   @   sB   e Zd Z		ddd„Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ ZdS )ÚSubscriptionTrackingNc                 C   sR   |d ur|nd | _ |d ur|nd | _|d ur|nd | _|d ur$|| _d S d | _d S r   ©r®   r»   r¼   rä   )r   r®   r»   r¼   rä   r   r   r   r    €  s   
ÿÿzSubscriptionTracking.__init__c                 C   r0   r   r±   r²   r   r   r   r½   ˆ  r3   zSubscriptionTracking.set_enablec                 C   r0   r   r¾   r¿   r   r   r   rÀ   ‹  r3   zSubscriptionTracking.set_textc                 C   r0   r   rÁ   rÂ   r   r   r   rÃ   Ž  r3   zSubscriptionTracking.set_htmlc                 C   r0   r   rå   ræ   r   r   r   rç   ‘  r3   z)SubscriptionTracking.set_substitution_tagc                 C   sX   i }| j d ur| j |d< | jd ur| j|d< | jd ur | j|d< | jd ur*| j|d< |S )Nr®   r»   r¼   rä   rë   ©r   Úsubscription_trackingr   r   r   r"   ”  s   







zSubscriptionTracking.getr[   )	r\   r]   r^   r    r½   rÀ   rÃ   rç   r"   r   r   r   r   rê   ~  s    
ÿrê   c                   @   sZ   e Zd Z						d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S )Ú
GanalyticsNc                 C   sv   |d ur|nd | _ |d ur|nd | _|d ur|nd | _|d ur!|nd | _|d ur*|nd | _|d ur6|| _d S d | _d S r   ©r®   Ú
utm_sourceÚ
utm_mediumÚutm_termÚutm_contentÚutm_campaign)r   r®   rð   rñ   rò   ró   rô   r   r   r   r    £  s   zGanalytics.__init__c                 C   r0   r   r±   r²   r   r   r   r½   ±  r3   zGanalytics.set_enablec                 C   r0   r   )rð   )r   rð   r   r   r   Úset_utm_source´  r3   zGanalytics.set_utm_sourcec                 C   r0   r   )rñ   )r   rñ   r   r   r   Úset_utm_medium·  r3   zGanalytics.set_utm_mediumc                 C   r0   r   )rò   )r   rò   r   r   r   Úset_utm_termº  r3   zGanalytics.set_utm_termc                 C   r0   r   )ró   )r   ró   r   r   r   Úset_utm_content½  r3   zGanalytics.set_utm_contentc                 C   r0   r   )rô   )r   rô   r   r   r   Úset_utm_campaignÀ  r3   zGanalytics.set_utm_campaignc                 C   s€   i }| j d ur| j |d< | jd ur| j|d< | jd ur | j|d< | jd ur*| j|d< | jd ur4| j|d< | jd ur>| j|d< |S )Nr®   rð   rñ   rò   ró   rô   rï   ©r   Ú
ganalyticsr   r   r   r"   Ã  s   











zGanalytics.get)NNNNNN)r\   r]   r^   r    r½   rõ   rö   r÷   rø   rù   r"   r   r   r   r   rî   ¡  s    
úrî   c                   @   s<   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ ZdS )ÚTrackingSettingsc                 C   s   d | _ d | _d | _d | _d S r   )rà   ré   rí   rû   r#   r   r   r   r    Ö  s   
zTrackingSettings.__init__c                 C   r0   r   )rà   rß   r   r   r   Úset_click_trackingÜ  r3   z#TrackingSettings.set_click_trackingc                 C   r0   r   )ré   rè   r   r   r   Úset_open_trackingß  r3   z"TrackingSettings.set_open_trackingc                 C   r0   r   )rí   rì   r   r   r   Úset_subscription_trackingâ  r3   z*TrackingSettings.set_subscription_trackingc                 C   r0   r   )rû   rú   r   r   r   Úset_ganalyticså  r3   zTrackingSettings.set_ganalyticsc                 C   sh   i }| j d ur| j  ¡ |d< | jd ur| j ¡ |d< | jd ur&| j ¡ |d< | jd ur2| j ¡ |d< |S )Nrà   ré   rí   rû   )rà   r"   ré   rí   rû   rW   r   r   r   r"   è  s   


ÿÿ
zTrackingSettings.getN)	r\   r]   r^   r    rý   rþ   rÿ   r   r"   r   r   r   r   rü   Ô  s    rü   N)r_   Úobjectr   ra   rm   rF   r�   r‡   rˆ   r   r–   r£   r¨   r­   r°   r¹   rÉ   rÌ   rÔ   rÛ   râ   rê   rî   rü   r   r   r   r   Ú<module>   s0     4U+	(#3