updated with signal-noise