ó Ï€öVc@@s\dZddlmZddlZddlmZy ejZWnek r[ej ZnXdZ dZ dZ ee krƒd Z nee kr˜d Z nd Z y eZWnek rÁeZnXeekrÚd „Zn d „ZyeefZWnek refZnXeZed ƒZedƒZd„Zd„Zd„Zd e d„ZdS(sPython compatibility wrappers.i(tabsolute_importN(tpackii?iii@i cC@s |jdƒS(Ntlatin1(tencode(ts((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pyt byte_literal5scC@s|S(N((R((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pyR8sstcC@s t|tƒS(s½ Determines whether the given value is a byte string. :param obj: The value to test. :returns: ``True`` if ``value`` is a byte string; ``False`` otherwise. (t isinstancetbytes(tobj((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pytis_bytesHs cC@s t|tƒS(s· Determines whether the given value is an integer. :param obj: The value to test. :returns: ``True`` if ``value`` is an integer; ``False`` otherwise. (Rt integer_types(R ((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pyt is_integerTs cC@s td|ƒS(sd Converts a number between 0 and 255 (both inclusive) to a base-256 (byte) representation. Use it as a replacement for ``chr`` where you are expecting a byte because this will work on all current versions of Python:: :param num: An unsigned integer between 0 and 255 (both inclusive). :returns: A single byte. tB(R(tnum((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pytbyte`s cC@s˜d}d}d}d}|dkrL|dkrL||krLdd|dfS||krhdd |d fS||kr„d d |d fSdd|dfSdS(sD Returns alignment details for the given number based on the platform Python is running on. :param num: Unsigned integral number. :param force_arch: If you don't want to use 64-bit unsigned chunks, set this to anything other than 64. 32-bit chunks will be preferred then. Default 64 will be used when on a 64-bit machine. :param _machine_word_size: (Internal) The machine word size used for alignment. :returns: 4-tuple:: (word_bits, word_bytes, max_uint, packing_format_type) lÿÿÿÿIÿÿÿÿiÿÿiÿi@itQi itLiitHiR N((Rt force_archt_machine_word_sizet max_uint64t max_uint32t max_uint16t max_uint8((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pytget_word_alignmentps$  llÿÿÿÿI€iÿÿÿi€iÿ(t__doc__t __future__RtsyststructRtmaxsizetMAX_INTtAttributeErrortmaxintt MAX_INT64t MAX_INT32t MAX_INT16tMACHINE_WORD_SIZEtunicodet unicode_typet NameErrortstrRtinttlongR tbt ZERO_BYTEt EMPTY_BYTER R RR(((s6/opt/awscli/lib/python2.7/site-packages/rsa/_compat.pytsD