@edward before merge
@edward map.js
@jin merged