after submitting this i tried like 7 other ideas but none of them worked for one reason or another. i am sure at least one of them is possible and i've just missed how, so not expecting too much, but hopefully this is decent for what it's trying to do