I got this far, but there is so much wrong with the implementation that I don't even dare publish the code yet simple smile Need to bother the JetBrains guys in the #C0CMKCL87 channel once I'm able to articulate some meaningful questions simple smile