enables overriding a methods body when specific arguments are provided
Refactoring to remove duplication
enables throwing an exception for a method invocation when specific arguments are provided