added stack explanation