How To Create A Diffusion Model