Can you please write up a description as to how this might work in D, and post it to d.development.ideas?