probably works for the most part now

I don't like the code