don't use deprecated has_key