initial commit
input func implemented
input func implemented