tweak to state example: more things type check with NoMonomorphismRestriction- unsuprisingly