add icon generation