3 \ @s4ddlZddlZddgZddZddZddZdS)N url2pathname pathname2urlcCsttjj|d}|r$|dkr$td|dddkrB|dd}n|dddkrZtd|jd}d}x|t|kr||d kr||=qj||d kr|dkr||d dkr||d |d =|d }qj||d kr|dkr||d d kr||=qj|d }qjW|ds"d j|d d}nFd}x2|t|krX||d krXd ||<|d }q(Wd d j|}tjj|S)Nrfilez(Cannot convert non-local URL to pathnamez///z///...:)r r )urllibparseZ splittype RuntimeErrorsplitlenjoinZunquote)pathnametp componentsirvr#/usr/lib64/python3.6/macurl2path.pyr s6    $  cCsd|krtd|jd}|ddkr,|d=|ddkr>|d =x(tt|D]}||dkrLd||<qLWtt|}tjj|rddj |Sdj |SdS) Nrz*Cannot convert pathname containing slashesr rr r z..r) rrrangermap _pncomp2urlospathisabsr)rrrrrrr4s       cCstjj|ddddS)Nr )Zsafe)r rZquote)Z componentrrrrKsr)Z urllib.parser r__all__rrrrrrrs *