pushValue (\u1 -> (\u2 -> u1)) minReads=(Right 1) mayRaise=["fail"] pushValue 'a' minReads=(Right 1) mayRaise=["fail"] lift2Value (\u1 -> (\u2 -> u1 u2)) minReads=(Right 1) mayRaise=["fail"] read ('a' ==) minReads=(Right 1) mayRaise=["fail"] lift2Value (\u1 -> (\u2 -> u1 u2)) minReads=(Right 0) mayRaise=[] ret minReads=(Right 0) mayRaise=[]