going to make more changes but for now this SHOULD work.