They could. My concern was that when you get a backtrace from an exception thrown as a consequence of a failing validation, you cannot see from that backtrace whatever the initial value was that caused the validator to fail. Now, for scalar values this has been solved by adding the type and value to the message. Non-scalar values, however, won't show up. If you create a backtrace outside of the validator, the trace will not show the value that has caused the validator to fail. If you create a backtrace inside the `->validate()` method, the value passed along will be present inside the backtrace. Below is an example of that:

```
16:46 ~ $ php -a
Interactive mode enabled

php > var_dump(debug_backtrace());
array(0) {
}
php > var_dump(call_user_func_array(function ($a) { return debug_backtrace();}, array(12)));
array(2) {
  [0] =>
  array(2) {
    'function' =>
    string(9) "{closure}"
    'args' =>
    array(1) {
      [0] =>
      int(12)
    }
  }
  [1] =>
  array(4) {
    'file' =>
    string(14) "php shell code"
    'line' =>
    int(1)
    'function' =>
    string(20) "call_user_func_array"
    'args' =>
    array(2) {
      [0] =>
      class Closure#1 (1) {
        ...
      }
      [1] =>
      array(1) {
        ...
      }
    }
  }
}
php > var_dump(debug_backtrace());
array(0) {
}
```