Proposed solution

This solution works with my simple example.  Please do sanity check