a "e» ã@sGdd„deƒZdS)c@sHeZdZedd„ƒZedd„ƒZedd„ƒZedd„ƒZed d „ƒZd S) ÚFilenameCleanercCs‚t |¡}zP| d¡}|d|…}||dd…}d|vrNt |¡}t |¡}|d|WStylYnty|Yn0|S)Nú/éÚ.)rÚ_strip_abnormalitiesÚrindexÚ_strip_around_so_delimited_dotsÚ_strip_after_dashÚ IndexErrorÚ ValueError)ÚfilenameZslashÚdirnameÚbasename©rúD/usr/lib/python3.9/site-packages/tracer/resources/FilenameCleaner.pyÚstrips     zFilenameCleaner.stripcCsxz|d| d¡…}Wnty(Yn0| d¡r@|dd…}d|vrZ|d| d¡…}d|vrt|d| d¡…}|S)Nú z#newééüÿÿÿú;z .#prelink#.)Úindexr Úendswithr)r rrrr/s  z$FilenameCleaner._strip_abnormalitiescCs~zV| d¡}|d}t|ƒdkr(|d7}| d¡}| d¡}|d|…||d…}Wn"tyhYntyxYn0|S)Nz.sorrr)ÚsplitÚlenrrr r )r rZ first_dot_iZ last_dot_irrrrFs    z/FilenameCleaner._strip_around_so_delimited_dotscCspzH| d¡}| d|¡}t ||d|…¡rF|d|…||d…}Wn"tyZYntyjYn0|S)Nú-rr)rrrÚ _is_versionr r )r ZdashÚdotrrrrUs  z!FilenameCleaner._strip_after_dashcCs$|D]}| ¡r|dkrdSqdS)z: Returns True if string contains only digits and dots rFT)Úisdigit)ÚstringÚcharrrrraszFilenameCleaner._is_versionN) Ú__name__Ú __module__Ú __qualname__Ú staticmethodrrrrrrrrrrs    rN)ÚobjectrrrrrÚ