add intro section
some of step 5
implementation part of step 5