a
    7ñ»jKÀ  ã                   @   s†   d Z ddlZddlZddlZddlZddlmZ ejZejZej	Z	ddd„Z
dd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Zedkr‚e
ƒ  dS )a  
Translates a SeleniumBase Python file into a different language

Usage:
        seleniumbase translate [SB_FILE.py] [LANGUAGE] [ACTION]
        OR:    sbase translate [SB_FILE.py] [LANGUAGE] [ACTION]
Languages:
        --en / --English    |    --zh / --Chinese
        --nl / --Dutch      |    --fr / --French
        --it / --Italian    |    --ja / --Japanese
        --ko / --Korean     |    --pt / --Portuguese
        --ru / --Russian    |    --es / --Spanish
Actions:
        -p / --print  (Print translation output to the screen)
        -o / --overwrite  (Overwrite the file being translated)
        -c / --copy  (Copy the translation to a new .py file)
Options:
        -n  (include line Numbers when using the Print action)
Output:
        Translates a SeleniumBase Python file into the language
        specified. Method calls and "import" lines get swapped.
        Both a language and an action must be specified.
        The "-p" action can be paired with one other action.
        When running with "-c" (or "--copy"), the new file name
        will be the original name appended with an underscore
        plus the 2-letter language code of the new language.
        (Example: Translating "test_1.py" into Japanese with
        "-c" will create a new file called "test_1_ja.py".)
é    N)Úmaster_dictc                 C   sò   d}|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d	7 }|d
7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }|d7 }| sÞt d| ƒ‚nt d| |f ƒ‚d S )Nz  ** translate **

z	  Usage:
zA         seleniumbase translate [SB_FILE.py] [LANGUAGE] [ACTION]
zA         OR:    sbase translate [SB_FILE.py] [LANGUAGE] [ACTION]
z  Languages:
z3         --en / --English    |    --zh / --Chinese
z2         --nl / --Dutch      |    --fr / --French
z4         --it / --Italian    |    --ja / --Japanese
z6         --ko / --Korean     |    --pt / --Portuguese
z3         --ru / --Russian    |    --es / --Spanish
z  Actions:
z@         -p / --print  (Print translation output to the screen)
zA         -o / --overwrite  (Overwrite the file being translated)
z?         -c / --copy  (Copy the translation to a new .py file)
z  Options:
z@         -n  (include line Numbers when using the Print action)
z
  Output:
zA         Translates a SeleniumBase Python file into the language
zA         specified. Method calls and "import" lines get swapped.
z:         Both a language and an action must be specified.
z>         The "-p" action can be paired with one other action.
zA         When running with "-c" (or "--copy"), the new file name
z?         will be the original name appended with an underscore
z>         plus the 2-letter language code of the new language.
z>         (Example: Translating "test_1.py" into Japanese with
z>          "-c" will create a new file called "test_1_ja.py".)
zINVALID RUN COMMAND!

%szINVALID RUN COMMAND!
%s

%s)Ú	Exception)ÚmsgÚexp© r   úGE:\soccer\ml_env\Lib\site-packages\seleniumbase/translate/translator.pyÚinvalid_run_command)   s:    r   c                  C   sH   t dƒt dƒdœt dƒt dƒdœt dƒt dƒdœt dƒt d	ƒdœg} | S )
Nu   ä¸€u   é¿¿©ÚfromÚtou   ã�€u   ãƒ¿u   ê°€u   íž£u   ï¼�u   ï½ ©Úord)Zspecial_char_rangesr   r   r   Ú	sc_rangesJ   s    ür   c                    s   t ‡ fdd„tƒ D ƒƒ}|S )Nc                    s0   g | ](}|d  t ˆ ƒ  ko&|d kn  ‘qS r	   r   )Ú.0Úrange©Úcharr   r   Ú
<listcomp>X   ó    zis_cjk.<locals>.<listcomp>)Úanyr   )r   Úscr   r   r   Úis_cjkU   s    ÿr   c                 C   s&   t | ƒ}| D ]}t|ƒr|d7 }q|S )Né   )Úlenr   )ÚlineÚline_lengthr   r   r   r   Ú	get_width]   s
    
r   c                 C   sV  d }d}d}g }t j}|| }d }tj}	| D �]}
|
 ¡ }
|
 ¡  d¡�rœd|
v �rœd}t ¡ D �](}t	 
dt |¡ d |
¡}|röd| d¡ }d }|}|| }||kr¾d}t |¡| }nd}|
}| d	¡râ|d
td	ƒ … }| |¡ d} �qŒt	 
dt |¡ d |
¡}|r`d| d¡ }d }|}|| }||k�rPd}t |¡| }nd}|
}| d	¡�rv|d
td	ƒ … }| |¡ d} �qŒq`|s,| |
¡ q,|
 ¡  d¡�rd|
v �rd}t	 
d|
¡}|�r| d¡}d| d¡ }d| d¡ }d| d¡ }|t ¡ v �r‚t |¡}|| }||k�rJd}t |¡}d||||f }nd}|
}| d	¡�rp|d
td	ƒ … }| |¡ d}q,n€|t ¡ v �rt |¡}|| }||k�rÌd}t |¡}d||||f }nd}|
}| d	¡�rò|d
td	ƒ … }| |¡ d}q,|s,| |
¡ q,d|
v �rh|�rh|�rh||k�rht |¡}t |¡}||
v �rh|
 ||¡}| |¡ q,d|
v �r>d|
v �r>|�r>||k�r>d}|
 d¡}|	 ¡ D ]j}d|	| |  d }||
v �r¢d|	| |  d }|
 ||¡}d}|d8 }|d
k�r �qn|}
�q¢�q¢|�r>| d	¡�r2|d
td	ƒ … }| |¡ q,| |
¡ q,||||fS )NFúfrom seleniumbaseÚimportz^\s*z
([\S\s]*)$z%sr   Tú  # noqar   zclass ú:z+^(\s*)class\s+([\S]+)\(([\S]+)\):([\S\s]*)$é   é   é   z%sclass %s(%s):%sz.main(__name__, __file__)úself.ú()Ú
MD_L_CodesÚlangÚMDÚmdÚrstripÚlstripÚ
startswithÚMD_FZget_languages_listÚreÚmatchZget_import_lineÚgroupÚendswithr   ÚappendZget_mqa_im_lineZget_parent_classes_listZget_parent_class_langZget_lang_parent_classZ get_masterqa_parent_classes_listZget_mqa_par_class_langZget_mqa_lang_par_classÚreplaceÚcountÚkeys)Ú
code_linesÚnew_langÚdetected_langÚchangedÚfound_bcÚseleniumbase_linesZ
lang_codesZnl_codeZdl_coder)   r   Z
added_liner'   ÚdataÚcommentsÚnew_lineÚ
whitespaceÚnameZparent_classZ
new_parentZold_basecaseZnew_basecaseZ
found_swapZreplace_countÚkeyÚoriginalÚreplacementr   r   r   Úprocess_test_fileg   s"   
ÿ

ÿ


ÿ



ü



ü

ÿþýü



ÿþýü



rD   c            T      C   sÞ  t jjt jj } t jjt jj }t jjt jj }t jjt jj }t jjt jj }t jjt jj }t jjt jj	 }t j
j}d }d}	d}
d}d}d }d}d}d}tjdd … }|d }| d¡�s6|d | d | d | d	 | }d
||f }| d|d | ¡}| ||| | ¡}| d|d | ¡}t|ƒ d}t|ƒdk�r\|�s\|dd … }|D �]ü}| ¡ }|dk�s||dk�r„d}�qZ|dk�s˜|dk�r d}	�qZ|dk�s´|dk�r¼d}
�qZ|dk�sÐ|dk�rØd}�qZ|dk�rêd}�qZ|dk�sþ|dk�rd}�qZ|dk�s|dk�r"d}�qZ|dk�s6|dk�r>d}�qZ|d k�sR|d!k�rXd"}nþ|d#k�sl|d$k�rrd%}nä|d&k�s†|d'k�rŒd(}nÊ|d)k�s |d*k�r¦d+}n°|d,k�sº|d-k�rÀd.}n–|d/k�sÔ|d0k�rÚd1}n||d2k�sî|d3k�rôd4}nbd5| }| d6d| d ¡}| d7d| d	 ¡}| d|d | ¡}| d	|d	 | ¡}d} �q`�qZnd}d8}d9}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/ | ¡}| d2|d2 | ¡}| dA|dA | ¡}| dB|dB | ¡}| dC|dC | ¡}| dD|dD | ¡}| dE|dE | ¡}| dF|dF | ¡}| dG|dG | ¡}| dH|dH | ¡}| dI|dI | ¡}| dJ|dJ | ¡}| d<|d< ¡}| d=d=| ¡}| dK|dK | ¡}| dL|dL | ¡}| dM|dM | ¡}| dNd|  d | ¡}| dOd|  d | ¡}| dPd|  d | ¡}| dQd|  d | ¡}| dRd|  d | ¡}| dSd|  d | ¡}| dT|dT | ¡}| dL|dL | ¡}| dM|dM | ¡}| dNd|  d | ¡}| dOd|  d | ¡}| dPd|  d | ¡}| d|d | ¡}| d.|d. | ¡}| d|d | ¡}| dUd| d | ¡}| dVd| d, | ¡}| dWd| d | ¡}| dX|dX | ¡}| dY|dY | ¡}| dL|dL | ¡}| dM|dM | ¡}| dZ|dZ | ¡}| d[|d[ | ¡}| d\| d\ | ¡}|�rd]}|�rô||7 }||| | | 7 }td]ƒ t|ƒ‚|	�s\|
�s\|�s\|| | }|�sL|| | | }td]ƒ t|ƒ‚|�sztd]ƒ t|| | ƒ‚|	�	r|
�	rd^}| d_| d | d ¡}| d| d | ¡}| d`| d | d ¡}| d| d | ¡}| da|da | ¡}|| | }td]ƒ t|ƒ‚t|dbdcdd��}| ¡ }W d   ƒ n1 �	s@0    Y  de|v�	rvdf|v�	rvtd]ƒ tdg||f ƒ‚| dhdi¡}| dj¡}t||ƒ\}} }!}"|}#|!}$|"}%| �
sN|%�
rNtd]ƒ dk||f }&|& dld]| ¡ dm|d] ¡}&|& dnd]| ¡ do|d] ¡}&d }'|�
rdp}'n|	�
rdq}'ndr}'|' dsd| ¡ dt|dj ¡}'t|&|' ƒ d S | �
sâ|%�
sâtd]ƒ || | }(|df | })du}*dv|(|)f }&dw}'d }+|�
rždp}+n|	�
rªdq}+ndr}+|+ dsd| ¡ dt|dj ¡}+t|*|& |' |+ ƒ d S dx|||$f },|, dld]| ¡},|, dm|d] ¡},|, dnd]| ¡},|, do|d] ¡},|�ræddylm}- ddzlm}. d }/d }0d }1d }2z*t d{db¡ ¡  ¡ d }/|/�r†t|/ƒ}/W n t�y    d }/Y n0 dj |#¡}3d}4d}5|�rþd|}5t|ƒ}6|6d}k�rÔd~}5|6dk�râd€}5|6d�k�rðd‚}5|6dƒk�rþd„}5g }7|#D �]Ô}8|8 d…¡�r4|8  d…¡dk�r4|8 d…d]¡}8t|8ƒ}9t!|8ƒ}:|:|4k�rR|:}4|/�r|:|5 |/k�rÐ|8 "¡  #d†¡�r†|7 $|8¡ �qn’|8  d‡¡dk�rÐt!|8 d‡¡d ƒ|5 |/k�rÐ|8 d‡¡d }8|7 $|8¡ �qnH|8  dˆ¡dk�rt!|8 dˆ¡d ƒ|5 |/k�r|8 d‡¡d }8|7 $|8¡ �q|8 #d‰¡�rjdŠ|8v �rj|8 dŠ¡d d‹ };dŒ|8 dŠ¡d  }<|7 $|;¡ |7 $|<¡ �q|8  d�¡dk�rö|8  d�¡|8  dŽ¡k�rö|9t|8 %¡ ƒ }=|8d|=… di }>|8 &d�¡}?|8d |?d … };|>|8|?d d …  }<d�|<v�r´|7 $|;¡ t!|<ƒ|5 |/k�r¨|<  d�¡dk�rX|< d�¡d d‘ }@|>d’ |< d�¡d  }A|7 $|@¡ |7 $|A¡ �q�nP|<  d“¡dk�r¬|< d“¡d d” }@|>d• |< d“¡d  }A|7 $|@¡ |7 $|A¡ �q�nü|<  d–¡dk�r¢|<  d—¡dk�r¢|< d–¡d d˜ }@|>d’ |< d–¡d  }A|7 $|@¡ t!|Aƒ|5 |/k�r�|A  d™¡dk�r�|A &d™¡}B|Bd }C|Ad |C… d’ }D|>d’ |A|Cd …  }E|7 $|D¡ |E  dš¡dk�r‚|E dš¡d dŽ }E|7 $|E¡ �q|7 $|A¡ �q�n|<  d–¡dk�r˜|<  d›¡dk�r˜|< d–¡d dœ }@|>d• |< d–¡d  }A|7 $|@¡ t!|Aƒ|5 |/k�r†|A  d™¡dk�r†|A &d™¡}B|Bd }C|Ad |C… d• }D|>d• |A|Cd …  }E|7 $|D¡ |E  dš¡dk�rx|E dš¡d dŽ }E|7 $|E¡ �q|7 $|A¡ �q�n|<  d�¡dk�ræ|< d�¡d dž }@|>|< d�¡d  }A|7 $|@¡ |7 $|A¡ �qnÂ|<  dŸ¡dk�rH|< %¡  #d•¡�rH|< dŸ¡d d  }@|>d¡ |< dŸ¡d  }A|7 $|@¡ |7 $|A¡ �qn`|<  d ¡dk�r¨|< %¡  #d’¡�r¨|< d ¡d dŸ }@|>d¢ |< d ¡d  }A|7 $|@¡ |7 $|A¡ �q|7 $|<¡ n>t!|<ƒd| |5 |/k�rèdi|< }<|7 $|;¡ |7 $|<¡ n
|7 $|8¡ �q|8  d£¡dk�r|9t|8 %¡ ƒ }=|8d|=… di }>|8 d£¡d d� };|>d’ |8 d£¡d  }<d�|<v�rÐ|7 $|;¡ t!|<ƒ|5 |/k�rÄ|<  d¤¡dk�rÄ|< d¤¡d d¥ }@|>d¦ |< d¤¡d  }A|7 $|@¡ |7 $|A¡ �q|7 $|<¡ n>t!|<ƒd| |5 |/k�rdi|< }<|7 $|;¡ |7 $|<¡ n
|7 $|8¡ �q|8  d§¡dk�r.|9t|8 %¡ ƒ }=|8d|=… di }>|8 d§¡d d� };|>d• |8 d§¡d  }<d�|<v�rì|7 $|;¡ t!|<ƒ|5 |/k�rà|<  d¨¡dk�rà|< d¨¡d d© }@|>d¦ |< d¨¡d  }A|7 $|@¡ |7 $|A¡ �q|7 $|<¡ n>t!|<ƒd| |5 |/k�r di|< }<|7 $|;¡ |7 $|<¡ n
|7 $|8¡ �q|8  dª¡dk�r|8  d–¡dk�r|9t|8 %¡ ƒ }=|8d|=… di }>|8 d–¡d d« };|>d’ |8 d–¡d  }<|7 $|;¡ t!|<ƒ|5 |/k�r|<  d™¡dk�r|< &d™¡}B|Bd }C|<d |C… d¬ }@|>d’ |<|Cd …  }A|7 $|@¡ |7 $|A¡ �q|7 $|<¡ �q|8  d­¡dk�r|8  d–¡dk�r|9t|8 %¡ ƒ }=|8d|=… di }>|8 d–¡d d® };|>d• |8 d–¡d  }<|7 $|;¡ t!|<ƒ|5 |/k�r |<  d™¡dk�r |< &d™¡}B|Bd }C|<d |C… d¯ }@|>d• |<|Cd …  }A|7 $|@¡ |7 $|A¡ �q|7 $|<¡ �q|8  d°¡dk�ršd�|8v�rš|9t|8 %¡ ƒ }=|8d|=… di }>|8 d°¡d d� };|>d¦ |8 d°¡d  }<t!|;ƒ|5 |/k�rš|7 $|;¡ |7 $|<¡ �q|8  d±¡dk�rD|8 d²¡�sDd³|8v �sD|9t|8 %¡ ƒ }=|8d|=… di }>|8 d±¡d d´ };|>|8 d±¡d  dŽ }<t!|;ƒ|5 |/k�rDt!|<ƒ|5 |/k�rD|7 $|;¡ |7 $|<¡ �q|8  d±¡dk�rì|8 d²¡�rì|9t|8 %¡ ƒ }=|8d|=… dµ }>|8 d±¡d d´ };|>|8 d±¡d d d¶…  d� }<t!|;ƒ|5 |/k�rìt!|<ƒ|5 |/k�rì|7 $|;¡ |7 $|<¡ �q|8  d±¡dk�rø|8  d³¡dk�rø|8 &d±¡|8 &d³¡k �rø|9t|8 %¡ ƒ }=|8d|=… dµ }>d·|8 d³¡d  }F|8 d³¡d d² }G|G d±¡d d´ };|>|G d±¡d d d¶…  d� }<t!|;ƒ|5 |/k�røt!|<ƒ|5 |/k�rø|7 $|;¡ t!|<|F ƒ|5 |/k�rê|7 $|<|F ¡ n
|7 $|<¡ �q|8  d¸¡dk�r„d�|8v�r„|9t|8 %¡ ƒ }=|8d|=… di }>|8 d¸¡d d‹ };|>d¹ |8 d¸¡d  }<t!|;ƒ|5 |/k�r„|7 $|;¡ |7 $|<¡ �q|8  dº¡dk�rÐd‡|8v�rÐ|9t|8 %¡ ƒ }=|8d|=… di }>|8 dº¡d d» };|>|8 dº¡d  dŽ }<t!|;ƒ|5 |/k�r$t!|<ƒ|5 |/k�r$|7 $|;¡ |7 $|<¡ �qn¬t!|;ƒ|5 |/k�rÐ|<  d¸¡dk�rÐ|< d²¡�sÐ|9t|< %¡ ƒ }=|< d¸¡d d‹ }@|>d¹ |< d¸¡d  }At!|@ƒ|5 |/k�rÐt!|Aƒ|5 |/k�rÐ|7 $|;¡ |7 $|@¡ |7 $|A¡ �q|8  dº¡dk�rÐ|8  d‡¡dk�rÐ|8 &dº¡|8 &d‡¡k �rÐ|9t|8 %¡ ƒ }=|8d|=… dµ }>d‡|8 d‡¡d  }F|8 d‡¡d }G|G dº¡d d» };|>|G dº¡d  dŽ }<t!|;ƒ|5 |/k�rÐt!|<ƒ|5 |/k�rÐ|7 $|;¡ t!|<|F ƒ|5 |/k�rÂ|7 $|<|F ¡ n
|7 $|<¡ �q|7 $|8¡ �q|7�rò|7}#dj |#¡}3d}H|/�r|4|H |/k �r|4|H }0|.|3d¼d½||0|d¾�}2|-ƒ }1td]ƒ t|,ƒ td|  d¿ | ƒ dÀ}I|0�rr|0|5 |/k �rr|0|5 }In
|/�r||/}IdÁ|I }Jt|Jƒ d}K|2�r¾z|1 |2¡ d}KW n t�y¼   Y n0 |2�rÊ|K�sÞ|#D ]}8t|8ƒ �qÎt|Jƒ d }L|
�rZ| d¡d }Mt' (|¡}NdÂ|N d }Ot' )¡ D ]2}PdÂ|P d }Q| |Q¡�r| |Q¡d }M �qP�q|M|O }Ln|	�rf|}Ln |�s~td]ƒ t|,ƒ n |L�rÚt|LdÃdcdd�}R|R *dÄ |#¡¡ |R +¡  dÅ|L }S|S dnd]|  ¡}S|S do|d] ¡}St|Sƒ d S )ÆNFTzA SeleniumBase Python filer!   r   z.pyz>>ú z<<z,
`%s` is not a Python file!

Expecting: [%s]zis not a Python file!z
Expecting:r   Úhelpz--helpz-oz--overwritez-cz--copyz-pz--printz-nz--enz	--englishZEnglishz--zhz	--chineseZChinesez--nlz--dutchZDutchz--frz--frenchZFrenchz--itz	--italianZItalianz--jaz
--japaneseZJapanesez--koz--koreanZKoreanz--ptz--portugueseZ
Portuguesez--ruz	--russianZRussianz--esz	--spanishZSpanishz
===> INVALID OPTION: >> %s <<
z>> z <<aI  
>* You must specify a language to translate to! *<

>    ********  Language Options:  ********    <
   --en / --English    |    --zh / --Chinese
   --nl / --Dutch      |    --fr / --French
   --it / --Italian    |    --ja / --Japanese
   --ko / --Korean     |    --pt / --Portuguese
   --ru / --Russian    |    --es / --Spanish
z�
>* You must specify an action type! *<

> *** Action Options: *** <
      -p / --print
      -o / --overwrite
      -c / --copy
a=  
> *** Examples: *** <
Translate test_1.py into Chinese and only print the output:
 >$ sbase translate test_1.py --zh -p
Translate test_2.py into Portuguese and overwrite the file:
 >$ sbase translate test_2.py --pt -o
Translate test_3.py into Dutch and make a copy of the file:
 >$ sbase translate test_3.py --nl -c
zI
> *** Usage: *** <
 >$ sbase translate [SB_FILE.py] [LANGUAGE] [ACTION]
z>*z*<zLanguage Options:z>    ********  z  ********    <z	--Englishz	--Chinesez--Dutchz--Frenchz	--Italianz
--Japanesez--Koreanz--Portuguesez	--Russianz	--SpanishzAction Options:z> *** z *** <z -pz -oz -cz --printz --overwritez --copyz	Examples:z --zhz --ptz --nlZsbasezUsage:z
SB_FILE.pyÚLANGUAGEZACTIONÚ zP
* You can choose either {-o / --overwrite} OR {-c / --copy}, BUT * NOT BOTH *!
z-o z-c z* NOT BOTH *Úrzutf-8)ÚmodeÚencodingz	def test_r   z?

`%s` is not a valid SeleniumBase test file!

Expecting: [%s]
ú	z    Ú
z& [[[[%s]]]] was already in [[[%s]]]!

z[[[[z]]]]z[[[z]]]z&*> ***  No changes to display!  *** <*z%*> ***  No changes were made!  *** <*z$*> ***  No action was taken!  *** <*z*>z<*z% * In order to translate the script,
z %s requires "%s..."
z1 and a BaseCase import in a supported language!

z7 [[[[%s]]]] was translated to [[[%s]]]! (Previous: %s)
)ÚConsole)ÚSyntaxz	stty sizer#   é
   é   éd   é   iè  é   i'  é   r   ú#z  # z # r
   z import z \z    import r%   ú)z):z", "z",ú"z', 'z',ú'z://z")z://"ú/z)  # z')z://'z, ú,z="z='z'"z"'z("z
" in self.z" inr$   z('z
' in self.z' inz= "z://" \z" \z= 'z://' \z' \z(self.z == r    z:  #z == (z        éÿÿÿÿz  #z % z% z = z = (ÚpythonÚmonokai)ÚthemeÚline_numbersÚ
code_widthÚ	word_wrapz! ***  Here are the results:  >>> é>   ú-Ú_zw+z
z'The translation was saved to: [[[%s]]]
),ÚcoloramaZForeZBLUEZBackZLIGHTCYAN_EXZLIGHTYELLOW_EXZREDZLIGHTGREEN_EXZBLACKZMAGENTAÚStyleZ	RESET_ALLÚsysÚargvr1   r3   Úprintr   Úlowerr   ÚopenÚreadÚsplitrD   Zrich.consolerN   Zrich.syntaxrO   ÚosÚpopenÚintÚjoinr4   r   Ústripr,   r2   r+   Úfindr-   Zget_locale_codeZget_locale_listÚ
writelinesÚclose)TÚc1Úc2Úc3Zc4Zc5Zc6Zc7Úcrr7   Ú	overwriteÚcopyZ
print_onlyZhelp_meZinvalid_cmdr`   rb   Zexpected_argÚcommand_argsZseleniumbase_fileZbad_file_errorÚoptionsÚoptionZspecify_langZspecify_actionZexample_runÚusageÚmessageZpart_1ÚfZall_coder6   Zsb_linesr9   Zd_lr:   r;   r8   Zfound_basecaseZmsg1Zmsg2ÚfilenameZfrom_sbZmsg0Zmsg3Z	save_linerN   rO   Zconsole_widthZ
used_widthZmagic_consoleZmagic_syntaxZpython_codera   ÚwZ	num_linesZnew_sb_linesr   Zline_length2r   Úline1Úline2r?   Znew_wsZfirst_parenZline2aZline2bZ	slash_oneZslash_one_p1Zline2b1Zline2b2r=   Zline0Zextra_r_spacesZdash_lengthÚdashesZprint_successZnew_file_nameZbase_file_nameZ
new_localeZnew_extÚlocaleÚextÚout_fileZresults_savedr   r   r   Úmain  s°   "ÿÿÿÿÿÿ

ÿÿ	ÿ
ÿÿÿÿÿÿÿÿÿÿ(ÿÿ
þþÿ








ÿÿþ
ÿÿþ


ÿþ


ÿþÿ

ÿþÿ

ÿÿþÿ

ÿ
ÿÿ
þÿ
ÿýÿ

ÿÿþÿ

ÿ
ÿÿ
þÿ
ÿýÿ



ÿÿþÿ

ÿÿþÿ





ÿÿÿþÿ





ÿÿÿþÿ



 

ÿ


 

ÿ




ÿÿÿ

ÿ

ÿþýÿ
ÿÿ


ÿ

ÿÿÿ
ÿÿ


ÿþýÿ
ÿÿ

ú





ÿr‹   Ú__main__)N)Ú__doc__rf   ro   r.   rh   Zseleniumbase.translater   r-   r&   r(   r   r   r   r   rD   r‹   Ú__name__r   r   r   r   Ú<module>   s.   
!
 &      