Now handles all methods - except user input