add remove method and iterator