added threaded proxy