Prog "Time" ["Prelude"] [Type ("Time","ClockTime") Public [] [Cons ("Time","CTime") 1 Private [TCons ("Prelude","Int") []]],Type ("Time","CalendarTime") Public [] [Cons ("Time","CalendarTime") 7 Public [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]] [Func ("Time","ctYear") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","ctMonth") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","ctDay") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","ctHour") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","ctMin") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","ctSec") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","ctTZ") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","getClockTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []]) (External "Time.getClockTime"),Func ("Time","getLocalTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []]) (Rule [] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Time","getClockTime") [],Comb (FuncPartCall 1) ("Time","getLocalTime._#lambda2") []])),Func ("Time","getLocalTime._#lambda2") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (Rule [1] (Comb FuncCall ("Time","toCalendarTime") [Var 1])),Func ("Time","clockTimeToInt") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CTime") [2]) (Var 2)])),Func ("Time","toCalendarTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toCalendarTime") [],Var 1])),Func ("Time","prim_toCalendarTime") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (External "Time.prim_toCalendarTime"),Func ("Time","toUTCTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","CalendarTime") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toUTCTime") [],Var 1])),Func ("Time","prim_toUTCTime") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","CalendarTime") [])) (External "Time.prim_toUTCTime"),Func ("Time","toClockTime") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Time","ClockTime") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toClockTime") [],Var 1])),Func ("Time","prim_toClockTime") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Time","ClockTime") [])) (External "Time.prim_toClockTime"),Func ("Time","calendarTimeToString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Let [(9,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'F'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'M'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'A'),Comb ConsCall ("Prelude",":") [Lit (Charc 'p'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'M'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'y'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'l'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'A'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'g'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'S'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'p'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'O'),Comb ConsCall ("Prelude",":") [Lit (Charc 'c'),Comb ConsCall ("Prelude",":") [Lit (Charc 't'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'N'),Comb ConsCall ("Prelude",":") [Lit (Charc 'o'),Comb ConsCall ("Prelude",":") [Lit (Charc 'v'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'D'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'c'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","!!") [Var 9,Comb FuncCall ("Prelude","-") [Var 3,Lit (Intc 1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString") [Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","show") [Var 2]]]]]]]))])),Func ("Time","toDayString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Let [(9,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'n'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude",":") [Lit (Charc 'y'),Comb ConsCall ("Prelude","[]") []]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'F'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude",":") [Lit (Charc 'y'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'M'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude",":") [Lit (Charc 'c'),Comb ConsCall ("Prelude",":") [Lit (Charc 'h'),Comb ConsCall ("Prelude","[]") []]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'A'),Comb ConsCall ("Prelude",":") [Lit (Charc 'p'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude",":") [Lit (Charc 'i'),Comb ConsCall ("Prelude",":") [Lit (Charc 'l'),Comb ConsCall ("Prelude","[]") []]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'M'),Comb ConsCall ("Prelude",":") [Lit (Charc 'a'),Comb ConsCall ("Prelude",":") [Lit (Charc 'y'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'n'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude","[]") []]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'J'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'l'),Comb ConsCall ("Prelude",":") [Lit (Charc 'y'),Comb ConsCall ("Prelude","[]") []]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'A'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 'g'),Comb ConsCall ("Prelude",":") [Lit (Charc 'u'),Comb ConsCall ("Prelude",":") [Lit (Charc 's'),Comb ConsCall ("Prelude",":") [Lit (Charc 't'),Comb ConsCall ("Prelude","[]") []]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'S'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'p'),Comb ConsCall ("Prelude",":") [Lit (Charc 't'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'm'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'O'),Comb ConsCall ("Prelude",":") [Lit (Charc 'c'),Comb ConsCall ("Prelude",":") [Lit (Charc 't'),Comb ConsCall ("Prelude",":") [Lit (Charc 'o'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'N'),Comb ConsCall ("Prelude",":") [Lit (Charc 'o'),Comb ConsCall ("Prelude",":") [Lit (Charc 'v'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'm'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc 'D'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'c'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'm'),Comb ConsCall ("Prelude",":") [Lit (Charc 'b'),Comb ConsCall ("Prelude",":") [Lit (Charc 'e'),Comb ConsCall ("Prelude",":") [Lit (Charc 'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","!!") [Var 9,Comb FuncCall ("Prelude","-") [Var 3,Lit (Intc 1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ','),Comb ConsCall ("Prelude",":") [Lit (Charc ' '),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","show") [Var 2]]]]]))])),Func ("Time","toTimeString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString.digit2.90") [Var 5],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ':'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString.digit2.90") [Var 6],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc ':'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Time","toTimeString.digit2.90") [Var 7]]]]])])),Func ("Time","toTimeString.digit2.90") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case Rigid (Comb FuncCall ("Prelude","<") [Var 1,Lit (Intc 10)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc '0'),Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","ord") [Lit (Charc '0')],Var 1]],Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","show") [Var 1])])),Func ("Time","addSeconds") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Var 1]])])),Func ("Time","addMinutes") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc 60)]]])])),Func ("Time","addHours") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc 3600)]]])])),Func ("Time","addDays") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc 86400)]]])])),Func ("Time","addMonths") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Let [(3,Comb FuncCall ("Time","toUTCTime") [Var 2])] (Let [(4,Comb FuncCall ("Time","addMonths._#selFP3#y") [Var 3])] (Let [(5,Comb FuncCall ("Time","addMonths._#selFP4#mo") [Var 3])] (Let [(6,Comb FuncCall ("Time","addMonths._#selFP5#d") [Var 3])] (Let [(7,Comb FuncCall ("Time","addMonths._#selFP6#h") [Var 3])] (Let [(8,Comb FuncCall ("Time","addMonths._#selFP7#mi") [Var 3])] (Let [(9,Comb FuncCall ("Time","addMonths._#selFP8#s") [Var 3])] (Let [(10,Comb FuncCall ("Time","addMonths._#selFP9#tz") [Var 3])] (Let [(11,Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc 1)],Var 1],Lit (Intc 12)],Lit (Intc 1)])] (Case Rigid (Comb FuncCall ("Prelude",">") [Var 11,Lit (Intc 0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Time","addYears") [Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc 1)],Var 1],Lit (Intc 12)],Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Var 4,Var 11,Var 6,Var 7,Var 8,Var 9,Var 10]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Time","addYears") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc 1)],Var 1],Lit (Intc 12)],Lit (Intc 1)],Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Var 4,Comb FuncCall ("Prelude","+") [Var 11,Lit (Intc 12)],Var 6,Var 7,Var 8,Var 9,Var 10]]])]))))))))))),Func ("Time","addMonths._#selFP3#y") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","addMonths._#selFP4#mo") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","addMonths._#selFP5#d") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","addMonths._#selFP6#h") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","addMonths._#selFP7#mi") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","addMonths._#selFP8#s") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","addMonths._#selFP9#tz") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","addYears") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc 0)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Time","toUTCTime") [Var 2])] (Let [(4,Comb FuncCall ("Time","addYears._#selFP11#y") [Var 3])] (Let [(5,Comb FuncCall ("Time","addYears._#selFP12#mo") [Var 3])] (Let [(6,Comb FuncCall ("Time","addYears._#selFP13#d") [Var 3])] (Let [(7,Comb FuncCall ("Time","addYears._#selFP14#h") [Var 3])] (Let [(8,Comb FuncCall ("Time","addYears._#selFP15#mi") [Var 3])] (Let [(9,Comb FuncCall ("Time","addYears._#selFP16#s") [Var 3])] (Let [(10,Comb FuncCall ("Time","addYears._#selFP17#tz") [Var 3])] (Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Comb FuncCall ("Prelude","+") [Var 4,Var 1],Var 5,Var 6,Var 7,Var 8,Var 9,Var 10]])))))))))])),Func ("Time","addYears._#selFP11#y") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","addYears._#selFP12#mo") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","addYears._#selFP13#d") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","addYears._#selFP14#h") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","addYears._#selFP15#mi") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","addYears._#selFP16#s") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","addYears._#selFP17#tz") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","daysOfMonth") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case Rigid (Comb FuncCall ("Prelude","/=") [Var 1,Lit (Intc 2)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","!!") [Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 28),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 30),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 30),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 30),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude",":") [Lit (Intc 30),Comb ConsCall ("Prelude",":") [Lit (Intc 31),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]],Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc 1)]]),Branch (Pattern ("Prelude","False") []) (Case Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc 4)],Lit (Intc 0)],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","/=") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc 100)],Lit (Intc 0)],Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc 400)],Lit (Intc 0)]]]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc 29)),Branch (Pattern ("Prelude","False") []) (Lit (Intc 28))])])),Func ("Time","validDate") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 2,Lit (Intc 0)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","<") [Var 2,Lit (Intc 13)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 3,Lit (Intc 0)],Comb FuncCall ("Prelude","<=") [Var 3,Comb FuncCall ("Time","daysOfMonth") [Var 2,Var 1]]]]])),Func ("Time","compareDate") 0 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Comb (FuncPartCall 2) ("Time","compareCalendarTime") [])),Func ("Time","compareCalendarTime") 2 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Comb FuncCall ("Time","compareClockTime") [Comb FuncCall ("Time","toClockTime") [Var 1],Comb FuncCall ("Time","toClockTime") [Var 2]])),Func ("Time","compareClockTime") 2 Public (FuncType (TCons ("Time","ClockTime") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case Flex (Var 1) [Branch (Pattern ("Time","CTime") [3]) (Case Flex (Var 2) [Branch (Pattern ("Time","CTime") [4]) (Case Rigid (Comb FuncCall ("Prelude","<") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","False") []) (Case Rigid (Comb FuncCall ("Prelude",">") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","False") []) (Case Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])]))] []