PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB`  7Tc@sddlTddlZddlZddlZddlZddlZddlmZddl m Z ddl j Z ddl Z dZdgZe jdZdZejjd dksejjd dksejjd dkrd Zn9ejd ksejdkrdZnejdeZdefdYZejd kscejdkrode_ndefdYZdefdYZdeefdYZdeefdYZdeefdYZdeefdYZ d eefd!YZ!d"eefd#YZ"d$eefd%YZ#d&e$e"fd'e$e"fd(e%edfd)e$e#fd*e!fd+e$e fd,e&fd-e'fd.e(fd/e$e$e"fg e"_)d&e$e#fd'e$e#fd0e*edfd1e$e"fd2e+fd3e$e"fge#_)e&Z,d4d<d5YZ-da/d6Z0d7Z1d8Z2d9ej3j4fd:YZ5d;Z6dS(=i(t*N(tUSBError(t methodtracesWander Lairson Costat get_backendsusb.backend.libusb0itbsdtmactdarwinitwin32tcygwinit.t _PackPolicycBseZRS((t__name__t __module__(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR >sit_usb_descriptor_headercBs&eZdZdefdefgZRS(itblengthtbDescriptorType(R R t_pack_tc_uint8t_fields_(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR Fs t_usb_string_descriptorcBs/eZdZdefdefdefgZRS(itbLengthRtwData(R R RRtc_uint16R(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRKs  t_usb_endpoint_descriptorc BsneZdefdefdefdefdefdefdefdefdeefd efg ZRS( RRtbEndpointAddresst bmAttributestwMaxPacketSizet bIntervaltbRefresht bSynchAddresstextratextralen(R R RRtPOINTERtc_intR(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRQs        t_usb_interface_descriptorc BseZdefdefdefdefdefdefdefdefdefd eefd eefd efg ZRS( RRtbInterfaceNumbertbAlternateSettingt bNumEndpointstbInterfaceClasstbInterfaceSubClasstbInterfaceProtocolt iInterfacetendpointRR(R R RR RR!R(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR"]s         t_usb_interfacecBs&eZdeefdefgZRS(t altsettingtnum_altsetting(R R R R"R!R(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR+kst_usb_config_descriptorc Bs}eZdefdefdefdefdefdefdefdefdeefd eefd efg ZRS( RRt wTotalLengthtbNumInterfacestbConfigurationValuetiConfigurationRt bMaxPowert interfaceRR(R R RRR R+R!R(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR.os        t_usb_device_descriptorcBseZdZdefdefdefdefdefdefdefdefd efd efd efd efd efdefgZRS(iRRtbcdUSBt bDeviceClasstbDeviceSubClasstbDeviceProtocoltbMaxPacketSize0tidVendort idProductt bcdDevicet iManufacturertiProductt iSerialNumbertbNumConfigurations(R R RRRR(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyR5|s             t _usb_devicecBseZRS((R R (((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRBst_usb_buscBseZRS((R R (((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRCstnexttprevtfilenametbust descriptortconfigtdevtdevnumt num_childrentchildrentdirnametdevicestlocationtroot_devt_DeviceDescriptorcBseZdZRS(cCs|j}|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j |_ |j |_ |j |_ |j |_ |j |_ |j|_|j|_|jdj|_d|_dS(Ni(RHRRR6R7R8R9R:R;R<R=R>R?R@RARKtaddressRGRPtNonet port_number(tselfRJtdesc((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt__init__s$                (R R RX(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRRscCstjdkrgd }x|D]D}tjdkr>|d}ntjj|}|dk rPqqWn7ytdSWntjdd t nXt d t|S( NRsusb-0.1tusbtlibusb0Rs.dlls cygusb0.dlls&Libusb 0 could not be loaded in cygwintexc_infosUSB library could not be found(susb-0.1susbRZ( tsystplatformtctypestutilt find_libraryRTtCDLLt_loggerterrortTruetOSError(t candidatest candidatetlibname((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt _load_librarys    cCsttg|j_t|j_tg|j_ttttt g|j _tttt g|j _ttt t t tg|j_tt t t tg|j_tttttg|j_tttttg|j_tttttg|j_tttttg|j_ttttttttg|j_ttg|j_ttg|j_ttg|j_ttg|j_ttg|j_ttg|j_tg|j_g|j_t|j_tg|j_tg|j_tt|j_tt|j _dS(N(!R RBtusb_opentargtypest_usb_dev_handletrestypet usb_closeR!tc_char_ptc_size_ttusb_get_stringtusb_get_string_simpletc_ubytetc_void_ptusb_get_descriptor_by_endpointtusb_get_descriptortusb_bulk_writet usb_bulk_readtusb_interrupt_writetusb_interrupt_readtusb_control_msgtusb_set_configurationtusb_claim_interfacetusb_release_interfacetusb_set_altinterfacet usb_reseteptusb_clear_haltt usb_resett usb_strerrort usb_set_debugt usb_deviceRCtusb_get_busses(tlib((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt_setup_prototypess          cCs~|dkrtj}nPt|}|dkrgtj}|jdkrktj| }qkn|St||dS(Nisno error(RTt_libRtinttlowertoststrerrorR(tretvalterrmsgtret((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt_checkys    t_LibUSBcBseZeedZeedZeedZeedZeedZeedZ eedZ eedZ eedZ eed Z eed Zeed Zeed Zeed ZeedZeedZeedZeedZeedZdZdZRS(ccsttjttjtj}xSt|r|dj}x&t|rp|dV|dj}qKW|dj}q/WdS(Ni(RRtusb_find_bussestusb_find_devicesRtboolRORD(RVRGRJ((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytenumerate_devicess   cCs t|S(N(RR(RVRJ((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytget_device_descriptorscCs6||jjkr+tdt|n|j|S(NsInvalid configuration index (RHRAt IndexErrortstrRI(RVRJRI((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytget_configuration_descriptorscCsz|j||}||jkr:tdt|n|j|}||jkrotdt|n|j|S(NsInvalid interface index s Invalid alternate setting index (RR0RRR4R-R,(RVRJtintftaltRItcfgdescR4((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytget_interface_descriptors cCsK|j||||}||jkr@tdt|n|j|S(NsInvalid endpoint index (RR%RRR*(RVRJtepRRRIR4((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytget_endpoint_descriptorscCsttj|S(N(RRRj(RVRJ((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt open_devicescCsttj|dS(N(RRRn(RVt dev_handle((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt close_devicescCsttj||dS(N(RRR|(RVRt config_value((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytset_configurationscCsttj||dS(N(RRR(RVRRR,((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytset_interface_altsettingscCsMtjjtjjtjjtjj}|j||ddddddS(Niiiid(RYR_tbuild_request_typetCTRL_INtCTRL_TYPE_STANDARDtCTRL_RECIPIENT_DEVICEt ctrl_transfer(RVRt bmRequestType((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytget_configurations    cCsttj||dS(N(RRR}(RVRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytclaim_interfacescCsttj||dS(N(RRR~(RVRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytrelease_interfacescCs|jtj|||||S(N(t_LibUSB__writeRRw(RVRRRtdatattimeout((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt bulk_writes  cCs|jtj|||||S(N(t _LibUSB__readRRx(RVRRRtsizeR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt bulk_reads  cCs|jtj|||||S(N(RRRy(RVRRRRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt intr_writes  cCs|jtj|||||S(N(RRRz(RVRRRRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt intr_reads  c Cstjj|tjjkrn|j\}} | |j9} ttj|||||t |t | |St j d|} t ttj|||||t | jdt ||} | | SdS(Ni(i(RYR_tctrl_directiontCTRL_OUTt buffer_infotitemsizeRRR{tcastRot_interoptas_arrayR( RVRRtbRequesttwValuetwIndextdata_or_wLengthRRStlengthRtread((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRs0      cCsttj|dS(N(RRR(RVR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt reset_device$scCsttj||dS(N(RRtusb_detach_kernel_driver_np(RVRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytdetach_kernel_driver(sc CsJ|j\}}||j9}tt|||t|t||S(N(RRRRRRo( RVtfnRRRRRRSR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt__write,s   c Csgtjd|}|j\}} | |j9} tt|||t|t| |} || S(Nt(RRRRRRRRo( RVRRRRRRRRSRR((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyt__read7s   (R R RRbRRRRRRRRRRRRRRRRRRRRR(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRs*     % cCscy7tdkr/tatttjntSWn%tk r^tjddt dSXdS(Ns Error loading libusb 0.1 backendR[( RRTRiRtusb_initRt ExceptionRbRcRd(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pyRDs      ((7R^t ctypes.utilRt usb.backendRYtusb.utilR\tusb.coreRt usb._debugRt usb._interopRtloggingt __author__t__all__t getLoggerRbt _PC_PATH_MAXR]tfindt _PATH_MAXtpathconftobjectR Rt StructureR RRR"R+R.R5RBRCR tc_int8RtRRsRtc_chartc_uint32RlRRRTRRiRRtbackendtIBackendRR(((s7/usr/lib/python2.7/site-packages/usb/backend/libusb0.pytsn        0