generalized level1 client
added new tasks in TODO