initial commint v0
iterator implementation