first commit, partially working