stage 3

nearly done