type variables now prefixed by ?
start meaning state
unpack additional exercises