lets
+ let name
| ` <*>
|   + pure (\u_0 -> GHC.Tuple.())
|   ` chainPost
|     + pure GHC.Tuple.()
|     ` <*>
|       + pure (\u_0 -> \u_1 -> u_1)
|       ` satisfy (\c_0 -> GHC.Classes.not (('<' GHC.Classes.== c_0) GHC.Classes.|| (('>' GHC.Classes.== c_0) GHC.Classes.|| (('+' GHC.Classes.== c_0) GHC.Classes.|| (('-' GHC.Classes.== c_0) GHC.Classes.|| ((',' GHC.Classes.== c_0) GHC.Classes.|| (('.' GHC.Classes.== c_0) GHC.Classes.|| (('[' GHC.Classes.== c_0) GHC.Classes.|| ((']' GHC.Classes.== c_0) GHC.Classes.|| GHC.Types.False)))))))))
+ let name
| ` chainPre
|   + <*>
|   | + <*>
|   | | + pure (\u_0 -> \u_1 -> (GHC.Types.:) u_0)
|   | | ` conditional
|   | |   + condition
|   | |   | ` look
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + default
|   | |   | ` failure
|   | |   + branch (\x_0 -> (GHC.Classes.==) '<' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Backward)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + branch (\x_0 -> (GHC.Classes.==) '>' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Forward)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + branch (\x_0 -> (GHC.Classes.==) '+' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Increment)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + branch (\x_0 -> (GHC.Classes.==) '-' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Decrement)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + branch (\x_0 -> (GHC.Classes.==) ',' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Input)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   + branch (\x_0 -> (GHC.Classes.==) '.' x_0)
|   | |   | ` <*>
|   | |   |   + pure (\u_0 -> Parsers.Brainfuck.Types.Output)
|   | |   |   ` satisfy (\u_0 -> GHC.Types.True)
|   | |   ` branch (\x_0 -> (GHC.Classes.==) '[' x_0)
|   | |     ` <*>
|   | |       + <*>
|   | |       | + <*>
|   | |       | | + <*>
|   | |       | | | + pure (\u_0 -> \u_1 -> \u_2 -> \u_3 -> Parsers.Brainfuck.Types.Loop u_2)
|   | |       | | | ` satisfy (\u_0 -> GHC.Types.True)
|   | |       | | ` ref name
|   | |       | ` rec name
|   | |       ` satisfy ((GHC.Classes.==) ']')
|   | ` ref name
|   ` pure GHC.Types.[]
` <*>
  + <*>
  | + pure (\u_0 -> \u_1 -> GHC.Show.show u_1)
  | ` ref name
  ` ref name