added driver and completed functionality for prog2