code is almost done
code is almost done