added triangle and sawtooth