• wow, what great timing, thanks Ken!

    I have just been given an assignment to produce something exactly like this and earlier solutions I found seemed quite cumbersome.