changed a ton of stuff, made it work