use less greenlet for proxying