centralized shtuff.
added noise function