make sure each subroutine ends with return