Refactored requiring arguments