reactive - assignment 2