don't recursively map all the time