added image generation