Having a play with how the logic could work. Still needs a bit more thinking and will probably change a bit.