removed unneeded calls to match.call and toString, for efficiency