Finished #852. No client visual yet.