add assertion of arg length