If we don't have any data left, no need to do complex shift logic