add better way to iterate keys