added map functionality