Same as above: should we use a weak map, or the iteration is ok?