Down to 8 errors >.< afterwards need to clean up warnings