2.4 Explanation of Subroutines