rules can now handle arrays of arguments