This is all a bit too difficult for my poor old brain. I haven't been able to come up with a solution, but I do have a comment on Dreams' solution:
And thanks to PDurrant for this interesting problem, even though I spent much too much time thinking about it.