Fixed ALL the bugs (i hope)