Refactor to match the general pattern that Connect uses