This took me a while, but here it is.
now time to test it...