This should contain all the code for this class