don't make as many assumptions