KeyGroups implementation