use hash-based arguments.