added key-value validations