ó õùPc@sÃddlZddlTeedƒZd„Zdeeƒfd„ƒYZejdkrdZ eZ d efd „ƒYZ n@ejd kr³d Z eZ d efd„ƒYZ n e dƒ‚dS(iÿÿÿÿN(t*icCs_yt|tƒSWnGtk rZt|ƒtkrGt|jƒ|jStd|ƒ‚nXdS(såReturn the type with the 'other' byte order. Simple types like c_int and so on already have __ctype_be__ and __ctype_le__ attributes which contain the types, for more complicated types only arrays are supported. s+This type does not support other endian: %sN( tgetattrt _OTHER_ENDIANtAttributeErrorttypet _array_typet _other_endiant_type_t_length_t TypeError(ttyp((s..\python\lib\ctypes\_endian.pyR s  t _swapped_metacBseZd„ZRS(cCs„|dkrgg}xI|D]A}|d}|d}|d}|j|t|ƒf|ƒqW|}ntt|ƒj||ƒdS(Nt_fields_iii(tappendRtsuperR t __setattr__(tselftattrnametvaluetfieldstdesctnameR trest((s..\python\lib\ctypes\_endian.pyRs     ! (t__name__t __module__R(((s..\python\lib\ctypes\_endian.pyR stlittlet __ctype_be__tBigEndianStructurecBseZdZeZdZRS(s$Structure with big endian byte orderN(RRt__doc__R t __metaclass__tNonet_swappedbytes_(((s..\python\lib\ctypes\_endian.pyR-stbigt __ctype_le__tLittleEndianStructurecBseZdZeZdZRS(s'Structure with little endian byte orderN(RRRR RRR(((s..\python\lib\ctypes\_endian.pyR"6ssInvalid byteorder( tsystctypesRtc_intRRt StructureR t byteorderRR"Rt RuntimeError(((s..\python\lib\ctypes\_endian.pyts