adding the confusing example of parametised types