removed first two arguments, other simplifications