refactor complete. Can parse keys