wrote Sec 2.2 : scat implementation