re factered a whole lof of shit things may break lol