restore client, unfinished