Example 1
First version implementing the first example