draft3.c kinda fixed, draft4.c still not done