@asyncio.coroutine
def proxy_data(reader, writer):
    try:
        while 1:
            buf = (yield from reader.read(4096))
            if (not buf):
                break
            writer.write(buf)
            (yield from writer.drain())
        writer.close()
    except Exception:
        pass
@asyncio.coroutine
def proxy_data(reader, writer):
    try:
        while 1:
            buf = (yield from reader.read(4096))
            if (not buf):
                break
            writer.write(buf)
            (yield from writer.drain())
        writer.close()
    except Exception:
        pass