o ?Og@s2 ddlmZdgZd$ddZgZddZeeddZeed d Zeed d Z ee d dZ ee ddZ ee ddZ ee ddZ ee ddZeeddZeeddZeeddZeeddZeedd Zd!d"Zed#kredSdS)%)PathLikewhatNcCsd}zE|dur't|ttfrt|d}|d}n|}|d}||tD]}|||}|r>|W|r=|SSq)W|rF|dS|rO|ww)Nrb ) isinstancestrropenreadtellseektestsclose)filehflocationZtfresr-/opt/alt/python310/lib64/python3.10/imghdr.pyr s&      cCs |dddvr dSdS)N )sJFIFsExifZjpegrrrrrr test_jpeg%rcC|drdSdS)NsPNG  Zpng startswithrrrrtest_png, rcC |dddvr dSdS)Nr)sGIF87asGIF89aZgifrrrrrtest_gif2rr cCr)N)sMMsIIZtiffrrrrr test_tiff9rr"cC |drdSdS)NsZrgbrrrrrtest_rgb@ r$cCJ t|dkr|dtdkr|ddvr!|ddvr#dSdSdSdSdS) NrPs14r! Zpbmlenordrrrrtest_pbmG  ( r.cCr&) Nr'rr(r)s25r!r*Zpgmr+rrrrtest_pgmOr/r0cCr&) Nr'rr(r)s36r!r*Zppmr+rrrrtest_ppmWr/r1cCr#)NsYjZrastrrrrr test_rast_r%r2cCr#)Ns#define Zxbmrrrrrtest_xbmfr%r3cCr)NsBMZbmprrrrrtest_bmpmrr4cCs&|dr|dddkrdSdSdS)NsRIFF sWEBPZwebprrrrr test_webpssr7cCr)Nsv/1Zexrrrrrrtest_exryrr8cCsddl}d}|jddr|jddkr|jdd=d}z|jddr2t|jdd|dWdStdg|dWdStyP|jd|dYdSw)Nrr)z-rr!.z [Interrupted] )sysargvtestallKeyboardInterruptstderrwriteexit)r: recursiverrrtests   rBc Csddl}ddl}|D]W}|j|r?t|ddd|s|r:tdddl}||j||d}t||dq tdq t|ddd|j ztt |Wq t yatd Yq wdS) Nrz/: )endzrecursing down:*z*** directory (use -r) ***:z*** not found ***) r:ospathisdirprintglobjoinescaper<stdoutflushrOSError)listrAZtoplevelr:rGfilenamerKnamesrrrr<s&     r<__main__)N)rGr__all__rr rappendrr r"r$r.r0r1r2r3r4r7r8rBr<__name__rrrrsH