;ò Rð‘Bc@sdkZd„Zd„ZdS(NcCs³g}tii|ƒ\}}tii|ƒ\}}xWnoO|o|i d|ƒntii|ƒ\}}||joPq9|}q@W|o|i d|ƒn|SdS(s. Splits a path into a list of directory names iiN( s path_listsosspaths splitdrivesapathsdrivessplitsheadstailsinsertsnewhead(sapathsheadsdrivesnewheadstails path_list((sM/mnt/gmirror/ports/devel/boaconstructor/work/boa-constructor-0.4.4/relpath.pys splitpaths  cCsV|idƒ}t|ƒdjod|df\}}nUt|ƒdjo|\}}n2t|ƒdjo|\}}}n d| ‚|idƒ}t|ƒdjod|df\} }nUt|ƒdjo|\} }n2t|ƒdjo|\} }}n d| ‚|| jo|Snt i i |ƒ\} } t i i |ƒ\}} t| ƒ}t| ƒ}| |jo|Sn|t|ƒ}d}d} xPtt|ƒƒD]<} || iƒ|| iƒjo|| }d}PqÁqÁWx>ttt|ƒ| |dƒƒD]}|idt iƒq%Wt i i|ŒSd S( s3 Return a path to file comp relative to path base. s://isfileiiisUnhandled path %siÿÿÿÿN(sbasessplits protsplitbaseslensbaseprotsnbaseszipentryscomps protsplitcompscompprotsncompsosspaths splitdrives base_drives base_paths comp_drives comp_paths splitpathsbase_path_listscomp_path_listsrel_pathsfoundsidxsrangeslowersmaxscntsinsertspardirsjoin(sbasescompsbaseprotsncompsnbasesbase_path_listscnts protsplitbases comp_drives comp_paths base_paths base_drivescompprotsidxszipentryscomp_path_listsfoundsrel_paths protsplitcomp((sM/mnt/gmirror/ports/devel/boaconstructor/work/boa-constructor-0.4.4/relpath.pysrelpath&sL      !  $(soss splitpathsrelpath(s splitpathsossrelpath((sM/mnt/gmirror/ports/devel/boaconstructor/work/boa-constructor-0.4.4/relpath.pys?s