added static number of arguments checks