That is awesome!

Interesting use of positional maps to transfer the data. If performance is an issue, you can actually improve that part...