this may break things, but is how it needs done