S2 components - build framework on top of S2