just pushing up what i have done so far