lets
-+ let <hidden>
-| ` <|>
-| + <*>
-| | + <*>
-| | | + pure (\u1 -> (\u2 -> (\u3 -> 'a' : u2 u3)))
-| | | ` satisfy
-| | ` rec <hidden>
-| ` pure (\u1 -> u1)
` <*>
+ <*>
- | + pure (\u1 -> (\u2 -> u1 Term))
- | ` ref <hidden>
- ` satisfy
+ | + pure (\x_0 -> \x_1 -> GHC.Show.show x_0)
+ | ` chainPre
+ | + <*>
+ | | + pure (\x_0 -> (GHC.Types.:) 'a')
+ | | ` satisfy ((GHC.Classes.==) 'a')
+ | ` pure GHC.Types.[]
+ ` satisfy ((GHC.Classes.==) 'b')