implemented map and choose 2