Technically works, just stupid structure
Making big changes