Designing Associativity task2 by Mohamad Ghamlouch, Morten Bulow and Marko Vukovic.