Most of the basic stuff is done