fixed ALL the bugs
merge conflicts