/** Restore the additional stored state */
  protected void restoreState() {
    updateSiteModel =
        true; // this is required to upload the categoryRates to BEAGLE after the restore

    partialBufferHelper.restoreState();
    substitutionModelDelegate.restoreState();

    if (useScaleFactors || useAutoScaling) {
      scaleBufferHelper.restoreState();
      int[] tmp = storedScaleBufferIndices;
      storedScaleBufferIndices = scaleBufferIndices;
      scaleBufferIndices = tmp;
      //            rescalingCount = storedRescalingCount;
    }

    updateRestrictedNodePartials = true;

    super.restoreState();
  }