Use metadata rather than a special field in the map.
This fixes issue: #4 the equality problem