Again, trying new things to improve high level design of solution