new waveform kernel