first commit

the first commit with all code