Shit ton of changes