lets
` <*>
  + pure GHC.Show.show
  ` <|>
    + try
    | ` <*>
    |   + <*>
    |   | + pure (\u_0 -> \u_1 -> (GHC.Types.:) 'a' ((GHC.Types.:) 'a' GHC.Types.[]))
    |   | ` satisfy ((GHC.Classes.==) 'a')
    |   ` satisfy ((GHC.Classes.==) 'a')
    ` try
      ` <*>
        + <*>
        | + pure (\u_0 -> \u_1 -> (GHC.Types.:) 'a' ((GHC.Types.:) 'b' GHC.Types.[]))
        | ` satisfy ((GHC.Classes.==) 'a')
        ` satisfy ((GHC.Classes.==) 'b')