These are the pseudocode and the uml diagram stuff