I don't think these should be tacked onto `ThreadUI`