forked from: Mosaic Smoke

