added lesson functionality