probably better to explicitly pass the args