dotmap based on http://bmander.com/dotmap/index.html