first

initial push
v1

first finished version