It's a nice construct but it doesn't work with lazy loaded classes.
I'd prefer to leave this part as it is. I also consider it a bit easier to understand at a glance.