better FWave code
better FWave