updated add_noise fcn