changes to be able to specify multiple attributes with keys