refactor and demo
demo with sound. niceeeee