Principles of Reactive Programming Assignment 4