Prog "Array" ["Integer","Prelude"] [Type ((Nothing,Nothing,"Array","Array")) Public [0] [Cons ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) 2 Private [FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0),TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]]],Type ((Nothing,Nothing,"Array","Entry")) Private [0] [Cons ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) 3 Private [TVar 0,TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0],TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) 0 Private []]] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),"Array","emptyErrorArray")) 0 Public (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","emptyDefaultArray")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'z'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc 'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","emptyDefaultArray")) 1 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","//")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),2)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","//._#lambda2")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 72])))),"Array","//._#lambda2")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 72)) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 72]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 72]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 72])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 72) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TVar 72),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 72) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 72) (TVar 72)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 72) (FuncType (TVar 72) (TVar 72))),"Prelude","const")) [Var ((Just (TVar 72),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","update")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 0),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),"Prelude","const")) [Var ((Just (TVar 0),3))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","applyAt")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (FuncType (TVar 0) (TVar 0)),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (FuncType (TVar 0) (TVar 0)),3))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) 4 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]))))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (FuncType (TVar 0) (TVar 0)),4)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),4)),Var ((Just (TVar 0),1))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)],Lit (Intc 1)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Prelude","failed")) [])])])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)]) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),4)),Var ((Just (TVar 0),5))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),5)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)],Lit (Intc 1)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Array","!")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) 3 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)]) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),4))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc 2)],Lit (Intc 1)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TVar 0),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Array","split")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Array","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","split._#selFP3#xs")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","split._#selFP4#ys")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),6))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8))]]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126])),"Array","split._#selFP3#xs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126])),"Array","split._#selFP4#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","listToDefaultArray")) 1 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","listToErrorArray")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","listToDefaultArray")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Array","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","listToArray._#selFP6#ys")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","listToArray._#selFP7#zs")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137])),"Array","listToArray._#selFP6#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137])),"Array","listToArray._#selFP7#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 2])))),"Array","combine")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 1]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 2])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 1]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 2)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Array") [TVar 2]))),"Array","Array")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 2))))),"Array","combine._#lambda3")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),7)),Lit (Intc 0),Lit (Intc 1)]])])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)) (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 263))))),"Array","combine._#lambda3")) 4 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 252)) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 255)) (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 263))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)),2),(Just (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 255) (TVar 263)) (FuncType (TVar 255) (TVar 263))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) 7 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 2])))))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]),"Array","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),8),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),9),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),10)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Lit (Intc 1)]]],Var ((Just (TVar 1),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),9)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),10)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),11),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)]) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),11))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Lit (Intc 1)]]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]]),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),14),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),15),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),16)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),11))],Var ((Just (TVar 1),14))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),15)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),16)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc 2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","combineSimilar")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)]) (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),7),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),8),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 0),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),9))]])])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 1]) (TVar 0)))),"Array","foldArray")) 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 1]) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 1]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) 3 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 1]) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),3)] (Case Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TVar 1),4))],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))]],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),6))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","arrayToList")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Array","foldArray")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Array","arrayToList._#lambda4")) []])),Func ((Nothing,Just (FuncType (TVar 345) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345])))),"Array","arrayToList._#lambda4")) 3 Private (FuncType (TVar 345) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345])))) (Rule [(Just (TVar 345),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 345) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]))),"Prelude",":")) [Var ((Just (TVar 345),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),3))]]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Array","!")) InfixlOp 9,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","//")) InfixlOp 9]