back to map_async;lots of other fixes