Better argument passing