impl: effect: sinewave