design changes and some meta functions in the map