second commit, basic framework