getting closer but still need lots of beautification