some better names for the indexes and layer ( domains, members, enumarates)