revamped for SS3.0.x