all non-helper functions now take the same arguments