improved mapping