Refactor for less branchy fetch