pushValue (\u_0 -> \u_1 -> GHC.Show.show u_0)
  minReads=0
  mayRaise=[ExceptionFailure]
  alwaysRaise=[]
  freeRegs=[]
pushValue (\u_0 -> u_0)
  minReads=0
  mayRaise=[ExceptionFailure]
  alwaysRaise=[]
  freeRegs=[]
newRegister reg
  minReads=0
  mayRaise=[ExceptionFailure]
  alwaysRaise=[]
  freeRegs=[]
iter loop
  minReads=0
  mayRaise=[ExceptionFailure]
  alwaysRaise=[]
  freeRegs=[reg]
| <ok>
| | pushValue (\u_0 -> (GHC.Types.:) 'r')
| |   minReads=1
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | comment "satisfy ((GHC.Classes.==) 'r')"
| |   minReads=1
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | read ((GHC.Classes.==) 'r')
| |   minReads=1
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | lift2Value (\u_0 -> \u_1 -> u_0 u_1)
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | pushValue (\u_0 -> \u_1 -> \u_2 -> u_1 (u_0 u_2))
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | lift2Value (\u_0 -> \u_1 -> u_1 u_0)
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | readRegister reg
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | lift2Value (\u_0 -> \u_1 -> u_0 u_1)
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | writeRegister reg
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | jump loop
| |   minReads=0
| |   mayRaise=[]
| |   alwaysRaise=[]
| |   freeRegs=[]
| <ko>
| | comment "raiseAgainIfConsumed"
| |   minReads=0
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | saveInput
| |   minReads=0
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | lift2Value ((GHC.Classes.==) @GHC.Types.Int)
| |   minReads=0
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | choicesBranch
| |   minReads=0
| |   mayRaise=[ExceptionFailure]
| |   alwaysRaise=[]
| |   freeRegs=[reg]
| | | <branch (\u_0 -> u_0)>
| | | | readRegister reg
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[reg]
| | | | pushValue GHC.Types.[]
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[]
| | | | lift2Value (\u_0 -> \u_1 -> u_0 u_1)
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[]
| | | | lift2Value (\u_0 -> \u_1 -> u_0 u_1)
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[]
| | | | join join
| | | |   minReads=0
| | | |   mayRaise=[]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[]
| | | | | lift2Value (\u_0 -> \u_1 -> u_0 u_1)
| | | | |   minReads=0
| | | | |   mayRaise=[]
| | | | |   alwaysRaise=[]
| | | | |   freeRegs=[]
| | | | | ret
| | | | |   minReads=0
| | | | |   mayRaise=[]
| | | | |   alwaysRaise=[]
| | | | |   freeRegs=[]
| | | | catch ExceptionFailure
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[]
| | | |   freeRegs=[]
| | | | | <catchScope>
| | | | | | comment "negLook"
| | | | | |   minReads=0
| | | | | |   mayRaise=[]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | catch ExceptionFailure
| | | | | |   minReads=0
| | | | | |   mayRaise=[]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | | <catchScope>
| | | | | | | | comment "negLook.ahead"
| | | | | | | |   minReads=1
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | saveInput
| | | | | | | |   minReads=1
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | comment "satisfy (GHC.Base.const GHC.Types.True)"
| | | | | | | |   minReads=1
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | read (\u_0 -> GHC.Types.True)
| | | | | | | |   minReads=1
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | popValue
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | commit ExceptionFailure
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | loadInput
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | fail []
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | <onException ExceptionFailure>
| | | | | | | | comment "negLook.reset"
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[]
| | | | | | | |   alwaysRaise=[]
| | | | | | | |   freeRegs=[]
| | | | | | | | loadInput
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[]
| | | | | | | |   alwaysRaise=[]
| | | | | | | |   freeRegs=[]
| | | | | | | | pushValue GHC.Tuple.()
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[]
| | | | | | | |   alwaysRaise=[]
| | | | | | | |   freeRegs=[]
| | | | | | | | commit ExceptionFailure
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[]
| | | | | | | |   alwaysRaise=[]
| | | | | | | |   freeRegs=[]
| | | | | | | | refJoin join
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[]
| | | | | | | |   alwaysRaise=[]
| | | | | | | |   freeRegs=[]
| | | | | <onException ExceptionFailure>
| | | | | | comment "raiseAgainIfConsumed"
| | | | | |   minReads=0
| | | | | |   mayRaise=[ExceptionFailure]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | saveInput
| | | | | |   minReads=0
| | | | | |   mayRaise=[ExceptionFailure]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | lift2Value ((GHC.Classes.==) @GHC.Types.Int)
| | | | | |   minReads=0
| | | | | |   mayRaise=[ExceptionFailure]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | choicesBranch
| | | | | |   minReads=0
| | | | | |   mayRaise=[ExceptionFailure]
| | | | | |   alwaysRaise=[]
| | | | | |   freeRegs=[]
| | | | | | | <branch (\u_0 -> u_0)>
| | | | | | | | comment "eof.fail"
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | | fail [FailureEnd]
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | | | | | <default>
| | | | | | | | fail []
| | | | | | | |   minReads=0
| | | | | | | |   mayRaise=[ExceptionFailure]
| | | | | | | |   alwaysRaise=[ExceptionFailure]
| | | | | | | |   freeRegs=[]
| | | <default>
| | | | fail []
| | | |   minReads=0
| | | |   mayRaise=[ExceptionFailure]
| | | |   alwaysRaise=[ExceptionFailure]
| | | |   freeRegs=[]