added feedback vs feedforward implementation