Final as submitted...missing a few exception handling