rework of Sparkle