working version

before major edits