init + client mostly done