squashed last 35 commits