Updated to reflect new functions added in part 2