fix iterator return