smart map generation