remove more assumptions