adding Guava.
returning Mapping of each piece to its index