Implement forward-iteration-protocol