import requests
#url = "http://54.234.224.216:4433"
#url = "54.234.224.216:4433"


import os
import struct
import SocketServer
import zlib
import socket
import sys
from random import choice
import string

# Create a socket (SOCK_STREAM means a TCP socket)
'''
def gen_key(length=4, chars=string.lowercase + '_'):
    return ''.join([choice(chars) for i in range(length)])
def generate(chars=string.printable, length=4, prefix=None):
    if length < 1:
        return
    if not prefix:
        prefix = ''
    for char in chars:
        permutation = prefix + char
        if length == 1:
            yield permutation
        else:
            for sub_permutation in generate(chars, length - 1, prefix = permutation):
                yield sub_permutation
keys = generate()
for data in keys:
    length = struct.unpack('I', data)[0]
    if length > (1<<20):
       print "lb ", data, length
    else :
        print "!!!!!"
        data = self.rfile.read(length)
        print data
        sys.exit()
'''
#HOST, PORT = "54.234.224.216", 4433
HOST, PORT = "localhost", 4434
packed = struct.pack('I',(1<<20)+1)
print packed
data = packed
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
    # Connect to server and send data
    sock.connect((HOST, PORT))
    sock.sendall(data + "\n")
    print "sending"

    # Receive data from the server and shut down
    received = sock.recv(1024)
finally:
    sock.close()
    print "Sent:", data
    print "Recv:", received
    print len(received)
    print struct.unpack('I',received[0:4])
