MZ@ !L!This program cannot be run in DOS mode. $AV27\7\7\ OɅ7\ O߅ 7\ O؅7\7]7\ Oυ 7\ OՅ7\ O΅7\ Oͅ7\Rich7\PEL`U!  ZZ8apd\d `r8@p@.text'XZ `.rdataD p"^@@.datax*(@.reloc @Bu3ËÍPd$@uVW+xWjpu_^SWVp _^̊V3ʄtI<.uFAAut3^RptL$^VW=pj j׋tjj׃uVp_3^fT$fL$fPT$ HL$F_FVN F^SUl$VD$QDq؅trf{Wu:f{ u3{ t*ID$L$RUPQ-t0puۋD$ hRhPp_^]3[_^][pw$^]*[^]*[^]*[I3ĉ$SU$$VWhD$!jPt$D$ D$(Uh$1jQƄ$8ThU\$:Q|$SVWuqq_^[Yt~tjVQh,vr_^[Yj3ۅFNPQpVPRqPWh$vruXOQW҃_^[Yj3ۅt1FPqQWh vr u WBWЃ_^[ỸVC WtXh wPq3_^ËAD$D$@Tu#H tqQhvPlq 3_^ÍT$RD$ PT$RD$PhlvhvQqFL$ jQT$Rq D$=|$v hvfS PfpfFD$PpL$T$FN_^ËA@Tu"P tqRh0vQlq 3_^ÍT$RD$PhlvhtvQqtnL$jQDT$Rq |ID$=w(PfpT$fF_^hvqQq_3^̋@ t)t Xh,]̋D$VPquqt3^SWq}3\$KVQPqWq_}S[^qq[^U4SVF W\$0D$,^ D$(qF \$8pqD$0$j uEM UPFQRP$qD$,Sqt?|$(tW=p=3't =3'u?ql$8\$0wD$(j PhXwQq_^[]ËD$,}V҃_^[]̃ T$D$PL$QhwRD$qtD$}qhwQq3 Pjr$tT$L$RQPD$v }$$8u PPBЃ3 ;D$tPL$Qq|$ ÃtPtqh(yQlq 9T$RD$PL$LQhyVqT$RD$HPhyVqqu7L$DT$LD$(L$,L$PD$|T$(u%L$DQr3_^[$3 ]C \$0[ D$qC \$8IpqD$0$j u'T$(L$RT$(D$|PD$4QKRPQqD$ Wqt;|$tm5p=3't =3'uUql$8\$0h|$_T$DRrPhXwPq3_^[$3]ÍL$DQrD$$}S_^[$3X]P r$_^[39]̋D$WPquqt3_SVq\$KWQqVq^}S[_qq[_̃Vt$(W=qD$PL$ QhTyVD$׃t.D$==t qPh|yPlq _3^ÍL$ QT$ RD$ PL$QhlyV׃tՋL$jjT$RT$4jjj D$0PBQPpteL$ Qq_^ÍT$RD$ Ph`yVD$ ׃pD$jjL$QL$4jjjT$(RQPRpu _^ËD$ Pq_^Vt$FtPt+XhuPq3_^[$3]Í\$ D$ \$D$qL$VQS@qWqT$VR$_^[32]ÃT$$PL$QhzRD$quVWqL$ D$PQ0qWquXh,zRq_3^FPqQ r_^̃T$$PL$QhDzRD$q|$wbVWqL$ D$PQpRqWquXhzPq_3^ËQ4r_^ËqhXzPq3QL$ $PhzQq uYVWqT$R qWquXhzPq_3^YNQ r_^YQL$ $PhzQq t$}qhzPq3YPqP rY̋L$QBTVWt6quqt _3^Å}EqhzQq_3^ét7Qqu=qׅuׅuVpPq_^ËR tqRhzQlq _^QL$ $Ph{Qq t$}qhzPq3YPpP rY̋L$QBTVt4quqt3^Å}4* ʏ > 9 s o 58t7p34 .:Xh~Ό܋ȋr\J4 ЊtfT>&ډƉ~jP@&҈ˆl]h`U?r`setdefaulttimeoutgetdefaulttimeoutinet_ntoainet_atonhtonlhtonsntohlntohsgetprotobynamegetservbyportgetservbynamegethostnamegethostbyaddrgethostbyname_exgethostbyname_socket.socketthe socket timeouttimeoutthe socket protocolprotothe socket typetypethe socket familyfamilyshutdownsetsockoptgettimeoutsettimeoutsetblockingsendtosendallsendrecvfrom_intorecvfromrecv_intorecvlistenioctlgetsockoptgetsocknamegetpeernamefilenoconnect_exconnectclosebindacceptflagsnbytesbufferfreeaddrinfogetnameinfogetaddrinfoudptcp65535%u\ws2_32\wship6unable to select on sockethost not found(is)getaddrinfo failed0unsupported address familywildcard resolved to multiple addressaddress family mismatched%d.%d.%d.%d%cunknown address familyOiOiIIis#getsockaddrarg: AF_INET address must be tuple, not %.500sidnaeti:getsockaddrarggetsockaddrarg: port must be 0-65535.getsockaddrarg: AF_INET6 address must be tuple, not %.500seti|IIgetsockaddrarg: flowinfo must be 0-1048575.getsockaddrarg: bad familygetsockaddrlen: bad familytimed outTimeout value out of rangeiii:setsockoptiis#:setsockoptii|i:getsockoptgetsockopt buflen out of rangei|i:recvnegative buffersize in recvw*|ii:recv_intonegative buffersize in recv_intobuffer too small for requested bytesi|i:recvfromnegative buffersize in recvfromw*|ii:recvfrom_intonegative buffersize in recvfrom_intonbytes is greater than the length of the bufferlNs*|i:sends*|i:sendalls*O:sendtos*iO:sendtosendto() takes 2 or 3 arguments (%d given)kO:ioctlkI:ioctlk(kkk):ioctlinvalid ioctl command %d|iii:sockets:gethostbynamesOOs:gethostbyname_exs:gethostbyaddrs|s:getservbynameservice/proto not foundi|s:getservbyportgetservbyport: port must be 0-65535.port/proto not founds:getprotobynameprotocol not foundi:ntohscan't convert negative number to unsigned longexpected int/long, %s foundi:htonss:inet_aton255.255.255.255illegal IP address string passed to inet_atons#:inet_ntoapacked IP wrong length for inet_ntoaOO|iiii:getaddrinfosencodegetaddrinfo() argument 1 must be string or None%ldgetaddrinfo() argument 2 must be integer or stringiiisOOi:getnameinfogetnameinfo() argument 1 must be a tuplesi|II%dsockaddr resolved to multiple addressesIPv4 sockaddr must be 2 tuplessWSAStartup failed: network not readyWSAStartup failed: requested version not supportedWSAStartup failed: error code %d_socketsocket.errorerrorsocket.herrorherrorsocket.gaierrorgaierrorsocket.timeoutSocketTypesockethas_ipv6_socket.CAPICAPIAF_UNSPECAF_INETAF_INET6AF_IPXAF_APPLETALKAF_DECnetAF_SNAAF_IRDASOCK_STREAMSOCK_DGRAMSOCK_RAWSOCK_SEQPACKETSOCK_RDMSO_DEBUGSO_ACCEPTCONNSO_REUSEADDRSO_EXCLUSIVEADDRUSESO_KEEPALIVESO_DONTROUTESO_BROADCASTSO_USELOOPBACKSO_LINGERSO_OOBINLINESO_SNDBUFSO_RCVBUFSO_SNDLOWATSO_RCVLOWATSO_SNDTIMEOSO_RCVTIMEOSO_ERRORSO_TYPESOMAXCONNMSG_OOBMSG_PEEKMSG_DONTROUTEMSG_TRUNCMSG_CTRUNCSOL_SOCKETSOL_IPSOL_TCPSOL_UDPIPPROTO_IPIPPROTO_ICMPIPPROTO_TCPIPPROTO_UDPIPPROTO_RAWIPPORT_RESERVEDIPPORT_USERRESERVEDINADDR_ANYINADDR_BROADCASTINADDR_LOOPBACKINADDR_UNSPEC_GROUPINADDR_ALLHOSTS_GROUPINADDR_MAX_LOCAL_GROUPINADDR_NONEIP_OPTIONSIP_HDRINCLIP_TOSIP_TTLIP_RECVDSTADDRIP_MULTICAST_IFIP_MULTICAST_TTLIP_MULTICAST_LOOPIP_ADD_MEMBERSHIPIP_DROP_MEMBERSHIPIPV6_JOIN_GROUPIPV6_LEAVE_GROUPIPV6_MULTICAST_HOPSIPV6_MULTICAST_IFIPV6_MULTICAST_LOOPIPV6_UNICAST_HOPSIPV6_V6ONLYIPV6_CHECKSUMIPV6_DONTFRAGIPV6_HOPLIMITIPV6_HOPOPTSIPV6_PKTINFOIPV6_RECVRTHDRIPV6_RECVTCLASSIPV6_RTHDRIPV6_TCLASSTCP_NODELAYTCP_MAXSEGEAI_AGAINEAI_BADFLAGSEAI_FAILEAI_FAMILYEAI_MEMORYEAI_NODATAEAI_NONAMEEAI_SERVICEEAI_SOCKTYPEAI_PASSIVEAI_CANONNAMEAI_NUMERICHOSTAI_NUMERICSERVAI_ALLAI_ADDRCONFIGAI_V4MAPPEDNI_MAXHOSTNI_MAXSERVNI_NOFQDNNI_NUMERICHOSTNI_NAMEREQDNI_NUMERICSERVNI_DGRAMSHUT_RDSHUT_WRSHUT_RDWRSIO_RCVALLSIO_KEEPALIVE_VALSRCVALL_OFFRCVALL_ONRCVALL_SOCKETLEVELONLYRCVALL_MAX.AHRSDSQנPP}LS C:\build27\cpython\PCbuild\_socket.pdbue-a` a cddgg p^pތXq lLp4PjzN<&Ҏ ԍHV^hƍx`TJ>4* ʏ > 9 s o 58t7p34 .:Xh~Ό܋ȋr\J4 ЊtfT>&ډƉ~jP@&҈ˆl6WSAIoctlWS2_32.dllbFreeLibraryoGetSystemDirectoryAEGetProcAddress<LoadLibraryAKERNEL32.dllPyString_FromStringPyErr_CheckSignalsSPyInt_FromSsize_tPyFloat_FromDoublePyExc_IOErrorQPyInt_FromLongPyBuffer_Release5Py_BuildValuePyString_FromStringAndSizePyObject_ClearWeakRefsKPyInt_AsLongPyObject_GenericGetAttrvPyString_AsStringPyErr_SetFromErrnoPyThread_acquire_lock~PyLong_FromUnsignedLong_PyTime_FloatTime_PyInt_AsIntPyThread_allocate_lock@PyCapsule_NewPyErr_SetObjectPyEval_RestoreThreadPyExc_OverflowError_Py_NoneStructPyMem_FreePyEval_SaveThreadPyArg_ParseTuplePyTuple_SizePyOS_snprintfPyExc_ValueErrorPyErr_OccurredPyObject_FreePyModule_AddIntConstantPyErr_SetStringPyObject_CallMethodPyType_GenericAlloc _Py_TrueStructPyErr_NewExceptionrPyLong_AsUnsignedLongmPyLong_AsLongPyArg_ParseTupleAndKeywordsPyTuple_Pack_PyString_ResizePyType_TypePyErr_ClearPyFloat_AsDoubleePyList_NewPyType_GenericNew4Py_AtExitPyErr_SetExcFromWindowsErrPyErr_FormatPyModule_AddObjectPyExc_TypeErrorVPy_InitModule4PyExc_ImportErrorPyThread_release_lock_PyList_Appendpython27.dllGsprintf_sJsscanffreecallocTstrerrorNstrchrp_errno[strncpyRstrcpy_sfstrtoulMstrcat_s\strncpy_sMSVCR90.dllj_encode_pointer_malloc_crtk_encoded_null`_decode_pointer_initterm_initterm_e_amsg_exit _adjust_fdivj__CppXcptFilterK_crt_debugger_hook__clean_type_info_names_internal_unlock__dllonexitv_lock_onexits_except_handler4_commonInterlockedExchangeSleepInterlockedCompareExchangeTerminateProcessGetCurrentProcessUnhandledExceptionFilterSetUnhandledExceptionFilterIsDebuggerPresentDisableThreadLibraryCallsQueryPerformanceCounterGetTickCountGetCurrentThreadIdGetCurrentProcessIdyGetSystemTimeAsFileTime*memset&memcpy`US`(4_socket.pydinit_socketinit_sockobjectN@Dsocket([family[, type[, proto]]]) -> socket object Open a socket of the given type. The family argument specifies the address family; it defaults to AF_INET. The type argument specifies whether this is a stream (SOCK_STREAM, this is the default) or datagram (SOCK_DGRAM) socket. The protocol argument defaults to 0, specifying the default protocol. Keyword arguments are accepted. A socket object represents one endpoint of a network connection. Methods of socket objects (keyword arguments not allowed): accept() -- accept a connection, returning new socket and client address bind(addr) -- bind the socket to a local address close() -- close the socket connect(addr) -- connect the socket to a remote address connect_ex(addr) -- connect, return an error code instead of an exception dup() -- return a new socket object identical to the current one [*] fileno() -- return underlying file descriptor getpeername() -- return remote address [*] getsockname() -- return local address getsockopt(level, optname[, buflen]) -- get socket options gettimeout() -- return timeout or None listen(n) -- start listening for incoming connections makefile([mode, [bufsize]]) -- return a file object for the socket [*] recv(buflen[, flags]) -- receive data recv_into(buffer[, nbytes[, flags]]) -- receive data (into a buffer) recvfrom(buflen[, flags]) -- receive data and sender's address recvfrom_into(buffer[, nbytes, [, flags]) -- receive data and sender's address (into a buffer) sendall(data[, flags]) -- send all data send(data[, flags]) -- send data, may not send all of it sendto(data[, flags], addr) -- send data to a given address setblocking(0 | 1) -- set or clear the blocking I/O flag setsockopt(level, optname, value) -- set socket options settimeout(None | float) -- set or clear the timeout shutdown(how) -- shut down traffic in one or both directions [*] not available on all platforms!accept() -> (socket object, address info) Wait for an incoming connection. Return a new socket representing the connection, and the address of the client. For IP sockets, the address info is a pair (hostaddr, port).setblocking(flag) Set the socket to blocking (flag is true) or non-blocking (false). setblocking(True) is equivalent to settimeout(None); setblocking(False) is equivalent to settimeout(0.0).settimeout(timeout) Set a timeout on socket operations. 'timeout' can be a float, giving in seconds, or None. Setting a timeout of None disables the timeout feature and is equivalent to setblocking(1). Setting a timeout of zero is the same as setblocking(0).gettimeout() -> timeout Returns the timeout in seconds (float) associated with socket operations. A timeout of None indicates that timeouts on socket operations are disabled.setsockopt(level, option, value) Set a socket option. See the Unix manual for level and option. The value argument can either be an integer or a string.getsockopt(level, option[, buffersize]) -> value Get a socket option. See the Unix manual for level and option. If a nonzero buffersize argument is given, the return value is a string of that length; otherwise it is an integer.bind(address) Bind the socket to a local address. For IP sockets, the address is a pair (host, port); the host must refer to the local host. For raw packet sockets the address is a tuple (ifname, proto [,pkttype [,hatype]])close() Close the socket. It cannot be used after this call.connect(address) Connect the socket to a remote address. For IP sockets, the address is a pair (host, port).connect_ex(address) -> errno This is like connect(address), but returns an error code (the errno value) instead of raising an exception when an error occurs.fileno() -> integer Return the integer file descriptor of the socket.getsockname() -> address info Return the address of the local endpoint. For IP sockets, the address info is a pair (hostaddr, port).getpeername() -> address info Return the address of the remote endpoint. For IP sockets, the address info is a pair (hostaddr, port).listen(backlog) Enable a server to accept connections. The backlog argument must be at least 0 (if it is lower, it is set to 0); it specifies the number of unaccepted connections that the system will allow before refusing new connections.recv(buffersize[, flags]) -> data Receive up to buffersize bytes from the socket. For the optional flags argument, see the Unix manual. When no data is available, block until at least one byte is available or until the remote end is closed. When the remote end is closed and all data is read, return the empty string.tttrecv_into(buffer, [nbytes[, flags]]) -> nbytes_read A version of recv() that stores its data into a buffer rather than creating a new string. Receive up to buffersize bytes from the socket. If buffersize is not specified (or 0), receive up to the size available in the given buffer. See recv() for documentation about the flags.recvfrom(buffersize[, flags]) -> (data, address info) Like recv(buffersize, flags) but also return the sender's address info.tttrecvfrom_into(buffer[, nbytes[, flags]]) -> (nbytes, address info) Like recv_into(buffer[, nbytes[, flags]]) but also return the sender's address info.send(data[, flags]) -> count Send a data string to the socket. For the optional flags argument, see the Unix manual. Return the number of bytes sent; this may be less than len(data) if the network is busy.sendall(data[, flags]) Send a data string to the socket. For the optional flags argument, see the Unix manual. This calls send() repeatedly until all data is sent. If an error occurs, it's impossible to tell how much data has been sent.sendto(data[, flags], address) -> count Like send(data, flags) but allows specifying the destination address. For IP sockets, the address is a pair (hostaddr, port).shutdown(flag) Shut down the reading side of the socket (flag == SHUT_RD), the writing side of the socket (flag == SHUT_WR), or both ends (flag == SHUT_RDWR).ioctl(cmd, option) -> long Control the socket with WSAIoctl syscall. Currently supported 'cmd' values are SIO_RCVALL: 'option' must be one of the socket.RCVALL_* constants. SIO_KEEPALIVE_VALS: 'option' is a tuple of (onoff, timeout, interval).t`&tp+pt0,Tt-t.t`/tP0xt/|t@*tt>lt 1dt2Xt`3PLt06Hs ssssss |ssssls0?@d\(`@\@\gethostname() -> string Return the current host name.gethostbyname(host) -> address Return the IP address (a string of the form '255.255.255.255') for a host.gethostbyname_ex(host) -> (name, aliaslist, addresslist) Return the true host name, a list of aliases, and a list of IP addresses, for a host. The host argument is a string giving a host name or IP number.gethostbyaddr(host) -> (name, aliaslist, addresslist) Return the true host name, a list of aliases, and a list of IP addresses, for a host. The host argument is a string giving a host name or IP number.getservbyname(servicename[, protocolname]) -> integer Return a port number from a service name and protocol name. The optional protocol name, if given, should be 'tcp' or 'udp', otherwise any protocol will match.getservbyport(port[, protocolname]) -> string Return the service name from a port number and protocol name. The optional protocol name, if given, should be 'tcp' or 'udp', otherwise any protocol will match.getprotobyname(name) -> integer Return the protocol number for the named protocol. (Rarely used.)ntohs(integer) -> integer Convert a 16-bit integer from network to host byte order.ntohl(integer) -> integer Convert a 32-bit integer from network to host byte order.htons(integer) -> integer Convert a 16-bit integer from host to network byte order.htonl(integer) -> integer Convert a 32-bit integer from host to network byte order.inet_aton(string) -> packed 32-bit IP representation Convert an IP address in string format (123.45.67.89) to the 32-bit packed binary format used in low-level network functions.inet_ntoa(packed_ip) -> ip_address_string Convert an IP address from 32-bit packed binary format to string formatgetaddrinfo(host, port [, family, socktype, proto, flags]) -> list of (family, socktype, proto, canonname, sockaddr) Resolve host and port into addrinfo struct.getnameinfo(sockaddr, flags) --> (host, port) Get host and port for a sockaddr.getdefaulttimeout() -> timeout Returns the default timeout in seconds (float) for new socket objects. A value of None indicates that new socket objects have no timeout. When the socket module is first imported, the default is None.setdefaulttimeout(timeout) Set the default timeout in seconds (float) for new socket objects. A value of None indicates that new socket objects have no timeout. When the socket module is first imported, the default is None.\sBػHspEH8s0F,sAs G sGrHrHrPIPrJr`JrKXrKuLtO0r@RrRxغImplementation module for socket operations. See the socket module for documentation.utpt0#080{0009111111112z2334?4u55555697t777M8V8q8|888889)9@9997:F:S:[:c:k:s:{::::::::: ;#;E;J;X;`;;;;;;;;<<"f>>>>L?S?\?a?s??????????? 40,040:0A0o00001"1o111111111 292L2e222222.353U3[3333333394>4E4u4}44444455(5[5c5j555555556/646;6m66667)7>7V7r7w7~778x888888899!9(9/9F9P9q9x99999::.:5:V:e::::;@;R;W;^;};;;;<,><>A>H>>>>?#?1?8>H>Y>b>v>}>>>>>> ? >'>i>|>>>> ?v???????P0;0B0I0|000000111>1C1M1o1t1{111112 2D2T2]2j22222222222223353N3T3s3333333344444#464?4G4Q4a4g4l4{44444444444445555$575?5I5N5T5Z5n5t5~5555555555555666"6/696C6M6Z6g6w66666666666677)737=7G7T7]7g7q7~777777777778 88$8.888B8L8V8c8m8w8888888888888899!9.9;9H9R9_9o9|999999999999:::%:/:;:E:c:k:x::::::::&;2;@;F;L;R;X;^;d;j;p;v;|;;;;;;;;;;;;;;;;;;;;;;<< <<<<$<*<0<6<<=D=J=P=`=f=l=r=x=~============= >>>)>?>H>`>x>>>>>>>>>>>>?$?5?M?e?k?????????`000%0B0O0g000/1g1m1s1y1111111111111111112 222-22282>2T2[2b2p2{22222222-323S3X3x3~333(4-4?4]4q4w44444555:55555555556'62686>6D6J6P6V6\6b6h6n6t6z6666666666^7d7k7 8pL2P222t4x444454585T5X5<2@2D2 4$4(488888899 9999 9$9,90949<9@9D9L9P9T9\9`9d9l9p9t9|9999999999999999999999999:: :::: :$:,:0:4:<:@:D:L:`:p:t:::::::::::; ;0;L;P;l;p;t;x;|`5d5l5p5t5|555555555555555555555555566 6666 6$6,60646<6@6D6L6P6T6\6`6d6l66666666