this would work though I am sure there are holes in parts of reasoning