Needs a couple last tweak but 99% part3 design