I did a previous attempt, which was failing. I think we can support this if we treat required fields at the same time as constructor parameters.