updated and fixed some weirdness