Prog "OracleList" ["CEventOracle","Oracle","IOExts","List","Maybe","Prelude","OracleMaybe","OraclePrelude"] [] [Func ("OracleList","elemIndex") 2 Public (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","findIndex") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","==") [Var 2]],Var 1]])),Func ("OracleList","elemIndices") 2 Public (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))))) (Rule [2,1] (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleList","findIndices") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","==") [Var 2]]]]])),Func ("OracleList","find") 2 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OraclePrelude",".") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleMaybe","listToMaybe") []],Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","filter") [Var 2]],Var 1]])),Func ("OracleList","findIndex") 2 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OraclePrelude",".") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleMaybe","listToMaybe") []],Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleList","findIndices") [Var 2]],Var 1]])),Func ("OracleList","findIndices") 3 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (Rule [2,3,1] (Let [(4,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(5,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OraclePrelude","foldr") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OracleList","findIndices._#lambda4") [Var 2]],Comb ConsCall ("Prelude","[]") [],Comb FuncCall ("OraclePrelude","zip") [Var 3,Comb FuncCall ("OraclePrelude","enumFrom") [Lit (Intc 0),Var 1],Var 4],Var 5]]))),Func ("OracleList","findIndices._#lambda4") 4 Private (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 7) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","(,)") [TVar 7,TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))))) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_26") [Var 2,Var 4,Var 3,Var 1]])),Func ("OracleList","nub") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0]))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","nubBy") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OraclePrelude","==") []],Var 2,Var 1]])),Func ("OracleList","nubBy") 3 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_24") [Var 2,Var 3,Var 1]])),Func ("OracleList","nubBy._#lambda6") 4 Private (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 45) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 45) (TCons ("Prelude","Bool") []))))) (FuncType (TVar 45) (FuncType (TVar 45) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","Bool") []))))) (Rule [2,3,4,1] (Let [(5,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(6,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OraclePrelude","not") [Comb FuncCall ("Oracle","apply") [Comb FuncCall ("Oracle","apply") [Var 2,Var 3,Var 1],Var 4,Var 5],Var 6]]))),Func ("OracleList","delete") 3 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_23") [Var 2,Var 3,Var 1]])),Func ("OracleList","\\\\") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OraclePrelude","foldl") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OraclePrelude","flip") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OracleList","delete") []]]],Var 2,Var 3,Var 1]])),Func ("OracleList","union") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_21") [Var 3,Var 2,Var 1]])),Func ("OracleList","intersect") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_19") [Var 3,Var 2,Var 1]])),Func ("OracleList","intersperse") 3 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_17") [Var 2,Var 3,Var 1]])),Func ("OracleList","transpose") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_15") [Var 2,Var 1]])),Func ("OracleList","partition") 3 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OraclePrelude","foldr") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OracleList","partition.select.53") [Var 2]],Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []],Var 3,Var 1]])),Func ("OracleList","partition.select.53") 4 Private (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 146) (TCons ("Prelude","Bool") []))) (FuncType (TVar 146) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 146],TCons ("Prelude","[]") [TVar 146]]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 146],TCons ("Prelude","[]") [TVar 146]]))))) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_13") [Var 2,Var 3,Var 4,Var 1]])),Func ("OracleList","group") 1 Public (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])))) (Rule [1] (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleList","groupBy") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OraclePrelude","==") []]]]])),Func ("OracleList","groupBy") 3 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_11") [Var 2,Var 3,Var 1]])),Func ("OracleList","groupBy._#selFP3#ys") 2 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 154],TCons ("Prelude","[]") [TVar 154]]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 154]))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_10") [Var 2,Var 1]])),Func ("OracleList","groupBy._#selFP4#zs") 2 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 154],TCons ("Prelude","[]") [TVar 154]]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 154]))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_9") [Var 2,Var 1]])),Func ("OracleList","replace") 4 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0]))))) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_8") [Var 2,Var 3,Var 4,Var 1]])),Func ("OracleList","isPrefixOf") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","Bool") [])))) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_5") [Var 3,Var 2,Var 1]])),Func ("OracleList","sortBy") 2 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))))) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))))) (Rule [2,1] (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","foldr") [Comb FuncCall ("Oracle","compose") [Comb (FuncPartCall 2) ("Oracle","partCall") [],Comb (FuncPartCall 2) ("Oracle","compose") [Comb (FuncPartCall 3) ("Oracle","partFunc") []],Comb (FuncPartCall 3) ("OracleList","insertBy") [Var 2]],Comb ConsCall ("Prelude","[]") []]]])),Func ("OracleList","insertBy") 4 Public (FuncType (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (FuncType (TCons ("CEventOracle","Ref") []) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TCons ("Prelude","[]") [TVar 0]))))) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_3") [Var 2,Var 3,Var 4,Var 1]])),Func ("OracleList","last") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("CEventOracle","Ref") []) (TVar 0))) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_1") [Var 2,Var 1]])),Func ("OracleList","_case_1") 2 Private (TVar (-42)) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_0") [Var 3,Var 4,Var 1]])]])),Func ("OracleList","_case_0") 3 Private (TVar (-42)) (Rule [3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Var 3]),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","last") [Comb ConsCall ("Prelude",":") [Var 5,Var 6],Var 1]])]])),Func ("OracleList","_case_3") 4 Private (TVar (-42)) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude",":") [5,6]) (Let [(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OracleList","_case_2") [Var 2,Var 3,Var 5,Var 6,Comb FuncCall ("Oracle","apply") [Comb FuncCall ("Oracle","apply") [Var 2,Var 3,Var 1],Var 5,Var 7],Var 8]]))]])),Func ("OracleList","_case_2") 6 Private (TVar (-42)) (Rule [2,3,5,6,7,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 7) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude",":") [Var 5,Var 6]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("OracleList","insertBy") [Var 2,Var 3,Var 6,Var 1]]])]])),Func ("OracleList","_case_5") 3 Private (TVar (-42)) (Rule [3,2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","True") []]),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_4") [Var 4,Var 5,Var 3,Var 1]])]])),Func ("OracleList","_case_4") 4 Private (TVar (-42)) (Rule [4,5,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","False") []]),Branch (Pattern ("Prelude",":") [6,7]) (Let [(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(9,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude",":") [Var 9,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OraclePrelude","&&") [Comb FuncCall ("OraclePrelude","==") [Var 4,Var 6,Var 1],Comb FuncCall ("OracleList","isPrefixOf") [Var 5,Var 7,Var 8],Var 9]]))]])),Func ("OracleList","_case_8") 4 Private (TVar (-42)) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [5,6]) (Let [(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("OracleList","_case_7") [Var 2,Var 3,Var 5,Var 6,Comb FuncCall ("OraclePrelude","==") [Var 3,Lit (Intc 0),Var 1],Var 7]]))]])),Func ("OracleList","_case_7") 6 Private (TVar (-42)) (Rule [2,3,5,6,7,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 7) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude",":") [Var 2,Var 6]]),Branch (Pattern ("Prelude","False") []) (Let [(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("OracleList","_case_6") [Var 2,Var 3,Var 5,Var 6,Comb FuncCall ("OraclePrelude","otherwise") [Var 1],Var 8]]))]])),Func ("OracleList","_case_6") 6 Private (TVar (-42)) (Rule [2,3,5,6,7,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 7) [Branch (Pattern ("Prelude","True") []) (Let [(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude","[]") []],Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("OracleList","replace") [Var 2,Comb FuncCall ("OraclePrelude","-") [Var 3,Lit (Intc 1),Var 1],Var 6,Var 8]]])),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OraclePrelude","failed") [Var 1]])]])),Func ("OracleList","_case_9") 2 Private (TVar (-42)) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Var 4])]])),Func ("OracleList","_case_10") 2 Private (TVar (-42)) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Var 3])]])),Func ("OracleList","_case_11") 3 Private (TVar (-42)) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(9,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(10,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 9,Comb ConsCall ("Prelude",":") [Var 10,Comb ConsCall ("Prelude","[]") []]],Let [(6,Comb FuncCall ("OraclePrelude","span") [Comb FuncCall ("Oracle","apply") [Var 2,Var 4,Var 1],Var 5,Var 9])] (Let [(11,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 10,Comb ConsCall ("Prelude",":") [Var 11,Comb ConsCall ("Prelude","[]") []],Let [(7,Comb FuncCall ("OracleList","groupBy._#selFP3#ys") [Var 6,Var 10])] (Let [(12,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 11,Comb ConsCall ("Prelude",":") [Var 12,Comb ConsCall ("Prelude","[]") []],Let [(8,Comb FuncCall ("OracleList","groupBy._#selFP4#zs") [Var 6,Var 11])] (Comb FuncCall ("CEventOracle","replace") [Var 12,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 4,Var 7],Comb FuncCall ("OracleList","groupBy") [Var 2,Var 8,Var 12]]])]))]))]))]])),Func ("OracleList","_case_13") 4 Private (TVar (-42)) (Rule [2,3,4,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 4) [Branch (Pattern ("Prelude","(,)") [5,6]) (Let [(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("OracleList","_case_12") [Var 2,Var 3,Var 5,Var 6,Comb FuncCall ("Oracle","apply") [Var 2,Var 3,Var 1],Var 7]]))]])),Func ("OracleList","_case_12") 6 Private (TVar (-42)) (Rule [2,3,5,6,7,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 7) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 3,Var 5],Var 6]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","(,)") [Var 5,Comb ConsCall ("Prelude",":") [Var 3,Var 6]]])]])),Func ("OracleList","_case_15") 2 Private (TVar (-42)) (Rule [2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_14") [Var 4,Var 3,Var 1]])]])),Func ("OracleList","_case_14") 3 Private (TVar (-42)) (Rule [4,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","transpose") [Var 4,Var 1]]),Branch (Pattern ("Prelude",":") [5,6]) (Let [(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude","[]") []]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("OraclePrelude","map") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","head") []],Var 4,Var 1]],Comb FuncCall ("OracleList","transpose") [Comb ConsCall ("Prelude",":") [Var 6,Comb FuncCall ("OraclePrelude","map") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OraclePrelude","tail") []],Var 4,Var 7]],Var 8]]]))]])),Func ("OracleList","_case_17") 3 Private (TVar (-42)) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","_case_16") [Var 2,Var 4,Var 5,Var 1]])]])),Func ("OracleList","_case_16") 4 Private (TVar (-42)) (Rule [2,4,5,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 5) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude",":") [6,7]) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("OracleList","intersperse") [Var 2,Comb ConsCall ("Prelude",":") [Var 6,Var 7],Var 1]]]])]])),Func ("OracleList","_case_19") 3 Private (TVar (-42)) (Rule [3,2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OracleList","_case_18") [Var 3,Var 4,Var 5,Comb FuncCall ("Oracle","apply") [Comb FuncCall ("OraclePrelude","elem") [Var 4,Var 1],Var 3,Var 6],Var 7]]))]])),Func ("OracleList","_case_18") 5 Private (TVar (-42)) (Rule [3,4,5,6,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 6) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("OracleList","intersect") [Var 5,Var 3,Var 1]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","intersect") [Var 5,Var 3,Var 1]])]])),Func ("OracleList","_case_21") 3 Private (TVar (-42)) (Rule [3,2,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Var 3]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OracleList","_case_20") [Var 3,Var 4,Var 5,Comb FuncCall ("Oracle","apply") [Comb FuncCall ("OraclePrelude","elem") [Var 4,Var 1],Var 3,Var 6],Var 7]]))]])),Func ("OracleList","_case_20") 5 Private (TVar (-42)) (Rule [3,4,5,6,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 6) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb FuncCall ("OracleList","union") [Var 5,Var 3,Var 1]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("OracleList","union") [Var 5,Var 3,Var 1]]])]])),Func ("OracleList","_case_23") 3 Private (TVar (-42)) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("OracleList","_case_22") [Var 2,Var 4,Var 5,Comb FuncCall ("OraclePrelude","==") [Var 2,Var 4,Var 1],Var 6]]))]])),Func ("OracleList","_case_22") 5 Private (TVar (-42)) (Rule [2,4,5,6,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 6) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Var 5]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","replace") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("OracleList","delete") [Var 2,Var 5,Var 1]]])]])),Func ("OracleList","_case_24") 3 Private (TVar (-42)) (Rule [2,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude","[]") []],Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("OracleList","nubBy") [Var 2,Comb FuncCall ("OraclePrelude","filter") [Comb (FuncPartCall 2) ("Oracle","partFunc") [Comb (FuncPartCall 2) ("OracleList","nubBy._#lambda6") [Var 2,Var 4]],Var 5,Var 1],Var 6]]]))]])),Func ("OracleList","_case_26") 4 Private (TVar (-42)) (Rule [2,4,3,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Let [(7,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []]),(8,Comb FuncCall ("CEventOracle","fresh") [Comb ConsCall ("Prelude","()") []])] (Comb FuncCall ("CEventOracle","expand") [Var 1,Comb ConsCall ("Prelude",":") [Var 7,Comb ConsCall ("Prelude",":") [Var 8,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("OraclePrelude","++") [Comb FuncCall ("OracleList","_case_25") [Var 2,Var 5,Var 6,Comb FuncCall ("Oracle","apply") [Var 2,Var 5,Var 1],Var 7],Var 4,Var 8]]))]])),Func ("OracleList","_case_25") 5 Private (TVar (-42)) (Rule [2,5,6,7,1] (Comb FuncCall ("CEventOracle","replace") [Var 1,Case Rigid (Var 7) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude",":") [Var 6,Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CEventOracle","collapse") [Var 1,Comb ConsCall ("Prelude","[]") []])]]))] [Op ("OracleList","\\\\") InfixOp 5]