change the way of implementing map iteration
finish map refactoring with RELEASE