forked from: Error Diffusion

