made diffusion_type unique