reversed argument length check to be sane