But we can not simply replace top by st, since argmax can also be applied in other scenarios such as "the largest city".
argmax is a polymorphic function, and to assign a correct type for it we have to introduce type variables: where type variable 'a is a place-holder for "any type".