================================================================================ Desugared: Rec { d.Num_aXF :: {PrelBase.Num{-2c,p-} PrelBase.Int{-3g,p-}} {-# L #-} d.Num_aXF = PrelBase.$d3{-rbd,p-} +_aZO :: PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} {-# L #-} +_aZO = PrelBase.+{-r3m,p-} _@_ PrelBase.Int{-3g,p-} d.Num_aXF d.Num_aXJ :: {PrelBase.Num{-2c,p-} PrelBase.Int{-3g,p-}} {-# L #-} d.Num_aXJ = d.Num_aXF fromInt_aZN :: PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} {-# L #-} fromInt_aZN = PrelBase.fromInt{-8R,p-} _@_ PrelBase.Int{-3g,p-} d.Num_aXJ lit_aZM :: PrelBase.Int{-3g,p-} {-# L #-} lit_aZM = let { ds_d123 :: PrelBase.Int{-3g,p-} {-# L #-} ds_d123 = PrelBase.I#{-5b,p-}{i} 1 } in fromInt_aZN ds_d123 ds_d11F :: _forall_ [b{-aXa-}] => (PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-}), PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-})) {-# L #-} ds_d11F = _/\_ b{-aXa-} -> _letrec_ { +_aZQ :: PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} {-# L #-} +_aZQ = +_aZO; lit_aZP :: PrelBase.Int{-3g,p-} {-# L #-} lit_aZP = lit_aZM; f_aWT :: PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} f_aWT = \ x_r3e :: PrelBase.Int{-3g,p-} {-# L #-} x_r3e y_r3g :: PrelBase.Int{-3g,p-} {-# L #-} y_r3g -> let { ds_d12N :: b{-aXa-} {-# L #-} ds_d12N = let { ds_d133 :: (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} ds_d133 = g_aWU y_r3g x_r3e } in PrelTup.fst{-riN,p-} _@_ PrelBase.Int{-3g,p-} _@_ b{-aXa-} ds_d133 } in let { ds_d12R :: PrelBase.Int{-3g,p-} {-# L #-} ds_d12R = +_aZO x_r3e lit_aZM } in PrelTup.(,){-62,p-}{i} {_@_ b{-aXa-} _@_ PrelBase.Int{-3g,p-} ds_d12N ds_d12R}; g_aWU :: PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} g_aWU = \ x_r3j :: PrelBase.Int{-3g,p-} {-# L #-} x_r3j y_r3l :: PrelBase.Int{-3g,p-} {-# L #-} y_r3l -> let { ds_d13B :: b{-aXa-} {-# L #-} ds_d13B = let { ds_d13R :: (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} ds_d13R = f_aWT x_r3j y_r3l } in PrelTup.fst{-riN,p-} _@_ PrelBase.Int{-3g,p-} _@_ b{-aXa-} ds_d13R } in let { ds_d13F :: PrelBase.Int{-3g,p-} {-# L #-} ds_d13F = +_aZQ y_r3l lit_aZP } in PrelTup.(,){-62,p-}{i} {_@_ b{-aXa-} _@_ PrelBase.Int{-3g,p-} ds_d13B ds_d13F}; } in PrelTup.(,){-62,p-}{i} {_@_ (PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-})) _@_ (PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-})) f_aWT g_aWU} f{-r3o,x-} :: _forall_ [b{-aXa-}] => PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} f{-r3o,x-} = _/\_ b{-aXa-} -> case ds_d11F _@_ b{-aXa-} of { PrelTup.(,){-62,p-}{i} ds_d14B ds_d14C -> ds_d14B;} g{-r3n,x-} :: _forall_ [b{-aXa-}] => PrelBase.Int{-3g,p-} -> PrelBase.Int{-3g,p-} -> (b{-aXa-}, PrelBase.Int{-3g,p-}) {-# L #-} g{-r3n,x-} = _/\_ b{-aXa-} -> case ds_d11F _@_ b{-aXa-} of { PrelTup.(,){-62,p-}{i} ds_d14S ds_d14R -> ds_d14R;} end Rec } NOTE: Simplifier still going after 4 iterations; bailing out.