Yes, it looks like there's an opportunity to refactor and collapse a bit