asda?‰PNG  IHDR ? f ??C1 sRGB ??é gAMA ±? üa pHYs ? ??o¨d GIDATx^íüL”÷e÷Y?a?("Bh?_ò???¢§?q5k?*:t0A-o??¥]VkJ¢M??f?±8\k2íll£1]q?ù???T a bYh@spgdZddlZddlZddlmZddlmZeZejZ ej Z ddZ dZ ddd Z dd d Zdd d ZdS))choice randbelowrandbits SystemRandom token_bytes token_hex token_urlsafecompare_digestN)r)rcCs|dkrtdt|S)Nr zUpper bound must be positive.) ValueError_sysrand _randbelow)Zexclusive_upper_boundr #/usr/local/lib/python3.9/secrets.pyrsr cCs|dur t}t|S)N)DEFAULT_ENTROPYr randbytesnbytesr r rr"s rcCstt|dS)Nascii)binasciiZhexlifyrdecoderr r rr0s rcCst|}t|ddS)N=r)rbase64Zurlsafe_b64encoderstripr)rtokr r rr=s r)N)N)N)__all__rrhmacrrandomrr getrandbitsrrrrrrrr r r r s