anchor.diff:        !-------------------------------------------------------------------------------------------------
         ! Initialize FVW module if it is used
         !-------------------------------------------------------------------------------------------------
  -
  +      ! Unfortunately we do not know the interpolation order used by OpenFAST glue code at this point,
  +      ! so we can't size things exactly.  This means that we either must size too big here, or we must
  +      ! resize in the FVW code at the first CalcOutput call.  This is a bit problematic for efficiency
  +      ! but not a complete deal-breaker.
      if (p%WakeMod == WakeMod_FVW) then
  -!FIXME: figure out how to allocate based on the order of interpolation for extrap_unterp.
  -      if (.not. allocated(m%FVW_u))   Allocate(m%FVW_u(3))
  +      if (.not. allocated(m%FVW_u))   Allocate(m%FVW_u(3))  !size(u)))
         call Init_FVWmodule( InputFileData, u, m%FVW_u(1), p, x%FVW, xd%FVW, z%FVW, &
                                 OtherState%FVW, m%FVW_y, m%FVW, ErrStat2, ErrMsg2 )
            call SetErrStat( ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName )
  
positive.code:       call SetInputsForFVW(p, u, m, errStat2, errMsg2)
           call SetErrStat(ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName)
           ! Note: the setup is handled above in the SetInputs routine
  !FIXME: do we want the hub orientation and rotation? Maybe motion also? u%HubMotion%Orientation(:,:,1)
        call FVW_UpdateStates( t, n, m%FVW_u, utimes, p%FVW, x%FVW, xd%FVW, z%FVW, OtherState%FVW, m%FVW, ErrStat2, ErrMsg2 )
           call SetErrStat(ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName)
     endif
  
negative.code:                   
     call SetOutputsFromBEMT(p, m, y )
  
     if (p%WakeMod == WakeMod_FVW) then
           ! This needs to extract the inputs from the AD data types (mesh) and copy pieces for the FVW module
        call SetInputsForFVW(p, (/u/), m, errStat2, errMsg2)
           call SetErrStat(ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName)
           ! Calculate Outputs at time t
        CALL FVW_CalcOutput( t, m%FVW_u(1), p%FVW, x%FVW, xd%FVW, z%FVW, OtherState%FVW, m%FVW_y, m%FVW, ErrStat, ErrMsg2 )
           call SetErrStat(ErrStat2, ErrMsg2, ErrStat, ErrMsg, RoutineName)
  
        ! Add anything that should be passed here
     endif
              
     if ( p%TwrAero ) then
        call ADTwr_CalcOutput(p, u, m, y, ErrStat2, ErrMsg2 )
  