*fixed some janky OOP