HW2 W3 Libardo Lopez implementation