Refactor to use base ArgumentConstraint
Remove access to arguments array