We should revisit this class in next PR, it feels odd.