#4 Add code and test suit for supporting methods