A side comment... I find using `new Xxx` extremely confusing, error prone and inconvenient, and try to avoid it as much as possible.
The `Xxx()` constructor feels much better, and it would do implicit `new` call. And you don't need to change the code if later you would decide to change the object from `ref` to plain `object`.