anchor.diff:        Re_Xferred   = Re_Xferred   + 1
         IntKiBuf ( Int_Xferred:Int_Xferred+(1)-1 ) = InData%NStepWave
         Int_Xferred   = Int_Xferred   + 1
  -  IF ( .NOT. ALLOCATED(InData%PtfmRefxt) ) THEN
  -    IntKiBuf( Int_Xferred ) = 0
  -    Int_Xferred = Int_Xferred + 1
  -  ELSE
  -    IntKiBuf( Int_Xferred ) = 1
  -    Int_Xferred = Int_Xferred + 1
  -    IntKiBuf( Int_Xferred    ) = LBOUND(InData%PtfmRefxt,1)
  -    IntKiBuf( Int_Xferred + 1) = UBOUND(InData%PtfmRefxt,1)
  -    Int_Xferred = Int_Xferred + 2
  -
  -      IF (SIZE(InData%PtfmRefxt)>0) ReKiBuf ( Re_Xferred:Re_Xferred+(SIZE(InData%PtfmRefxt))-1 ) = PACK(InData%PtfmRefxt,.TRUE.)
  -      Re_Xferred   = Re_Xferred   + SIZE(InData%PtfmRefxt)
  -  END IF
  -  IF ( .NOT. ALLOCATED(InData%PtfmRefyt) ) THEN
  -    IntKiBuf( Int_Xferred ) = 0
  -    Int_Xferred = Int_Xferred + 1
  -  ELSE
  -    IntKiBuf( Int_Xferred ) = 1
  -    Int_Xferred = Int_Xferred + 1
  -    IntKiBuf( Int_Xferred    ) = LBOUND(InData%PtfmRefyt,1)
  -    IntKiBuf( Int_Xferred + 1) = UBOUND(InData%PtfmRefyt,1)
  -    Int_Xferred = Int_Xferred + 2
  -
  -      IF (SIZE(InData%PtfmRefyt)>0) ReKiBuf ( Re_Xferred:Re_Xferred+(SIZE(InData%PtfmRefyt))-1 ) = PACK(InData%PtfmRefyt,.TRUE.)
  -      Re_Xferred   = Re_Xferred   + SIZE(InData%PtfmRefyt)
  -  END IF
     IF ( .NOT. ALLOCATED(InData%PtfmRefztRot) ) THEN
       IntKiBuf( Int_Xferred ) = 0
       Int_Xferred = Int_Xferred + 1
  
positive.code:     INTEGER(IntKi)  :: NBody      !< Number of WAMIT bodies for this State Space model [-]
      REAL(ReKi)  :: WaveDir      !< Wave direction [rad]
      INTEGER(IntKi)  :: NStepWave      !< Number of timesteps in the WaveTime array [-]
      REAL(ReKi) , DIMENSION(:), ALLOCATABLE  :: PtfmRefxt      !< The xt offset of the body reference point(s) from (0,0,0)  [1 to NBody; only used when PotMod=1 ] [(m)]
      REAL(ReKi) , DIMENSION(:), ALLOCATABLE  :: PtfmRefyt      !< The yt offset of the body reference point(s) from (0,0,0)  [1 to NBody; only used when PotMod=1 ] [(m)]
      REAL(R8Ki) , DIMENSION(:), ALLOCATABLE  :: PtfmRefztRot      !< The rotation about zt of the body reference frame(s) from xt/yt [radians]
      REAL(SiKi) , DIMENSION(:), ALLOCATABLE  :: WaveElev0      !< Wave elevation time history at origin [m]
      REAL(SiKi) , DIMENSION(:), ALLOCATABLE  :: WaveTime      !< Times where wave elevation is known [s]
  
negative.code:       Int_BufSz  = Int_BufSz  + 1  ! NBody
        Re_BufSz   = Re_BufSz   + 1  ! WaveDir
        Int_BufSz  = Int_BufSz  + 1  ! NStepWave
    Int_BufSz   = Int_BufSz   + 1     ! PtfmRefztRot allocated yes/no
    IF ( ALLOCATED(InData%PtfmRefztRot) ) THEN
      Int_BufSz   = Int_BufSz   + 2*1  ! PtfmRefztRot upper/lower bounds for each dimension
  