fft: done. ifft: todo