enhance the mapper to handle multiple for each on root mapping and add supporting random access the source element value.
Merge master/master