Replaced lists by maps and simplified the mixins.