Adding TODO: Move all of this logic to the backends