/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.hs /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE proof of /export/starexec/sandbox/benchmark/theBenchmark.hs # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty H-Termination with start terms of the given HASKELL could not be shown: (0) HASKELL (1) LR [EQUIVALENT, 0 ms] (2) HASKELL (3) CR [EQUIVALENT, 0 ms] (4) HASKELL (5) IFR [EQUIVALENT, 0 ms] (6) HASKELL (7) BR [EQUIVALENT, 0 ms] (8) HASKELL (9) COR [EQUIVALENT, 24 ms] (10) HASKELL (11) NumRed [SOUND, 0 ms] (12) HASKELL (13) Narrow [SOUND, 0 ms] (14) AND (15) QDP (16) QDPSizeChangeProof [EQUIVALENT, 0 ms] (17) YES (18) QDP (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] (20) YES (21) QDP (22) QDPSizeChangeProof [EQUIVALENT, 0 ms] (23) YES (24) QDP (25) QDPSizeChangeProof [EQUIVALENT, 0 ms] (26) YES (27) QDP (28) DependencyGraphProof [EQUIVALENT, 0 ms] (29) AND (30) QDP (31) QDPSizeChangeProof [EQUIVALENT, 12 ms] (32) YES (33) QDP (34) QDPSizeChangeProof [EQUIVALENT, 15 ms] (35) YES (36) QDP (37) QDPOrderProof [EQUIVALENT, 51 ms] (38) QDP (39) MNOCProof [EQUIVALENT, 0 ms] (40) QDP (41) InductionCalculusProof [EQUIVALENT, 0 ms] (42) QDP (43) QDPPairToRuleProof [EQUIVALENT, 0 ms] (44) AND (45) QDP (46) MNOCProof [EQUIVALENT, 0 ms] (47) QDP (48) InductionCalculusProof [EQUIVALENT, 0 ms] (49) QDP (50) QDP (51) QDPSizeChangeProof [EQUIVALENT, 0 ms] (52) YES (53) QDP (54) QDPSizeChangeProof [EQUIVALENT, 0 ms] (55) YES (56) QDP (57) QDPSizeChangeProof [EQUIVALENT, 0 ms] (58) YES (59) QDP (60) QDPSizeChangeProof [EQUIVALENT, 0 ms] (61) YES (62) QDP (63) DependencyGraphProof [EQUIVALENT, 0 ms] (64) AND (65) QDP (66) QDPSizeChangeProof [EQUIVALENT, 0 ms] (67) YES (68) QDP (69) QDPSizeChangeProof [EQUIVALENT, 0 ms] (70) YES (71) QDP (72) QDPOrderProof [EQUIVALENT, 7 ms] (73) QDP (74) MNOCProof [EQUIVALENT, 0 ms] (75) QDP (76) InductionCalculusProof [EQUIVALENT, 0 ms] (77) QDP (78) QDPPairToRuleProof [EQUIVALENT, 0 ms] (79) AND (80) QDP (81) MNOCProof [EQUIVALENT, 0 ms] (82) QDP (83) InductionCalculusProof [EQUIVALENT, 0 ms] (84) QDP (85) QDP (86) QDPSizeChangeProof [EQUIVALENT, 0 ms] (87) YES (88) QDP (89) QDPSizeChangeProof [EQUIVALENT, 0 ms] (90) YES (91) QDP (92) QDPSizeChangeProof [EQUIVALENT, 0 ms] (93) YES (94) Narrow [COMPLETE, 0 ms] (95) AND (96) QDP (97) DependencyGraphProof [EQUIVALENT, 0 ms] (98) AND (99) QDP (100) QDPOrderProof [EQUIVALENT, 0 ms] (101) QDP (102) DependencyGraphProof [EQUIVALENT, 0 ms] (103) QDP (104) MRRProof [EQUIVALENT, 0 ms] (105) QDP (106) PisEmptyProof [EQUIVALENT, 0 ms] (107) YES (108) QDP (109) MRRProof [EQUIVALENT, 0 ms] (110) QDP (111) MRRProof [EQUIVALENT, 0 ms] (112) QDP (113) DependencyGraphProof [EQUIVALENT, 0 ms] (114) QDP (115) MRRProof [EQUIVALENT, 0 ms] (116) QDP (117) PisEmptyProof [EQUIVALENT, 0 ms] (118) YES (119) QDP (120) QDPOrderProof [EQUIVALENT, 0 ms] (121) QDP (122) DependencyGraphProof [EQUIVALENT, 0 ms] (123) AND (124) QDP (125) MRRProof [EQUIVALENT, 0 ms] (126) QDP (127) DependencyGraphProof [EQUIVALENT, 0 ms] (128) TRUE (129) QDP (130) QDPOrderProof [EQUIVALENT, 0 ms] (131) QDP (132) QDP (133) DependencyGraphProof [EQUIVALENT, 0 ms] (134) AND (135) QDP (136) MRRProof [EQUIVALENT, 0 ms] (137) QDP (138) MRRProof [EQUIVALENT, 0 ms] (139) QDP (140) DependencyGraphProof [EQUIVALENT, 0 ms] (141) TRUE (142) QDP (143) MRRProof [EQUIVALENT, 0 ms] (144) QDP (145) MRRProof [EQUIVALENT, 0 ms] (146) QDP (147) DependencyGraphProof [EQUIVALENT, 0 ms] (148) TRUE (149) QDP (150) QDPOrderProof [EQUIVALENT, 0 ms] (151) QDP (152) DependencyGraphProof [EQUIVALENT, 0 ms] (153) QDP (154) MRRProof [EQUIVALENT, 4 ms] (155) QDP (156) PisEmptyProof [EQUIVALENT, 0 ms] (157) YES (158) QDP (159) QDPOrderProof [EQUIVALENT, 0 ms] (160) QDP (161) QDP (162) MRRProof [EQUIVALENT, 0 ms] (163) QDP (164) MRRProof [EQUIVALENT, 0 ms] (165) QDP (166) PisEmptyProof [EQUIVALENT, 0 ms] (167) YES (168) QDP (169) MRRProof [EQUIVALENT, 0 ms] (170) QDP (171) MRRProof [EQUIVALENT, 0 ms] (172) QDP (173) PisEmptyProof [EQUIVALENT, 0 ms] (174) YES ---------------------------------------- (0) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (1) LR (EQUIVALENT) Lambda Reductions: The following Lambda expression "\z->if y >= z && z >= x then z : [] else []" is transformed to "range0 y x z = if y >= z && z >= x then z : [] else []; " The following Lambda expression "\lv1->case lv1 of { z1 -> (z0,z1) : []; _ -> []} " is transformed to "range1 z0 lv1 = case lv1 of { z1 -> (z0,z1) : []; _ -> []} ; " The following Lambda expression "\lv2->case lv2 of { z0 -> concatMap (range1 z0) (range (x1,y1)); _ -> []} " is transformed to "range2 x1 y1 lv2 = case lv2 of { z0 -> concatMap (range1 z0) (range (x1,y1)); _ -> []} ; " The following Lambda expression "\lv1->case lv1 of { z2 -> (z0,z1,z2) : []; _ -> []} " is transformed to "range3 z0 z1 lv1 = case lv1 of { z2 -> (z0,z1,z2) : []; _ -> []} ; " The following Lambda expression "\lv2->case lv2 of { z1 -> concatMap (range3 z0 z1) (range (x2,y2)); _ -> []} " is transformed to "range4 z0 x2 y2 lv2 = case lv2 of { z1 -> concatMap (range3 z0 z1) (range (x2,y2)); _ -> []} ; " The following Lambda expression "\lv3->case lv3 of { z0 -> concatMap (range4 z0 x2 y2) (range (x1,y1)); _ -> []} " is transformed to "range5 x2 y2 x1 y1 lv3 = case lv3 of { z0 -> concatMap (range4 z0 x2 y2) (range (x1,y1)); _ -> []} ; " The following Lambda expression "\z->if y >= z && z >= x then z : [] else []" is transformed to "range6 y x z = if y >= z && z >= x then z : [] else []; " ---------------------------------------- (2) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (3) CR (EQUIVALENT) Case Reductions: The following Case expression "case lv1 of { z2 -> (z0,z1,z2) : []; _ -> []} " is transformed to "range30 z0 z1 z2 = (z0,z1,z2) : []; range30 z0 z1 _ = []; " The following Case expression "case lv2 of { z1 -> concatMap (range3 z0 z1) (range (x2,y2)); _ -> []} " is transformed to "range40 z0 x2 y2 z1 = concatMap (range3 z0 z1) (range (x2,y2)); range40 z0 x2 y2 _ = []; " The following Case expression "case lv1 of { z1 -> (z0,z1) : []; _ -> []} " is transformed to "range10 z0 z1 = (z0,z1) : []; range10 z0 _ = []; " The following Case expression "case lv2 of { z0 -> concatMap (range1 z0) (range (x1,y1)); _ -> []} " is transformed to "range20 x1 y1 z0 = concatMap (range1 z0) (range (x1,y1)); range20 x1 y1 _ = []; " The following Case expression "case lv3 of { z0 -> concatMap (range4 z0 x2 y2) (range (x1,y1)); _ -> []} " is transformed to "range50 x2 y2 x1 y1 z0 = concatMap (range4 z0 x2 y2) (range (x1,y1)); range50 x2 y2 x1 y1 _ = []; " ---------------------------------------- (4) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (5) IFR (EQUIVALENT) If Reductions: The following If expression "if y >= z && z >= x then z : [] else []" is transformed to "range00 z True = z : []; range00 z False = []; " The following If expression "if y >= z && z >= x then z : [] else []" is transformed to "range60 z True = z : []; range60 z False = []; " ---------------------------------------- (6) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (7) BR (EQUIVALENT) Replaced joker patterns by fresh variables and removed binding patterns. ---------------------------------------- (8) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (9) COR (EQUIVALENT) Cond Reductions: The following Function with conditions "takeWhile p [] = []; takeWhile p (x : xs)|p xx : takeWhile p xs|otherwise[]; " is transformed to "takeWhile p [] = takeWhile3 p []; takeWhile p (x : xs) = takeWhile2 p (x : xs); " "takeWhile1 p x xs True = x : takeWhile p xs; takeWhile1 p x xs False = takeWhile0 p x xs otherwise; " "takeWhile0 p x xs True = []; " "takeWhile2 p (x : xs) = takeWhile1 p x xs (p x); " "takeWhile3 p [] = []; takeWhile3 wy wz = takeWhile2 wy wz; " The following Function with conditions "undefined |Falseundefined; " is transformed to "undefined = undefined1; " "undefined0 True = undefined; " "undefined1 = undefined0 False; " The following Function with conditions "compare x y|x == yEQ|x <= yLT|otherwiseGT; " is transformed to "compare x y = compare3 x y; " "compare1 x y True = LT; compare1 x y False = compare0 x y otherwise; " "compare0 x y True = GT; " "compare2 x y True = EQ; compare2 x y False = compare1 x y (x <= y); " "compare3 x y = compare2 x y (x == y); " ---------------------------------------- (10) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (11) NumRed (SOUND) Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. ---------------------------------------- (12) Obligation: mainModule Main module Main where { import qualified Prelude; } ---------------------------------------- (13) Narrow (SOUND) Haskell To QDPs digraph dp_graph { node [outthreshold=100, inthreshold=100];1[label="range",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 3[label="range xu3",fontsize=16,color="blue",shape="box"];2990[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];3 -> 2990[label="",style="solid", color="blue", weight=9]; 2990 -> 4[label="",style="solid", color="blue", weight=3]; 2991[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];3 -> 2991[label="",style="solid", color="blue", weight=9]; 2991 -> 5[label="",style="solid", color="blue", weight=3]; 2992[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];3 -> 2992[label="",style="solid", color="blue", weight=9]; 2992 -> 6[label="",style="solid", color="blue", weight=3]; 2993[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];3 -> 2993[label="",style="solid", color="blue", weight=9]; 2993 -> 7[label="",style="solid", color="blue", weight=3]; 2994[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];3 -> 2994[label="",style="solid", color="blue", weight=9]; 2994 -> 8[label="",style="solid", color="blue", weight=3]; 2995[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];3 -> 2995[label="",style="solid", color="blue", weight=9]; 2995 -> 9[label="",style="solid", color="blue", weight=3]; 2996[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];3 -> 2996[label="",style="solid", color="blue", weight=9]; 2996 -> 10[label="",style="solid", color="blue", weight=3]; 2997[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];3 -> 2997[label="",style="solid", color="blue", weight=9]; 2997 -> 11[label="",style="solid", color="blue", weight=3]; 4[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];2998[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];4 -> 2998[label="",style="solid", color="burlywood", weight=9]; 2998 -> 12[label="",style="solid", color="burlywood", weight=3]; 5[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];2999[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];5 -> 2999[label="",style="solid", color="burlywood", weight=9]; 2999 -> 13[label="",style="solid", color="burlywood", weight=3]; 6[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3000[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];6 -> 3000[label="",style="solid", color="burlywood", weight=9]; 3000 -> 14[label="",style="solid", color="burlywood", weight=3]; 7[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3001[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];7 -> 3001[label="",style="solid", color="burlywood", weight=9]; 3001 -> 15[label="",style="solid", color="burlywood", weight=3]; 8[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3002[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];8 -> 3002[label="",style="solid", color="burlywood", weight=9]; 3002 -> 16[label="",style="solid", color="burlywood", weight=3]; 9[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3003[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];9 -> 3003[label="",style="solid", color="burlywood", weight=9]; 3003 -> 17[label="",style="solid", color="burlywood", weight=3]; 10[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3004[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];10 -> 3004[label="",style="solid", color="burlywood", weight=9]; 3004 -> 18[label="",style="solid", color="burlywood", weight=3]; 11[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3005[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];11 -> 3005[label="",style="solid", color="burlywood", weight=9]; 3005 -> 19[label="",style="solid", color="burlywood", weight=3]; 12[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3006[label="xu30/(xu300,xu301)",fontsize=10,color="white",style="solid",shape="box"];12 -> 3006[label="",style="solid", color="burlywood", weight=9]; 3006 -> 20[label="",style="solid", color="burlywood", weight=3]; 13[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3007[label="xu30/(xu300,xu301,xu302)",fontsize=10,color="white",style="solid",shape="box"];13 -> 3007[label="",style="solid", color="burlywood", weight=9]; 3007 -> 21[label="",style="solid", color="burlywood", weight=3]; 14[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3008[label="xu30/()",fontsize=10,color="white",style="solid",shape="box"];14 -> 3008[label="",style="solid", color="burlywood", weight=9]; 3008 -> 22[label="",style="solid", color="burlywood", weight=3]; 15[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];15 -> 23[label="",style="solid", color="black", weight=3]; 16[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];16 -> 24[label="",style="solid", color="black", weight=3]; 17[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];17 -> 25[label="",style="solid", color="black", weight=3]; 18[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];18 -> 26[label="",style="solid", color="black", weight=3]; 19[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];19 -> 27[label="",style="solid", color="black", weight=3]; 20[label="range ((xu300,xu301),xu31)",fontsize=16,color="burlywood",shape="box"];3009[label="xu31/(xu310,xu311)",fontsize=10,color="white",style="solid",shape="box"];20 -> 3009[label="",style="solid", color="burlywood", weight=9]; 3009 -> 28[label="",style="solid", color="burlywood", weight=3]; 21[label="range ((xu300,xu301,xu302),xu31)",fontsize=16,color="burlywood",shape="box"];3010[label="xu31/(xu310,xu311,xu312)",fontsize=10,color="white",style="solid",shape="box"];21 -> 3010[label="",style="solid", color="burlywood", weight=9]; 3010 -> 29[label="",style="solid", color="burlywood", weight=3]; 22[label="range ((),xu31)",fontsize=16,color="burlywood",shape="box"];3011[label="xu31/()",fontsize=10,color="white",style="solid",shape="box"];22 -> 3011[label="",style="solid", color="burlywood", weight=9]; 3011 -> 30[label="",style="solid", color="burlywood", weight=3]; 23[label="concatMap (range0 xu31 xu30) (LT : EQ : GT : [])",fontsize=16,color="black",shape="box"];23 -> 31[label="",style="solid", color="black", weight=3]; 24[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];24 -> 32[label="",style="solid", color="black", weight=3]; 25[label="concatMap (range6 xu31 xu30) (False : True : [])",fontsize=16,color="black",shape="box"];25 -> 33[label="",style="solid", color="black", weight=3]; 26[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];26 -> 34[label="",style="solid", color="black", weight=3]; 27[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="triangle"];27 -> 35[label="",style="solid", color="black", weight=3]; 28[label="range ((xu300,xu301),(xu310,xu311))",fontsize=16,color="black",shape="box"];28 -> 36[label="",style="solid", color="black", weight=3]; 29[label="range ((xu300,xu301,xu302),(xu310,xu311,xu312))",fontsize=16,color="black",shape="box"];29 -> 37[label="",style="solid", color="black", weight=3]; 30[label="range ((),())",fontsize=16,color="black",shape="box"];30 -> 38[label="",style="solid", color="black", weight=3]; 31[label="concat . map (range0 xu31 xu30)",fontsize=16,color="black",shape="box"];31 -> 39[label="",style="solid", color="black", weight=3]; 32[label="numericEnumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];32 -> 40[label="",style="solid", color="black", weight=3]; 33[label="concat . map (range6 xu31 xu30)",fontsize=16,color="black",shape="box"];33 -> 41[label="",style="solid", color="black", weight=3]; 34 -> 42[label="",style="dashed", color="red", weight=0]; 34[label="map toEnum (enumFromTo (fromEnum xu30) (fromEnum xu31))",fontsize=16,color="magenta"];34 -> 43[label="",style="dashed", color="magenta", weight=3]; 35[label="numericEnumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];35 -> 44[label="",style="solid", color="black", weight=3]; 36[label="concatMap (range2 xu301 xu311) (range (xu300,xu310))",fontsize=16,color="black",shape="box"];36 -> 45[label="",style="solid", color="black", weight=3]; 37[label="concatMap (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310))",fontsize=16,color="black",shape="box"];37 -> 46[label="",style="solid", color="black", weight=3]; 38[label="() : []",fontsize=16,color="green",shape="box"];39[label="concat (map (range0 xu31 xu30) (LT : EQ : GT : []))",fontsize=16,color="black",shape="box"];39 -> 47[label="",style="solid", color="black", weight=3]; 40[label="takeWhile (flip (<=) xu31) (numericEnumFrom xu30)",fontsize=16,color="black",shape="triangle"];40 -> 48[label="",style="solid", color="black", weight=3]; 41[label="concat (map (range6 xu31 xu30) (False : True : []))",fontsize=16,color="black",shape="box"];41 -> 49[label="",style="solid", color="black", weight=3]; 43 -> 27[label="",style="dashed", color="red", weight=0]; 43[label="enumFromTo (fromEnum xu30) (fromEnum xu31)",fontsize=16,color="magenta"];43 -> 50[label="",style="dashed", color="magenta", weight=3]; 43 -> 51[label="",style="dashed", color="magenta", weight=3]; 42[label="map toEnum xu4",fontsize=16,color="burlywood",shape="triangle"];3012[label="xu4/xu40 : xu41",fontsize=10,color="white",style="solid",shape="box"];42 -> 3012[label="",style="solid", color="burlywood", weight=9]; 3012 -> 52[label="",style="solid", color="burlywood", weight=3]; 3013[label="xu4/[]",fontsize=10,color="white",style="solid",shape="box"];42 -> 3013[label="",style="solid", color="burlywood", weight=9]; 3013 -> 53[label="",style="solid", color="burlywood", weight=3]; 44[label="takeWhile (flip (<=) xu31) (numericEnumFrom xu30)",fontsize=16,color="black",shape="triangle"];44 -> 54[label="",style="solid", color="black", weight=3]; 45[label="concat . map (range2 xu301 xu311)",fontsize=16,color="black",shape="box"];45 -> 55[label="",style="solid", color="black", weight=3]; 46[label="concat . map (range5 xu302 xu312 xu301 xu311)",fontsize=16,color="black",shape="box"];46 -> 56[label="",style="solid", color="black", weight=3]; 47[label="foldr (++) [] (map (range0 xu31 xu30) (LT : EQ : GT : []))",fontsize=16,color="black",shape="box"];47 -> 57[label="",style="solid", color="black", weight=3]; 48[label="takeWhile (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];48 -> 58[label="",style="solid", color="black", weight=3]; 49[label="foldr (++) [] (map (range6 xu31 xu30) (False : True : []))",fontsize=16,color="black",shape="box"];49 -> 59[label="",style="solid", color="black", weight=3]; 50[label="fromEnum xu30",fontsize=16,color="black",shape="triangle"];50 -> 60[label="",style="solid", color="black", weight=3]; 51 -> 50[label="",style="dashed", color="red", weight=0]; 51[label="fromEnum xu31",fontsize=16,color="magenta"];51 -> 61[label="",style="dashed", color="magenta", weight=3]; 52[label="map toEnum (xu40 : xu41)",fontsize=16,color="black",shape="box"];52 -> 62[label="",style="solid", color="black", weight=3]; 53[label="map toEnum []",fontsize=16,color="black",shape="box"];53 -> 63[label="",style="solid", color="black", weight=3]; 54[label="takeWhile (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];54 -> 64[label="",style="solid", color="black", weight=3]; 55[label="concat (map (range2 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="black",shape="box"];55 -> 65[label="",style="solid", color="black", weight=3]; 56[label="concat (map (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="black",shape="box"];56 -> 66[label="",style="solid", color="black", weight=3]; 57[label="foldr (++) [] (range0 xu31 xu30 LT : map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];57 -> 67[label="",style="solid", color="black", weight=3]; 58[label="takeWhile2 (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];58 -> 68[label="",style="solid", color="black", weight=3]; 59[label="foldr (++) [] (range6 xu31 xu30 False : map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];59 -> 69[label="",style="solid", color="black", weight=3]; 60[label="primCharToInt xu30",fontsize=16,color="burlywood",shape="box"];3014[label="xu30/Char xu300",fontsize=10,color="white",style="solid",shape="box"];60 -> 3014[label="",style="solid", color="burlywood", weight=9]; 3014 -> 70[label="",style="solid", color="burlywood", weight=3]; 61[label="xu31",fontsize=16,color="green",shape="box"];62[label="toEnum xu40 : map toEnum xu41",fontsize=16,color="green",shape="box"];62 -> 71[label="",style="dashed", color="green", weight=3]; 62 -> 72[label="",style="dashed", color="green", weight=3]; 63[label="[]",fontsize=16,color="green",shape="box"];64[label="takeWhile2 (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];64 -> 73[label="",style="solid", color="black", weight=3]; 65 -> 74[label="",style="dashed", color="red", weight=0]; 65[label="foldr (++) [] (map (range2 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="magenta"];65 -> 75[label="",style="dashed", color="magenta", weight=3]; 65 -> 76[label="",style="dashed", color="magenta", weight=3]; 65 -> 77[label="",style="dashed", color="magenta", weight=3]; 66 -> 78[label="",style="dashed", color="red", weight=0]; 66[label="foldr (++) [] (map (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="magenta"];66 -> 79[label="",style="dashed", color="magenta", weight=3]; 66 -> 80[label="",style="dashed", color="magenta", weight=3]; 66 -> 81[label="",style="dashed", color="magenta", weight=3]; 66 -> 82[label="",style="dashed", color="magenta", weight=3]; 66 -> 83[label="",style="dashed", color="magenta", weight=3]; 67[label="(++) range0 xu31 xu30 LT foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];67 -> 84[label="",style="solid", color="black", weight=3]; 68[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (flip (<=) xu31 xu30)",fontsize=16,color="black",shape="box"];68 -> 85[label="",style="solid", color="black", weight=3]; 69[label="(++) range6 xu31 xu30 False foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];69 -> 86[label="",style="solid", color="black", weight=3]; 70[label="primCharToInt (Char xu300)",fontsize=16,color="black",shape="box"];70 -> 87[label="",style="solid", color="black", weight=3]; 71[label="toEnum xu40",fontsize=16,color="black",shape="box"];71 -> 88[label="",style="solid", color="black", weight=3]; 72 -> 42[label="",style="dashed", color="red", weight=0]; 72[label="map toEnum xu41",fontsize=16,color="magenta"];72 -> 89[label="",style="dashed", color="magenta", weight=3]; 73[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (flip (<=) xu31 xu30)",fontsize=16,color="black",shape="box"];73 -> 90[label="",style="solid", color="black", weight=3]; 75[label="xu311",fontsize=16,color="green",shape="box"];76[label="range (xu300,xu310)",fontsize=16,color="blue",shape="box"];3015[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];76 -> 3015[label="",style="solid", color="blue", weight=9]; 3015 -> 91[label="",style="solid", color="blue", weight=3]; 3016[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];76 -> 3016[label="",style="solid", color="blue", weight=9]; 3016 -> 92[label="",style="solid", color="blue", weight=3]; 3017[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];76 -> 3017[label="",style="solid", color="blue", weight=9]; 3017 -> 93[label="",style="solid", color="blue", weight=3]; 3018[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];76 -> 3018[label="",style="solid", color="blue", weight=9]; 3018 -> 94[label="",style="solid", color="blue", weight=3]; 3019[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];76 -> 3019[label="",style="solid", color="blue", weight=9]; 3019 -> 95[label="",style="solid", color="blue", weight=3]; 3020[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];76 -> 3020[label="",style="solid", color="blue", weight=9]; 3020 -> 96[label="",style="solid", color="blue", weight=3]; 3021[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];76 -> 3021[label="",style="solid", color="blue", weight=9]; 3021 -> 97[label="",style="solid", color="blue", weight=3]; 3022[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];76 -> 3022[label="",style="solid", color="blue", weight=9]; 3022 -> 98[label="",style="solid", color="blue", weight=3]; 77[label="xu301",fontsize=16,color="green",shape="box"];74[label="foldr (++) [] (map (range2 xu9 xu10) xu11)",fontsize=16,color="burlywood",shape="triangle"];3023[label="xu11/xu110 : xu111",fontsize=10,color="white",style="solid",shape="box"];74 -> 3023[label="",style="solid", color="burlywood", weight=9]; 3023 -> 99[label="",style="solid", color="burlywood", weight=3]; 3024[label="xu11/[]",fontsize=10,color="white",style="solid",shape="box"];74 -> 3024[label="",style="solid", color="burlywood", weight=9]; 3024 -> 100[label="",style="solid", color="burlywood", weight=3]; 79[label="xu312",fontsize=16,color="green",shape="box"];80[label="xu311",fontsize=16,color="green",shape="box"];81[label="range (xu300,xu310)",fontsize=16,color="blue",shape="box"];3025[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];81 -> 3025[label="",style="solid", color="blue", weight=9]; 3025 -> 101[label="",style="solid", color="blue", weight=3]; 3026[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];81 -> 3026[label="",style="solid", color="blue", weight=9]; 3026 -> 102[label="",style="solid", color="blue", weight=3]; 3027[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];81 -> 3027[label="",style="solid", color="blue", weight=9]; 3027 -> 103[label="",style="solid", color="blue", weight=3]; 3028[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];81 -> 3028[label="",style="solid", color="blue", weight=9]; 3028 -> 104[label="",style="solid", color="blue", weight=3]; 3029[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];81 -> 3029[label="",style="solid", color="blue", weight=9]; 3029 -> 105[label="",style="solid", color="blue", weight=3]; 3030[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];81 -> 3030[label="",style="solid", color="blue", weight=9]; 3030 -> 106[label="",style="solid", color="blue", weight=3]; 3031[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];81 -> 3031[label="",style="solid", color="blue", weight=9]; 3031 -> 107[label="",style="solid", color="blue", weight=3]; 3032[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];81 -> 3032[label="",style="solid", color="blue", weight=9]; 3032 -> 108[label="",style="solid", color="blue", weight=3]; 82[label="xu301",fontsize=16,color="green",shape="box"];83[label="xu302",fontsize=16,color="green",shape="box"];78[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu22)",fontsize=16,color="burlywood",shape="triangle"];3033[label="xu22/xu220 : xu221",fontsize=10,color="white",style="solid",shape="box"];78 -> 3033[label="",style="solid", color="burlywood", weight=9]; 3033 -> 109[label="",style="solid", color="burlywood", weight=3]; 3034[label="xu22/[]",fontsize=10,color="white",style="solid",shape="box"];78 -> 3034[label="",style="solid", color="burlywood", weight=9]; 3034 -> 110[label="",style="solid", color="burlywood", weight=3]; 84[label="(++) range00 LT (xu31 >= LT && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];84 -> 111[label="",style="solid", color="black", weight=3]; 85[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) ((<=) xu30 xu31)",fontsize=16,color="black",shape="box"];85 -> 112[label="",style="solid", color="black", weight=3]; 86[label="(++) range60 False (xu31 >= False && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];86 -> 113[label="",style="solid", color="black", weight=3]; 87[label="Pos xu300",fontsize=16,color="green",shape="box"];88[label="primIntToChar xu40",fontsize=16,color="burlywood",shape="box"];3035[label="xu40/Pos xu400",fontsize=10,color="white",style="solid",shape="box"];88 -> 3035[label="",style="solid", color="burlywood", weight=9]; 3035 -> 114[label="",style="solid", color="burlywood", weight=3]; 3036[label="xu40/Neg xu400",fontsize=10,color="white",style="solid",shape="box"];88 -> 3036[label="",style="solid", color="burlywood", weight=9]; 3036 -> 115[label="",style="solid", color="burlywood", weight=3]; 89[label="xu41",fontsize=16,color="green",shape="box"];90[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) ((<=) xu30 xu31)",fontsize=16,color="black",shape="box"];90 -> 116[label="",style="solid", color="black", weight=3]; 91 -> 4[label="",style="dashed", color="red", weight=0]; 91[label="range (xu300,xu310)",fontsize=16,color="magenta"];91 -> 117[label="",style="dashed", color="magenta", weight=3]; 92 -> 5[label="",style="dashed", color="red", weight=0]; 92[label="range (xu300,xu310)",fontsize=16,color="magenta"];92 -> 118[label="",style="dashed", color="magenta", weight=3]; 93 -> 6[label="",style="dashed", color="red", weight=0]; 93[label="range (xu300,xu310)",fontsize=16,color="magenta"];93 -> 119[label="",style="dashed", color="magenta", weight=3]; 94 -> 7[label="",style="dashed", color="red", weight=0]; 94[label="range (xu300,xu310)",fontsize=16,color="magenta"];94 -> 120[label="",style="dashed", color="magenta", weight=3]; 95 -> 8[label="",style="dashed", color="red", weight=0]; 95[label="range (xu300,xu310)",fontsize=16,color="magenta"];95 -> 121[label="",style="dashed", color="magenta", weight=3]; 96 -> 9[label="",style="dashed", color="red", weight=0]; 96[label="range (xu300,xu310)",fontsize=16,color="magenta"];96 -> 122[label="",style="dashed", color="magenta", weight=3]; 97 -> 10[label="",style="dashed", color="red", weight=0]; 97[label="range (xu300,xu310)",fontsize=16,color="magenta"];97 -> 123[label="",style="dashed", color="magenta", weight=3]; 98 -> 11[label="",style="dashed", color="red", weight=0]; 98[label="range (xu300,xu310)",fontsize=16,color="magenta"];98 -> 124[label="",style="dashed", color="magenta", weight=3]; 99[label="foldr (++) [] (map (range2 xu9 xu10) (xu110 : xu111))",fontsize=16,color="black",shape="box"];99 -> 125[label="",style="solid", color="black", weight=3]; 100[label="foldr (++) [] (map (range2 xu9 xu10) [])",fontsize=16,color="black",shape="box"];100 -> 126[label="",style="solid", color="black", weight=3]; 101 -> 4[label="",style="dashed", color="red", weight=0]; 101[label="range (xu300,xu310)",fontsize=16,color="magenta"];101 -> 127[label="",style="dashed", color="magenta", weight=3]; 102 -> 5[label="",style="dashed", color="red", weight=0]; 102[label="range (xu300,xu310)",fontsize=16,color="magenta"];102 -> 128[label="",style="dashed", color="magenta", weight=3]; 103 -> 6[label="",style="dashed", color="red", weight=0]; 103[label="range (xu300,xu310)",fontsize=16,color="magenta"];103 -> 129[label="",style="dashed", color="magenta", weight=3]; 104 -> 7[label="",style="dashed", color="red", weight=0]; 104[label="range (xu300,xu310)",fontsize=16,color="magenta"];104 -> 130[label="",style="dashed", color="magenta", weight=3]; 105 -> 8[label="",style="dashed", color="red", weight=0]; 105[label="range (xu300,xu310)",fontsize=16,color="magenta"];105 -> 131[label="",style="dashed", color="magenta", weight=3]; 106 -> 9[label="",style="dashed", color="red", weight=0]; 106[label="range (xu300,xu310)",fontsize=16,color="magenta"];106 -> 132[label="",style="dashed", color="magenta", weight=3]; 107 -> 10[label="",style="dashed", color="red", weight=0]; 107[label="range (xu300,xu310)",fontsize=16,color="magenta"];107 -> 133[label="",style="dashed", color="magenta", weight=3]; 108 -> 11[label="",style="dashed", color="red", weight=0]; 108[label="range (xu300,xu310)",fontsize=16,color="magenta"];108 -> 134[label="",style="dashed", color="magenta", weight=3]; 109[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) (xu220 : xu221))",fontsize=16,color="black",shape="box"];109 -> 135[label="",style="solid", color="black", weight=3]; 110[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) [])",fontsize=16,color="black",shape="box"];110 -> 136[label="",style="solid", color="black", weight=3]; 111[label="(++) range00 LT (compare xu31 LT /= LT && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];111 -> 137[label="",style="solid", color="black", weight=3]; 112[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (compare xu30 xu31 /= GT)",fontsize=16,color="black",shape="box"];112 -> 138[label="",style="solid", color="black", weight=3]; 113[label="(++) range60 False (compare xu31 False /= LT && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];113 -> 139[label="",style="solid", color="black", weight=3]; 114[label="primIntToChar (Pos xu400)",fontsize=16,color="black",shape="box"];114 -> 140[label="",style="solid", color="black", weight=3]; 115[label="primIntToChar (Neg xu400)",fontsize=16,color="burlywood",shape="box"];3037[label="xu400/Succ xu4000",fontsize=10,color="white",style="solid",shape="box"];115 -> 3037[label="",style="solid", color="burlywood", weight=9]; 3037 -> 141[label="",style="solid", color="burlywood", weight=3]; 3038[label="xu400/Zero",fontsize=10,color="white",style="solid",shape="box"];115 -> 3038[label="",style="solid", color="burlywood", weight=9]; 3038 -> 142[label="",style="solid", color="burlywood", weight=3]; 116[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (compare xu30 xu31 /= GT)",fontsize=16,color="black",shape="box"];116 -> 143[label="",style="solid", color="black", weight=3]; 117[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];118[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];119[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];120[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];121[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];122[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];123[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];124[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];125[label="foldr (++) [] (range2 xu9 xu10 xu110 : map (range2 xu9 xu10) xu111)",fontsize=16,color="black",shape="box"];125 -> 144[label="",style="solid", color="black", weight=3]; 126[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];126 -> 145[label="",style="solid", color="black", weight=3]; 127[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];128[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];129[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];130[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];131[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];132[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];133[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];134[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];135[label="foldr (++) [] (range5 xu18 xu19 xu20 xu21 xu220 : map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="black",shape="box"];135 -> 146[label="",style="solid", color="black", weight=3]; 136[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];136 -> 147[label="",style="solid", color="black", weight=3]; 137[label="(++) range00 LT (not (compare xu31 LT == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];137 -> 148[label="",style="solid", color="black", weight=3]; 138[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (compare xu30 xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3039[label="xu30/Integer xu300",fontsize=10,color="white",style="solid",shape="box"];138 -> 3039[label="",style="solid", color="burlywood", weight=9]; 3039 -> 149[label="",style="solid", color="burlywood", weight=3]; 139[label="(++) range60 False (not (compare xu31 False == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];139 -> 150[label="",style="solid", color="black", weight=3]; 140[label="Char xu400",fontsize=16,color="green",shape="box"];141[label="primIntToChar (Neg (Succ xu4000))",fontsize=16,color="black",shape="box"];141 -> 151[label="",style="solid", color="black", weight=3]; 142[label="primIntToChar (Neg Zero)",fontsize=16,color="black",shape="box"];142 -> 152[label="",style="solid", color="black", weight=3]; 143[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (compare xu30 xu31 == GT))",fontsize=16,color="black",shape="box"];143 -> 153[label="",style="solid", color="black", weight=3]; 144 -> 449[label="",style="dashed", color="red", weight=0]; 144[label="(++) range2 xu9 xu10 xu110 foldr (++) [] (map (range2 xu9 xu10) xu111)",fontsize=16,color="magenta"];144 -> 450[label="",style="dashed", color="magenta", weight=3]; 144 -> 451[label="",style="dashed", color="magenta", weight=3]; 145[label="[]",fontsize=16,color="green",shape="box"];146 -> 473[label="",style="dashed", color="red", weight=0]; 146[label="(++) range5 xu18 xu19 xu20 xu21 xu220 foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="magenta"];146 -> 474[label="",style="dashed", color="magenta", weight=3]; 146 -> 475[label="",style="dashed", color="magenta", weight=3]; 147[label="[]",fontsize=16,color="green",shape="box"];148[label="(++) range00 LT (not (compare3 xu31 LT == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];148 -> 158[label="",style="solid", color="black", weight=3]; 149[label="takeWhile1 (flip (<=) xu31) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (compare (Integer xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3040[label="xu31/Integer xu310",fontsize=10,color="white",style="solid",shape="box"];149 -> 3040[label="",style="solid", color="burlywood", weight=9]; 3040 -> 159[label="",style="solid", color="burlywood", weight=3]; 150[label="(++) range60 False (not (compare3 xu31 False == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];150 -> 160[label="",style="solid", color="black", weight=3]; 151[label="error []",fontsize=16,color="red",shape="box"];152[label="Char Zero",fontsize=16,color="green",shape="box"];153[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (primCmpInt xu30 xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3041[label="xu30/Pos xu300",fontsize=10,color="white",style="solid",shape="box"];153 -> 3041[label="",style="solid", color="burlywood", weight=9]; 3041 -> 161[label="",style="solid", color="burlywood", weight=3]; 3042[label="xu30/Neg xu300",fontsize=10,color="white",style="solid",shape="box"];153 -> 3042[label="",style="solid", color="burlywood", weight=9]; 3042 -> 162[label="",style="solid", color="burlywood", weight=3]; 450 -> 74[label="",style="dashed", color="red", weight=0]; 450[label="foldr (++) [] (map (range2 xu9 xu10) xu111)",fontsize=16,color="magenta"];450 -> 468[label="",style="dashed", color="magenta", weight=3]; 451[label="range2 xu9 xu10 xu110",fontsize=16,color="black",shape="box"];451 -> 469[label="",style="solid", color="black", weight=3]; 449[label="(++) xu43 xu31",fontsize=16,color="burlywood",shape="triangle"];3043[label="xu43/xu430 : xu431",fontsize=10,color="white",style="solid",shape="box"];449 -> 3043[label="",style="solid", color="burlywood", weight=9]; 3043 -> 470[label="",style="solid", color="burlywood", weight=3]; 3044[label="xu43/[]",fontsize=10,color="white",style="solid",shape="box"];449 -> 3044[label="",style="solid", color="burlywood", weight=9]; 3044 -> 471[label="",style="solid", color="burlywood", weight=3]; 474 -> 78[label="",style="dashed", color="red", weight=0]; 474[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="magenta"];474 -> 492[label="",style="dashed", color="magenta", weight=3]; 475[label="range5 xu18 xu19 xu20 xu21 xu220",fontsize=16,color="black",shape="box"];475 -> 493[label="",style="solid", color="black", weight=3]; 473[label="(++) xu44 xu42",fontsize=16,color="burlywood",shape="triangle"];3045[label="xu44/xu440 : xu441",fontsize=10,color="white",style="solid",shape="box"];473 -> 3045[label="",style="solid", color="burlywood", weight=9]; 3045 -> 494[label="",style="solid", color="burlywood", weight=3]; 3046[label="xu44/[]",fontsize=10,color="white",style="solid",shape="box"];473 -> 3046[label="",style="solid", color="burlywood", weight=9]; 3046 -> 495[label="",style="solid", color="burlywood", weight=3]; 158[label="(++) range00 LT (not (compare2 xu31 LT (xu31 == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3047[label="xu31/LT",fontsize=10,color="white",style="solid",shape="box"];158 -> 3047[label="",style="solid", color="burlywood", weight=9]; 3047 -> 167[label="",style="solid", color="burlywood", weight=3]; 3048[label="xu31/EQ",fontsize=10,color="white",style="solid",shape="box"];158 -> 3048[label="",style="solid", color="burlywood", weight=9]; 3048 -> 168[label="",style="solid", color="burlywood", weight=3]; 3049[label="xu31/GT",fontsize=10,color="white",style="solid",shape="box"];158 -> 3049[label="",style="solid", color="burlywood", weight=9]; 3049 -> 169[label="",style="solid", color="burlywood", weight=3]; 159[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (compare (Integer xu300) (Integer xu310) == GT))",fontsize=16,color="black",shape="box"];159 -> 170[label="",style="solid", color="black", weight=3]; 160[label="(++) range60 False (not (compare2 xu31 False (xu31 == False) == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3050[label="xu31/False",fontsize=10,color="white",style="solid",shape="box"];160 -> 3050[label="",style="solid", color="burlywood", weight=9]; 3050 -> 171[label="",style="solid", color="burlywood", weight=3]; 3051[label="xu31/True",fontsize=10,color="white",style="solid",shape="box"];160 -> 3051[label="",style="solid", color="burlywood", weight=9]; 3051 -> 172[label="",style="solid", color="burlywood", weight=3]; 161[label="takeWhile1 (flip (<=) xu31) (Pos xu300) (numericEnumFrom $! Pos xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3052[label="xu300/Succ xu3000",fontsize=10,color="white",style="solid",shape="box"];161 -> 3052[label="",style="solid", color="burlywood", weight=9]; 3052 -> 173[label="",style="solid", color="burlywood", weight=3]; 3053[label="xu300/Zero",fontsize=10,color="white",style="solid",shape="box"];161 -> 3053[label="",style="solid", color="burlywood", weight=9]; 3053 -> 174[label="",style="solid", color="burlywood", weight=3]; 162[label="takeWhile1 (flip (<=) xu31) (Neg xu300) (numericEnumFrom $! Neg xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3054[label="xu300/Succ xu3000",fontsize=10,color="white",style="solid",shape="box"];162 -> 3054[label="",style="solid", color="burlywood", weight=9]; 3054 -> 175[label="",style="solid", color="burlywood", weight=3]; 3055[label="xu300/Zero",fontsize=10,color="white",style="solid",shape="box"];162 -> 3055[label="",style="solid", color="burlywood", weight=9]; 3055 -> 176[label="",style="solid", color="burlywood", weight=3]; 468[label="xu111",fontsize=16,color="green",shape="box"];469[label="range20 xu9 xu10 xu110",fontsize=16,color="black",shape="box"];469 -> 496[label="",style="solid", color="black", weight=3]; 470[label="(++) (xu430 : xu431) xu31",fontsize=16,color="black",shape="box"];470 -> 497[label="",style="solid", color="black", weight=3]; 471[label="(++) [] xu31",fontsize=16,color="black",shape="box"];471 -> 498[label="",style="solid", color="black", weight=3]; 492[label="xu221",fontsize=16,color="green",shape="box"];493[label="range50 xu18 xu19 xu20 xu21 xu220",fontsize=16,color="black",shape="box"];493 -> 545[label="",style="solid", color="black", weight=3]; 494[label="(++) (xu440 : xu441) xu42",fontsize=16,color="black",shape="box"];494 -> 546[label="",style="solid", color="black", weight=3]; 495[label="(++) [] xu42",fontsize=16,color="black",shape="box"];495 -> 547[label="",style="solid", color="black", weight=3]; 167[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];167 -> 179[label="",style="solid", color="black", weight=3]; 168[label="(++) range00 LT (not (compare2 EQ LT (EQ == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];168 -> 180[label="",style="solid", color="black", weight=3]; 169[label="(++) range00 LT (not (compare2 GT LT (GT == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];169 -> 181[label="",style="solid", color="black", weight=3]; 170[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt xu300 xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3056[label="xu300/Pos xu3000",fontsize=10,color="white",style="solid",shape="box"];170 -> 3056[label="",style="solid", color="burlywood", weight=9]; 3056 -> 182[label="",style="solid", color="burlywood", weight=3]; 3057[label="xu300/Neg xu3000",fontsize=10,color="white",style="solid",shape="box"];170 -> 3057[label="",style="solid", color="burlywood", weight=9]; 3057 -> 183[label="",style="solid", color="burlywood", weight=3]; 171[label="(++) range60 False (not (compare2 False False (False == False) == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];171 -> 184[label="",style="solid", color="black", weight=3]; 172[label="(++) range60 False (not (compare2 True False (True == False) == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];172 -> 185[label="",style="solid", color="black", weight=3]; 173[label="takeWhile1 (flip (<=) xu31) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3058[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];173 -> 3058[label="",style="solid", color="burlywood", weight=9]; 3058 -> 186[label="",style="solid", color="burlywood", weight=3]; 3059[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];173 -> 3059[label="",style="solid", color="burlywood", weight=9]; 3059 -> 187[label="",style="solid", color="burlywood", weight=3]; 174[label="takeWhile1 (flip (<=) xu31) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3060[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];174 -> 3060[label="",style="solid", color="burlywood", weight=9]; 3060 -> 188[label="",style="solid", color="burlywood", weight=3]; 3061[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];174 -> 3061[label="",style="solid", color="burlywood", weight=9]; 3061 -> 189[label="",style="solid", color="burlywood", weight=3]; 175[label="takeWhile1 (flip (<=) xu31) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3062[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];175 -> 3062[label="",style="solid", color="burlywood", weight=9]; 3062 -> 190[label="",style="solid", color="burlywood", weight=3]; 3063[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];175 -> 3063[label="",style="solid", color="burlywood", weight=9]; 3063 -> 191[label="",style="solid", color="burlywood", weight=3]; 176[label="takeWhile1 (flip (<=) xu31) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3064[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];176 -> 3064[label="",style="solid", color="burlywood", weight=9]; 3064 -> 192[label="",style="solid", color="burlywood", weight=3]; 3065[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];176 -> 3065[label="",style="solid", color="burlywood", weight=9]; 3065 -> 193[label="",style="solid", color="burlywood", weight=3]; 496[label="concatMap (range1 xu110) (range (xu9,xu10))",fontsize=16,color="black",shape="box"];496 -> 548[label="",style="solid", color="black", weight=3]; 497[label="xu430 : xu431 ++ xu31",fontsize=16,color="green",shape="box"];497 -> 549[label="",style="dashed", color="green", weight=3]; 498[label="xu31",fontsize=16,color="green",shape="box"];545[label="concatMap (range4 xu220 xu18 xu19) (range (xu20,xu21))",fontsize=16,color="black",shape="box"];545 -> 599[label="",style="solid", color="black", weight=3]; 546[label="xu440 : xu441 ++ xu42",fontsize=16,color="green",shape="box"];546 -> 600[label="",style="dashed", color="green", weight=3]; 547[label="xu42",fontsize=16,color="green",shape="box"];179[label="(++) range00 LT (not (compare2 LT LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];179 -> 196[label="",style="solid", color="black", weight=3]; 180[label="(++) range00 LT (not (compare2 EQ LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];180 -> 197[label="",style="solid", color="black", weight=3]; 181[label="(++) range00 LT (not (compare2 GT LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];181 -> 198[label="",style="solid", color="black", weight=3]; 182[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos xu3000)) (numericEnumFrom $! Integer (Pos xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3066[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];182 -> 3066[label="",style="solid", color="burlywood", weight=9]; 3066 -> 199[label="",style="solid", color="burlywood", weight=3]; 3067[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];182 -> 3067[label="",style="solid", color="burlywood", weight=9]; 3067 -> 200[label="",style="solid", color="burlywood", weight=3]; 183[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg xu3000)) (numericEnumFrom $! Integer (Neg xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3068[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];183 -> 3068[label="",style="solid", color="burlywood", weight=9]; 3068 -> 201[label="",style="solid", color="burlywood", weight=3]; 3069[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];183 -> 3069[label="",style="solid", color="burlywood", weight=9]; 3069 -> 202[label="",style="solid", color="burlywood", weight=3]; 184[label="(++) range60 False (not (compare2 False False True == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];184 -> 203[label="",style="solid", color="black", weight=3]; 185[label="(++) range60 False (not (compare2 True False False == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];185 -> 204[label="",style="solid", color="black", weight=3]; 186[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) (Pos xu310) == GT))",fontsize=16,color="black",shape="box"];186 -> 205[label="",style="solid", color="black", weight=3]; 187[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) (Neg xu310) == GT))",fontsize=16,color="black",shape="box"];187 -> 206[label="",style="solid", color="black", weight=3]; 188[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3070[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];188 -> 3070[label="",style="solid", color="burlywood", weight=9]; 3070 -> 207[label="",style="solid", color="burlywood", weight=3]; 3071[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];188 -> 3071[label="",style="solid", color="burlywood", weight=9]; 3071 -> 208[label="",style="solid", color="burlywood", weight=3]; 189[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3072[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];189 -> 3072[label="",style="solid", color="burlywood", weight=9]; 3072 -> 209[label="",style="solid", color="burlywood", weight=3]; 3073[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];189 -> 3073[label="",style="solid", color="burlywood", weight=9]; 3073 -> 210[label="",style="solid", color="burlywood", weight=3]; 190[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) (Pos xu310) == GT))",fontsize=16,color="black",shape="box"];190 -> 211[label="",style="solid", color="black", weight=3]; 191[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) (Neg xu310) == GT))",fontsize=16,color="black",shape="box"];191 -> 212[label="",style="solid", color="black", weight=3]; 192[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3074[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];192 -> 3074[label="",style="solid", color="burlywood", weight=9]; 3074 -> 213[label="",style="solid", color="burlywood", weight=3]; 3075[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];192 -> 3075[label="",style="solid", color="burlywood", weight=9]; 3075 -> 214[label="",style="solid", color="burlywood", weight=3]; 193[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3076[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];193 -> 3076[label="",style="solid", color="burlywood", weight=9]; 3076 -> 215[label="",style="solid", color="burlywood", weight=3]; 3077[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];193 -> 3077[label="",style="solid", color="burlywood", weight=9]; 3077 -> 216[label="",style="solid", color="burlywood", weight=3]; 548[label="concat . map (range1 xu110)",fontsize=16,color="black",shape="box"];548 -> 601[label="",style="solid", color="black", weight=3]; 549 -> 449[label="",style="dashed", color="red", weight=0]; 549[label="xu431 ++ xu31",fontsize=16,color="magenta"];549 -> 602[label="",style="dashed", color="magenta", weight=3]; 599[label="concat . map (range4 xu220 xu18 xu19)",fontsize=16,color="black",shape="box"];599 -> 654[label="",style="solid", color="black", weight=3]; 600 -> 473[label="",style="dashed", color="red", weight=0]; 600[label="xu441 ++ xu42",fontsize=16,color="magenta"];600 -> 655[label="",style="dashed", color="magenta", weight=3]; 196[label="(++) range00 LT (not (EQ == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];196 -> 219[label="",style="solid", color="black", weight=3]; 197[label="(++) range00 LT (not (compare1 EQ LT (EQ <= LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];197 -> 220[label="",style="solid", color="black", weight=3]; 198[label="(++) range00 LT (not (compare1 GT LT (GT <= LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];198 -> 221[label="",style="solid", color="black", weight=3]; 199[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3078[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];199 -> 3078[label="",style="solid", color="burlywood", weight=9]; 3078 -> 222[label="",style="solid", color="burlywood", weight=3]; 3079[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];199 -> 3079[label="",style="solid", color="burlywood", weight=9]; 3079 -> 223[label="",style="solid", color="burlywood", weight=3]; 200[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3080[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];200 -> 3080[label="",style="solid", color="burlywood", weight=9]; 3080 -> 224[label="",style="solid", color="burlywood", weight=3]; 3081[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];200 -> 3081[label="",style="solid", color="burlywood", weight=9]; 3081 -> 225[label="",style="solid", color="burlywood", weight=3]; 201[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3082[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];201 -> 3082[label="",style="solid", color="burlywood", weight=9]; 3082 -> 226[label="",style="solid", color="burlywood", weight=3]; 3083[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];201 -> 3083[label="",style="solid", color="burlywood", weight=9]; 3083 -> 227[label="",style="solid", color="burlywood", weight=3]; 202[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3084[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];202 -> 3084[label="",style="solid", color="burlywood", weight=9]; 3084 -> 228[label="",style="solid", color="burlywood", weight=3]; 3085[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];202 -> 3085[label="",style="solid", color="burlywood", weight=9]; 3085 -> 229[label="",style="solid", color="burlywood", weight=3]; 203[label="(++) range60 False (not (EQ == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];203 -> 230[label="",style="solid", color="black", weight=3]; 204[label="(++) range60 False (not (compare1 True False (True <= False) == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];204 -> 231[label="",style="solid", color="black", weight=3]; 205[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3086[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];205 -> 3086[label="",style="solid", color="burlywood", weight=9]; 3086 -> 232[label="",style="solid", color="burlywood", weight=3]; 3087[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];205 -> 3087[label="",style="solid", color="burlywood", weight=9]; 3087 -> 233[label="",style="solid", color="burlywood", weight=3]; 206[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];206 -> 234[label="",style="solid", color="black", weight=3]; 207[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];207 -> 235[label="",style="solid", color="black", weight=3]; 208[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];208 -> 236[label="",style="solid", color="black", weight=3]; 209[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];209 -> 237[label="",style="solid", color="black", weight=3]; 210[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];210 -> 238[label="",style="solid", color="black", weight=3]; 211[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];211 -> 239[label="",style="solid", color="black", weight=3]; 212[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu310 (Succ xu3000) == GT))",fontsize=16,color="burlywood",shape="box"];3088[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];212 -> 3088[label="",style="solid", color="burlywood", weight=9]; 3088 -> 240[label="",style="solid", color="burlywood", weight=3]; 3089[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];212 -> 3089[label="",style="solid", color="burlywood", weight=9]; 3089 -> 241[label="",style="solid", color="burlywood", weight=3]; 213[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];213 -> 242[label="",style="solid", color="black", weight=3]; 214[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];214 -> 243[label="",style="solid", color="black", weight=3]; 215[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];215 -> 244[label="",style="solid", color="black", weight=3]; 216[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];216 -> 245[label="",style="solid", color="black", weight=3]; 601[label="concat (map (range1 xu110) (range (xu9,xu10)))",fontsize=16,color="black",shape="box"];601 -> 656[label="",style="solid", color="black", weight=3]; 602[label="xu431",fontsize=16,color="green",shape="box"];654[label="concat (map (range4 xu220 xu18 xu19) (range (xu20,xu21)))",fontsize=16,color="black",shape="box"];654 -> 713[label="",style="solid", color="black", weight=3]; 655[label="xu441",fontsize=16,color="green",shape="box"];219[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];219 -> 248[label="",style="solid", color="black", weight=3]; 220[label="(++) range00 LT (not (compare1 EQ LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];220 -> 249[label="",style="solid", color="black", weight=3]; 221[label="(++) range00 LT (not (compare1 GT LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];221 -> 250[label="",style="solid", color="black", weight=3]; 222[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) (Pos xu3100) == GT))",fontsize=16,color="black",shape="box"];222 -> 251[label="",style="solid", color="black", weight=3]; 223[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) (Neg xu3100) == GT))",fontsize=16,color="black",shape="box"];223 -> 252[label="",style="solid", color="black", weight=3]; 224[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3090[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];224 -> 3090[label="",style="solid", color="burlywood", weight=9]; 3090 -> 253[label="",style="solid", color="burlywood", weight=3]; 3091[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];224 -> 3091[label="",style="solid", color="burlywood", weight=9]; 3091 -> 254[label="",style="solid", color="burlywood", weight=3]; 225[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3092[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];225 -> 3092[label="",style="solid", color="burlywood", weight=9]; 3092 -> 255[label="",style="solid", color="burlywood", weight=3]; 3093[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];225 -> 3093[label="",style="solid", color="burlywood", weight=9]; 3093 -> 256[label="",style="solid", color="burlywood", weight=3]; 226[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) (Pos xu3100) == GT))",fontsize=16,color="black",shape="box"];226 -> 257[label="",style="solid", color="black", weight=3]; 227[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) (Neg xu3100) == GT))",fontsize=16,color="black",shape="box"];227 -> 258[label="",style="solid", color="black", weight=3]; 228[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3094[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];228 -> 3094[label="",style="solid", color="burlywood", weight=9]; 3094 -> 259[label="",style="solid", color="burlywood", weight=3]; 3095[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];228 -> 3095[label="",style="solid", color="burlywood", weight=9]; 3095 -> 260[label="",style="solid", color="burlywood", weight=3]; 229[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3096[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];229 -> 3096[label="",style="solid", color="burlywood", weight=9]; 3096 -> 261[label="",style="solid", color="burlywood", weight=3]; 3097[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];229 -> 3097[label="",style="solid", color="burlywood", weight=9]; 3097 -> 262[label="",style="solid", color="burlywood", weight=3]; 230[label="(++) range60 False (not False && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];230 -> 263[label="",style="solid", color="black", weight=3]; 231[label="(++) range60 False (not (compare1 True False False == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];231 -> 264[label="",style="solid", color="black", weight=3]; 232[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) (Succ xu3100) == GT))",fontsize=16,color="black",shape="box"];232 -> 265[label="",style="solid", color="black", weight=3]; 233[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) Zero == GT))",fontsize=16,color="black",shape="box"];233 -> 266[label="",style="solid", color="black", weight=3]; 234[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];234 -> 267[label="",style="solid", color="black", weight=3]; 235[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu3100) == GT))",fontsize=16,color="black",shape="box"];235 -> 268[label="",style="solid", color="black", weight=3]; 236[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];236 -> 269[label="",style="solid", color="black", weight=3]; 237[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];237 -> 270[label="",style="solid", color="black", weight=3]; 238[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];238 -> 271[label="",style="solid", color="black", weight=3]; 239[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];239 -> 272[label="",style="solid", color="black", weight=3]; 240[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3100) (Succ xu3000) == GT))",fontsize=16,color="black",shape="box"];240 -> 273[label="",style="solid", color="black", weight=3]; 241[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu3000) == GT))",fontsize=16,color="black",shape="box"];241 -> 274[label="",style="solid", color="black", weight=3]; 242[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];242 -> 275[label="",style="solid", color="black", weight=3]; 243[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];243 -> 276[label="",style="solid", color="black", weight=3]; 244[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3100) Zero == GT))",fontsize=16,color="black",shape="box"];244 -> 277[label="",style="solid", color="black", weight=3]; 245[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];245 -> 278[label="",style="solid", color="black", weight=3]; 656 -> 714[label="",style="dashed", color="red", weight=0]; 656[label="foldr (++) [] (map (range1 xu110) (range (xu9,xu10)))",fontsize=16,color="magenta"];656 -> 715[label="",style="dashed", color="magenta", weight=3]; 656 -> 716[label="",style="dashed", color="magenta", weight=3]; 713 -> 717[label="",style="dashed", color="red", weight=0]; 713[label="foldr (++) [] (map (range4 xu220 xu18 xu19) (range (xu20,xu21)))",fontsize=16,color="magenta"];713 -> 718[label="",style="dashed", color="magenta", weight=3]; 713 -> 719[label="",style="dashed", color="magenta", weight=3]; 713 -> 720[label="",style="dashed", color="magenta", weight=3]; 713 -> 721[label="",style="dashed", color="magenta", weight=3]; 248[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];248 -> 289[label="",style="solid", color="black", weight=3]; 249[label="(++) range00 LT (not (compare0 EQ LT otherwise == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];249 -> 290[label="",style="solid", color="black", weight=3]; 250[label="(++) range00 LT (not (compare0 GT LT otherwise == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];250 -> 291[label="",style="solid", color="black", weight=3]; 251[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) xu3100 == GT))",fontsize=16,color="burlywood",shape="box"];3098[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];251 -> 3098[label="",style="solid", color="burlywood", weight=9]; 3098 -> 292[label="",style="solid", color="burlywood", weight=3]; 3099[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];251 -> 3099[label="",style="solid", color="burlywood", weight=9]; 3099 -> 293[label="",style="solid", color="burlywood", weight=3]; 252[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];252 -> 294[label="",style="solid", color="black", weight=3]; 253[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];253 -> 295[label="",style="solid", color="black", weight=3]; 254[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];254 -> 296[label="",style="solid", color="black", weight=3]; 255[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];255 -> 297[label="",style="solid", color="black", weight=3]; 256[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];256 -> 298[label="",style="solid", color="black", weight=3]; 257[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];257 -> 299[label="",style="solid", color="black", weight=3]; 258[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3100 (Succ xu30000) == GT))",fontsize=16,color="burlywood",shape="box"];3100[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];258 -> 3100[label="",style="solid", color="burlywood", weight=9]; 3100 -> 300[label="",style="solid", color="burlywood", weight=3]; 3101[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];258 -> 3101[label="",style="solid", color="burlywood", weight=9]; 3101 -> 301[label="",style="solid", color="burlywood", weight=3]; 259[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];259 -> 302[label="",style="solid", color="black", weight=3]; 260[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];260 -> 303[label="",style="solid", color="black", weight=3]; 261[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];261 -> 304[label="",style="solid", color="black", weight=3]; 262[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];262 -> 305[label="",style="solid", color="black", weight=3]; 263[label="(++) range60 False (True && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];263 -> 306[label="",style="solid", color="black", weight=3]; 264[label="(++) range60 False (not (compare0 True False otherwise == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];264 -> 307[label="",style="solid", color="black", weight=3]; 265 -> 2275[label="",style="dashed", color="red", weight=0]; 265[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3000 xu3100 == GT))",fontsize=16,color="magenta"];265 -> 2276[label="",style="dashed", color="magenta", weight=3]; 265 -> 2277[label="",style="dashed", color="magenta", weight=3]; 265 -> 2278[label="",style="dashed", color="magenta", weight=3]; 265 -> 2279[label="",style="dashed", color="magenta", weight=3]; 266[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];266 -> 310[label="",style="solid", color="black", weight=3]; 267[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];267 -> 311[label="",style="solid", color="black", weight=3]; 268[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];268 -> 312[label="",style="solid", color="black", weight=3]; 269[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];269 -> 313[label="",style="solid", color="black", weight=3]; 270[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];270 -> 314[label="",style="solid", color="black", weight=3]; 271[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];271 -> 315[label="",style="solid", color="black", weight=3]; 272[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];272 -> 316[label="",style="solid", color="black", weight=3]; 273 -> 2391[label="",style="dashed", color="red", weight=0]; 273[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3100 xu3000 == GT))",fontsize=16,color="magenta"];273 -> 2392[label="",style="dashed", color="magenta", weight=3]; 273 -> 2393[label="",style="dashed", color="magenta", weight=3]; 273 -> 2394[label="",style="dashed", color="magenta", weight=3]; 273 -> 2395[label="",style="dashed", color="magenta", weight=3]; 273 -> 2396[label="",style="dashed", color="magenta", weight=3]; 274[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];274 -> 319[label="",style="solid", color="black", weight=3]; 275[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];275 -> 320[label="",style="solid", color="black", weight=3]; 276[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];276 -> 321[label="",style="solid", color="black", weight=3]; 277[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];277 -> 322[label="",style="solid", color="black", weight=3]; 278[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];278 -> 323[label="",style="solid", color="black", weight=3]; 715[label="range (xu9,xu10)",fontsize=16,color="blue",shape="box"];3102[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];715 -> 3102[label="",style="solid", color="blue", weight=9]; 3102 -> 722[label="",style="solid", color="blue", weight=3]; 3103[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];715 -> 3103[label="",style="solid", color="blue", weight=9]; 3103 -> 723[label="",style="solid", color="blue", weight=3]; 3104[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];715 -> 3104[label="",style="solid", color="blue", weight=9]; 3104 -> 724[label="",style="solid", color="blue", weight=3]; 3105[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];715 -> 3105[label="",style="solid", color="blue", weight=9]; 3105 -> 725[label="",style="solid", color="blue", weight=3]; 3106[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];715 -> 3106[label="",style="solid", color="blue", weight=9]; 3106 -> 726[label="",style="solid", color="blue", weight=3]; 3107[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];715 -> 3107[label="",style="solid", color="blue", weight=9]; 3107 -> 727[label="",style="solid", color="blue", weight=3]; 3108[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];715 -> 3108[label="",style="solid", color="blue", weight=9]; 3108 -> 728[label="",style="solid", color="blue", weight=3]; 3109[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];715 -> 3109[label="",style="solid", color="blue", weight=9]; 3109 -> 729[label="",style="solid", color="blue", weight=3]; 716[label="xu110",fontsize=16,color="green",shape="box"];714[label="foldr (++) [] (map (range1 xu48) xu49)",fontsize=16,color="burlywood",shape="triangle"];3110[label="xu49/xu490 : xu491",fontsize=10,color="white",style="solid",shape="box"];714 -> 3110[label="",style="solid", color="burlywood", weight=9]; 3110 -> 730[label="",style="solid", color="burlywood", weight=3]; 3111[label="xu49/[]",fontsize=10,color="white",style="solid",shape="box"];714 -> 3111[label="",style="solid", color="burlywood", weight=9]; 3111 -> 731[label="",style="solid", color="burlywood", weight=3]; 718[label="xu19",fontsize=16,color="green",shape="box"];719[label="xu220",fontsize=16,color="green",shape="box"];720[label="range (xu20,xu21)",fontsize=16,color="blue",shape="box"];3112[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];720 -> 3112[label="",style="solid", color="blue", weight=9]; 3112 -> 732[label="",style="solid", color="blue", weight=3]; 3113[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];720 -> 3113[label="",style="solid", color="blue", weight=9]; 3113 -> 733[label="",style="solid", color="blue", weight=3]; 3114[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];720 -> 3114[label="",style="solid", color="blue", weight=9]; 3114 -> 734[label="",style="solid", color="blue", weight=3]; 3115[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];720 -> 3115[label="",style="solid", color="blue", weight=9]; 3115 -> 735[label="",style="solid", color="blue", weight=3]; 3116[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];720 -> 3116[label="",style="solid", color="blue", weight=9]; 3116 -> 736[label="",style="solid", color="blue", weight=3]; 3117[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];720 -> 3117[label="",style="solid", color="blue", weight=9]; 3117 -> 737[label="",style="solid", color="blue", weight=3]; 3118[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];720 -> 3118[label="",style="solid", color="blue", weight=9]; 3118 -> 738[label="",style="solid", color="blue", weight=3]; 3119[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];720 -> 3119[label="",style="solid", color="blue", weight=9]; 3119 -> 739[label="",style="solid", color="blue", weight=3]; 721[label="xu18",fontsize=16,color="green",shape="box"];717[label="foldr (++) [] (map (range4 xu55 xu56 xu57) xu58)",fontsize=16,color="burlywood",shape="triangle"];3120[label="xu58/xu580 : xu581",fontsize=10,color="white",style="solid",shape="box"];717 -> 3120[label="",style="solid", color="burlywood", weight=9]; 3120 -> 740[label="",style="solid", color="burlywood", weight=3]; 3121[label="xu58/[]",fontsize=10,color="white",style="solid",shape="box"];717 -> 3121[label="",style="solid", color="burlywood", weight=9]; 3121 -> 741[label="",style="solid", color="burlywood", weight=3]; 289[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];289 -> 344[label="",style="solid", color="black", weight=3]; 290[label="(++) range00 LT (not (compare0 EQ LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];290 -> 345[label="",style="solid", color="black", weight=3]; 291[label="(++) range00 LT (not (compare0 GT LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];291 -> 346[label="",style="solid", color="black", weight=3]; 292[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) (Succ xu31000) == GT))",fontsize=16,color="black",shape="box"];292 -> 347[label="",style="solid", color="black", weight=3]; 293[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) Zero == GT))",fontsize=16,color="black",shape="box"];293 -> 348[label="",style="solid", color="black", weight=3]; 294[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];294 -> 349[label="",style="solid", color="black", weight=3]; 295[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu31000) == GT))",fontsize=16,color="black",shape="box"];295 -> 350[label="",style="solid", color="black", weight=3]; 296[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];296 -> 351[label="",style="solid", color="black", weight=3]; 297[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];297 -> 352[label="",style="solid", color="black", weight=3]; 298[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];298 -> 353[label="",style="solid", color="black", weight=3]; 299[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];299 -> 354[label="",style="solid", color="black", weight=3]; 300[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu31000) (Succ xu30000) == GT))",fontsize=16,color="black",shape="box"];300 -> 355[label="",style="solid", color="black", weight=3]; 301[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu30000) == GT))",fontsize=16,color="black",shape="box"];301 -> 356[label="",style="solid", color="black", weight=3]; 302[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];302 -> 357[label="",style="solid", color="black", weight=3]; 303[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];303 -> 358[label="",style="solid", color="black", weight=3]; 304[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu31000) Zero == GT))",fontsize=16,color="black",shape="box"];304 -> 359[label="",style="solid", color="black", weight=3]; 305[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];305 -> 360[label="",style="solid", color="black", weight=3]; 306[label="(++) range60 False (False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];306 -> 361[label="",style="solid", color="black", weight=3]; 307[label="(++) range60 False (not (compare0 True False True == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];307 -> 362[label="",style="solid", color="black", weight=3]; 2276[label="xu3100",fontsize=16,color="green",shape="box"];2277[label="xu3000",fontsize=16,color="green",shape="box"];2278[label="xu3000",fontsize=16,color="green",shape="box"];2279[label="xu3100",fontsize=16,color="green",shape="box"];2275[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu169 xu170 == GT))",fontsize=16,color="burlywood",shape="triangle"];3122[label="xu169/Succ xu1690",fontsize=10,color="white",style="solid",shape="box"];2275 -> 3122[label="",style="solid", color="burlywood", weight=9]; 3122 -> 2316[label="",style="solid", color="burlywood", weight=3]; 3123[label="xu169/Zero",fontsize=10,color="white",style="solid",shape="box"];2275 -> 3123[label="",style="solid", color="burlywood", weight=9]; 3123 -> 2317[label="",style="solid", color="burlywood", weight=3]; 310[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];310 -> 367[label="",style="solid", color="black", weight=3]; 311[label="takeWhile0 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];311 -> 368[label="",style="solid", color="black", weight=3]; 312[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];312 -> 369[label="",style="solid", color="black", weight=3]; 313[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];313 -> 370[label="",style="solid", color="black", weight=3]; 314[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];314 -> 371[label="",style="solid", color="black", weight=3]; 315[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];315 -> 372[label="",style="solid", color="black", weight=3]; 316[label="Neg (Succ xu3000) : takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];316 -> 373[label="",style="dashed", color="green", weight=3]; 2392[label="xu3000",fontsize=16,color="green",shape="box"];2393[label="xu3100",fontsize=16,color="green",shape="box"];2394[label="xu3000",fontsize=16,color="green",shape="box"];2395[label="Neg (Succ xu3000) + fromInt (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];2395 -> 2447[label="",style="solid", color="black", weight=3]; 2396[label="xu3100",fontsize=16,color="green",shape="box"];2391[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat xu198 xu199 == GT))",fontsize=16,color="burlywood",shape="triangle"];3124[label="xu198/Succ xu1980",fontsize=10,color="white",style="solid",shape="box"];2391 -> 3124[label="",style="solid", color="burlywood", weight=9]; 3124 -> 2448[label="",style="solid", color="burlywood", weight=3]; 3125[label="xu198/Zero",fontsize=10,color="white",style="solid",shape="box"];2391 -> 3125[label="",style="solid", color="burlywood", weight=9]; 3125 -> 2449[label="",style="solid", color="burlywood", weight=3]; 319[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];319 -> 378[label="",style="solid", color="black", weight=3]; 320[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];320 -> 379[label="",style="solid", color="black", weight=3]; 321[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];321 -> 380[label="",style="solid", color="black", weight=3]; 322[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];322 -> 381[label="",style="solid", color="black", weight=3]; 323[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];323 -> 382[label="",style="solid", color="black", weight=3]; 722[label="range (xu9,xu10)",fontsize=16,color="burlywood",shape="triangle"];3126[label="xu9/(xu90,xu91)",fontsize=10,color="white",style="solid",shape="box"];722 -> 3126[label="",style="solid", color="burlywood", weight=9]; 3126 -> 800[label="",style="solid", color="burlywood", weight=3]; 723[label="range (xu9,xu10)",fontsize=16,color="burlywood",shape="triangle"];3127[label="xu9/(xu90,xu91,xu92)",fontsize=10,color="white",style="solid",shape="box"];723 -> 3127[label="",style="solid", color="burlywood", weight=9]; 3127 -> 801[label="",style="solid", color="burlywood", weight=3]; 724 -> 6[label="",style="dashed", color="red", weight=0]; 724[label="range (xu9,xu10)",fontsize=16,color="magenta"];724 -> 802[label="",style="dashed", color="magenta", weight=3]; 725 -> 7[label="",style="dashed", color="red", weight=0]; 725[label="range (xu9,xu10)",fontsize=16,color="magenta"];725 -> 803[label="",style="dashed", color="magenta", weight=3]; 726 -> 8[label="",style="dashed", color="red", weight=0]; 726[label="range (xu9,xu10)",fontsize=16,color="magenta"];726 -> 804[label="",style="dashed", color="magenta", weight=3]; 727 -> 9[label="",style="dashed", color="red", weight=0]; 727[label="range (xu9,xu10)",fontsize=16,color="magenta"];727 -> 805[label="",style="dashed", color="magenta", weight=3]; 728 -> 10[label="",style="dashed", color="red", weight=0]; 728[label="range (xu9,xu10)",fontsize=16,color="magenta"];728 -> 806[label="",style="dashed", color="magenta", weight=3]; 729 -> 11[label="",style="dashed", color="red", weight=0]; 729[label="range (xu9,xu10)",fontsize=16,color="magenta"];729 -> 807[label="",style="dashed", color="magenta", weight=3]; 730[label="foldr (++) [] (map (range1 xu48) (xu490 : xu491))",fontsize=16,color="black",shape="box"];730 -> 808[label="",style="solid", color="black", weight=3]; 731[label="foldr (++) [] (map (range1 xu48) [])",fontsize=16,color="black",shape="box"];731 -> 809[label="",style="solid", color="black", weight=3]; 732 -> 722[label="",style="dashed", color="red", weight=0]; 732[label="range (xu20,xu21)",fontsize=16,color="magenta"];732 -> 810[label="",style="dashed", color="magenta", weight=3]; 732 -> 811[label="",style="dashed", color="magenta", weight=3]; 733 -> 723[label="",style="dashed", color="red", weight=0]; 733[label="range (xu20,xu21)",fontsize=16,color="magenta"];733 -> 812[label="",style="dashed", color="magenta", weight=3]; 733 -> 813[label="",style="dashed", color="magenta", weight=3]; 734 -> 6[label="",style="dashed", color="red", weight=0]; 734[label="range (xu20,xu21)",fontsize=16,color="magenta"];734 -> 814[label="",style="dashed", color="magenta", weight=3]; 735 -> 7[label="",style="dashed", color="red", weight=0]; 735[label="range (xu20,xu21)",fontsize=16,color="magenta"];735 -> 815[label="",style="dashed", color="magenta", weight=3]; 736 -> 8[label="",style="dashed", color="red", weight=0]; 736[label="range (xu20,xu21)",fontsize=16,color="magenta"];736 -> 816[label="",style="dashed", color="magenta", weight=3]; 737 -> 9[label="",style="dashed", color="red", weight=0]; 737[label="range (xu20,xu21)",fontsize=16,color="magenta"];737 -> 817[label="",style="dashed", color="magenta", weight=3]; 738 -> 10[label="",style="dashed", color="red", weight=0]; 738[label="range (xu20,xu21)",fontsize=16,color="magenta"];738 -> 818[label="",style="dashed", color="magenta", weight=3]; 739 -> 11[label="",style="dashed", color="red", weight=0]; 739[label="range (xu20,xu21)",fontsize=16,color="magenta"];739 -> 819[label="",style="dashed", color="magenta", weight=3]; 740[label="foldr (++) [] (map (range4 xu55 xu56 xu57) (xu580 : xu581))",fontsize=16,color="black",shape="box"];740 -> 820[label="",style="solid", color="black", weight=3]; 741[label="foldr (++) [] (map (range4 xu55 xu56 xu57) [])",fontsize=16,color="black",shape="box"];741 -> 821[label="",style="solid", color="black", weight=3]; 344[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];344 -> 405[label="",style="solid", color="black", weight=3]; 345[label="(++) range00 LT (not (GT == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];345 -> 406[label="",style="solid", color="black", weight=3]; 346[label="(++) range00 LT (not (GT == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];346 -> 407[label="",style="solid", color="black", weight=3]; 347 -> 2460[label="",style="dashed", color="red", weight=0]; 347[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu30000 xu31000 == GT))",fontsize=16,color="magenta"];347 -> 2461[label="",style="dashed", color="magenta", weight=3]; 347 -> 2462[label="",style="dashed", color="magenta", weight=3]; 347 -> 2463[label="",style="dashed", color="magenta", weight=3]; 347 -> 2464[label="",style="dashed", color="magenta", weight=3]; 348[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];348 -> 410[label="",style="solid", color="black", weight=3]; 349[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];349 -> 411[label="",style="solid", color="black", weight=3]; 350[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];350 -> 412[label="",style="solid", color="black", weight=3]; 351[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];351 -> 413[label="",style="solid", color="black", weight=3]; 352[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];352 -> 414[label="",style="solid", color="black", weight=3]; 353[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];353 -> 415[label="",style="solid", color="black", weight=3]; 354[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];354 -> 416[label="",style="solid", color="black", weight=3]; 355 -> 2509[label="",style="dashed", color="red", weight=0]; 355[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu31000 xu30000 == GT))",fontsize=16,color="magenta"];355 -> 2510[label="",style="dashed", color="magenta", weight=3]; 355 -> 2511[label="",style="dashed", color="magenta", weight=3]; 355 -> 2512[label="",style="dashed", color="magenta", weight=3]; 355 -> 2513[label="",style="dashed", color="magenta", weight=3]; 356[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];356 -> 419[label="",style="solid", color="black", weight=3]; 357[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];357 -> 420[label="",style="solid", color="black", weight=3]; 358[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];358 -> 421[label="",style="solid", color="black", weight=3]; 359[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];359 -> 422[label="",style="solid", color="black", weight=3]; 360[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];360 -> 423[label="",style="solid", color="black", weight=3]; 361[label="(++) range60 False (compare False xu30 /= LT) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];361 -> 424[label="",style="solid", color="black", weight=3]; 362[label="(++) range60 False (not (GT == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];362 -> 425[label="",style="solid", color="black", weight=3]; 2316[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) xu170 == GT))",fontsize=16,color="burlywood",shape="box"];3128[label="xu170/Succ xu1700",fontsize=10,color="white",style="solid",shape="box"];2316 -> 3128[label="",style="solid", color="burlywood", weight=9]; 3128 -> 2323[label="",style="solid", color="burlywood", weight=3]; 3129[label="xu170/Zero",fontsize=10,color="white",style="solid",shape="box"];2316 -> 3129[label="",style="solid", color="burlywood", weight=9]; 3129 -> 2324[label="",style="solid", color="burlywood", weight=3]; 2317[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu170 == GT))",fontsize=16,color="burlywood",shape="box"];3130[label="xu170/Succ xu1700",fontsize=10,color="white",style="solid",shape="box"];2317 -> 3130[label="",style="solid", color="burlywood", weight=9]; 3130 -> 2325[label="",style="solid", color="burlywood", weight=3]; 3131[label="xu170/Zero",fontsize=10,color="white",style="solid",shape="box"];2317 -> 3131[label="",style="solid", color="burlywood", weight=9]; 3131 -> 2326[label="",style="solid", color="burlywood", weight=3]; 367[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];367 -> 430[label="",style="solid", color="black", weight=3]; 368[label="takeWhile0 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];368 -> 431[label="",style="solid", color="black", weight=3]; 369[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];369 -> 432[label="",style="solid", color="black", weight=3]; 370[label="Pos Zero : takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];370 -> 433[label="",style="dashed", color="green", weight=3]; 371[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];371 -> 434[label="",style="solid", color="black", weight=3]; 372[label="Pos Zero : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];372 -> 435[label="",style="dashed", color="green", weight=3]; 373[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];373 -> 436[label="",style="solid", color="black", weight=3]; 2447[label="primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2447 -> 2501[label="",style="solid", color="black", weight=3]; 2448[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) xu199 == GT))",fontsize=16,color="burlywood",shape="box"];3132[label="xu199/Succ xu1990",fontsize=10,color="white",style="solid",shape="box"];2448 -> 3132[label="",style="solid", color="burlywood", weight=9]; 3132 -> 2502[label="",style="solid", color="burlywood", weight=3]; 3133[label="xu199/Zero",fontsize=10,color="white",style="solid",shape="box"];2448 -> 3133[label="",style="solid", color="burlywood", weight=9]; 3133 -> 2503[label="",style="solid", color="burlywood", weight=3]; 2449[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero xu199 == GT))",fontsize=16,color="burlywood",shape="box"];3134[label="xu199/Succ xu1990",fontsize=10,color="white",style="solid",shape="box"];2449 -> 3134[label="",style="solid", color="burlywood", weight=9]; 3134 -> 2504[label="",style="solid", color="burlywood", weight=3]; 3135[label="xu199/Zero",fontsize=10,color="white",style="solid",shape="box"];2449 -> 3135[label="",style="solid", color="burlywood", weight=9]; 3135 -> 2505[label="",style="solid", color="burlywood", weight=3]; 378[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];378 -> 441[label="",style="solid", color="black", weight=3]; 379[label="Neg Zero : takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];379 -> 442[label="",style="dashed", color="green", weight=3]; 380[label="Neg Zero : takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];380 -> 443[label="",style="dashed", color="green", weight=3]; 381[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];381 -> 444[label="",style="solid", color="black", weight=3]; 382[label="Neg Zero : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];382 -> 445[label="",style="dashed", color="green", weight=3]; 800[label="range ((xu90,xu91),xu10)",fontsize=16,color="burlywood",shape="box"];3136[label="xu10/(xu100,xu101)",fontsize=10,color="white",style="solid",shape="box"];800 -> 3136[label="",style="solid", color="burlywood", weight=9]; 3136 -> 881[label="",style="solid", color="burlywood", weight=3]; 801[label="range ((xu90,xu91,xu92),xu10)",fontsize=16,color="burlywood",shape="box"];3137[label="xu10/(xu100,xu101,xu102)",fontsize=10,color="white",style="solid",shape="box"];801 -> 3137[label="",style="solid", color="burlywood", weight=9]; 3137 -> 882[label="",style="solid", color="burlywood", weight=3]; 802[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];803[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];804[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];805[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];806[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];807[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];808[label="foldr (++) [] (range1 xu48 xu490 : map (range1 xu48) xu491)",fontsize=16,color="black",shape="box"];808 -> 883[label="",style="solid", color="black", weight=3]; 809 -> 126[label="",style="dashed", color="red", weight=0]; 809[label="foldr (++) [] []",fontsize=16,color="magenta"];810[label="xu21",fontsize=16,color="green",shape="box"];811[label="xu20",fontsize=16,color="green",shape="box"];812[label="xu21",fontsize=16,color="green",shape="box"];813[label="xu20",fontsize=16,color="green",shape="box"];814[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];815[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];816[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];817[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];818[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];819[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];820[label="foldr (++) [] (range4 xu55 xu56 xu57 xu580 : map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="black",shape="box"];820 -> 884[label="",style="solid", color="black", weight=3]; 821 -> 136[label="",style="dashed", color="red", weight=0]; 821[label="foldr (++) [] []",fontsize=16,color="magenta"];405[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];405 -> 499[label="",style="solid", color="black", weight=3]; 406[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];406 -> 500[label="",style="solid", color="black", weight=3]; 407[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];407 -> 501[label="",style="solid", color="black", weight=3]; 2461[label="xu31000",fontsize=16,color="green",shape="box"];2462[label="xu31000",fontsize=16,color="green",shape="box"];2463[label="xu30000",fontsize=16,color="green",shape="box"];2464[label="xu30000",fontsize=16,color="green",shape="box"];2460[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu203 xu204 == GT))",fontsize=16,color="burlywood",shape="triangle"];3138[label="xu203/Succ xu2030",fontsize=10,color="white",style="solid",shape="box"];2460 -> 3138[label="",style="solid", color="burlywood", weight=9]; 3138 -> 2506[label="",style="solid", color="burlywood", weight=3]; 3139[label="xu203/Zero",fontsize=10,color="white",style="solid",shape="box"];2460 -> 3139[label="",style="solid", color="burlywood", weight=9]; 3139 -> 2507[label="",style="solid", color="burlywood", weight=3]; 410[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];410 -> 506[label="",style="solid", color="black", weight=3]; 411[label="takeWhile0 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];411 -> 507[label="",style="solid", color="black", weight=3]; 412[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];412 -> 508[label="",style="solid", color="black", weight=3]; 413[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];413 -> 509[label="",style="solid", color="black", weight=3]; 414[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];414 -> 510[label="",style="solid", color="black", weight=3]; 415[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];415 -> 511[label="",style="solid", color="black", weight=3]; 416[label="Integer (Neg (Succ xu30000)) : takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];416 -> 512[label="",style="dashed", color="green", weight=3]; 2510[label="xu31000",fontsize=16,color="green",shape="box"];2511[label="xu30000",fontsize=16,color="green",shape="box"];2512[label="xu31000",fontsize=16,color="green",shape="box"];2513[label="xu30000",fontsize=16,color="green",shape="box"];2509[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu208 xu209 == GT))",fontsize=16,color="burlywood",shape="triangle"];3140[label="xu208/Succ xu2080",fontsize=10,color="white",style="solid",shape="box"];2509 -> 3140[label="",style="solid", color="burlywood", weight=9]; 3140 -> 2550[label="",style="solid", color="burlywood", weight=3]; 3141[label="xu208/Zero",fontsize=10,color="white",style="solid",shape="box"];2509 -> 3141[label="",style="solid", color="burlywood", weight=9]; 3141 -> 2551[label="",style="solid", color="burlywood", weight=3]; 419[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];419 -> 517[label="",style="solid", color="black", weight=3]; 420[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];420 -> 518[label="",style="solid", color="black", weight=3]; 421[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];421 -> 519[label="",style="solid", color="black", weight=3]; 422[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];422 -> 520[label="",style="solid", color="black", weight=3]; 423[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];423 -> 521[label="",style="solid", color="black", weight=3]; 424[label="(++) range60 False (not (compare False xu30 == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];424 -> 522[label="",style="solid", color="black", weight=3]; 425[label="(++) range60 False (not False && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];425 -> 523[label="",style="solid", color="black", weight=3]; 2323[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) (Succ xu1700) == GT))",fontsize=16,color="black",shape="box"];2323 -> 2330[label="",style="solid", color="black", weight=3]; 2324[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) Zero == GT))",fontsize=16,color="black",shape="box"];2324 -> 2331[label="",style="solid", color="black", weight=3]; 2325[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu1700) == GT))",fontsize=16,color="black",shape="box"];2325 -> 2332[label="",style="solid", color="black", weight=3]; 2326[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2326 -> 2333[label="",style="solid", color="black", weight=3]; 430[label="takeWhile0 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];430 -> 529[label="",style="solid", color="black", weight=3]; 431[label="[]",fontsize=16,color="green",shape="box"];432[label="Pos Zero : takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];432 -> 530[label="",style="dashed", color="green", weight=3]; 433[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];433 -> 531[label="",style="solid", color="black", weight=3]; 434[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];434 -> 532[label="",style="solid", color="black", weight=3]; 435[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];435 -> 533[label="",style="solid", color="black", weight=3]; 436[label="takeWhile (flip (<=) (Pos xu310)) (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];436 -> 534[label="",style="solid", color="black", weight=3]; 2501 -> 987[label="",style="dashed", color="red", weight=0]; 2501[label="primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2501 -> 2552[label="",style="dashed", color="magenta", weight=3]; 2502[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) (Succ xu1990) == GT))",fontsize=16,color="black",shape="box"];2502 -> 2553[label="",style="solid", color="black", weight=3]; 2503[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) Zero == GT))",fontsize=16,color="black",shape="box"];2503 -> 2554[label="",style="solid", color="black", weight=3]; 2504[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero (Succ xu1990) == GT))",fontsize=16,color="black",shape="box"];2504 -> 2555[label="",style="solid", color="black", weight=3]; 2505[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2505 -> 2556[label="",style="solid", color="black", weight=3]; 441[label="Neg (Succ xu3000) : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];441 -> 540[label="",style="dashed", color="green", weight=3]; 442[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];442 -> 541[label="",style="solid", color="black", weight=3]; 443[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];443 -> 542[label="",style="solid", color="black", weight=3]; 444[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];444 -> 543[label="",style="solid", color="black", weight=3]; 445[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];445 -> 544[label="",style="solid", color="black", weight=3]; 881[label="range ((xu90,xu91),(xu100,xu101))",fontsize=16,color="black",shape="box"];881 -> 958[label="",style="solid", color="black", weight=3]; 882[label="range ((xu90,xu91,xu92),(xu100,xu101,xu102))",fontsize=16,color="black",shape="box"];882 -> 959[label="",style="solid", color="black", weight=3]; 883 -> 449[label="",style="dashed", color="red", weight=0]; 883[label="(++) range1 xu48 xu490 foldr (++) [] (map (range1 xu48) xu491)",fontsize=16,color="magenta"];883 -> 960[label="",style="dashed", color="magenta", weight=3]; 883 -> 961[label="",style="dashed", color="magenta", weight=3]; 884 -> 473[label="",style="dashed", color="red", weight=0]; 884[label="(++) range4 xu55 xu56 xu57 xu580 foldr (++) [] (map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="magenta"];884 -> 962[label="",style="dashed", color="magenta", weight=3]; 884 -> 963[label="",style="dashed", color="magenta", weight=3]; 499[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];499 -> 550[label="",style="solid", color="black", weight=3]; 500[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];500 -> 551[label="",style="solid", color="black", weight=3]; 501[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];501 -> 552[label="",style="solid", color="black", weight=3]; 2506[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) xu204 == GT))",fontsize=16,color="burlywood",shape="box"];3142[label="xu204/Succ xu2040",fontsize=10,color="white",style="solid",shape="box"];2506 -> 3142[label="",style="solid", color="burlywood", weight=9]; 3142 -> 2557[label="",style="solid", color="burlywood", weight=3]; 3143[label="xu204/Zero",fontsize=10,color="white",style="solid",shape="box"];2506 -> 3143[label="",style="solid", color="burlywood", weight=9]; 3143 -> 2558[label="",style="solid", color="burlywood", weight=3]; 2507[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu204 == GT))",fontsize=16,color="burlywood",shape="box"];3144[label="xu204/Succ xu2040",fontsize=10,color="white",style="solid",shape="box"];2507 -> 3144[label="",style="solid", color="burlywood", weight=9]; 3144 -> 2559[label="",style="solid", color="burlywood", weight=3]; 3145[label="xu204/Zero",fontsize=10,color="white",style="solid",shape="box"];2507 -> 3145[label="",style="solid", color="burlywood", weight=9]; 3145 -> 2560[label="",style="solid", color="burlywood", weight=3]; 506[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];506 -> 557[label="",style="solid", color="black", weight=3]; 507[label="takeWhile0 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];507 -> 558[label="",style="solid", color="black", weight=3]; 508[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];508 -> 559[label="",style="solid", color="black", weight=3]; 509[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];509 -> 560[label="",style="dashed", color="green", weight=3]; 510[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];510 -> 561[label="",style="solid", color="black", weight=3]; 511[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];511 -> 562[label="",style="dashed", color="green", weight=3]; 512[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];512 -> 563[label="",style="solid", color="black", weight=3]; 2550[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) xu209 == GT))",fontsize=16,color="burlywood",shape="box"];3146[label="xu209/Succ xu2090",fontsize=10,color="white",style="solid",shape="box"];2550 -> 3146[label="",style="solid", color="burlywood", weight=9]; 3146 -> 2575[label="",style="solid", color="burlywood", weight=3]; 3147[label="xu209/Zero",fontsize=10,color="white",style="solid",shape="box"];2550 -> 3147[label="",style="solid", color="burlywood", weight=9]; 3147 -> 2576[label="",style="solid", color="burlywood", weight=3]; 2551[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu209 == GT))",fontsize=16,color="burlywood",shape="box"];3148[label="xu209/Succ xu2090",fontsize=10,color="white",style="solid",shape="box"];2551 -> 3148[label="",style="solid", color="burlywood", weight=9]; 3148 -> 2577[label="",style="solid", color="burlywood", weight=3]; 3149[label="xu209/Zero",fontsize=10,color="white",style="solid",shape="box"];2551 -> 3149[label="",style="solid", color="burlywood", weight=9]; 3149 -> 2578[label="",style="solid", color="burlywood", weight=3]; 517[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];517 -> 568[label="",style="solid", color="black", weight=3]; 518[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];518 -> 569[label="",style="dashed", color="green", weight=3]; 519[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];519 -> 570[label="",style="dashed", color="green", weight=3]; 520[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];520 -> 571[label="",style="solid", color="black", weight=3]; 521[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];521 -> 572[label="",style="dashed", color="green", weight=3]; 522[label="(++) range60 False (not (compare3 False xu30 == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];522 -> 573[label="",style="solid", color="black", weight=3]; 523[label="(++) range60 False (True && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];523 -> 574[label="",style="solid", color="black", weight=3]; 2330 -> 2275[label="",style="dashed", color="red", weight=0]; 2330[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu1690 xu1700 == GT))",fontsize=16,color="magenta"];2330 -> 2337[label="",style="dashed", color="magenta", weight=3]; 2330 -> 2338[label="",style="dashed", color="magenta", weight=3]; 2331[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2331 -> 2339[label="",style="solid", color="black", weight=3]; 2332[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2332 -> 2340[label="",style="solid", color="black", weight=3]; 2333[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2333 -> 2341[label="",style="solid", color="black", weight=3]; 529[label="takeWhile0 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];529 -> 582[label="",style="solid", color="black", weight=3]; 530[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];530 -> 583[label="",style="solid", color="black", weight=3]; 531[label="takeWhile (flip (<=) (Pos Zero)) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];531 -> 584[label="",style="solid", color="black", weight=3]; 532[label="[]",fontsize=16,color="green",shape="box"];533[label="takeWhile (flip (<=) (Neg Zero)) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];533 -> 585[label="",style="solid", color="black", weight=3]; 534[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];534 -> 586[label="",style="solid", color="black", weight=3]; 2552[label="xu3000",fontsize=16,color="green",shape="box"];987[label="primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];987 -> 1075[label="",style="solid", color="black", weight=3]; 2553 -> 2391[label="",style="dashed", color="red", weight=0]; 2553[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat xu1980 xu1990 == GT))",fontsize=16,color="magenta"];2553 -> 2579[label="",style="dashed", color="magenta", weight=3]; 2553 -> 2580[label="",style="dashed", color="magenta", weight=3]; 2554[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (GT == GT))",fontsize=16,color="black",shape="box"];2554 -> 2581[label="",style="solid", color="black", weight=3]; 2555[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (LT == GT))",fontsize=16,color="black",shape="box"];2555 -> 2582[label="",style="solid", color="black", weight=3]; 2556[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2556 -> 2583[label="",style="solid", color="black", weight=3]; 540[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];540 -> 594[label="",style="solid", color="black", weight=3]; 541[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];541 -> 595[label="",style="solid", color="black", weight=3]; 542[label="takeWhile (flip (<=) (Pos Zero)) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];542 -> 596[label="",style="solid", color="black", weight=3]; 543[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];543 -> 597[label="",style="solid", color="black", weight=3]; 544[label="takeWhile (flip (<=) (Neg Zero)) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];544 -> 598[label="",style="solid", color="black", weight=3]; 958[label="concatMap (range2 xu91 xu101) (range (xu90,xu100))",fontsize=16,color="black",shape="box"];958 -> 1046[label="",style="solid", color="black", weight=3]; 959[label="concatMap (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100))",fontsize=16,color="black",shape="box"];959 -> 1047[label="",style="solid", color="black", weight=3]; 960 -> 714[label="",style="dashed", color="red", weight=0]; 960[label="foldr (++) [] (map (range1 xu48) xu491)",fontsize=16,color="magenta"];960 -> 1048[label="",style="dashed", color="magenta", weight=3]; 961[label="range1 xu48 xu490",fontsize=16,color="black",shape="box"];961 -> 1049[label="",style="solid", color="black", weight=3]; 962 -> 717[label="",style="dashed", color="red", weight=0]; 962[label="foldr (++) [] (map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="magenta"];962 -> 1050[label="",style="dashed", color="magenta", weight=3]; 963[label="range4 xu55 xu56 xu57 xu580",fontsize=16,color="black",shape="box"];963 -> 1051[label="",style="solid", color="black", weight=3]; 550[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3150[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];550 -> 3150[label="",style="solid", color="burlywood", weight=9]; 3150 -> 603[label="",style="solid", color="burlywood", weight=3]; 3151[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];550 -> 3151[label="",style="solid", color="burlywood", weight=9]; 3151 -> 604[label="",style="solid", color="burlywood", weight=3]; 3152[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];550 -> 3152[label="",style="solid", color="burlywood", weight=9]; 3152 -> 605[label="",style="solid", color="burlywood", weight=3]; 551[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];551 -> 606[label="",style="solid", color="black", weight=3]; 552[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];552 -> 607[label="",style="solid", color="black", weight=3]; 2557[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) (Succ xu2040) == GT))",fontsize=16,color="black",shape="box"];2557 -> 2584[label="",style="solid", color="black", weight=3]; 2558[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) Zero == GT))",fontsize=16,color="black",shape="box"];2558 -> 2585[label="",style="solid", color="black", weight=3]; 2559[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu2040) == GT))",fontsize=16,color="black",shape="box"];2559 -> 2586[label="",style="solid", color="black", weight=3]; 2560[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2560 -> 2587[label="",style="solid", color="black", weight=3]; 557[label="takeWhile0 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];557 -> 613[label="",style="solid", color="black", weight=3]; 558[label="[]",fontsize=16,color="green",shape="box"];559[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];559 -> 614[label="",style="dashed", color="green", weight=3]; 560[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];560 -> 615[label="",style="solid", color="black", weight=3]; 561[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];561 -> 616[label="",style="solid", color="black", weight=3]; 562[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];562 -> 617[label="",style="solid", color="black", weight=3]; 563[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];563 -> 618[label="",style="solid", color="black", weight=3]; 2575[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) (Succ xu2090) == GT))",fontsize=16,color="black",shape="box"];2575 -> 2602[label="",style="solid", color="black", weight=3]; 2576[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) Zero == GT))",fontsize=16,color="black",shape="box"];2576 -> 2603[label="",style="solid", color="black", weight=3]; 2577[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu2090) == GT))",fontsize=16,color="black",shape="box"];2577 -> 2604[label="",style="solid", color="black", weight=3]; 2578[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2578 -> 2605[label="",style="solid", color="black", weight=3]; 568[label="Integer (Neg (Succ xu30000)) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];568 -> 624[label="",style="dashed", color="green", weight=3]; 569[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];569 -> 625[label="",style="solid", color="black", weight=3]; 570[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];570 -> 626[label="",style="solid", color="black", weight=3]; 571[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];571 -> 627[label="",style="solid", color="black", weight=3]; 572[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];572 -> 628[label="",style="solid", color="black", weight=3]; 573[label="(++) range60 False (not (compare2 False xu30 (False == xu30) == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3153[label="xu30/False",fontsize=10,color="white",style="solid",shape="box"];573 -> 3153[label="",style="solid", color="burlywood", weight=9]; 3153 -> 629[label="",style="solid", color="burlywood", weight=3]; 3154[label="xu30/True",fontsize=10,color="white",style="solid",shape="box"];573 -> 3154[label="",style="solid", color="burlywood", weight=9]; 3154 -> 630[label="",style="solid", color="burlywood", weight=3]; 574[label="(++) range60 False (False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];574 -> 631[label="",style="solid", color="black", weight=3]; 2337[label="xu1690",fontsize=16,color="green",shape="box"];2338[label="xu1700",fontsize=16,color="green",shape="box"];2339[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2339 -> 2361[label="",style="solid", color="black", weight=3]; 2340[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2340 -> 2362[label="",style="solid", color="black", weight=3]; 2341 -> 2340[label="",style="dashed", color="red", weight=0]; 2341[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];582[label="[]",fontsize=16,color="green",shape="box"];583[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];583 -> 639[label="",style="solid", color="black", weight=3]; 584[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];584 -> 640[label="",style="solid", color="black", weight=3]; 585[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];585 -> 641[label="",style="solid", color="black", weight=3]; 586[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];586 -> 642[label="",style="solid", color="black", weight=3]; 1075[label="primMinusNat (Succ Zero) (Succ xu30000)",fontsize=16,color="black",shape="box"];1075 -> 1166[label="",style="solid", color="black", weight=3]; 2579[label="xu1990",fontsize=16,color="green",shape="box"];2580[label="xu1980",fontsize=16,color="green",shape="box"];2581[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not True)",fontsize=16,color="black",shape="box"];2581 -> 2606[label="",style="solid", color="black", weight=3]; 2582[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not False)",fontsize=16,color="black",shape="triangle"];2582 -> 2607[label="",style="solid", color="black", weight=3]; 2583 -> 2582[label="",style="dashed", color="red", weight=0]; 2583[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not False)",fontsize=16,color="magenta"];594[label="takeWhile (flip (<=) (Neg Zero)) (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];594 -> 650[label="",style="solid", color="black", weight=3]; 595[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];595 -> 651[label="",style="solid", color="black", weight=3]; 596[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];596 -> 652[label="",style="solid", color="black", weight=3]; 597[label="[]",fontsize=16,color="green",shape="box"];598[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];598 -> 653[label="",style="solid", color="black", weight=3]; 1046[label="concat . map (range2 xu91 xu101)",fontsize=16,color="black",shape="box"];1046 -> 1134[label="",style="solid", color="black", weight=3]; 1047[label="concat . map (range5 xu92 xu102 xu91 xu101)",fontsize=16,color="black",shape="box"];1047 -> 1135[label="",style="solid", color="black", weight=3]; 1048[label="xu491",fontsize=16,color="green",shape="box"];1049[label="range10 xu48 xu490",fontsize=16,color="black",shape="box"];1049 -> 1136[label="",style="solid", color="black", weight=3]; 1050[label="xu581",fontsize=16,color="green",shape="box"];1051[label="range40 xu55 xu56 xu57 xu580",fontsize=16,color="black",shape="box"];1051 -> 1137[label="",style="solid", color="black", weight=3]; 603[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];603 -> 657[label="",style="solid", color="black", weight=3]; 604[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];604 -> 658[label="",style="solid", color="black", weight=3]; 605[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];605 -> 659[label="",style="solid", color="black", weight=3]; 606[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];606 -> 660[label="",style="solid", color="black", weight=3]; 607[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];607 -> 661[label="",style="solid", color="black", weight=3]; 2584 -> 2460[label="",style="dashed", color="red", weight=0]; 2584[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu2030 xu2040 == GT))",fontsize=16,color="magenta"];2584 -> 2608[label="",style="dashed", color="magenta", weight=3]; 2584 -> 2609[label="",style="dashed", color="magenta", weight=3]; 2585[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2585 -> 2610[label="",style="solid", color="black", weight=3]; 2586[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2586 -> 2611[label="",style="solid", color="black", weight=3]; 2587[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2587 -> 2612[label="",style="solid", color="black", weight=3]; 613[label="takeWhile0 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];613 -> 669[label="",style="solid", color="black", weight=3]; 614[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];614 -> 670[label="",style="solid", color="black", weight=3]; 615[label="takeWhile (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];615 -> 671[label="",style="solid", color="black", weight=3]; 616[label="[]",fontsize=16,color="green",shape="box"];617[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];617 -> 672[label="",style="solid", color="black", weight=3]; 618[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];618 -> 673[label="",style="solid", color="black", weight=3]; 2602 -> 2509[label="",style="dashed", color="red", weight=0]; 2602[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu2080 xu2090 == GT))",fontsize=16,color="magenta"];2602 -> 2627[label="",style="dashed", color="magenta", weight=3]; 2602 -> 2628[label="",style="dashed", color="magenta", weight=3]; 2603[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2603 -> 2629[label="",style="solid", color="black", weight=3]; 2604[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2604 -> 2630[label="",style="solid", color="black", weight=3]; 2605[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2605 -> 2631[label="",style="solid", color="black", weight=3]; 624[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];624 -> 681[label="",style="solid", color="black", weight=3]; 625[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];625 -> 682[label="",style="solid", color="black", weight=3]; 626[label="takeWhile (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];626 -> 683[label="",style="solid", color="black", weight=3]; 627[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];627 -> 684[label="",style="solid", color="black", weight=3]; 628[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];628 -> 685[label="",style="solid", color="black", weight=3]; 629[label="(++) range60 False (not (compare2 False False (False == False) == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];629 -> 686[label="",style="solid", color="black", weight=3]; 630[label="(++) range60 False (not (compare2 False True (False == True) == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];630 -> 687[label="",style="solid", color="black", weight=3]; 631[label="(++) range60 False (compare False xu30 /= LT) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];631 -> 688[label="",style="solid", color="black", weight=3]; 2361[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2361 -> 2373[label="",style="solid", color="black", weight=3]; 2362[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2362 -> 2374[label="",style="solid", color="black", weight=3]; 639[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];639 -> 697[label="",style="solid", color="black", weight=3]; 640[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];640 -> 698[label="",style="solid", color="black", weight=3]; 641[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];641 -> 699[label="",style="solid", color="black", weight=3]; 642[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];642 -> 700[label="",style="solid", color="black", weight=3]; 1166[label="primMinusNat Zero xu30000",fontsize=16,color="burlywood",shape="box"];3155[label="xu30000/Succ xu300000",fontsize=10,color="white",style="solid",shape="box"];1166 -> 3155[label="",style="solid", color="burlywood", weight=9]; 3155 -> 1319[label="",style="solid", color="burlywood", weight=3]; 3156[label="xu30000/Zero",fontsize=10,color="white",style="solid",shape="box"];1166 -> 3156[label="",style="solid", color="burlywood", weight=9]; 3156 -> 1320[label="",style="solid", color="burlywood", weight=3]; 2606[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) False",fontsize=16,color="black",shape="box"];2606 -> 2632[label="",style="solid", color="black", weight=3]; 2607[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) True",fontsize=16,color="black",shape="box"];2607 -> 2633[label="",style="solid", color="black", weight=3]; 650[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];650 -> 709[label="",style="solid", color="black", weight=3]; 651[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];651 -> 710[label="",style="solid", color="black", weight=3]; 652[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];652 -> 711[label="",style="solid", color="black", weight=3]; 653[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];653 -> 712[label="",style="solid", color="black", weight=3]; 1134[label="concat (map (range2 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="black",shape="box"];1134 -> 1199[label="",style="solid", color="black", weight=3]; 1135[label="concat (map (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="black",shape="box"];1135 -> 1200[label="",style="solid", color="black", weight=3]; 1136[label="(xu48,xu490) : []",fontsize=16,color="green",shape="box"];1137[label="concatMap (range3 xu55 xu580) (range (xu56,xu57))",fontsize=16,color="black",shape="box"];1137 -> 1201[label="",style="solid", color="black", weight=3]; 657[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];657 -> 742[label="",style="solid", color="black", weight=3]; 658[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];658 -> 743[label="",style="solid", color="black", weight=3]; 659[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];659 -> 744[label="",style="solid", color="black", weight=3]; 660[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];660 -> 745[label="",style="solid", color="black", weight=3]; 661[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];661 -> 746[label="",style="solid", color="black", weight=3]; 2608[label="xu2040",fontsize=16,color="green",shape="box"];2609[label="xu2030",fontsize=16,color="green",shape="box"];2610[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2610 -> 2634[label="",style="solid", color="black", weight=3]; 2611[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2611 -> 2635[label="",style="solid", color="black", weight=3]; 2612 -> 2611[label="",style="dashed", color="red", weight=0]; 2612[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];669[label="[]",fontsize=16,color="green",shape="box"];670[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];670 -> 754[label="",style="solid", color="black", weight=3]; 671[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];671 -> 755[label="",style="solid", color="black", weight=3]; 672[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];672 -> 756[label="",style="solid", color="black", weight=3]; 673[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];673 -> 757[label="",style="solid", color="black", weight=3]; 2627[label="xu2080",fontsize=16,color="green",shape="box"];2628[label="xu2090",fontsize=16,color="green",shape="box"];2629[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2629 -> 2651[label="",style="solid", color="black", weight=3]; 2630[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2630 -> 2652[label="",style="solid", color="black", weight=3]; 2631 -> 2630[label="",style="dashed", color="red", weight=0]; 2631[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];681[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];681 -> 765[label="",style="solid", color="black", weight=3]; 682[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];682 -> 766[label="",style="solid", color="black", weight=3]; 683[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];683 -> 767[label="",style="solid", color="black", weight=3]; 684[label="[]",fontsize=16,color="green",shape="box"];685[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];685 -> 768[label="",style="solid", color="black", weight=3]; 686[label="(++) range60 False (not (compare2 False False True == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];686 -> 769[label="",style="solid", color="black", weight=3]; 687[label="(++) range60 False (not (compare2 False True False == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];687 -> 770[label="",style="solid", color="black", weight=3]; 688[label="(++) range60 False (not (compare False xu30 == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];688 -> 771[label="",style="solid", color="black", weight=3]; 2373[label="takeWhile0 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2373 -> 2377[label="",style="solid", color="black", weight=3]; 2374[label="Pos (Succ xu168) : takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2374 -> 2378[label="",style="dashed", color="green", weight=3]; 697[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];697 -> 782[label="",style="solid", color="black", weight=3]; 698[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];698 -> 783[label="",style="solid", color="black", weight=3]; 699[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];699 -> 784[label="",style="solid", color="black", weight=3]; 700[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) (Succ xu3000))) (numericEnumFrom (primMinusNat (Succ Zero) (Succ xu3000))))",fontsize=16,color="black",shape="box"];700 -> 785[label="",style="solid", color="black", weight=3]; 1319[label="primMinusNat Zero (Succ xu300000)",fontsize=16,color="black",shape="box"];1319 -> 1404[label="",style="solid", color="black", weight=3]; 1320[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];1320 -> 1405[label="",style="solid", color="black", weight=3]; 2632[label="takeWhile0 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) otherwise",fontsize=16,color="black",shape="box"];2632 -> 2653[label="",style="solid", color="black", weight=3]; 2633[label="Neg (Succ xu196) : takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom $! xu197)",fontsize=16,color="green",shape="box"];2633 -> 2654[label="",style="dashed", color="green", weight=3]; 709[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];709 -> 796[label="",style="solid", color="black", weight=3]; 710[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];710 -> 797[label="",style="solid", color="black", weight=3]; 711[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];711 -> 798[label="",style="solid", color="black", weight=3]; 712[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];712 -> 799[label="",style="solid", color="black", weight=3]; 1199 -> 74[label="",style="dashed", color="red", weight=0]; 1199[label="foldr (++) [] (map (range2 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="magenta"];1199 -> 1208[label="",style="dashed", color="magenta", weight=3]; 1199 -> 1209[label="",style="dashed", color="magenta", weight=3]; 1199 -> 1210[label="",style="dashed", color="magenta", weight=3]; 1200 -> 78[label="",style="dashed", color="red", weight=0]; 1200[label="foldr (++) [] (map (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="magenta"];1200 -> 1211[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1212[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1213[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1214[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1215[label="",style="dashed", color="magenta", weight=3]; 1201[label="concat . map (range3 xu55 xu580)",fontsize=16,color="black",shape="box"];1201 -> 1216[label="",style="solid", color="black", weight=3]; 742[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];742 -> 822[label="",style="solid", color="black", weight=3]; 743[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];743 -> 823[label="",style="solid", color="black", weight=3]; 744[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];744 -> 824[label="",style="solid", color="black", weight=3]; 745[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];745 -> 825[label="",style="solid", color="black", weight=3]; 746[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];746 -> 826[label="",style="solid", color="black", weight=3]; 2634[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2634 -> 2655[label="",style="solid", color="black", weight=3]; 2635[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2635 -> 2656[label="",style="solid", color="black", weight=3]; 754[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];754 -> 835[label="",style="solid", color="black", weight=3]; 755[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];755 -> 836[label="",style="solid", color="black", weight=3]; 756[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];756 -> 837[label="",style="solid", color="black", weight=3]; 757[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];757 -> 838[label="",style="solid", color="black", weight=3]; 2651[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2651 -> 2670[label="",style="solid", color="black", weight=3]; 2652[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2652 -> 2671[label="",style="solid", color="black", weight=3]; 765[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];765 -> 847[label="",style="solid", color="black", weight=3]; 766[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];766 -> 848[label="",style="solid", color="black", weight=3]; 767[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];767 -> 849[label="",style="solid", color="black", weight=3]; 768[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];768 -> 850[label="",style="solid", color="black", weight=3]; 769[label="(++) range60 False (not (EQ == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];769 -> 851[label="",style="solid", color="black", weight=3]; 770[label="(++) range60 False (not (compare1 False True (False <= True) == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];770 -> 852[label="",style="solid", color="black", weight=3]; 771[label="(++) range60 False (not (compare3 False xu30 == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];771 -> 853[label="",style="solid", color="black", weight=3]; 2377[label="takeWhile0 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2377 -> 2381[label="",style="solid", color="black", weight=3]; 2378[label="takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2378 -> 2382[label="",style="solid", color="black", weight=3]; 782[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];782 -> 863[label="",style="solid", color="black", weight=3]; 783[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];783 -> 864[label="",style="solid", color="black", weight=3]; 784[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];784 -> 865[label="",style="solid", color="black", weight=3]; 785[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero xu3000)) (numericEnumFrom (primMinusNat Zero xu3000)))",fontsize=16,color="burlywood",shape="box"];3157[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];785 -> 3157[label="",style="solid", color="burlywood", weight=9]; 3157 -> 866[label="",style="solid", color="burlywood", weight=3]; 3158[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];785 -> 3158[label="",style="solid", color="burlywood", weight=9]; 3158 -> 867[label="",style="solid", color="burlywood", weight=3]; 1404[label="Neg (Succ xu300000)",fontsize=16,color="green",shape="box"];1405[label="Pos Zero",fontsize=16,color="green",shape="box"];2653[label="takeWhile0 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) True",fontsize=16,color="black",shape="box"];2653 -> 2672[label="",style="solid", color="black", weight=3]; 2654[label="takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom $! xu197)",fontsize=16,color="black",shape="box"];2654 -> 2673[label="",style="solid", color="black", weight=3]; 796[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];796 -> 877[label="",style="solid", color="black", weight=3]; 797[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];797 -> 878[label="",style="solid", color="black", weight=3]; 798[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];798 -> 879[label="",style="solid", color="black", weight=3]; 799[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];799 -> 880[label="",style="solid", color="black", weight=3]; 1208[label="xu101",fontsize=16,color="green",shape="box"];1209[label="range (xu90,xu100)",fontsize=16,color="blue",shape="box"];3159[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3159[label="",style="solid", color="blue", weight=9]; 3159 -> 1219[label="",style="solid", color="blue", weight=3]; 3160[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3160[label="",style="solid", color="blue", weight=9]; 3160 -> 1220[label="",style="solid", color="blue", weight=3]; 3161[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3161[label="",style="solid", color="blue", weight=9]; 3161 -> 1221[label="",style="solid", color="blue", weight=3]; 3162[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3162[label="",style="solid", color="blue", weight=9]; 3162 -> 1222[label="",style="solid", color="blue", weight=3]; 3163[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3163[label="",style="solid", color="blue", weight=9]; 3163 -> 1223[label="",style="solid", color="blue", weight=3]; 3164[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3164[label="",style="solid", color="blue", weight=9]; 3164 -> 1224[label="",style="solid", color="blue", weight=3]; 3165[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3165[label="",style="solid", color="blue", weight=9]; 3165 -> 1225[label="",style="solid", color="blue", weight=3]; 3166[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3166[label="",style="solid", color="blue", weight=9]; 3166 -> 1226[label="",style="solid", color="blue", weight=3]; 1210[label="xu91",fontsize=16,color="green",shape="box"];1211[label="xu102",fontsize=16,color="green",shape="box"];1212[label="xu101",fontsize=16,color="green",shape="box"];1213[label="range (xu90,xu100)",fontsize=16,color="blue",shape="box"];3167[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3167[label="",style="solid", color="blue", weight=9]; 3167 -> 1227[label="",style="solid", color="blue", weight=3]; 3168[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3168[label="",style="solid", color="blue", weight=9]; 3168 -> 1228[label="",style="solid", color="blue", weight=3]; 3169[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3169[label="",style="solid", color="blue", weight=9]; 3169 -> 1229[label="",style="solid", color="blue", weight=3]; 3170[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3170[label="",style="solid", color="blue", weight=9]; 3170 -> 1230[label="",style="solid", color="blue", weight=3]; 3171[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3171[label="",style="solid", color="blue", weight=9]; 3171 -> 1231[label="",style="solid", color="blue", weight=3]; 3172[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3172[label="",style="solid", color="blue", weight=9]; 3172 -> 1232[label="",style="solid", color="blue", weight=3]; 3173[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3173[label="",style="solid", color="blue", weight=9]; 3173 -> 1233[label="",style="solid", color="blue", weight=3]; 3174[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3174[label="",style="solid", color="blue", weight=9]; 3174 -> 1234[label="",style="solid", color="blue", weight=3]; 1214[label="xu91",fontsize=16,color="green",shape="box"];1215[label="xu92",fontsize=16,color="green",shape="box"];1216[label="concat (map (range3 xu55 xu580) (range (xu56,xu57)))",fontsize=16,color="black",shape="box"];1216 -> 1235[label="",style="solid", color="black", weight=3]; 822[label="(++) range00 LT (not False) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];822 -> 885[label="",style="solid", color="black", weight=3]; 823[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];823 -> 886[label="",style="solid", color="black", weight=3]; 824[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];824 -> 887[label="",style="solid", color="black", weight=3]; 825[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3175[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];825 -> 3175[label="",style="solid", color="burlywood", weight=9]; 3175 -> 888[label="",style="solid", color="burlywood", weight=3]; 3176[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];825 -> 3176[label="",style="solid", color="burlywood", weight=9]; 3176 -> 889[label="",style="solid", color="burlywood", weight=3]; 3177[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];825 -> 3177[label="",style="solid", color="burlywood", weight=9]; 3177 -> 890[label="",style="solid", color="burlywood", weight=3]; 826[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3178[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];826 -> 3178[label="",style="solid", color="burlywood", weight=9]; 3178 -> 891[label="",style="solid", color="burlywood", weight=3]; 3179[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];826 -> 3179[label="",style="solid", color="burlywood", weight=9]; 3179 -> 892[label="",style="solid", color="burlywood", weight=3]; 3180[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];826 -> 3180[label="",style="solid", color="burlywood", weight=9]; 3180 -> 893[label="",style="solid", color="burlywood", weight=3]; 2655[label="takeWhile0 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2655 -> 2674[label="",style="solid", color="black", weight=3]; 2656[label="Integer (Pos (Succ xu202)) : takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2656 -> 2675[label="",style="dashed", color="green", weight=3]; 835[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];835 -> 904[label="",style="solid", color="black", weight=3]; 836[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];836 -> 905[label="",style="solid", color="black", weight=3]; 837[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];837 -> 906[label="",style="solid", color="black", weight=3]; 838 -> 40[label="",style="dashed", color="red", weight=0]; 838[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];838 -> 907[label="",style="dashed", color="magenta", weight=3]; 838 -> 908[label="",style="dashed", color="magenta", weight=3]; 2670[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2670 -> 2688[label="",style="solid", color="black", weight=3]; 2671[label="Integer (Neg (Succ xu207)) : takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2671 -> 2689[label="",style="dashed", color="green", weight=3]; 847[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];847 -> 919[label="",style="solid", color="black", weight=3]; 848[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];848 -> 920[label="",style="solid", color="black", weight=3]; 849[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];849 -> 921[label="",style="solid", color="black", weight=3]; 850[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];850 -> 922[label="",style="solid", color="black", weight=3]; 851[label="(++) range60 False (not False) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];851 -> 923[label="",style="solid", color="black", weight=3]; 852[label="(++) range60 False (not (compare1 False True True == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];852 -> 924[label="",style="solid", color="black", weight=3]; 853[label="(++) range60 False (not (compare2 False xu30 (False == xu30) == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3181[label="xu30/False",fontsize=10,color="white",style="solid",shape="box"];853 -> 3181[label="",style="solid", color="burlywood", weight=9]; 3181 -> 925[label="",style="solid", color="burlywood", weight=3]; 3182[label="xu30/True",fontsize=10,color="white",style="solid",shape="box"];853 -> 3182[label="",style="solid", color="burlywood", weight=9]; 3182 -> 926[label="",style="solid", color="burlywood", weight=3]; 2381[label="[]",fontsize=16,color="green",shape="box"];2382[label="takeWhile (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos (Succ xu168) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2382 -> 2450[label="",style="solid", color="black", weight=3]; 863[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];863 -> 937[label="",style="solid", color="black", weight=3]; 864 -> 44[label="",style="dashed", color="red", weight=0]; 864[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];864 -> 938[label="",style="dashed", color="magenta", weight=3]; 864 -> 939[label="",style="dashed", color="magenta", weight=3]; 865 -> 44[label="",style="dashed", color="red", weight=0]; 865[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];865 -> 940[label="",style="dashed", color="magenta", weight=3]; 865 -> 941[label="",style="dashed", color="magenta", weight=3]; 866[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero (Succ xu30000))) (numericEnumFrom (primMinusNat Zero (Succ xu30000))))",fontsize=16,color="black",shape="box"];866 -> 942[label="",style="solid", color="black", weight=3]; 867[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero Zero)) (numericEnumFrom (primMinusNat Zero Zero)))",fontsize=16,color="black",shape="box"];867 -> 943[label="",style="solid", color="black", weight=3]; 2672[label="[]",fontsize=16,color="green",shape="box"];2673[label="takeWhile (flip (<=) (Neg (Succ xu195))) (xu197 `seq` numericEnumFrom xu197)",fontsize=16,color="black",shape="box"];2673 -> 2690[label="",style="solid", color="black", weight=3]; 877[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) (Succ xu3000))) (numericEnumFrom (primMinusNat (Succ Zero) (Succ xu3000))))",fontsize=16,color="black",shape="box"];877 -> 954[label="",style="solid", color="black", weight=3]; 878[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];878 -> 955[label="",style="solid", color="black", weight=3]; 879[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];879 -> 956[label="",style="solid", color="black", weight=3]; 880[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];880 -> 957[label="",style="solid", color="black", weight=3]; 1219 -> 722[label="",style="dashed", color="red", weight=0]; 1219[label="range (xu90,xu100)",fontsize=16,color="magenta"];1219 -> 1238[label="",style="dashed", color="magenta", weight=3]; 1219 -> 1239[label="",style="dashed", color="magenta", weight=3]; 1220 -> 723[label="",style="dashed", color="red", weight=0]; 1220[label="range (xu90,xu100)",fontsize=16,color="magenta"];1220 -> 1240[label="",style="dashed", color="magenta", weight=3]; 1220 -> 1241[label="",style="dashed", color="magenta", weight=3]; 1221 -> 6[label="",style="dashed", color="red", weight=0]; 1221[label="range (xu90,xu100)",fontsize=16,color="magenta"];1221 -> 1242[label="",style="dashed", color="magenta", weight=3]; 1222 -> 7[label="",style="dashed", color="red", weight=0]; 1222[label="range (xu90,xu100)",fontsize=16,color="magenta"];1222 -> 1243[label="",style="dashed", color="magenta", weight=3]; 1223 -> 8[label="",style="dashed", color="red", weight=0]; 1223[label="range (xu90,xu100)",fontsize=16,color="magenta"];1223 -> 1244[label="",style="dashed", color="magenta", weight=3]; 1224 -> 9[label="",style="dashed", color="red", weight=0]; 1224[label="range (xu90,xu100)",fontsize=16,color="magenta"];1224 -> 1245[label="",style="dashed", color="magenta", weight=3]; 1225 -> 10[label="",style="dashed", color="red", weight=0]; 1225[label="range (xu90,xu100)",fontsize=16,color="magenta"];1225 -> 1246[label="",style="dashed", color="magenta", weight=3]; 1226 -> 11[label="",style="dashed", color="red", weight=0]; 1226[label="range (xu90,xu100)",fontsize=16,color="magenta"];1226 -> 1247[label="",style="dashed", color="magenta", weight=3]; 1227 -> 722[label="",style="dashed", color="red", weight=0]; 1227[label="range (xu90,xu100)",fontsize=16,color="magenta"];1227 -> 1248[label="",style="dashed", color="magenta", weight=3]; 1227 -> 1249[label="",style="dashed", color="magenta", weight=3]; 1228 -> 723[label="",style="dashed", color="red", weight=0]; 1228[label="range (xu90,xu100)",fontsize=16,color="magenta"];1228 -> 1250[label="",style="dashed", color="magenta", weight=3]; 1228 -> 1251[label="",style="dashed", color="magenta", weight=3]; 1229 -> 6[label="",style="dashed", color="red", weight=0]; 1229[label="range (xu90,xu100)",fontsize=16,color="magenta"];1229 -> 1252[label="",style="dashed", color="magenta", weight=3]; 1230 -> 7[label="",style="dashed", color="red", weight=0]; 1230[label="range (xu90,xu100)",fontsize=16,color="magenta"];1230 -> 1253[label="",style="dashed", color="magenta", weight=3]; 1231 -> 8[label="",style="dashed", color="red", weight=0]; 1231[label="range (xu90,xu100)",fontsize=16,color="magenta"];1231 -> 1254[label="",style="dashed", color="magenta", weight=3]; 1232 -> 9[label="",style="dashed", color="red", weight=0]; 1232[label="range (xu90,xu100)",fontsize=16,color="magenta"];1232 -> 1255[label="",style="dashed", color="magenta", weight=3]; 1233 -> 10[label="",style="dashed", color="red", weight=0]; 1233[label="range (xu90,xu100)",fontsize=16,color="magenta"];1233 -> 1256[label="",style="dashed", color="magenta", weight=3]; 1234 -> 11[label="",style="dashed", color="red", weight=0]; 1234[label="range (xu90,xu100)",fontsize=16,color="magenta"];1234 -> 1257[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1258[label="",style="dashed", color="red", weight=0]; 1235[label="foldr (++) [] (map (range3 xu55 xu580) (range (xu56,xu57)))",fontsize=16,color="magenta"];1235 -> 1259[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1260[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1261[label="",style="dashed", color="magenta", weight=3]; 885[label="(++) range00 LT True foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];885 -> 964[label="",style="solid", color="black", weight=3]; 886[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];886 -> 965[label="",style="solid", color="black", weight=3]; 887[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];887 -> 966[label="",style="solid", color="black", weight=3]; 888[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];888 -> 967[label="",style="solid", color="black", weight=3]; 889[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];889 -> 968[label="",style="solid", color="black", weight=3]; 890[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];890 -> 969[label="",style="solid", color="black", weight=3]; 891[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];891 -> 970[label="",style="solid", color="black", weight=3]; 892[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];892 -> 971[label="",style="solid", color="black", weight=3]; 893[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];893 -> 972[label="",style="solid", color="black", weight=3]; 2674[label="takeWhile0 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2674 -> 2691[label="",style="solid", color="black", weight=3]; 2675[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2675 -> 2692[label="",style="solid", color="black", weight=3]; 904[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];904 -> 982[label="",style="solid", color="black", weight=3]; 905 -> 40[label="",style="dashed", color="red", weight=0]; 905[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];905 -> 983[label="",style="dashed", color="magenta", weight=3]; 905 -> 984[label="",style="dashed", color="magenta", weight=3]; 906 -> 40[label="",style="dashed", color="red", weight=0]; 906[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];906 -> 985[label="",style="dashed", color="magenta", weight=3]; 906 -> 986[label="",style="dashed", color="magenta", weight=3]; 907[label="Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];907 -> 987[label="",style="dashed", color="green", weight=3]; 908[label="Integer (Pos xu3100)",fontsize=16,color="green",shape="box"];2688[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2688 -> 2705[label="",style="solid", color="black", weight=3]; 2689[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2689 -> 2706[label="",style="solid", color="black", weight=3]; 919[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];919 -> 997[label="",style="solid", color="black", weight=3]; 920 -> 40[label="",style="dashed", color="red", weight=0]; 920[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];920 -> 998[label="",style="dashed", color="magenta", weight=3]; 920 -> 999[label="",style="dashed", color="magenta", weight=3]; 921 -> 40[label="",style="dashed", color="red", weight=0]; 921[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];921 -> 1000[label="",style="dashed", color="magenta", weight=3]; 921 -> 1001[label="",style="dashed", color="magenta", weight=3]; 922 -> 40[label="",style="dashed", color="red", weight=0]; 922[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];922 -> 1002[label="",style="dashed", color="magenta", weight=3]; 922 -> 1003[label="",style="dashed", color="magenta", weight=3]; 923[label="(++) range60 False True foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];923 -> 1004[label="",style="solid", color="black", weight=3]; 924[label="(++) range60 False (not (LT == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];924 -> 1005[label="",style="solid", color="black", weight=3]; 925[label="(++) range60 False (not (compare2 False False (False == False) == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];925 -> 1006[label="",style="solid", color="black", weight=3]; 926[label="(++) range60 False (not (compare2 False True (False == True) == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];926 -> 1007[label="",style="solid", color="black", weight=3]; 2450[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (Pos (Succ xu168) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos (Succ xu168) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2450 -> 2508[label="",style="solid", color="black", weight=3]; 937 -> 44[label="",style="dashed", color="red", weight=0]; 937[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];937 -> 1020[label="",style="dashed", color="magenta", weight=3]; 937 -> 1021[label="",style="dashed", color="magenta", weight=3]; 938[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];938 -> 1022[label="",style="dashed", color="green", weight=3]; 939[label="Pos Zero",fontsize=16,color="green",shape="box"];940[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];940 -> 1023[label="",style="dashed", color="green", weight=3]; 941[label="Neg Zero",fontsize=16,color="green",shape="box"];942[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Neg (Succ xu30000))) (numericEnumFrom (Neg (Succ xu30000))))",fontsize=16,color="black",shape="box"];942 -> 1024[label="",style="solid", color="black", weight=3]; 943[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Pos Zero)) (numericEnumFrom (Pos Zero)))",fontsize=16,color="black",shape="box"];943 -> 1025[label="",style="solid", color="black", weight=3]; 2690[label="takeWhile (flip (<=) (Neg (Succ xu195))) (enforceWHNF (WHNF xu197) (numericEnumFrom xu197))",fontsize=16,color="black",shape="box"];2690 -> 2707[label="",style="solid", color="black", weight=3]; 954[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero xu3000)) (numericEnumFrom (primMinusNat Zero xu3000)))",fontsize=16,color="burlywood",shape="box"];3183[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];954 -> 3183[label="",style="solid", color="burlywood", weight=9]; 3183 -> 1038[label="",style="solid", color="burlywood", weight=3]; 3184[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];954 -> 3184[label="",style="solid", color="burlywood", weight=9]; 3184 -> 1039[label="",style="solid", color="burlywood", weight=3]; 955 -> 44[label="",style="dashed", color="red", weight=0]; 955[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];955 -> 1040[label="",style="dashed", color="magenta", weight=3]; 955 -> 1041[label="",style="dashed", color="magenta", weight=3]; 956 -> 44[label="",style="dashed", color="red", weight=0]; 956[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];956 -> 1042[label="",style="dashed", color="magenta", weight=3]; 956 -> 1043[label="",style="dashed", color="magenta", weight=3]; 957 -> 44[label="",style="dashed", color="red", weight=0]; 957[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];957 -> 1044[label="",style="dashed", color="magenta", weight=3]; 957 -> 1045[label="",style="dashed", color="magenta", weight=3]; 1238[label="xu100",fontsize=16,color="green",shape="box"];1239[label="xu90",fontsize=16,color="green",shape="box"];1240[label="xu100",fontsize=16,color="green",shape="box"];1241[label="xu90",fontsize=16,color="green",shape="box"];1242[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1243[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1244[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1245[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1246[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1247[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1248[label="xu100",fontsize=16,color="green",shape="box"];1249[label="xu90",fontsize=16,color="green",shape="box"];1250[label="xu100",fontsize=16,color="green",shape="box"];1251[label="xu90",fontsize=16,color="green",shape="box"];1252[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1253[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1254[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1255[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1256[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1257[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1259[label="xu580",fontsize=16,color="green",shape="box"];1260[label="range (xu56,xu57)",fontsize=16,color="blue",shape="box"];3185[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3185[label="",style="solid", color="blue", weight=9]; 3185 -> 1262[label="",style="solid", color="blue", weight=3]; 3186[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3186[label="",style="solid", color="blue", weight=9]; 3186 -> 1263[label="",style="solid", color="blue", weight=3]; 3187[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3187[label="",style="solid", color="blue", weight=9]; 3187 -> 1264[label="",style="solid", color="blue", weight=3]; 3188[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3188[label="",style="solid", color="blue", weight=9]; 3188 -> 1265[label="",style="solid", color="blue", weight=3]; 3189[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3189[label="",style="solid", color="blue", weight=9]; 3189 -> 1266[label="",style="solid", color="blue", weight=3]; 3190[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3190[label="",style="solid", color="blue", weight=9]; 3190 -> 1267[label="",style="solid", color="blue", weight=3]; 3191[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3191[label="",style="solid", color="blue", weight=9]; 3191 -> 1268[label="",style="solid", color="blue", weight=3]; 3192[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3192[label="",style="solid", color="blue", weight=9]; 3192 -> 1269[label="",style="solid", color="blue", weight=3]; 1261[label="xu55",fontsize=16,color="green",shape="box"];1258[label="foldr (++) [] (map (range3 xu69 xu70) xu71)",fontsize=16,color="burlywood",shape="triangle"];3193[label="xu71/xu710 : xu711",fontsize=10,color="white",style="solid",shape="box"];1258 -> 3193[label="",style="solid", color="burlywood", weight=9]; 3193 -> 1270[label="",style="solid", color="burlywood", weight=3]; 3194[label="xu71/[]",fontsize=10,color="white",style="solid",shape="box"];1258 -> 3194[label="",style="solid", color="burlywood", weight=9]; 3194 -> 1271[label="",style="solid", color="burlywood", weight=3]; 964[label="(++) (LT : []) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];964 -> 1052[label="",style="solid", color="black", weight=3]; 965[label="(++) range00 LT (not True) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];965 -> 1053[label="",style="solid", color="black", weight=3]; 966[label="(++) range00 LT (not True) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];966 -> 1054[label="",style="solid", color="black", weight=3]; 967[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];967 -> 1055[label="",style="solid", color="black", weight=3]; 968[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];968 -> 1056[label="",style="solid", color="black", weight=3]; 969[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];969 -> 1057[label="",style="solid", color="black", weight=3]; 970[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];970 -> 1058[label="",style="solid", color="black", weight=3]; 971[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];971 -> 1059[label="",style="solid", color="black", weight=3]; 972[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];972 -> 1060[label="",style="solid", color="black", weight=3]; 2691[label="[]",fontsize=16,color="green",shape="box"];2692[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2692 -> 2708[label="",style="solid", color="black", weight=3]; 982 -> 40[label="",style="dashed", color="red", weight=0]; 982[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];982 -> 1071[label="",style="dashed", color="magenta", weight=3]; 982 -> 1072[label="",style="dashed", color="magenta", weight=3]; 983[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];983 -> 1073[label="",style="dashed", color="green", weight=3]; 984[label="Integer (Pos Zero)",fontsize=16,color="green",shape="box"];985[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];985 -> 1074[label="",style="dashed", color="green", weight=3]; 986[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];2705[label="[]",fontsize=16,color="green",shape="box"];2706[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2706 -> 2722[label="",style="solid", color="black", weight=3]; 997 -> 40[label="",style="dashed", color="red", weight=0]; 997[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];997 -> 1086[label="",style="dashed", color="magenta", weight=3]; 997 -> 1087[label="",style="dashed", color="magenta", weight=3]; 998[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];998 -> 1088[label="",style="dashed", color="green", weight=3]; 999[label="Integer (Pos (Succ xu31000))",fontsize=16,color="green",shape="box"];1000[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1000 -> 1089[label="",style="dashed", color="green", weight=3]; 1001[label="Integer (Pos Zero)",fontsize=16,color="green",shape="box"];1002[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1002 -> 1090[label="",style="dashed", color="green", weight=3]; 1003[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];1004[label="(++) (False : []) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1004 -> 1091[label="",style="solid", color="black", weight=3]; 1005[label="(++) range60 False (not True) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1005 -> 1092[label="",style="solid", color="black", weight=3]; 1006[label="(++) range60 False (not (compare2 False False True == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1006 -> 1093[label="",style="solid", color="black", weight=3]; 1007[label="(++) range60 False (not (compare2 False True False == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1007 -> 1094[label="",style="solid", color="black", weight=3]; 2508[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (primPlusInt (Pos (Succ xu168)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos (Succ xu168)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];2508 -> 2561[label="",style="solid", color="black", weight=3]; 1020[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];1020 -> 1106[label="",style="dashed", color="green", weight=3]; 1021[label="Pos (Succ xu3100)",fontsize=16,color="green",shape="box"];1022[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="black",shape="triangle"];1022 -> 1107[label="",style="solid", color="black", weight=3]; 1023 -> 1022[label="",style="dashed", color="red", weight=0]; 1023[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];1024 -> 44[label="",style="dashed", color="red", weight=0]; 1024[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom (Neg (Succ xu30000)))",fontsize=16,color="magenta"];1024 -> 1108[label="",style="dashed", color="magenta", weight=3]; 1024 -> 1109[label="",style="dashed", color="magenta", weight=3]; 1025 -> 44[label="",style="dashed", color="red", weight=0]; 1025[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom (Pos Zero))",fontsize=16,color="magenta"];1025 -> 1110[label="",style="dashed", color="magenta", weight=3]; 1025 -> 1111[label="",style="dashed", color="magenta", weight=3]; 2707 -> 44[label="",style="dashed", color="red", weight=0]; 2707[label="takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom xu197)",fontsize=16,color="magenta"];2707 -> 2723[label="",style="dashed", color="magenta", weight=3]; 2707 -> 2724[label="",style="dashed", color="magenta", weight=3]; 1038[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero (Succ xu30000))) (numericEnumFrom (primMinusNat Zero (Succ xu30000))))",fontsize=16,color="black",shape="box"];1038 -> 1141[label="",style="solid", color="black", weight=3]; 1039[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero Zero)) (numericEnumFrom (primMinusNat Zero Zero)))",fontsize=16,color="black",shape="box"];1039 -> 1142[label="",style="solid", color="black", weight=3]; 1040[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1041[label="Pos (Succ xu3100)",fontsize=16,color="green",shape="box"];1042[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1043[label="Pos Zero",fontsize=16,color="green",shape="box"];1044[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1045[label="Neg Zero",fontsize=16,color="green",shape="box"];1262 -> 722[label="",style="dashed", color="red", weight=0]; 1262[label="range (xu56,xu57)",fontsize=16,color="magenta"];1262 -> 1274[label="",style="dashed", color="magenta", weight=3]; 1262 -> 1275[label="",style="dashed", color="magenta", weight=3]; 1263 -> 723[label="",style="dashed", color="red", weight=0]; 1263[label="range (xu56,xu57)",fontsize=16,color="magenta"];1263 -> 1276[label="",style="dashed", color="magenta", weight=3]; 1263 -> 1277[label="",style="dashed", color="magenta", weight=3]; 1264 -> 6[label="",style="dashed", color="red", weight=0]; 1264[label="range (xu56,xu57)",fontsize=16,color="magenta"];1264 -> 1278[label="",style="dashed", color="magenta", weight=3]; 1265 -> 7[label="",style="dashed", color="red", weight=0]; 1265[label="range (xu56,xu57)",fontsize=16,color="magenta"];1265 -> 1279[label="",style="dashed", color="magenta", weight=3]; 1266 -> 8[label="",style="dashed", color="red", weight=0]; 1266[label="range (xu56,xu57)",fontsize=16,color="magenta"];1266 -> 1280[label="",style="dashed", color="magenta", weight=3]; 1267 -> 9[label="",style="dashed", color="red", weight=0]; 1267[label="range (xu56,xu57)",fontsize=16,color="magenta"];1267 -> 1281[label="",style="dashed", color="magenta", weight=3]; 1268 -> 10[label="",style="dashed", color="red", weight=0]; 1268[label="range (xu56,xu57)",fontsize=16,color="magenta"];1268 -> 1282[label="",style="dashed", color="magenta", weight=3]; 1269 -> 11[label="",style="dashed", color="red", weight=0]; 1269[label="range (xu56,xu57)",fontsize=16,color="magenta"];1269 -> 1283[label="",style="dashed", color="magenta", weight=3]; 1270[label="foldr (++) [] (map (range3 xu69 xu70) (xu710 : xu711))",fontsize=16,color="black",shape="box"];1270 -> 1284[label="",style="solid", color="black", weight=3]; 1271[label="foldr (++) [] (map (range3 xu69 xu70) [])",fontsize=16,color="black",shape="box"];1271 -> 1285[label="",style="solid", color="black", weight=3]; 1052[label="LT : [] ++ foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1052 -> 1143[label="",style="dashed", color="green", weight=3]; 1053[label="(++) range00 LT False foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1053 -> 1144[label="",style="solid", color="black", weight=3]; 1054[label="(++) range00 LT False foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1054 -> 1145[label="",style="solid", color="black", weight=3]; 1055[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1055 -> 1146[label="",style="solid", color="black", weight=3]; 1056[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1056 -> 1147[label="",style="solid", color="black", weight=3]; 1057[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1057 -> 1148[label="",style="solid", color="black", weight=3]; 1058[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1058 -> 1149[label="",style="solid", color="black", weight=3]; 1059[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1059 -> 1150[label="",style="solid", color="black", weight=3]; 1060[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1060 -> 1151[label="",style="solid", color="black", weight=3]; 2708[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2708 -> 2725[label="",style="solid", color="black", weight=3]; 1071[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1071 -> 1164[label="",style="dashed", color="green", weight=3]; 1072[label="Integer (Pos (Succ xu31000))",fontsize=16,color="green",shape="box"];1073[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];1073 -> 1165[label="",style="solid", color="black", weight=3]; 1074 -> 1073[label="",style="dashed", color="red", weight=0]; 1074[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];2722[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2722 -> 2739[label="",style="solid", color="black", weight=3]; 1086[label="Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1086 -> 1179[label="",style="dashed", color="green", weight=3]; 1087[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];1088[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];1088 -> 1180[label="",style="solid", color="black", weight=3]; 1089 -> 1088[label="",style="dashed", color="red", weight=0]; 1089[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1090 -> 1088[label="",style="dashed", color="red", weight=0]; 1090[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1091[label="False : [] ++ foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="green",shape="box"];1091 -> 1181[label="",style="dashed", color="green", weight=3]; 1092[label="(++) range60 False False foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1092 -> 1182[label="",style="solid", color="black", weight=3]; 1093[label="(++) range60 False (not (EQ == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1093 -> 1183[label="",style="solid", color="black", weight=3]; 1094[label="(++) range60 False (not (compare1 False True (False <= True) == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1094 -> 1184[label="",style="solid", color="black", weight=3]; 2561[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (primPlusInt (Pos (Succ xu168)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos (Succ xu168)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2561 -> 2588[label="",style="solid", color="black", weight=3]; 1106 -> 1022[label="",style="dashed", color="red", weight=0]; 1106[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];1107[label="Succ Zero",fontsize=16,color="green",shape="box"];1108[label="Neg (Succ xu30000)",fontsize=16,color="green",shape="box"];1109[label="Pos xu310",fontsize=16,color="green",shape="box"];1110[label="Pos Zero",fontsize=16,color="green",shape="box"];1111[label="Pos xu310",fontsize=16,color="green",shape="box"];2723[label="xu197",fontsize=16,color="green",shape="box"];2724[label="Neg (Succ xu195)",fontsize=16,color="green",shape="box"];1141[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg (Succ xu30000))) (numericEnumFrom (Neg (Succ xu30000))))",fontsize=16,color="black",shape="box"];1141 -> 1295[label="",style="solid", color="black", weight=3]; 1142[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos Zero)) (numericEnumFrom (Pos Zero)))",fontsize=16,color="black",shape="box"];1142 -> 1296[label="",style="solid", color="black", weight=3]; 1274[label="xu57",fontsize=16,color="green",shape="box"];1275[label="xu56",fontsize=16,color="green",shape="box"];1276[label="xu57",fontsize=16,color="green",shape="box"];1277[label="xu56",fontsize=16,color="green",shape="box"];1278[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1279[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1280[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1281[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1282[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1283[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1284[label="foldr (++) [] (range3 xu69 xu70 xu710 : map (range3 xu69 xu70) xu711)",fontsize=16,color="black",shape="box"];1284 -> 1297[label="",style="solid", color="black", weight=3]; 1285 -> 136[label="",style="dashed", color="red", weight=0]; 1285[label="foldr (++) [] []",fontsize=16,color="magenta"];1143[label="[] ++ foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1143 -> 1298[label="",style="solid", color="black", weight=3]; 1144[label="(++) [] foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1144 -> 1299[label="",style="solid", color="black", weight=3]; 1145[label="(++) [] foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1145 -> 1300[label="",style="solid", color="black", weight=3]; 1146[label="(++) range00 LT (not False) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1146 -> 1301[label="",style="solid", color="black", weight=3]; 1147[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1147 -> 1302[label="",style="solid", color="black", weight=3]; 1148[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1148 -> 1303[label="",style="solid", color="black", weight=3]; 1149[label="(++) range00 LT (not False) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1149 -> 1304[label="",style="solid", color="black", weight=3]; 1150[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1150 -> 1305[label="",style="solid", color="black", weight=3]; 1151[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1151 -> 1306[label="",style="solid", color="black", weight=3]; 2725[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (Pos (Succ xu202)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos (Succ xu202)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2725 -> 2740[label="",style="solid", color="black", weight=3]; 1164 -> 1073[label="",style="dashed", color="red", weight=0]; 1164[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1165[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];1165 -> 1318[label="",style="dashed", color="green", weight=3]; 2739[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (Neg (Succ xu207)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu207)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2739 -> 2752[label="",style="solid", color="black", weight=3]; 1179 -> 987[label="",style="dashed", color="red", weight=0]; 1179[label="primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))",fontsize=16,color="magenta"];1180[label="primMinusNat (Succ Zero) Zero",fontsize=16,color="black",shape="box"];1180 -> 1335[label="",style="solid", color="black", weight=3]; 1181[label="[] ++ foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1181 -> 1336[label="",style="solid", color="black", weight=3]; 1182[label="(++) [] foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1182 -> 1337[label="",style="solid", color="black", weight=3]; 1183[label="(++) range60 False (not False) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1183 -> 1338[label="",style="solid", color="black", weight=3]; 1184[label="(++) range60 False (not (compare1 False True True == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1184 -> 1339[label="",style="solid", color="black", weight=3]; 2588[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (Pos (primPlusNat (Succ xu168) (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat (Succ xu168) (Succ Zero)))))",fontsize=16,color="black",shape="box"];2588 -> 2613[label="",style="solid", color="black", weight=3]; 1295 -> 44[label="",style="dashed", color="red", weight=0]; 1295[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Neg (Succ xu30000)))",fontsize=16,color="magenta"];1295 -> 1375[label="",style="dashed", color="magenta", weight=3]; 1295 -> 1376[label="",style="dashed", color="magenta", weight=3]; 1296 -> 44[label="",style="dashed", color="red", weight=0]; 1296[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos Zero))",fontsize=16,color="magenta"];1296 -> 1377[label="",style="dashed", color="magenta", weight=3]; 1296 -> 1378[label="",style="dashed", color="magenta", weight=3]; 1297 -> 473[label="",style="dashed", color="red", weight=0]; 1297[label="(++) range3 xu69 xu70 xu710 foldr (++) [] (map (range3 xu69 xu70) xu711)",fontsize=16,color="magenta"];1297 -> 1379[label="",style="dashed", color="magenta", weight=3]; 1297 -> 1380[label="",style="dashed", color="magenta", weight=3]; 1298[label="foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1298 -> 1381[label="",style="solid", color="black", weight=3]; 1299[label="foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1299 -> 1382[label="",style="solid", color="black", weight=3]; 1300[label="foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1300 -> 1383[label="",style="solid", color="black", weight=3]; 1301[label="(++) range00 LT True foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1301 -> 1384[label="",style="solid", color="black", weight=3]; 1302[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1302 -> 1385[label="",style="solid", color="black", weight=3]; 1303[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1303 -> 1386[label="",style="solid", color="black", weight=3]; 1304[label="(++) range00 LT True foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1304 -> 1387[label="",style="solid", color="black", weight=3]; 1305[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1305 -> 1388[label="",style="solid", color="black", weight=3]; 1306[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1306 -> 1389[label="",style="solid", color="black", weight=3]; 2740[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];2740 -> 2753[label="",style="solid", color="black", weight=3]; 1318 -> 1022[label="",style="dashed", color="red", weight=0]; 1318[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];2752 -> 2765[label="",style="dashed", color="red", weight=0]; 2752[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))))))",fontsize=16,color="magenta"];2752 -> 2766[label="",style="dashed", color="magenta", weight=3]; 2752 -> 2767[label="",style="dashed", color="magenta", weight=3]; 1335[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1336[label="foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1336 -> 1421[label="",style="solid", color="black", weight=3]; 1337[label="foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1337 -> 1422[label="",style="solid", color="black", weight=3]; 1338[label="(++) range60 False True foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1338 -> 1423[label="",style="solid", color="black", weight=3]; 1339[label="(++) range60 False (not (LT == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1339 -> 1424[label="",style="solid", color="black", weight=3]; 2613 -> 44[label="",style="dashed", color="red", weight=0]; 2613[label="takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom (Pos (primPlusNat (Succ xu168) (Succ Zero))))",fontsize=16,color="magenta"];2613 -> 2636[label="",style="dashed", color="magenta", weight=3]; 2613 -> 2637[label="",style="dashed", color="magenta", weight=3]; 1375[label="Neg (Succ xu30000)",fontsize=16,color="green",shape="box"];1376[label="Neg Zero",fontsize=16,color="green",shape="box"];1377[label="Pos Zero",fontsize=16,color="green",shape="box"];1378[label="Neg Zero",fontsize=16,color="green",shape="box"];1379 -> 1258[label="",style="dashed", color="red", weight=0]; 1379[label="foldr (++) [] (map (range3 xu69 xu70) xu711)",fontsize=16,color="magenta"];1379 -> 1451[label="",style="dashed", color="magenta", weight=3]; 1380[label="range3 xu69 xu70 xu710",fontsize=16,color="black",shape="box"];1380 -> 1452[label="",style="solid", color="black", weight=3]; 1381[label="foldr (++) [] (range0 LT LT EQ : map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1381 -> 1453[label="",style="solid", color="black", weight=3]; 1382[label="foldr (++) [] (range0 LT EQ EQ : map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1382 -> 1454[label="",style="solid", color="black", weight=3]; 1383[label="foldr (++) [] (range0 LT GT EQ : map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1383 -> 1455[label="",style="solid", color="black", weight=3]; 1384[label="(++) (LT : []) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1384 -> 1456[label="",style="solid", color="black", weight=3]; 1385[label="(++) range00 LT (not True) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1385 -> 1457[label="",style="solid", color="black", weight=3]; 1386[label="(++) range00 LT (not True) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1386 -> 1458[label="",style="solid", color="black", weight=3]; 1387[label="(++) (LT : []) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1387 -> 1459[label="",style="solid", color="black", weight=3]; 1388[label="(++) range00 LT (not True) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1388 -> 1460[label="",style="solid", color="black", weight=3]; 1389[label="(++) range00 LT (not True) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1389 -> 1461[label="",style="solid", color="black", weight=3]; 2753 -> 40[label="",style="dashed", color="red", weight=0]; 2753[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];2753 -> 2768[label="",style="dashed", color="magenta", weight=3]; 2753 -> 2769[label="",style="dashed", color="magenta", weight=3]; 2766 -> 987[label="",style="dashed", color="red", weight=0]; 2766[label="primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2766 -> 2770[label="",style="dashed", color="magenta", weight=3]; 2767 -> 987[label="",style="dashed", color="red", weight=0]; 2767[label="primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2767 -> 2771[label="",style="dashed", color="magenta", weight=3]; 2765[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer xu211)) (numericEnumFrom (Integer xu210)))",fontsize=16,color="black",shape="triangle"];2765 -> 2772[label="",style="solid", color="black", weight=3]; 1421[label="foldr (++) [] (range6 False False True : map (range6 False False) [])",fontsize=16,color="black",shape="box"];1421 -> 1490[label="",style="solid", color="black", weight=3]; 1422[label="foldr (++) [] (range6 False True True : map (range6 False True) [])",fontsize=16,color="black",shape="box"];1422 -> 1491[label="",style="solid", color="black", weight=3]; 1423[label="(++) (False : []) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1423 -> 1492[label="",style="solid", color="black", weight=3]; 1424[label="(++) range60 False (not True) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1424 -> 1493[label="",style="solid", color="black", weight=3]; 2636[label="Pos (primPlusNat (Succ xu168) (Succ Zero))",fontsize=16,color="green",shape="box"];2636 -> 2657[label="",style="dashed", color="green", weight=3]; 2637[label="Pos (Succ xu167)",fontsize=16,color="green",shape="box"];1451[label="xu711",fontsize=16,color="green",shape="box"];1452[label="range30 xu69 xu70 xu710",fontsize=16,color="black",shape="box"];1452 -> 1519[label="",style="solid", color="black", weight=3]; 1453[label="(++) range0 LT LT EQ foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1453 -> 1520[label="",style="solid", color="black", weight=3]; 1454[label="(++) range0 LT EQ EQ foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1454 -> 1521[label="",style="solid", color="black", weight=3]; 1455[label="(++) range0 LT GT EQ foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1455 -> 1522[label="",style="solid", color="black", weight=3]; 1456[label="LT : [] ++ foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1456 -> 1523[label="",style="dashed", color="green", weight=3]; 1457[label="(++) range00 LT False foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1457 -> 1524[label="",style="solid", color="black", weight=3]; 1458[label="(++) range00 LT False foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1458 -> 1525[label="",style="solid", color="black", weight=3]; 1459[label="LT : [] ++ foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1459 -> 1526[label="",style="dashed", color="green", weight=3]; 1460[label="(++) range00 LT False foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1460 -> 1527[label="",style="solid", color="black", weight=3]; 1461[label="(++) range00 LT False foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1461 -> 1528[label="",style="solid", color="black", weight=3]; 2768[label="Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2768 -> 2784[label="",style="dashed", color="green", weight=3]; 2769[label="Integer (Pos (Succ xu201))",fontsize=16,color="green",shape="box"];2770[label="xu207",fontsize=16,color="green",shape="box"];2771[label="xu207",fontsize=16,color="green",shape="box"];2772 -> 40[label="",style="dashed", color="red", weight=0]; 2772[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom (Integer xu210))",fontsize=16,color="magenta"];2772 -> 2785[label="",style="dashed", color="magenta", weight=3]; 2772 -> 2786[label="",style="dashed", color="magenta", weight=3]; 1490[label="(++) range6 False False True foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1490 -> 1555[label="",style="solid", color="black", weight=3]; 1491[label="(++) range6 False True True foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1491 -> 1556[label="",style="solid", color="black", weight=3]; 1492[label="False : [] ++ foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="green",shape="box"];1492 -> 1557[label="",style="dashed", color="green", weight=3]; 1493[label="(++) range60 False False foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1493 -> 1558[label="",style="solid", color="black", weight=3]; 2657[label="primPlusNat (Succ xu168) (Succ Zero)",fontsize=16,color="black",shape="triangle"];2657 -> 2676[label="",style="solid", color="black", weight=3]; 1519[label="(xu69,xu70,xu710) : []",fontsize=16,color="green",shape="box"];1520[label="(++) range00 EQ (LT >= EQ && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1520 -> 1597[label="",style="solid", color="black", weight=3]; 1521[label="(++) range00 EQ (LT >= EQ && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1521 -> 1598[label="",style="solid", color="black", weight=3]; 1522[label="(++) range00 EQ (LT >= EQ && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1522 -> 1599[label="",style="solid", color="black", weight=3]; 1523[label="[] ++ foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1523 -> 1600[label="",style="solid", color="black", weight=3]; 1524[label="(++) [] foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1524 -> 1601[label="",style="solid", color="black", weight=3]; 1525[label="(++) [] foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1525 -> 1602[label="",style="solid", color="black", weight=3]; 1526[label="[] ++ foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1526 -> 1603[label="",style="solid", color="black", weight=3]; 1527[label="(++) [] foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1527 -> 1604[label="",style="solid", color="black", weight=3]; 1528[label="(++) [] foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1528 -> 1605[label="",style="solid", color="black", weight=3]; 2784[label="primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];2784 -> 2798[label="",style="solid", color="black", weight=3]; 2785[label="Integer xu210",fontsize=16,color="green",shape="box"];2786[label="Integer (Neg (Succ xu206))",fontsize=16,color="green",shape="box"];1555[label="(++) range60 True (False >= True && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1555 -> 1648[label="",style="solid", color="black", weight=3]; 1556[label="(++) range60 True (False >= True && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1556 -> 1649[label="",style="solid", color="black", weight=3]; 1557[label="[] ++ foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1557 -> 1650[label="",style="solid", color="black", weight=3]; 1558[label="(++) [] foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1558 -> 1651[label="",style="solid", color="black", weight=3]; 2676[label="Succ (Succ (primPlusNat xu168 Zero))",fontsize=16,color="green",shape="box"];2676 -> 2693[label="",style="dashed", color="green", weight=3]; 1597[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1597 -> 1676[label="",style="solid", color="black", weight=3]; 1598[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1598 -> 1677[label="",style="solid", color="black", weight=3]; 1599[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1599 -> 1678[label="",style="solid", color="black", weight=3]; 1600[label="foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1600 -> 1679[label="",style="solid", color="black", weight=3]; 1601[label="foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1601 -> 1680[label="",style="solid", color="black", weight=3]; 1602[label="foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1602 -> 1681[label="",style="solid", color="black", weight=3]; 1603[label="foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1603 -> 1682[label="",style="solid", color="black", weight=3]; 1604[label="foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1604 -> 1683[label="",style="solid", color="black", weight=3]; 1605[label="foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1605 -> 1684[label="",style="solid", color="black", weight=3]; 2798[label="Pos (primPlusNat (Succ xu202) (Succ Zero))",fontsize=16,color="green",shape="box"];2798 -> 2810[label="",style="dashed", color="green", weight=3]; 1648[label="(++) range60 True (compare False True /= LT && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1648 -> 1724[label="",style="solid", color="black", weight=3]; 1649[label="(++) range60 True (compare False True /= LT && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1649 -> 1725[label="",style="solid", color="black", weight=3]; 1650[label="foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1650 -> 1726[label="",style="solid", color="black", weight=3]; 1651[label="foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1651 -> 1727[label="",style="solid", color="black", weight=3]; 2693[label="primPlusNat xu168 Zero",fontsize=16,color="burlywood",shape="box"];3195[label="xu168/Succ xu1680",fontsize=10,color="white",style="solid",shape="box"];2693 -> 3195[label="",style="solid", color="burlywood", weight=9]; 3195 -> 2709[label="",style="solid", color="burlywood", weight=3]; 3196[label="xu168/Zero",fontsize=10,color="white",style="solid",shape="box"];2693 -> 3196[label="",style="solid", color="burlywood", weight=9]; 3196 -> 2710[label="",style="solid", color="burlywood", weight=3]; 1676[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1676 -> 1744[label="",style="solid", color="black", weight=3]; 1677[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1677 -> 1745[label="",style="solid", color="black", weight=3]; 1678[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1678 -> 1746[label="",style="solid", color="black", weight=3]; 1679[label="foldr (++) [] (range0 EQ LT EQ : map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1679 -> 1747[label="",style="solid", color="black", weight=3]; 1680[label="foldr (++) [] (range0 EQ EQ EQ : map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1680 -> 1748[label="",style="solid", color="black", weight=3]; 1681[label="foldr (++) [] (range0 EQ GT EQ : map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1681 -> 1749[label="",style="solid", color="black", weight=3]; 1682[label="foldr (++) [] (range0 GT LT EQ : map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1682 -> 1750[label="",style="solid", color="black", weight=3]; 1683[label="foldr (++) [] (range0 GT EQ EQ : map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1683 -> 1751[label="",style="solid", color="black", weight=3]; 1684[label="foldr (++) [] (range0 GT GT EQ : map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1684 -> 1752[label="",style="solid", color="black", weight=3]; 2810 -> 2657[label="",style="dashed", color="red", weight=0]; 2810[label="primPlusNat (Succ xu202) (Succ Zero)",fontsize=16,color="magenta"];2810 -> 2822[label="",style="dashed", color="magenta", weight=3]; 1724[label="(++) range60 True (not (compare False True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1724 -> 1781[label="",style="solid", color="black", weight=3]; 1725[label="(++) range60 True (not (compare False True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1725 -> 1782[label="",style="solid", color="black", weight=3]; 1726[label="foldr (++) [] (range6 True False True : map (range6 True False) [])",fontsize=16,color="black",shape="box"];1726 -> 1783[label="",style="solid", color="black", weight=3]; 1727[label="foldr (++) [] (range6 True True True : map (range6 True True) [])",fontsize=16,color="black",shape="box"];1727 -> 1784[label="",style="solid", color="black", weight=3]; 2709[label="primPlusNat (Succ xu1680) Zero",fontsize=16,color="black",shape="box"];2709 -> 2726[label="",style="solid", color="black", weight=3]; 2710[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];2710 -> 2727[label="",style="solid", color="black", weight=3]; 1744[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1744 -> 1858[label="",style="solid", color="black", weight=3]; 1745[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1745 -> 1859[label="",style="solid", color="black", weight=3]; 1746[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1746 -> 1860[label="",style="solid", color="black", weight=3]; 1747[label="(++) range0 EQ LT EQ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1747 -> 1861[label="",style="solid", color="black", weight=3]; 1748[label="(++) range0 EQ EQ EQ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1748 -> 1862[label="",style="solid", color="black", weight=3]; 1749[label="(++) range0 EQ GT EQ foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1749 -> 1863[label="",style="solid", color="black", weight=3]; 1750[label="(++) range0 GT LT EQ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1750 -> 1864[label="",style="solid", color="black", weight=3]; 1751[label="(++) range0 GT EQ EQ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1751 -> 1865[label="",style="solid", color="black", weight=3]; 1752[label="(++) range0 GT GT EQ foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1752 -> 1866[label="",style="solid", color="black", weight=3]; 2822[label="xu202",fontsize=16,color="green",shape="box"];1781[label="(++) range60 True (not (compare3 False True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1781 -> 1933[label="",style="solid", color="black", weight=3]; 1782[label="(++) range60 True (not (compare3 False True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1782 -> 1934[label="",style="solid", color="black", weight=3]; 1783[label="(++) range6 True False True foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];1783 -> 1935[label="",style="solid", color="black", weight=3]; 1784[label="(++) range6 True True True foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];1784 -> 1936[label="",style="solid", color="black", weight=3]; 2726[label="Succ xu1680",fontsize=16,color="green",shape="box"];2727[label="Zero",fontsize=16,color="green",shape="box"];1858[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1858 -> 1985[label="",style="solid", color="black", weight=3]; 1859[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1859 -> 1986[label="",style="solid", color="black", weight=3]; 1860[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1860 -> 1987[label="",style="solid", color="black", weight=3]; 1861[label="(++) range00 EQ (EQ >= EQ && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1861 -> 1988[label="",style="solid", color="black", weight=3]; 1862[label="(++) range00 EQ (EQ >= EQ && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1862 -> 1989[label="",style="solid", color="black", weight=3]; 1863[label="(++) range00 EQ (EQ >= EQ && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1863 -> 1990[label="",style="solid", color="black", weight=3]; 1864[label="(++) range00 EQ (GT >= EQ && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1864 -> 1991[label="",style="solid", color="black", weight=3]; 1865[label="(++) range00 EQ (GT >= EQ && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1865 -> 1992[label="",style="solid", color="black", weight=3]; 1866[label="(++) range00 EQ (GT >= EQ && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1866 -> 1993[label="",style="solid", color="black", weight=3]; 1933[label="(++) range60 True (not (compare2 False True (False == True) == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1933 -> 2028[label="",style="solid", color="black", weight=3]; 1934[label="(++) range60 True (not (compare2 False True (False == True) == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1934 -> 2029[label="",style="solid", color="black", weight=3]; 1935[label="(++) range60 True (True >= True && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];1935 -> 2030[label="",style="solid", color="black", weight=3]; 1936[label="(++) range60 True (True >= True && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];1936 -> 2031[label="",style="solid", color="black", weight=3]; 1985[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1985 -> 2046[label="",style="solid", color="black", weight=3]; 1986[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1986 -> 2047[label="",style="solid", color="black", weight=3]; 1987[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1987 -> 2048[label="",style="solid", color="black", weight=3]; 1988[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1988 -> 2049[label="",style="solid", color="black", weight=3]; 1989[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1989 -> 2050[label="",style="solid", color="black", weight=3]; 1990[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1990 -> 2051[label="",style="solid", color="black", weight=3]; 1991[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1991 -> 2052[label="",style="solid", color="black", weight=3]; 1992[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1992 -> 2053[label="",style="solid", color="black", weight=3]; 1993[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1993 -> 2054[label="",style="solid", color="black", weight=3]; 2028[label="(++) range60 True (not (compare2 False True False == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2028 -> 2074[label="",style="solid", color="black", weight=3]; 2029[label="(++) range60 True (not (compare2 False True False == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2029 -> 2075[label="",style="solid", color="black", weight=3]; 2030[label="(++) range60 True (compare True True /= LT && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2030 -> 2076[label="",style="solid", color="black", weight=3]; 2031[label="(++) range60 True (compare True True /= LT && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2031 -> 2077[label="",style="solid", color="black", weight=3]; 2046[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2046 -> 2124[label="",style="solid", color="black", weight=3]; 2047[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2047 -> 2125[label="",style="solid", color="black", weight=3]; 2048[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2048 -> 2126[label="",style="solid", color="black", weight=3]; 2049[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2049 -> 2127[label="",style="solid", color="black", weight=3]; 2050[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2050 -> 2128[label="",style="solid", color="black", weight=3]; 2051[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2051 -> 2129[label="",style="solid", color="black", weight=3]; 2052[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2052 -> 2130[label="",style="solid", color="black", weight=3]; 2053[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2053 -> 2131[label="",style="solid", color="black", weight=3]; 2054[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2054 -> 2132[label="",style="solid", color="black", weight=3]; 2074[label="(++) range60 True (not (compare1 False True (False <= True) == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2074 -> 2162[label="",style="solid", color="black", weight=3]; 2075[label="(++) range60 True (not (compare1 False True (False <= True) == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2075 -> 2163[label="",style="solid", color="black", weight=3]; 2076[label="(++) range60 True (not (compare True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2076 -> 2164[label="",style="solid", color="black", weight=3]; 2077[label="(++) range60 True (not (compare True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2077 -> 2165[label="",style="solid", color="black", weight=3]; 2124[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2124 -> 2176[label="",style="solid", color="black", weight=3]; 2125[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2125 -> 2177[label="",style="solid", color="black", weight=3]; 2126[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2126 -> 2178[label="",style="solid", color="black", weight=3]; 2127[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2127 -> 2179[label="",style="solid", color="black", weight=3]; 2128[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2128 -> 2180[label="",style="solid", color="black", weight=3]; 2129[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2129 -> 2181[label="",style="solid", color="black", weight=3]; 2130[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2130 -> 2182[label="",style="solid", color="black", weight=3]; 2131[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2131 -> 2183[label="",style="solid", color="black", weight=3]; 2132[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2132 -> 2184[label="",style="solid", color="black", weight=3]; 2162[label="(++) range60 True (not (compare1 False True True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2162 -> 2233[label="",style="solid", color="black", weight=3]; 2163[label="(++) range60 True (not (compare1 False True True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2163 -> 2234[label="",style="solid", color="black", weight=3]; 2164[label="(++) range60 True (not (compare3 True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2164 -> 2235[label="",style="solid", color="black", weight=3]; 2165[label="(++) range60 True (not (compare3 True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2165 -> 2236[label="",style="solid", color="black", weight=3]; 2176[label="(++) range00 EQ (not (LT == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2176 -> 2249[label="",style="solid", color="black", weight=3]; 2177[label="(++) range00 EQ (not (LT == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2177 -> 2250[label="",style="solid", color="black", weight=3]; 2178[label="(++) range00 EQ (not (LT == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2178 -> 2251[label="",style="solid", color="black", weight=3]; 2179[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2179 -> 2252[label="",style="solid", color="black", weight=3]; 2180[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2180 -> 2253[label="",style="solid", color="black", weight=3]; 2181[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2181 -> 2254[label="",style="solid", color="black", weight=3]; 2182[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2182 -> 2255[label="",style="solid", color="black", weight=3]; 2183[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2183 -> 2256[label="",style="solid", color="black", weight=3]; 2184[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2184 -> 2257[label="",style="solid", color="black", weight=3]; 2233[label="(++) range60 True (not (LT == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2233 -> 2271[label="",style="solid", color="black", weight=3]; 2234[label="(++) range60 True (not (LT == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2234 -> 2272[label="",style="solid", color="black", weight=3]; 2235[label="(++) range60 True (not (compare2 True True (True == True) == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2235 -> 2273[label="",style="solid", color="black", weight=3]; 2236[label="(++) range60 True (not (compare2 True True (True == True) == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2236 -> 2274[label="",style="solid", color="black", weight=3]; 2249[label="(++) range00 EQ (not True && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2249 -> 2348[label="",style="solid", color="black", weight=3]; 2250[label="(++) range00 EQ (not True && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2250 -> 2349[label="",style="solid", color="black", weight=3]; 2251[label="(++) range00 EQ (not True && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2251 -> 2350[label="",style="solid", color="black", weight=3]; 2252[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2252 -> 2351[label="",style="solid", color="black", weight=3]; 2253[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2253 -> 2352[label="",style="solid", color="black", weight=3]; 2254[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2254 -> 2353[label="",style="solid", color="black", weight=3]; 2255[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2255 -> 2354[label="",style="solid", color="black", weight=3]; 2256[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2256 -> 2355[label="",style="solid", color="black", weight=3]; 2257[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2257 -> 2356[label="",style="solid", color="black", weight=3]; 2271[label="(++) range60 True (not True && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2271 -> 2387[label="",style="solid", color="black", weight=3]; 2272[label="(++) range60 True (not True && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2272 -> 2388[label="",style="solid", color="black", weight=3]; 2273[label="(++) range60 True (not (compare2 True True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2273 -> 2389[label="",style="solid", color="black", weight=3]; 2274[label="(++) range60 True (not (compare2 True True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2274 -> 2390[label="",style="solid", color="black", weight=3]; 2348[label="(++) range00 EQ (False && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2348 -> 2451[label="",style="solid", color="black", weight=3]; 2349[label="(++) range00 EQ (False && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2349 -> 2452[label="",style="solid", color="black", weight=3]; 2350[label="(++) range00 EQ (False && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2350 -> 2453[label="",style="solid", color="black", weight=3]; 2351[label="(++) range00 EQ (not (EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2351 -> 2454[label="",style="solid", color="black", weight=3]; 2352[label="(++) range00 EQ (not (EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2352 -> 2455[label="",style="solid", color="black", weight=3]; 2353[label="(++) range00 EQ (not (EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2353 -> 2456[label="",style="solid", color="black", weight=3]; 2354[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2354 -> 2457[label="",style="solid", color="black", weight=3]; 2355[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2355 -> 2458[label="",style="solid", color="black", weight=3]; 2356[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2356 -> 2459[label="",style="solid", color="black", weight=3]; 2387[label="(++) range60 True (False && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2387 -> 2562[label="",style="solid", color="black", weight=3]; 2388[label="(++) range60 True (False && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2388 -> 2563[label="",style="solid", color="black", weight=3]; 2389[label="(++) range60 True (not (EQ == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2389 -> 2564[label="",style="solid", color="black", weight=3]; 2390[label="(++) range60 True (not (EQ == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2390 -> 2565[label="",style="solid", color="black", weight=3]; 2451[label="(++) range00 EQ False foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2451 -> 2566[label="",style="solid", color="black", weight=3]; 2452[label="(++) range00 EQ False foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2452 -> 2567[label="",style="solid", color="black", weight=3]; 2453[label="(++) range00 EQ False foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2453 -> 2568[label="",style="solid", color="black", weight=3]; 2454[label="(++) range00 EQ (not False && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2454 -> 2569[label="",style="solid", color="black", weight=3]; 2455[label="(++) range00 EQ (not False && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2455 -> 2570[label="",style="solid", color="black", weight=3]; 2456[label="(++) range00 EQ (not False && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2456 -> 2571[label="",style="solid", color="black", weight=3]; 2457[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2457 -> 2572[label="",style="solid", color="black", weight=3]; 2458[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2458 -> 2573[label="",style="solid", color="black", weight=3]; 2459[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2459 -> 2574[label="",style="solid", color="black", weight=3]; 2562[label="(++) range60 True False foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2562 -> 2589[label="",style="solid", color="black", weight=3]; 2563[label="(++) range60 True False foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2563 -> 2590[label="",style="solid", color="black", weight=3]; 2564[label="(++) range60 True (not False && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2564 -> 2591[label="",style="solid", color="black", weight=3]; 2565[label="(++) range60 True (not False && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2565 -> 2592[label="",style="solid", color="black", weight=3]; 2566[label="(++) [] foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2566 -> 2593[label="",style="solid", color="black", weight=3]; 2567[label="(++) [] foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2567 -> 2594[label="",style="solid", color="black", weight=3]; 2568[label="(++) [] foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2568 -> 2595[label="",style="solid", color="black", weight=3]; 2569[label="(++) range00 EQ (True && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2569 -> 2596[label="",style="solid", color="black", weight=3]; 2570[label="(++) range00 EQ (True && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2570 -> 2597[label="",style="solid", color="black", weight=3]; 2571[label="(++) range00 EQ (True && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2571 -> 2598[label="",style="solid", color="black", weight=3]; 2572[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2572 -> 2599[label="",style="solid", color="black", weight=3]; 2573[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2573 -> 2600[label="",style="solid", color="black", weight=3]; 2574[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2574 -> 2601[label="",style="solid", color="black", weight=3]; 2589[label="(++) [] foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2589 -> 2614[label="",style="solid", color="black", weight=3]; 2590[label="(++) [] foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2590 -> 2615[label="",style="solid", color="black", weight=3]; 2591[label="(++) range60 True (True && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2591 -> 2616[label="",style="solid", color="black", weight=3]; 2592[label="(++) range60 True (True && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2592 -> 2617[label="",style="solid", color="black", weight=3]; 2593[label="foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2593 -> 2618[label="",style="solid", color="black", weight=3]; 2594[label="foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2594 -> 2619[label="",style="solid", color="black", weight=3]; 2595[label="foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2595 -> 2620[label="",style="solid", color="black", weight=3]; 2596[label="(++) range00 EQ (EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2596 -> 2621[label="",style="solid", color="black", weight=3]; 2597[label="(++) range00 EQ (EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2597 -> 2622[label="",style="solid", color="black", weight=3]; 2598[label="(++) range00 EQ (EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2598 -> 2623[label="",style="solid", color="black", weight=3]; 2599[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2599 -> 2624[label="",style="solid", color="black", weight=3]; 2600[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2600 -> 2625[label="",style="solid", color="black", weight=3]; 2601[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2601 -> 2626[label="",style="solid", color="black", weight=3]; 2614[label="foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2614 -> 2638[label="",style="solid", color="black", weight=3]; 2615[label="foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2615 -> 2639[label="",style="solid", color="black", weight=3]; 2616[label="(++) range60 True (True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2616 -> 2640[label="",style="solid", color="black", weight=3]; 2617[label="(++) range60 True (True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2617 -> 2641[label="",style="solid", color="black", weight=3]; 2618[label="foldr (++) [] (range0 LT LT GT : map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2618 -> 2642[label="",style="solid", color="black", weight=3]; 2619[label="foldr (++) [] (range0 LT EQ GT : map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2619 -> 2643[label="",style="solid", color="black", weight=3]; 2620[label="foldr (++) [] (range0 LT GT GT : map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2620 -> 2644[label="",style="solid", color="black", weight=3]; 2621[label="(++) range00 EQ (compare EQ LT /= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2621 -> 2645[label="",style="solid", color="black", weight=3]; 2622[label="(++) range00 EQ (compare EQ EQ /= LT) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2622 -> 2646[label="",style="solid", color="black", weight=3]; 2623[label="(++) range00 EQ (compare EQ GT /= LT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2623 -> 2647[label="",style="solid", color="black", weight=3]; 2624[label="(++) range00 EQ (not (GT == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2624 -> 2648[label="",style="solid", color="black", weight=3]; 2625[label="(++) range00 EQ (not (GT == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2625 -> 2649[label="",style="solid", color="black", weight=3]; 2626[label="(++) range00 EQ (not (GT == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2626 -> 2650[label="",style="solid", color="black", weight=3]; 2638[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];2638 -> 2658[label="",style="solid", color="black", weight=3]; 2639 -> 2638[label="",style="dashed", color="red", weight=0]; 2639[label="foldr (++) [] []",fontsize=16,color="magenta"];2640[label="(++) range60 True (compare True False /= LT) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2640 -> 2659[label="",style="solid", color="black", weight=3]; 2641[label="(++) range60 True (compare True True /= LT) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2641 -> 2660[label="",style="solid", color="black", weight=3]; 2642[label="(++) range0 LT LT GT foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2642 -> 2661[label="",style="solid", color="black", weight=3]; 2643[label="(++) range0 LT EQ GT foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2643 -> 2662[label="",style="solid", color="black", weight=3]; 2644[label="(++) range0 LT GT GT foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2644 -> 2663[label="",style="solid", color="black", weight=3]; 2645[label="(++) range00 EQ (not (compare EQ LT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2645 -> 2664[label="",style="solid", color="black", weight=3]; 2646[label="(++) range00 EQ (not (compare EQ EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2646 -> 2665[label="",style="solid", color="black", weight=3]; 2647[label="(++) range00 EQ (not (compare EQ GT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2647 -> 2666[label="",style="solid", color="black", weight=3]; 2648[label="(++) range00 EQ (not False && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2648 -> 2667[label="",style="solid", color="black", weight=3]; 2649[label="(++) range00 EQ (not False && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2649 -> 2668[label="",style="solid", color="black", weight=3]; 2650[label="(++) range00 EQ (not False && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2650 -> 2669[label="",style="solid", color="black", weight=3]; 2658[label="[]",fontsize=16,color="green",shape="box"];2659[label="(++) range60 True (not (compare True False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2659 -> 2677[label="",style="solid", color="black", weight=3]; 2660[label="(++) range60 True (not (compare True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2660 -> 2678[label="",style="solid", color="black", weight=3]; 2661[label="(++) range00 GT (LT >= GT && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2661 -> 2679[label="",style="solid", color="black", weight=3]; 2662[label="(++) range00 GT (LT >= GT && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2662 -> 2680[label="",style="solid", color="black", weight=3]; 2663[label="(++) range00 GT (LT >= GT && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2663 -> 2681[label="",style="solid", color="black", weight=3]; 2664[label="(++) range00 EQ (not (compare3 EQ LT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2664 -> 2682[label="",style="solid", color="black", weight=3]; 2665[label="(++) range00 EQ (not (compare3 EQ EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2665 -> 2683[label="",style="solid", color="black", weight=3]; 2666[label="(++) range00 EQ (not (compare3 EQ GT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2666 -> 2684[label="",style="solid", color="black", weight=3]; 2667[label="(++) range00 EQ (True && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2667 -> 2685[label="",style="solid", color="black", weight=3]; 2668[label="(++) range00 EQ (True && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2668 -> 2686[label="",style="solid", color="black", weight=3]; 2669[label="(++) range00 EQ (True && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2669 -> 2687[label="",style="solid", color="black", weight=3]; 2677[label="(++) range60 True (not (compare3 True False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2677 -> 2694[label="",style="solid", color="black", weight=3]; 2678[label="(++) range60 True (not (compare3 True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2678 -> 2695[label="",style="solid", color="black", weight=3]; 2679[label="(++) range00 GT (compare LT GT /= LT && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2679 -> 2696[label="",style="solid", color="black", weight=3]; 2680[label="(++) range00 GT (compare LT GT /= LT && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2680 -> 2697[label="",style="solid", color="black", weight=3]; 2681[label="(++) range00 GT (compare LT GT /= LT && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2681 -> 2698[label="",style="solid", color="black", weight=3]; 2682[label="(++) range00 EQ (not (compare2 EQ LT (EQ == LT) == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2682 -> 2699[label="",style="solid", color="black", weight=3]; 2683[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2683 -> 2700[label="",style="solid", color="black", weight=3]; 2684[label="(++) range00 EQ (not (compare2 EQ GT (EQ == GT) == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2684 -> 2701[label="",style="solid", color="black", weight=3]; 2685[label="(++) range00 EQ (EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2685 -> 2702[label="",style="solid", color="black", weight=3]; 2686[label="(++) range00 EQ (EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2686 -> 2703[label="",style="solid", color="black", weight=3]; 2687[label="(++) range00 EQ (EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2687 -> 2704[label="",style="solid", color="black", weight=3]; 2694[label="(++) range60 True (not (compare2 True False (True == False) == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2694 -> 2711[label="",style="solid", color="black", weight=3]; 2695[label="(++) range60 True (not (compare2 True True (True == True) == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2695 -> 2712[label="",style="solid", color="black", weight=3]; 2696[label="(++) range00 GT (not (compare LT GT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2696 -> 2713[label="",style="solid", color="black", weight=3]; 2697[label="(++) range00 GT (not (compare LT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2697 -> 2714[label="",style="solid", color="black", weight=3]; 2698[label="(++) range00 GT (not (compare LT GT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2698 -> 2715[label="",style="solid", color="black", weight=3]; 2699[label="(++) range00 EQ (not (compare2 EQ LT False == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2699 -> 2716[label="",style="solid", color="black", weight=3]; 2700[label="(++) range00 EQ (not (compare2 EQ EQ True == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2700 -> 2717[label="",style="solid", color="black", weight=3]; 2701[label="(++) range00 EQ (not (compare2 EQ GT False == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2701 -> 2718[label="",style="solid", color="black", weight=3]; 2702[label="(++) range00 EQ (compare EQ LT /= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2702 -> 2719[label="",style="solid", color="black", weight=3]; 2703[label="(++) range00 EQ (compare EQ EQ /= LT) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2703 -> 2720[label="",style="solid", color="black", weight=3]; 2704[label="(++) range00 EQ (compare EQ GT /= LT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2704 -> 2721[label="",style="solid", color="black", weight=3]; 2711[label="(++) range60 True (not (compare2 True False False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2711 -> 2728[label="",style="solid", color="black", weight=3]; 2712[label="(++) range60 True (not (compare2 True True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2712 -> 2729[label="",style="solid", color="black", weight=3]; 2713[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2713 -> 2730[label="",style="solid", color="black", weight=3]; 2714[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2714 -> 2731[label="",style="solid", color="black", weight=3]; 2715[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2715 -> 2732[label="",style="solid", color="black", weight=3]; 2716[label="(++) range00 EQ (not (compare1 EQ LT (EQ <= LT) == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2716 -> 2733[label="",style="solid", color="black", weight=3]; 2717[label="(++) range00 EQ (not (EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2717 -> 2734[label="",style="solid", color="black", weight=3]; 2718[label="(++) range00 EQ (not (compare1 EQ GT (EQ <= GT) == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2718 -> 2735[label="",style="solid", color="black", weight=3]; 2719[label="(++) range00 EQ (not (compare EQ LT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2719 -> 2736[label="",style="solid", color="black", weight=3]; 2720[label="(++) range00 EQ (not (compare EQ EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2720 -> 2737[label="",style="solid", color="black", weight=3]; 2721[label="(++) range00 EQ (not (compare EQ GT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2721 -> 2738[label="",style="solid", color="black", weight=3]; 2728[label="(++) range60 True (not (compare1 True False (True <= False) == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2728 -> 2741[label="",style="solid", color="black", weight=3]; 2729[label="(++) range60 True (not (EQ == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2729 -> 2742[label="",style="solid", color="black", weight=3]; 2730[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2730 -> 2743[label="",style="solid", color="black", weight=3]; 2731[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2731 -> 2744[label="",style="solid", color="black", weight=3]; 2732[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2732 -> 2745[label="",style="solid", color="black", weight=3]; 2733[label="(++) range00 EQ (not (compare1 EQ LT False == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2733 -> 2746[label="",style="solid", color="black", weight=3]; 2734[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2734 -> 2747[label="",style="solid", color="black", weight=3]; 2735[label="(++) range00 EQ (not (compare1 EQ GT True == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2735 -> 2748[label="",style="solid", color="black", weight=3]; 2736[label="(++) range00 EQ (not (compare3 EQ LT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2736 -> 2749[label="",style="solid", color="black", weight=3]; 2737[label="(++) range00 EQ (not (compare3 EQ EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2737 -> 2750[label="",style="solid", color="black", weight=3]; 2738[label="(++) range00 EQ (not (compare3 EQ GT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2738 -> 2751[label="",style="solid", color="black", weight=3]; 2741[label="(++) range60 True (not (compare1 True False False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2741 -> 2754[label="",style="solid", color="black", weight=3]; 2742[label="(++) range60 True (not False) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2742 -> 2755[label="",style="solid", color="black", weight=3]; 2743[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2743 -> 2756[label="",style="solid", color="black", weight=3]; 2744[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2744 -> 2757[label="",style="solid", color="black", weight=3]; 2745[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2745 -> 2758[label="",style="solid", color="black", weight=3]; 2746[label="(++) range00 EQ (not (compare0 EQ LT otherwise == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2746 -> 2759[label="",style="solid", color="black", weight=3]; 2747[label="(++) range00 EQ True foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2747 -> 2760[label="",style="solid", color="black", weight=3]; 2748[label="(++) range00 EQ (not (LT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2748 -> 2761[label="",style="solid", color="black", weight=3]; 2749[label="(++) range00 EQ (not (compare2 EQ LT (EQ == LT) == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2749 -> 2762[label="",style="solid", color="black", weight=3]; 2750[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2750 -> 2763[label="",style="solid", color="black", weight=3]; 2751[label="(++) range00 EQ (not (compare2 EQ GT (EQ == GT) == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2751 -> 2764[label="",style="solid", color="black", weight=3]; 2754[label="(++) range60 True (not (compare0 True False otherwise == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2754 -> 2773[label="",style="solid", color="black", weight=3]; 2755[label="(++) range60 True True foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2755 -> 2774[label="",style="solid", color="black", weight=3]; 2756[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2756 -> 2775[label="",style="solid", color="black", weight=3]; 2757[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2757 -> 2776[label="",style="solid", color="black", weight=3]; 2758[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2758 -> 2777[label="",style="solid", color="black", weight=3]; 2759[label="(++) range00 EQ (not (compare0 EQ LT True == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2759 -> 2778[label="",style="solid", color="black", weight=3]; 2760[label="(++) (EQ : []) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2760 -> 2779[label="",style="solid", color="black", weight=3]; 2761[label="(++) range00 EQ (not True) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2761 -> 2780[label="",style="solid", color="black", weight=3]; 2762[label="(++) range00 EQ (not (compare2 EQ LT False == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2762 -> 2781[label="",style="solid", color="black", weight=3]; 2763[label="(++) range00 EQ (not (compare2 EQ EQ True == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2763 -> 2782[label="",style="solid", color="black", weight=3]; 2764[label="(++) range00 EQ (not (compare2 EQ GT False == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2764 -> 2783[label="",style="solid", color="black", weight=3]; 2773[label="(++) range60 True (not (compare0 True False True == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2773 -> 2787[label="",style="solid", color="black", weight=3]; 2774[label="(++) (True : []) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2774 -> 2788[label="",style="solid", color="black", weight=3]; 2775[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2775 -> 2789[label="",style="solid", color="black", weight=3]; 2776[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2776 -> 2790[label="",style="solid", color="black", weight=3]; 2777[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2777 -> 2791[label="",style="solid", color="black", weight=3]; 2778[label="(++) range00 EQ (not (GT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2778 -> 2792[label="",style="solid", color="black", weight=3]; 2779[label="EQ : [] ++ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="green",shape="box"];2779 -> 2793[label="",style="dashed", color="green", weight=3]; 2780[label="(++) range00 EQ False foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2780 -> 2794[label="",style="solid", color="black", weight=3]; 2781[label="(++) range00 EQ (not (compare1 EQ LT (EQ <= LT) == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2781 -> 2795[label="",style="solid", color="black", weight=3]; 2782[label="(++) range00 EQ (not (EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2782 -> 2796[label="",style="solid", color="black", weight=3]; 2783[label="(++) range00 EQ (not (compare1 EQ GT (EQ <= GT) == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2783 -> 2797[label="",style="solid", color="black", weight=3]; 2787[label="(++) range60 True (not (GT == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2787 -> 2799[label="",style="solid", color="black", weight=3]; 2788[label="True : [] ++ foldr (++) [] (map (range6 True True) [])",fontsize=16,color="green",shape="box"];2788 -> 2800[label="",style="dashed", color="green", weight=3]; 2789[label="(++) range00 GT (not (LT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2789 -> 2801[label="",style="solid", color="black", weight=3]; 2790[label="(++) range00 GT (not (LT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2790 -> 2802[label="",style="solid", color="black", weight=3]; 2791[label="(++) range00 GT (not (LT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2791 -> 2803[label="",style="solid", color="black", weight=3]; 2792[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2792 -> 2804[label="",style="solid", color="black", weight=3]; 2793[label="[] ++ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2793 -> 2805[label="",style="solid", color="black", weight=3]; 2794[label="(++) [] foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2794 -> 2806[label="",style="solid", color="black", weight=3]; 2795[label="(++) range00 EQ (not (compare1 EQ LT False == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2795 -> 2807[label="",style="solid", color="black", weight=3]; 2796[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2796 -> 2808[label="",style="solid", color="black", weight=3]; 2797[label="(++) range00 EQ (not (compare1 EQ GT True == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2797 -> 2809[label="",style="solid", color="black", weight=3]; 2799[label="(++) range60 True (not False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2799 -> 2811[label="",style="solid", color="black", weight=3]; 2800[label="[] ++ foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2800 -> 2812[label="",style="solid", color="black", weight=3]; 2801[label="(++) range00 GT (not True && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2801 -> 2813[label="",style="solid", color="black", weight=3]; 2802[label="(++) range00 GT (not True && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2802 -> 2814[label="",style="solid", color="black", weight=3]; 2803[label="(++) range00 GT (not True && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2803 -> 2815[label="",style="solid", color="black", weight=3]; 2804[label="(++) range00 EQ True foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2804 -> 2816[label="",style="solid", color="black", weight=3]; 2805[label="foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2805 -> 2817[label="",style="solid", color="black", weight=3]; 2806[label="foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2806 -> 2818[label="",style="solid", color="black", weight=3]; 2807[label="(++) range00 EQ (not (compare0 EQ LT otherwise == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2807 -> 2819[label="",style="solid", color="black", weight=3]; 2808[label="(++) range00 EQ True foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2808 -> 2820[label="",style="solid", color="black", weight=3]; 2809[label="(++) range00 EQ (not (LT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2809 -> 2821[label="",style="solid", color="black", weight=3]; 2811[label="(++) range60 True True foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2811 -> 2823[label="",style="solid", color="black", weight=3]; 2812[label="foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2812 -> 2824[label="",style="solid", color="black", weight=3]; 2813[label="(++) range00 GT (False && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2813 -> 2825[label="",style="solid", color="black", weight=3]; 2814[label="(++) range00 GT (False && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2814 -> 2826[label="",style="solid", color="black", weight=3]; 2815[label="(++) range00 GT (False && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2815 -> 2827[label="",style="solid", color="black", weight=3]; 2816[label="(++) (EQ : []) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2816 -> 2828[label="",style="solid", color="black", weight=3]; 2817[label="foldr (++) [] (range0 EQ EQ GT : map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2817 -> 2829[label="",style="solid", color="black", weight=3]; 2818[label="foldr (++) [] (range0 EQ GT GT : map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2818 -> 2830[label="",style="solid", color="black", weight=3]; 2819[label="(++) range00 EQ (not (compare0 EQ LT True == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2819 -> 2831[label="",style="solid", color="black", weight=3]; 2820[label="(++) (EQ : []) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2820 -> 2832[label="",style="solid", color="black", weight=3]; 2821[label="(++) range00 EQ (not True) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2821 -> 2833[label="",style="solid", color="black", weight=3]; 2823[label="(++) (True : []) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2823 -> 2834[label="",style="solid", color="black", weight=3]; 2824 -> 2638[label="",style="dashed", color="red", weight=0]; 2824[label="foldr (++) [] []",fontsize=16,color="magenta"];2825[label="(++) range00 GT False foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2825 -> 2835[label="",style="solid", color="black", weight=3]; 2826[label="(++) range00 GT False foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2826 -> 2836[label="",style="solid", color="black", weight=3]; 2827[label="(++) range00 GT False foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2827 -> 2837[label="",style="solid", color="black", weight=3]; 2828[label="EQ : [] ++ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="green",shape="box"];2828 -> 2838[label="",style="dashed", color="green", weight=3]; 2829[label="(++) range0 EQ EQ GT foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2829 -> 2839[label="",style="solid", color="black", weight=3]; 2830[label="(++) range0 EQ GT GT foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2830 -> 2840[label="",style="solid", color="black", weight=3]; 2831[label="(++) range00 EQ (not (GT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2831 -> 2841[label="",style="solid", color="black", weight=3]; 2832[label="EQ : [] ++ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="green",shape="box"];2832 -> 2842[label="",style="dashed", color="green", weight=3]; 2833[label="(++) range00 EQ False foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2833 -> 2843[label="",style="solid", color="black", weight=3]; 2834[label="True : [] ++ foldr (++) [] (map (range6 True False) [])",fontsize=16,color="green",shape="box"];2834 -> 2844[label="",style="dashed", color="green", weight=3]; 2835[label="(++) [] foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2835 -> 2845[label="",style="solid", color="black", weight=3]; 2836[label="(++) [] foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2836 -> 2846[label="",style="solid", color="black", weight=3]; 2837[label="(++) [] foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2837 -> 2847[label="",style="solid", color="black", weight=3]; 2838[label="[] ++ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2838 -> 2848[label="",style="solid", color="black", weight=3]; 2839[label="(++) range00 GT (EQ >= GT && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2839 -> 2849[label="",style="solid", color="black", weight=3]; 2840[label="(++) range00 GT (EQ >= GT && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2840 -> 2850[label="",style="solid", color="black", weight=3]; 2841[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2841 -> 2851[label="",style="solid", color="black", weight=3]; 2842[label="[] ++ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2842 -> 2852[label="",style="solid", color="black", weight=3]; 2843[label="(++) [] foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2843 -> 2853[label="",style="solid", color="black", weight=3]; 2844[label="[] ++ foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2844 -> 2854[label="",style="solid", color="black", weight=3]; 2845[label="foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2845 -> 2855[label="",style="solid", color="black", weight=3]; 2846[label="foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2846 -> 2856[label="",style="solid", color="black", weight=3]; 2847[label="foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2847 -> 2857[label="",style="solid", color="black", weight=3]; 2848[label="foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2848 -> 2858[label="",style="solid", color="black", weight=3]; 2849[label="(++) range00 GT (compare EQ GT /= LT && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2849 -> 2859[label="",style="solid", color="black", weight=3]; 2850[label="(++) range00 GT (compare EQ GT /= LT && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2850 -> 2860[label="",style="solid", color="black", weight=3]; 2851[label="(++) range00 EQ True foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2851 -> 2861[label="",style="solid", color="black", weight=3]; 2852[label="foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2852 -> 2862[label="",style="solid", color="black", weight=3]; 2853[label="foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2853 -> 2863[label="",style="solid", color="black", weight=3]; 2854[label="foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2854 -> 2864[label="",style="solid", color="black", weight=3]; 2855[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];2855 -> 2865[label="",style="solid", color="black", weight=3]; 2856 -> 2855[label="",style="dashed", color="red", weight=0]; 2856[label="foldr (++) [] []",fontsize=16,color="magenta"];2857 -> 2855[label="",style="dashed", color="red", weight=0]; 2857[label="foldr (++) [] []",fontsize=16,color="magenta"];2858[label="foldr (++) [] (range0 EQ LT GT : map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2858 -> 2866[label="",style="solid", color="black", weight=3]; 2859[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2859 -> 2867[label="",style="solid", color="black", weight=3]; 2860[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2860 -> 2868[label="",style="solid", color="black", weight=3]; 2861[label="(++) (EQ : []) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2861 -> 2869[label="",style="solid", color="black", weight=3]; 2862[label="foldr (++) [] (range0 GT EQ GT : map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2862 -> 2870[label="",style="solid", color="black", weight=3]; 2863[label="foldr (++) [] (range0 GT GT GT : map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2863 -> 2871[label="",style="solid", color="black", weight=3]; 2864 -> 2638[label="",style="dashed", color="red", weight=0]; 2864[label="foldr (++) [] []",fontsize=16,color="magenta"];2865[label="[]",fontsize=16,color="green",shape="box"];2866[label="(++) range0 EQ LT GT foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2866 -> 2872[label="",style="solid", color="black", weight=3]; 2867[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2867 -> 2873[label="",style="solid", color="black", weight=3]; 2868[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2868 -> 2874[label="",style="solid", color="black", weight=3]; 2869[label="EQ : [] ++ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="green",shape="box"];2869 -> 2875[label="",style="dashed", color="green", weight=3]; 2870[label="(++) range0 GT EQ GT foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2870 -> 2876[label="",style="solid", color="black", weight=3]; 2871[label="(++) range0 GT GT GT foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2871 -> 2877[label="",style="solid", color="black", weight=3]; 2872[label="(++) range00 GT (EQ >= GT && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2872 -> 2878[label="",style="solid", color="black", weight=3]; 2873[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2873 -> 2879[label="",style="solid", color="black", weight=3]; 2874[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2874 -> 2880[label="",style="solid", color="black", weight=3]; 2875[label="[] ++ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2875 -> 2881[label="",style="solid", color="black", weight=3]; 2876[label="(++) range00 GT (GT >= GT && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2876 -> 2882[label="",style="solid", color="black", weight=3]; 2877[label="(++) range00 GT (GT >= GT && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2877 -> 2883[label="",style="solid", color="black", weight=3]; 2878[label="(++) range00 GT (compare EQ GT /= LT && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2878 -> 2884[label="",style="solid", color="black", weight=3]; 2879[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2879 -> 2885[label="",style="solid", color="black", weight=3]; 2880[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2880 -> 2886[label="",style="solid", color="black", weight=3]; 2881[label="foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2881 -> 2887[label="",style="solid", color="black", weight=3]; 2882[label="(++) range00 GT (compare GT GT /= LT && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2882 -> 2888[label="",style="solid", color="black", weight=3]; 2883[label="(++) range00 GT (compare GT GT /= LT && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2883 -> 2889[label="",style="solid", color="black", weight=3]; 2884[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2884 -> 2890[label="",style="solid", color="black", weight=3]; 2885[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2885 -> 2891[label="",style="solid", color="black", weight=3]; 2886[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2886 -> 2892[label="",style="solid", color="black", weight=3]; 2887[label="foldr (++) [] (range0 GT LT GT : map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2887 -> 2893[label="",style="solid", color="black", weight=3]; 2888[label="(++) range00 GT (not (compare GT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2888 -> 2894[label="",style="solid", color="black", weight=3]; 2889[label="(++) range00 GT (not (compare GT GT == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2889 -> 2895[label="",style="solid", color="black", weight=3]; 2890[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2890 -> 2896[label="",style="solid", color="black", weight=3]; 2891[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2891 -> 2897[label="",style="solid", color="black", weight=3]; 2892[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2892 -> 2898[label="",style="solid", color="black", weight=3]; 2893[label="(++) range0 GT LT GT foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2893 -> 2899[label="",style="solid", color="black", weight=3]; 2894[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2894 -> 2900[label="",style="solid", color="black", weight=3]; 2895[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2895 -> 2901[label="",style="solid", color="black", weight=3]; 2896[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2896 -> 2902[label="",style="solid", color="black", weight=3]; 2897[label="(++) range00 GT (not (LT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2897 -> 2903[label="",style="solid", color="black", weight=3]; 2898[label="(++) range00 GT (not (LT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2898 -> 2904[label="",style="solid", color="black", weight=3]; 2899[label="(++) range00 GT (GT >= GT && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2899 -> 2905[label="",style="solid", color="black", weight=3]; 2900[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2900 -> 2906[label="",style="solid", color="black", weight=3]; 2901[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2901 -> 2907[label="",style="solid", color="black", weight=3]; 2902[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2902 -> 2908[label="",style="solid", color="black", weight=3]; 2903[label="(++) range00 GT (not True && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2903 -> 2909[label="",style="solid", color="black", weight=3]; 2904[label="(++) range00 GT (not True && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2904 -> 2910[label="",style="solid", color="black", weight=3]; 2905[label="(++) range00 GT (compare GT GT /= LT && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2905 -> 2911[label="",style="solid", color="black", weight=3]; 2906[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2906 -> 2912[label="",style="solid", color="black", weight=3]; 2907[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2907 -> 2913[label="",style="solid", color="black", weight=3]; 2908[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2908 -> 2914[label="",style="solid", color="black", weight=3]; 2909[label="(++) range00 GT (False && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2909 -> 2915[label="",style="solid", color="black", weight=3]; 2910[label="(++) range00 GT (False && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2910 -> 2916[label="",style="solid", color="black", weight=3]; 2911[label="(++) range00 GT (not (compare GT GT == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2911 -> 2917[label="",style="solid", color="black", weight=3]; 2912[label="(++) range00 GT (not (EQ == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2912 -> 2918[label="",style="solid", color="black", weight=3]; 2913[label="(++) range00 GT (not (EQ == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2913 -> 2919[label="",style="solid", color="black", weight=3]; 2914[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2914 -> 2920[label="",style="solid", color="black", weight=3]; 2915[label="(++) range00 GT False foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2915 -> 2921[label="",style="solid", color="black", weight=3]; 2916[label="(++) range00 GT False foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2916 -> 2922[label="",style="solid", color="black", weight=3]; 2917[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2917 -> 2923[label="",style="solid", color="black", weight=3]; 2918[label="(++) range00 GT (not False && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2918 -> 2924[label="",style="solid", color="black", weight=3]; 2919[label="(++) range00 GT (not False && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2919 -> 2925[label="",style="solid", color="black", weight=3]; 2920[label="(++) range00 GT (not (LT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2920 -> 2926[label="",style="solid", color="black", weight=3]; 2921[label="(++) [] foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2921 -> 2927[label="",style="solid", color="black", weight=3]; 2922[label="(++) [] foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2922 -> 2928[label="",style="solid", color="black", weight=3]; 2923[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2923 -> 2929[label="",style="solid", color="black", weight=3]; 2924[label="(++) range00 GT (True && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2924 -> 2930[label="",style="solid", color="black", weight=3]; 2925[label="(++) range00 GT (True && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2925 -> 2931[label="",style="solid", color="black", weight=3]; 2926[label="(++) range00 GT (not True && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2926 -> 2932[label="",style="solid", color="black", weight=3]; 2927[label="foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2927 -> 2933[label="",style="solid", color="black", weight=3]; 2928[label="foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2928 -> 2934[label="",style="solid", color="black", weight=3]; 2929[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2929 -> 2935[label="",style="solid", color="black", weight=3]; 2930[label="(++) range00 GT (GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2930 -> 2936[label="",style="solid", color="black", weight=3]; 2931[label="(++) range00 GT (GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2931 -> 2937[label="",style="solid", color="black", weight=3]; 2932[label="(++) range00 GT (False && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2932 -> 2938[label="",style="solid", color="black", weight=3]; 2933 -> 2855[label="",style="dashed", color="red", weight=0]; 2933[label="foldr (++) [] []",fontsize=16,color="magenta"];2934 -> 2855[label="",style="dashed", color="red", weight=0]; 2934[label="foldr (++) [] []",fontsize=16,color="magenta"];2935[label="(++) range00 GT (not (EQ == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2935 -> 2939[label="",style="solid", color="black", weight=3]; 2936[label="(++) range00 GT (compare GT EQ /= LT) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2936 -> 2940[label="",style="solid", color="black", weight=3]; 2937[label="(++) range00 GT (compare GT GT /= LT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2937 -> 2941[label="",style="solid", color="black", weight=3]; 2938[label="(++) range00 GT False foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2938 -> 2942[label="",style="solid", color="black", weight=3]; 2939[label="(++) range00 GT (not False && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2939 -> 2943[label="",style="solid", color="black", weight=3]; 2940[label="(++) range00 GT (not (compare GT EQ == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2940 -> 2944[label="",style="solid", color="black", weight=3]; 2941[label="(++) range00 GT (not (compare GT GT == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2941 -> 2945[label="",style="solid", color="black", weight=3]; 2942[label="(++) [] foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2942 -> 2946[label="",style="solid", color="black", weight=3]; 2943[label="(++) range00 GT (True && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2943 -> 2947[label="",style="solid", color="black", weight=3]; 2944[label="(++) range00 GT (not (compare3 GT EQ == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2944 -> 2948[label="",style="solid", color="black", weight=3]; 2945[label="(++) range00 GT (not (compare3 GT GT == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2945 -> 2949[label="",style="solid", color="black", weight=3]; 2946[label="foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2946 -> 2950[label="",style="solid", color="black", weight=3]; 2947[label="(++) range00 GT (GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2947 -> 2951[label="",style="solid", color="black", weight=3]; 2948[label="(++) range00 GT (not (compare2 GT EQ (GT == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2948 -> 2952[label="",style="solid", color="black", weight=3]; 2949[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2949 -> 2953[label="",style="solid", color="black", weight=3]; 2950 -> 2855[label="",style="dashed", color="red", weight=0]; 2950[label="foldr (++) [] []",fontsize=16,color="magenta"];2951[label="(++) range00 GT (compare GT LT /= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2951 -> 2954[label="",style="solid", color="black", weight=3]; 2952[label="(++) range00 GT (not (compare2 GT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2952 -> 2955[label="",style="solid", color="black", weight=3]; 2953[label="(++) range00 GT (not (compare2 GT GT True == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2953 -> 2956[label="",style="solid", color="black", weight=3]; 2954[label="(++) range00 GT (not (compare GT LT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2954 -> 2957[label="",style="solid", color="black", weight=3]; 2955[label="(++) range00 GT (not (compare1 GT EQ (GT <= EQ) == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2955 -> 2958[label="",style="solid", color="black", weight=3]; 2956[label="(++) range00 GT (not (EQ == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2956 -> 2959[label="",style="solid", color="black", weight=3]; 2957[label="(++) range00 GT (not (compare3 GT LT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2957 -> 2960[label="",style="solid", color="black", weight=3]; 2958[label="(++) range00 GT (not (compare1 GT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2958 -> 2961[label="",style="solid", color="black", weight=3]; 2959[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2959 -> 2962[label="",style="solid", color="black", weight=3]; 2960[label="(++) range00 GT (not (compare2 GT LT (GT == LT) == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2960 -> 2963[label="",style="solid", color="black", weight=3]; 2961[label="(++) range00 GT (not (compare0 GT EQ otherwise == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2961 -> 2964[label="",style="solid", color="black", weight=3]; 2962[label="(++) range00 GT True foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2962 -> 2965[label="",style="solid", color="black", weight=3]; 2963[label="(++) range00 GT (not (compare2 GT LT False == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2963 -> 2966[label="",style="solid", color="black", weight=3]; 2964[label="(++) range00 GT (not (compare0 GT EQ True == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2964 -> 2967[label="",style="solid", color="black", weight=3]; 2965[label="(++) (GT : []) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2965 -> 2968[label="",style="solid", color="black", weight=3]; 2966[label="(++) range00 GT (not (compare1 GT LT (GT <= LT) == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2966 -> 2969[label="",style="solid", color="black", weight=3]; 2967[label="(++) range00 GT (not (GT == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2967 -> 2970[label="",style="solid", color="black", weight=3]; 2968[label="GT : [] ++ foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="green",shape="box"];2968 -> 2971[label="",style="dashed", color="green", weight=3]; 2969[label="(++) range00 GT (not (compare1 GT LT False == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2969 -> 2972[label="",style="solid", color="black", weight=3]; 2970[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2970 -> 2973[label="",style="solid", color="black", weight=3]; 2971[label="[] ++ foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2971 -> 2974[label="",style="solid", color="black", weight=3]; 2972[label="(++) range00 GT (not (compare0 GT LT otherwise == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2972 -> 2975[label="",style="solid", color="black", weight=3]; 2973[label="(++) range00 GT True foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2973 -> 2976[label="",style="solid", color="black", weight=3]; 2974[label="foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2974 -> 2977[label="",style="solid", color="black", weight=3]; 2975[label="(++) range00 GT (not (compare0 GT LT True == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2975 -> 2978[label="",style="solid", color="black", weight=3]; 2976[label="(++) (GT : []) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2976 -> 2979[label="",style="solid", color="black", weight=3]; 2977 -> 2855[label="",style="dashed", color="red", weight=0]; 2977[label="foldr (++) [] []",fontsize=16,color="magenta"];2978[label="(++) range00 GT (not (GT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2978 -> 2980[label="",style="solid", color="black", weight=3]; 2979[label="GT : [] ++ foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="green",shape="box"];2979 -> 2981[label="",style="dashed", color="green", weight=3]; 2980[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2980 -> 2982[label="",style="solid", color="black", weight=3]; 2981[label="[] ++ foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2981 -> 2983[label="",style="solid", color="black", weight=3]; 2982[label="(++) range00 GT True foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2982 -> 2984[label="",style="solid", color="black", weight=3]; 2983[label="foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2983 -> 2985[label="",style="solid", color="black", weight=3]; 2984[label="(++) (GT : []) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2984 -> 2986[label="",style="solid", color="black", weight=3]; 2985 -> 2855[label="",style="dashed", color="red", weight=0]; 2985[label="foldr (++) [] []",fontsize=16,color="magenta"];2986[label="GT : [] ++ foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="green",shape="box"];2986 -> 2987[label="",style="dashed", color="green", weight=3]; 2987[label="[] ++ foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2987 -> 2988[label="",style="solid", color="black", weight=3]; 2988[label="foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2988 -> 2989[label="",style="solid", color="black", weight=3]; 2989 -> 2855[label="",style="dashed", color="red", weight=0]; 2989[label="foldr (++) [] []",fontsize=16,color="magenta"];} ---------------------------------------- (14) Complex Obligation (AND) ---------------------------------------- (15) Obligation: Q DP problem: The TRS P consists of the following rules: new_foldr(xu69, xu70, :(xu710, xu711), h, ba, bb) -> new_foldr(xu69, xu70, xu711, h, ba, bb) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (16) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_foldr(xu69, xu70, :(xu710, xu711), h, ba, bb) -> new_foldr(xu69, xu70, xu711, h, ba, bb) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 >= 4, 5 >= 5, 6 >= 6 ---------------------------------------- (17) YES ---------------------------------------- (18) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs(:(xu440, xu441), xu42, h, ba, bb) -> new_psPs(xu441, xu42, h, ba, bb) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (19) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_psPs(:(xu440, xu441), xu42, h, ba, bb) -> new_psPs(xu441, xu42, h, ba, bb) The graph contains the following edges 1 > 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5 ---------------------------------------- (20) YES ---------------------------------------- (21) Obligation: Q DP problem: The TRS P consists of the following rules: new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, app(app(app(ty_@3, cf), cg), da)), cb), cc)) -> new_range1(xu90, xu100, cf, cg, da) new_range0(@2(xu90, xu91), @2(xu100, xu101), bb, bc) -> new_foldr1(xu91, xu101, new_range(xu90, xu100, bb), bb, bc) new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, app(app(app(ty_@3, eg), eh), fa)) -> new_range1(xu56, xu57, eg, eh, fa) new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, app(app(app(ty_@3, bf), bg), bh)), bc)) -> new_range1(xu90, xu100, bf, bg, bh) new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, app(app(ty_@2, de), df), dd) -> new_range0(xu20, xu21, de, df) new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, app(app(ty_@2, ee), ef)) -> new_range0(xu56, xu57, ee, ef) new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), ca, cb, cc) -> new_foldr2(xu92, xu102, xu91, xu101, new_range2(xu90, xu100, ca), ca, cb, cc) new_range0(@2(xu90, xu91), @2(xu100, xu101), app(app(ty_@2, bd), be), bc) -> new_range0(xu90, xu100, bd, be) new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, app(app(ty_@2, bd), be)), bc)) -> new_range0(xu90, xu100, bd, be) new_range0(@2(xu90, xu91), @2(xu100, xu101), app(app(app(ty_@3, bf), bg), bh), bc) -> new_range1(xu90, xu100, bf, bg, bh) new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), app(app(app(ty_@3, cf), cg), da), cb, cc) -> new_range1(xu90, xu100, cf, cg, da) new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, dc, dd) -> new_foldr2(xu18, xu19, xu20, xu21, xu221, db, dc, dd) new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, dc, dd) -> new_foldr3(xu220, xu18, xu19, new_range3(xu20, xu21, dc), db, dc, dd) new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, app(app(app(ty_@3, dg), dh), ea), dd) -> new_range1(xu20, xu21, dg, dh, ea) new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, ed) -> new_foldr3(xu55, xu56, xu57, xu581, eb, ec, ed) new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, bb), bc)) -> new_foldr1(xu91, xu101, new_range(xu90, xu100, bb), bb, bc) new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, app(app(ty_@2, cd), ce)), cb), cc)) -> new_range0(xu90, xu100, cd, ce) new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), app(app(ty_@2, cd), ce), cb, cc) -> new_range0(xu90, xu100, cd, ce) new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, ca), cb), cc)) -> new_foldr2(xu92, xu102, xu91, xu101, new_range2(xu90, xu100, ca), ca, cb, cc) new_foldr1(xu9, xu10, :(xu110, xu111), h, ba) -> new_foldr1(xu9, xu10, xu111, h, ba) The TRS R consists of the following rules: new_range7(@2(LT, GT)) -> :(LT, :(EQ, :(GT, new_foldr11))) new_foldr9 -> [] new_range12(xu9, xu10, app(app(app(ty_@3, ca), cb), cc)) -> new_range5(xu9, xu10, ca, cb, cc) new_range3(xu20, xu21, ty_Ordering) -> new_range7(@2(xu20, xu21)) new_psPs2([], xu31, fb, fc) -> xu31 new_takeWhile5(Pos(Zero), Pos(Succ(xu3000))) -> [] new_range13(xu56, xu57, ty_Integer) -> new_range8(@2(xu56, xu57)) new_takeWhile3(Integer(Neg(Succ(xu31000))), Integer(Pos(Zero))) -> [] new_range3(xu20, xu21, app(app(app(ty_@3, dg), dh), ea)) -> new_range5(xu20, xu21, dg, dh, ea) new_range7(@2(GT, EQ)) -> new_foldr11 new_foldr7(xu48, [], fd, ff) -> new_foldr8(fd, ff) new_takeWhile7(Zero) -> new_takeWhile5(Neg(Zero), Pos(Zero)) new_range13(xu56, xu57, ty_Ordering) -> new_range7(@2(xu56, xu57)) new_range2(xu90, xu100, app(app(app(ty_@3, cf), cg), da)) -> new_range5(xu90, xu100, cf, cg, da) new_takeWhile17(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile114(xu201, xu202) new_range6(@2(@0, @0)) -> :(@0, []) new_range2(xu90, xu100, ty_Char) -> new_range10(@2(xu90, xu100)) new_foldr12(xu69, xu70, [], gb, gc, gd) -> new_foldr6(gb, gc, gd) new_range7(@2(LT, EQ)) -> :(LT, :(EQ, new_foldr11)) new_takeWhile114(xu201, xu202) -> :(Integer(Pos(Succ(xu202))), new_takeWhile3(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202))))) new_range12(xu9, xu10, ty_Char) -> new_range10(@2(xu9, xu10)) new_range7(@2(LT, LT)) -> :(LT, new_foldr11) new_range2(xu90, xu100, ty_Ordering) -> new_range7(@2(xu90, xu100)) new_range13(xu56, xu57, app(app(ty_@2, ee), ef)) -> new_range4(xu56, xu57, ee, ef) new_range13(xu56, xu57, app(app(app(ty_@3, eg), eh), fa)) -> new_range5(xu56, xu57, eg, eh, fa) new_range3(xu20, xu21, ty_Integer) -> new_range8(@2(xu20, xu21)) new_range7(@2(GT, LT)) -> new_foldr11 new_takeWhile113(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile112(xu167, xu168) new_primPlusNat1(Zero) -> Zero new_takeWhile113(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile113(xu167, xu168, xu1690, xu1700) new_range9(@2(True, False)) -> new_foldr9 new_range3(xu20, xu21, ty_Char) -> new_range10(@2(xu20, xu21)) new_map0([]) -> [] new_takeWhile17(xu201, xu202, Zero, Zero) -> new_takeWhile114(xu201, xu202) new_range12(xu9, xu10, ty_Ordering) -> new_range7(@2(xu9, xu10)) new_range13(xu56, xu57, ty_Char) -> new_range10(@2(xu56, xu57)) new_primIntToChar(Neg(Zero)) -> Char(Zero) new_takeWhile6(xu310, Succ(xu30000)) -> new_takeWhile5(Pos(xu310), Neg(Succ(xu30000))) new_range(xu90, xu100, ty_Int) -> new_range11(@2(xu90, xu100)) new_range9(@2(False, True)) -> :(False, :(True, new_foldr9)) new_primIntToChar(Pos(xu400)) -> Char(xu400) new_takeWhile3(Integer(Neg(Succ(xu31000))), Integer(Neg(Zero))) -> [] new_takeWhile17(xu201, xu202, Succ(xu2030), Zero) -> [] new_range2(xu90, xu100, app(app(ty_@2, cd), ce)) -> new_range4(xu90, xu100, cd, ce) new_takeWhile17(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile17(xu201, xu202, xu2030, xu2040) new_range9(@2(True, True)) -> :(True, new_foldr9) new_range7(@2(EQ, LT)) -> new_foldr11 new_takeWhile3(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero))) -> :(Integer(Pos(Zero)), new_takeWhile3(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0))) new_takeWhile5(Neg(xu310), Pos(Succ(xu3000))) -> [] new_foldr10(xu9, xu10, [], h, ba) -> new_foldr8(h, ba) new_takeWhile3(Integer(Neg(xu3100)), Integer(Pos(Succ(xu30000)))) -> [] new_range13(xu56, xu57, ty_@0) -> new_range6(@2(xu56, xu57)) new_takeWhile3(Integer(Pos(Zero)), Integer(Pos(Zero))) -> :(Integer(Pos(Zero)), new_takeWhile3(Integer(Pos(Zero)), Integer(new_primPlusInt0))) new_range7(@2(EQ, GT)) -> :(EQ, :(GT, new_foldr11)) new_takeWhile111(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990)) -> new_takeWhile111(xu195, xu196, xu197, xu1980, xu1990) new_takeWhile5(Pos(Succ(xu3100)), Pos(Zero)) -> :(Pos(Zero), new_takeWhile5(Pos(Succ(xu3100)), Pos(new_primPlusNat))) new_foldr11 -> [] new_range3(xu20, xu21, ty_@0) -> new_range6(@2(xu20, xu21)) new_psPs1([], xu42, fg, fh, ga) -> xu42 new_foldr6(db, dc, dd) -> [] new_takeWhile3(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000)))) -> :(Integer(Neg(Succ(xu30000))), new_takeWhile3(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000)))) new_takeWhile5(Neg(Zero), Neg(Zero)) -> :(Neg(Zero), new_takeWhile5(Neg(Zero), Pos(Succ(Zero)))) new_fromEnum(Char(xu300)) -> Pos(xu300) new_range8(@2(xu30, xu31)) -> new_takeWhile3(xu31, xu30) new_foldr12(xu69, xu70, :(xu710, xu711), gb, gc, gd) -> new_psPs1(:(@3(xu69, xu70, xu710), []), new_foldr12(xu69, xu70, xu711, gb, gc, gd), gb, gc, gd) new_foldr4(xu18, xu19, xu20, xu21, [], db, dc, dd) -> new_foldr6(db, dc, dd) new_takeWhile3(Integer(Neg(Zero)), Integer(Pos(Zero))) -> :(Integer(Pos(Zero)), new_takeWhile3(Integer(Neg(Zero)), Integer(new_primPlusInt0))) new_map0(:(xu40, xu41)) -> :(new_primIntToChar(xu40), new_map0(xu41)) new_takeWhile5(Pos(xu310), Neg(Succ(xu3000))) -> :(Neg(Succ(xu3000)), new_takeWhile6(xu310, xu3000)) new_range2(xu90, xu100, ty_Int) -> new_range11(@2(xu90, xu100)) new_takeWhile5(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile113(xu3100, xu3000, xu3000, xu3100) new_range13(xu56, xu57, ty_Bool) -> new_range9(@2(xu56, xu57)) new_takeWhile5(Pos(Zero), Neg(Zero)) -> :(Neg(Zero), new_takeWhile5(Pos(Zero), Pos(Succ(Zero)))) new_takeWhile113(xu167, xu168, Succ(xu1690), Zero) -> [] new_foldr10(xu9, xu10, :(xu110, xu111), h, ba) -> new_psPs2(new_foldr7(xu110, new_range12(xu9, xu10, ba), h, ba), new_foldr10(xu9, xu10, xu111, h, ba), h, ba) new_takeWhile113(xu167, xu168, Zero, Zero) -> new_takeWhile112(xu167, xu168) new_range12(xu9, xu10, app(app(ty_@2, bb), bc)) -> new_range4(xu9, xu10, bb, bc) new_takeWhile18(xu206, xu207, Succ(xu2080), Succ(xu2090)) -> new_takeWhile18(xu206, xu207, xu2080, xu2090) new_range12(xu9, xu10, ty_Int) -> new_range11(@2(xu9, xu10)) new_takeWhile5(Neg(Succ(xu3100)), Neg(Succ(xu3000))) -> new_takeWhile111(xu3100, xu3000, new_primPlusInt(xu3000), xu3100, xu3000) new_range3(xu20, xu21, ty_Bool) -> new_range9(@2(xu20, xu21)) new_takeWhile5(Neg(Succ(xu3100)), Neg(Zero)) -> [] new_range(xu90, xu100, ty_Ordering) -> new_range7(@2(xu90, xu100)) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_foldr5(xu55, xu56, xu57, :(xu580, xu581), eb, ec, ed) -> new_psPs1(new_foldr12(xu55, xu580, new_range13(xu56, xu57, ed), eb, ec, ed), new_foldr5(xu55, xu56, xu57, xu581, eb, ec, ed), eb, ec, ed) new_range5(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), ca, cb, cc) -> new_foldr4(xu92, xu102, xu91, xu101, new_range2(xu90, xu100, ca), ca, cb, cc) new_range3(xu20, xu21, ty_Int) -> new_range11(@2(xu20, xu21)) new_takeWhile18(xu206, xu207, Zero, Zero) -> new_takeWhile19(xu206, xu207) new_takeWhile5(Pos(Succ(xu3100)), Neg(Zero)) -> :(Neg(Zero), new_takeWhile5(Pos(Succ(xu3100)), Pos(Succ(Zero)))) new_range9(@2(False, False)) -> :(False, new_foldr9) new_takeWhile5(Neg(Zero), Neg(Succ(xu3000))) -> :(Neg(Succ(xu3000)), new_takeWhile7(xu3000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_takeWhile3(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000)))) -> :(Integer(Neg(Succ(xu30000))), new_takeWhile3(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000)))) new_range13(xu56, xu57, ty_Int) -> new_range11(@2(xu56, xu57)) new_range7(@2(GT, GT)) -> :(GT, new_foldr11) new_takeWhile3(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000)))) -> new_takeWhile18(xu31000, xu30000, xu31000, xu30000) new_range4(@2(xu90, xu91), @2(xu100, xu101), bb, bc) -> new_foldr10(xu91, xu101, new_range(xu90, xu100, bb), bb, bc) new_takeWhile18(xu206, xu207, Succ(xu2080), Zero) -> [] new_range(xu90, xu100, ty_Integer) -> new_range8(@2(xu90, xu100)) new_range12(xu9, xu10, ty_@0) -> new_range6(@2(xu9, xu10)) new_takeWhile111(xu195, xu196, xu197, Zero, Zero) -> new_takeWhile110(xu195, xu196, xu197) new_takeWhile3(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile17(xu31000, xu30000, xu30000, xu31000) new_takeWhile3(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero))) -> :(Integer(Neg(Zero)), new_takeWhile3(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1))) new_range(xu90, xu100, app(app(app(ty_@3, bf), bg), bh)) -> new_range5(xu90, xu100, bf, bg, bh) new_foldr8(h, ba) -> [] new_psPs2(:(xu430, xu431), xu31, fb, fc) -> :(xu430, new_psPs2(xu431, xu31, fb, fc)) new_foldr7(xu48, :(xu490, xu491), fd, ff) -> new_psPs2(:(@2(xu48, xu490), []), new_foldr7(xu48, xu491, fd, ff), fd, ff) new_takeWhile19(xu206, xu207) -> :(Integer(Neg(Succ(xu207))), new_takeWhile4(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207))) new_range2(xu90, xu100, ty_@0) -> new_range6(@2(xu90, xu100)) new_range(xu90, xu100, app(app(ty_@2, bd), be)) -> new_range4(xu90, xu100, bd, be) new_takeWhile7(Succ(xu30000)) -> new_takeWhile5(Neg(Zero), Neg(Succ(xu30000))) new_takeWhile5(Neg(Succ(xu3100)), Pos(Zero)) -> [] new_range(xu90, xu100, ty_@0) -> new_range6(@2(xu90, xu100)) new_takeWhile110(xu195, xu196, xu197) -> :(Neg(Succ(xu196)), new_takeWhile5(Neg(Succ(xu195)), xu197)) new_range(xu90, xu100, ty_Bool) -> new_range9(@2(xu90, xu100)) new_range12(xu9, xu10, ty_Bool) -> new_range9(@2(xu9, xu10)) new_takeWhile4(xu206, xu211, xu210) -> new_takeWhile3(Integer(Neg(Succ(xu206))), Integer(xu210)) new_enumFromTo(xu30, xu31) -> new_takeWhile5(xu31, xu30) new_takeWhile18(xu206, xu207, Zero, Succ(xu2090)) -> new_takeWhile19(xu206, xu207) new_foldr5(xu55, xu56, xu57, [], eb, ec, ed) -> new_foldr6(eb, ec, ed) new_psPs1(:(xu440, xu441), xu42, fg, fh, ga) -> :(xu440, new_psPs1(xu441, xu42, fg, fh, ga)) new_primIntToChar(Neg(Succ(xu4000))) -> error([]) new_foldr4(xu18, xu19, xu20, xu21, :(xu220, xu221), db, dc, dd) -> new_psPs1(new_foldr5(xu220, xu18, xu19, new_range3(xu20, xu21, dc), db, dc, dd), new_foldr4(xu18, xu19, xu20, xu21, xu221, db, dc, dd), db, dc, dd) new_takeWhile3(Integer(Pos(Zero)), Integer(Pos(Succ(xu30000)))) -> [] new_takeWhile112(xu167, xu168) -> :(Pos(Succ(xu168)), new_takeWhile5(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168)))) new_takeWhile5(Pos(Zero), Pos(Zero)) -> :(Pos(Zero), new_takeWhile5(Pos(Zero), Pos(new_primPlusNat))) new_primPlusNat -> Succ(Zero) new_range2(xu90, xu100, ty_Bool) -> new_range9(@2(xu90, xu100)) new_takeWhile6(xu310, Zero) -> new_takeWhile5(Pos(xu310), Pos(Zero)) new_takeWhile5(Neg(Zero), Pos(Zero)) -> :(Pos(Zero), new_takeWhile5(Neg(Zero), Pos(new_primPlusNat))) new_range12(xu9, xu10, ty_Integer) -> new_range8(@2(xu9, xu10)) new_range11(@2(xu30, xu31)) -> new_enumFromTo(xu30, xu31) new_range3(xu20, xu21, app(app(ty_@2, de), df)) -> new_range4(xu20, xu21, de, df) new_range(xu90, xu100, ty_Char) -> new_range10(@2(xu90, xu100)) new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_takeWhile111(xu195, xu196, xu197, Succ(xu1980), Zero) -> [] new_range2(xu90, xu100, ty_Integer) -> new_range8(@2(xu90, xu100)) new_takeWhile3(Integer(Pos(Zero)), Integer(Neg(Zero))) -> :(Integer(Neg(Zero)), new_takeWhile3(Integer(Pos(Zero)), Integer(new_primPlusInt1))) new_takeWhile111(xu195, xu196, xu197, Zero, Succ(xu1990)) -> new_takeWhile110(xu195, xu196, xu197) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_takeWhile3(Integer(Neg(Zero)), Integer(Neg(Zero))) -> :(Integer(Neg(Zero)), new_takeWhile3(Integer(Neg(Zero)), Integer(new_primPlusInt1))) new_range7(@2(EQ, EQ)) -> :(EQ, new_foldr11) new_range10(@2(xu30, xu31)) -> new_map0(new_enumFromTo(new_fromEnum(xu30), new_fromEnum(xu31))) new_primPlusInt(Zero) -> Pos(Zero) The set Q consists of the following terms: new_range12(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_range7(@2(GT, EQ)) new_range2(x0, x1, ty_Char) new_range7(@2(EQ, GT)) new_foldr4(x0, x1, x2, x3, [], x4, x5, x6) new_range3(x0, x1, ty_Char) new_foldr5(x0, x1, x2, [], x3, x4, x5) new_takeWhile111(x0, x1, x2, Succ(x3), Zero) new_primIntToChar(Pos(x0)) new_range12(x0, x1, ty_Int) new_range12(x0, x1, ty_Integer) new_foldr9 new_takeWhile17(x0, x1, Zero, Zero) new_psPs2([], x0, x1, x2) new_range(x0, x1, ty_Integer) new_range7(@2(LT, GT)) new_range3(x0, x1, ty_Integer) new_range7(@2(GT, LT)) new_foldr10(x0, x1, :(x2, x3), x4, x5) new_takeWhile3(Integer(Pos(Succ(x0))), Integer(Pos(Succ(x1)))) new_range(x0, x1, ty_Int) new_takeWhile3(Integer(Neg(Succ(x0))), Integer(Neg(Succ(x1)))) new_range12(x0, x1, ty_Char) new_range2(x0, x1, ty_Integer) new_takeWhile3(Integer(Neg(Succ(x0))), Integer(Neg(Zero))) new_range12(x0, x1, app(app(ty_@2, x2), x3)) new_takeWhile5(Pos(Zero), Neg(Zero)) new_takeWhile5(Neg(Zero), Pos(Zero)) new_range3(x0, x1, ty_Int) new_range(x0, x1, ty_Ordering) new_takeWhile5(Pos(Zero), Pos(Zero)) new_primPlusNat new_takeWhile3(Integer(Neg(Zero)), Integer(Neg(Succ(x0)))) new_takeWhile17(x0, x1, Zero, Succ(x2)) new_takeWhile3(Integer(Neg(Zero)), Integer(Pos(Zero))) new_takeWhile3(Integer(Pos(Zero)), Integer(Neg(Zero))) new_foldr12(x0, x1, [], x2, x3, x4) new_range9(@2(True, True)) new_primPlusNat1(Succ(x0)) new_takeWhile6(x0, Succ(x1)) new_range12(x0, x1, ty_Ordering) new_range(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_takeWhile113(x0, x1, Succ(x2), Succ(x3)) new_range5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8) new_takeWhile5(Pos(Succ(x0)), Pos(Zero)) new_primIntToChar(Neg(Zero)) new_range3(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_foldr7(x0, :(x1, x2), x3, x4) new_primPlusInt(Zero) new_takeWhile3(Integer(Neg(Zero)), Integer(Neg(Zero))) new_takeWhile18(x0, x1, Zero, Zero) new_takeWhile17(x0, x1, Succ(x2), Zero) new_takeWhile7(Zero) new_takeWhile5(Neg(Succ(x0)), Neg(Succ(x1))) new_takeWhile3(Integer(Pos(Zero)), Integer(Pos(Succ(x0)))) new_range12(x0, x1, ty_@0) new_takeWhile113(x0, x1, Zero, Zero) new_primIntToChar(Neg(Succ(x0))) new_foldr12(x0, x1, :(x2, x3), x4, x5, x6) new_takeWhile18(x0, x1, Succ(x2), Zero) new_primPlusInt1 new_takeWhile3(Integer(Pos(Succ(x0))), Integer(Pos(Zero))) new_range13(x0, x1, app(app(ty_@2, x2), x3)) new_range9(@2(False, False)) new_takeWhile5(Neg(Zero), Neg(Succ(x0))) new_foldr10(x0, x1, [], x2, x3) new_fromEnum(Char(x0)) new_takeWhile5(Neg(x0), Pos(Succ(x1))) new_takeWhile5(Pos(x0), Neg(Succ(x1))) new_range13(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_range7(@2(EQ, EQ)) new_range7(@2(GT, GT)) new_range2(x0, x1, ty_@0) new_primPlusNat1(Zero) new_takeWhile114(x0, x1) new_range10(@2(x0, x1)) new_primPlusNat0(x0) new_range13(x0, x1, ty_Int) new_range3(x0, x1, app(app(ty_@2, x2), x3)) new_range7(@2(LT, EQ)) new_range7(@2(EQ, LT)) new_range2(x0, x1, ty_Bool) new_range2(x0, x1, app(app(app(ty_@3, x2), x3), x4)) new_range3(x0, x1, ty_Bool) new_range4(@2(x0, x1), @2(x2, x3), x4, x5) new_range11(@2(x0, x1)) new_map0(:(x0, x1)) new_takeWhile112(x0, x1) new_range13(x0, x1, ty_Ordering) new_range13(x0, x1, ty_Integer) new_range(x0, x1, ty_@0) new_takeWhile17(x0, x1, Succ(x2), Succ(x3)) new_takeWhile4(x0, x1, x2) new_range13(x0, x1, ty_Bool) new_takeWhile5(Pos(Zero), Pos(Succ(x0))) new_takeWhile5(Neg(Succ(x0)), Neg(Zero)) new_range2(x0, x1, app(app(ty_@2, x2), x3)) new_range(x0, x1, app(app(ty_@2, x2), x3)) new_primPlusInt0 new_foldr7(x0, [], x1, x2) new_range3(x0, x1, ty_@0) new_takeWhile111(x0, x1, x2, Zero, Zero) new_range3(x0, x1, ty_Ordering) new_psPs2(:(x0, x1), x2, x3, x4) new_takeWhile5(Pos(Succ(x0)), Neg(Zero)) new_takeWhile5(Neg(Succ(x0)), Pos(Zero)) new_takeWhile3(Integer(Pos(Zero)), Integer(Pos(Zero))) new_range8(@2(x0, x1)) new_takeWhile7(Succ(x0)) new_range(x0, x1, ty_Bool) new_takeWhile113(x0, x1, Zero, Succ(x2)) new_range13(x0, x1, ty_Char) new_foldr6(x0, x1, x2) new_takeWhile111(x0, x1, x2, Succ(x3), Succ(x4)) new_range13(x0, x1, ty_@0) new_takeWhile18(x0, x1, Zero, Succ(x2)) new_takeWhile5(Neg(Zero), Neg(Zero)) new_enumFromTo(x0, x1) new_takeWhile5(Pos(Succ(x0)), Pos(Succ(x1))) new_takeWhile6(x0, Zero) new_foldr11 new_psPs1([], x0, x1, x2, x3) new_range9(@2(True, False)) new_range9(@2(False, True)) new_map0([]) new_primPlusInt(Succ(x0)) new_foldr5(x0, x1, x2, :(x3, x4), x5, x6, x7) new_takeWhile3(Integer(Neg(Succ(x0))), Integer(Pos(Zero))) new_takeWhile3(Integer(Pos(Succ(x0))), Integer(Neg(Zero))) new_range2(x0, x1, ty_Ordering) new_takeWhile3(Integer(Neg(x0)), Integer(Pos(Succ(x1)))) new_takeWhile3(Integer(Pos(x0)), Integer(Neg(Succ(x1)))) new_foldr8(x0, x1) new_range2(x0, x1, ty_Int) new_range7(@2(LT, LT)) new_range(x0, x1, ty_Char) new_psPs1(:(x0, x1), x2, x3, x4, x5) new_takeWhile110(x0, x1, x2) new_takeWhile19(x0, x1) new_takeWhile113(x0, x1, Succ(x2), Zero) new_takeWhile18(x0, x1, Succ(x2), Succ(x3)) new_range6(@2(@0, @0)) new_foldr4(x0, x1, x2, x3, :(x4, x5), x6, x7, x8) new_takeWhile111(x0, x1, x2, Zero, Succ(x3)) new_range12(x0, x1, ty_Bool) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (22) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), app(app(ty_@2, cd), ce), cb, cc) -> new_range0(xu90, xu100, cd, ce) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_range0(@2(xu90, xu91), @2(xu100, xu101), bb, bc) -> new_foldr1(xu91, xu101, new_range(xu90, xu100, bb), bb, bc) The graph contains the following edges 1 > 1, 2 > 2, 3 >= 4, 4 >= 5 *new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), ca, cb, cc) -> new_foldr2(xu92, xu102, xu91, xu101, new_range2(xu90, xu100, ca), ca, cb, cc) The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4, 3 >= 6, 4 >= 7, 5 >= 8 *new_range1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), app(app(app(ty_@3, cf), cg), da), cb, cc) -> new_range1(xu90, xu100, cf, cg, da) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, ca), cb), cc)) -> new_foldr2(xu92, xu102, xu91, xu101, new_range2(xu90, xu100, ca), ca, cb, cc) The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4, 5 > 6, 5 > 7, 5 > 8 *new_range0(@2(xu90, xu91), @2(xu100, xu101), app(app(ty_@2, bd), be), bc) -> new_range0(xu90, xu100, bd, be) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4 *new_range0(@2(xu90, xu91), @2(xu100, xu101), app(app(app(ty_@3, bf), bg), bh), bc) -> new_range1(xu90, xu100, bf, bg, bh) The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5 *new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, dc, dd) -> new_foldr2(xu18, xu19, xu20, xu21, xu221, db, dc, dd) The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 > 5, 6 >= 6, 7 >= 7, 8 >= 8 *new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, app(app(ty_@2, de), df), dd) -> new_range0(xu20, xu21, de, df) The graph contains the following edges 3 >= 1, 4 >= 2, 7 > 3, 7 > 4 *new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, app(app(ty_@2, ee), ef)) -> new_range0(xu56, xu57, ee, ef) The graph contains the following edges 2 >= 1, 3 >= 2, 7 > 3, 7 > 4 *new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, dc, dd) -> new_foldr3(xu220, xu18, xu19, new_range3(xu20, xu21, dc), db, dc, dd) The graph contains the following edges 5 > 1, 1 >= 2, 2 >= 3, 6 >= 5, 7 >= 6, 8 >= 7 *new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, ed) -> new_foldr3(xu55, xu56, xu57, xu581, eb, ec, ed) The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4, 5 >= 5, 6 >= 6, 7 >= 7 *new_foldr2(xu18, xu19, xu20, xu21, :(xu220, xu221), db, app(app(app(ty_@3, dg), dh), ea), dd) -> new_range1(xu20, xu21, dg, dh, ea) The graph contains the following edges 3 >= 1, 4 >= 2, 7 > 3, 7 > 4, 7 > 5 *new_foldr3(xu55, xu56, xu57, :(xu580, xu581), eb, ec, app(app(app(ty_@3, eg), eh), fa)) -> new_range1(xu56, xu57, eg, eh, fa) The graph contains the following edges 2 >= 1, 3 >= 2, 7 > 3, 7 > 4, 7 > 5 *new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, bb), bc)) -> new_foldr1(xu91, xu101, new_range(xu90, xu100, bb), bb, bc) The graph contains the following edges 1 > 1, 2 > 2, 5 > 4, 5 > 5 *new_foldr1(xu9, xu10, :(xu110, xu111), h, ba) -> new_foldr1(xu9, xu10, xu111, h, ba) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 >= 4, 5 >= 5 *new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, app(app(ty_@2, bd), be)), bc)) -> new_range0(xu90, xu100, bd, be) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, app(app(ty_@2, cd), ce)), cb), cc)) -> new_range0(xu90, xu100, cd, ce) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4 *new_foldr1(@3(xu90, xu91, xu92), @3(xu100, xu101, xu102), :(xu110, xu111), h, app(app(app(ty_@3, app(app(app(ty_@3, cf), cg), da)), cb), cc)) -> new_range1(xu90, xu100, cf, cg, da) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5 *new_foldr1(@2(xu90, xu91), @2(xu100, xu101), :(xu110, xu111), h, app(app(ty_@2, app(app(app(ty_@3, bf), bg), bh)), bc)) -> new_range1(xu90, xu100, bf, bg, bh) The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5 ---------------------------------------- (23) YES ---------------------------------------- (24) Obligation: Q DP problem: The TRS P consists of the following rules: new_range15(@2(@3(xu300, xu301, xu302), @3(xu310, xu311, xu312)), app(app(app(ty_@3, cb), cc), cd), bh, ca) -> new_range15(@2(xu300, xu310), cb, cc, cd) new_range15(@2(@3(xu300, xu301, xu302), @3(xu310, xu311, xu312)), app(app(ty_@2, bf), bg), bh, ca) -> new_range14(@2(xu300, xu310), bf, bg) new_range14(@2(@2(xu300, xu301), @2(xu310, xu311)), app(app(ty_@2, h), ba), bb) -> new_range14(@2(xu300, xu310), h, ba) new_range14(@2(@2(xu300, xu301), @2(xu310, xu311)), app(app(app(ty_@3, bc), bd), be), bb) -> new_range15(@2(xu300, xu310), bc, bd, be) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (25) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_range15(@2(@3(xu300, xu301, xu302), @3(xu310, xu311, xu312)), app(app(app(ty_@3, cb), cc), cd), bh, ca) -> new_range15(@2(xu300, xu310), cb, cc, cd) The graph contains the following edges 2 > 2, 2 > 3, 2 > 4 *new_range15(@2(@3(xu300, xu301, xu302), @3(xu310, xu311, xu312)), app(app(ty_@2, bf), bg), bh, ca) -> new_range14(@2(xu300, xu310), bf, bg) The graph contains the following edges 2 > 2, 2 > 3 *new_range14(@2(@2(xu300, xu301), @2(xu310, xu311)), app(app(app(ty_@3, bc), bd), be), bb) -> new_range15(@2(xu300, xu310), bc, bd, be) The graph contains the following edges 2 > 2, 2 > 3, 2 > 4 *new_range14(@2(@2(xu300, xu301), @2(xu310, xu311)), app(app(ty_@2, h), ba), bb) -> new_range14(@2(xu300, xu310), h, ba) The graph contains the following edges 2 > 2, 2 > 3 ---------------------------------------- (26) YES ---------------------------------------- (27) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000))) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero))) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0)) new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000)))) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000) new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero))) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1)) new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090)) -> new_takeWhile15(xu206, xu207, xu2080, xu2090) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero))) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1)) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Zero))) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt1)) new_takeWhile15(xu206, xu207, Zero, Zero) -> new_takeWhile16(xu206, xu207) new_takeWhile2(xu206, xu211, xu210) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210)) new_takeWhile16(xu206, xu207) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) new_takeWhile0(Integer(Neg(Zero)), Integer(Pos(Zero))) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt0)) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero))) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0)) new_takeWhile15(xu206, xu207, Zero, Succ(xu2090)) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (28) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs with 5 less nodes. ---------------------------------------- (29) Complex Obligation (AND) ---------------------------------------- (30) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (31) QDPSizeChangeProof (EQUIVALENT) We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 0 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL(new_primPlusInt(x_1)) = x_1 From the DPs we obtained the following set of size-change graphs: *new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000))) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 1 >= 1, 2 > 2 We oriented the following set of usable rules [AAECC05,FROCOS05]. new_primPlusInt(Zero) -> Pos(Zero) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) ---------------------------------------- (32) YES ---------------------------------------- (33) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090)) -> new_takeWhile15(xu206, xu207, xu2080, xu2090) new_takeWhile15(xu206, xu207, Zero, Zero) -> new_takeWhile16(xu206, xu207) new_takeWhile16(xu206, xu207) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) new_takeWhile2(xu206, xu211, xu210) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210)) new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000)))) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000) new_takeWhile15(xu206, xu207, Zero, Succ(xu2090)) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (34) QDPSizeChangeProof (EQUIVALENT) We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 0 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL(new_primPlusInt(x_1)) = x_1 From the DPs we obtained the following set of size-change graphs: *new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090)) -> new_takeWhile15(xu206, xu207, xu2080, xu2090) (allowed arguments on rhs = {1, 2, 3, 4}) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 *new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000)))) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000) (allowed arguments on rhs = {1, 2, 3, 4}) The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 *new_takeWhile16(xu206, xu207) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) (allowed arguments on rhs = {1, 2, 3}) The graph contains the following edges 1 >= 1, 2 >= 2, 2 >= 3 *new_takeWhile2(xu206, xu211, xu210) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210)) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 3 >= 2 *new_takeWhile15(xu206, xu207, Zero, Zero) -> new_takeWhile16(xu206, xu207) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 1 >= 1, 2 >= 2 *new_takeWhile15(xu206, xu207, Zero, Succ(xu2090)) -> new_takeWhile2(xu206, new_primPlusInt(xu207), new_primPlusInt(xu207)) (allowed arguments on rhs = {1, 2, 3}) The graph contains the following edges 1 >= 1, 2 >= 2, 2 >= 3 We oriented the following set of usable rules [AAECC05,FROCOS05]. new_primPlusInt(Zero) -> Pos(Zero) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) ---------------------------------------- (35) YES ---------------------------------------- (36) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero))) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0)) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (37) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero))) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0)) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = 0 POL(Zero) = 1 POL(new_primPlusInt0) = 0 POL(new_primPlusNat) = 0 POL(new_primPlusNat0(x_1)) = 0 POL(new_primPlusNat1(x_1)) = 1 + x_1 POL(new_takeWhile0(x_1, x_2)) = x_2 POL(new_takeWhile13(x_1, x_2, x_3, x_4)) = 0 POL(new_takeWhile14(x_1, x_2)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat -> Succ(Zero) ---------------------------------------- (38) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (39) MNOCProof (EQUIVALENT) We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. ---------------------------------------- (40) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (41) InductionCalculusProof (EQUIVALENT) Note that final constraints are written in bold face. For Pair new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) the following chains were created: *We consider the chain new_takeWhile0(Integer(Pos(Succ(x2))), Integer(Pos(Succ(x3)))) -> new_takeWhile13(x2, x3, x3, x2), new_takeWhile13(x4, x5, Succ(x6), Succ(x7)) -> new_takeWhile13(x4, x5, x6, x7) which results in the following constraint: (1) (new_takeWhile13(x2, x3, x3, x2)=new_takeWhile13(x4, x5, Succ(x6), Succ(x7)) ==> new_takeWhile0(Integer(Pos(Succ(x2))), Integer(Pos(Succ(x3))))_>=_new_takeWhile13(x2, x3, x3, x2)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile0(Integer(Pos(Succ(Succ(x7)))), Integer(Pos(Succ(Succ(x6)))))_>=_new_takeWhile13(Succ(x7), Succ(x6), Succ(x6), Succ(x7))) *We consider the chain new_takeWhile0(Integer(Pos(Succ(x8))), Integer(Pos(Succ(x9)))) -> new_takeWhile13(x8, x9, x9, x8), new_takeWhile13(x10, x11, Zero, Zero) -> new_takeWhile14(x10, x11) which results in the following constraint: (1) (new_takeWhile13(x8, x9, x9, x8)=new_takeWhile13(x10, x11, Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(x8))), Integer(Pos(Succ(x9))))_>=_new_takeWhile13(x8, x9, x9, x8)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile0(Integer(Pos(Succ(Zero))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Zero, Zero, Zero, Zero)) *We consider the chain new_takeWhile0(Integer(Pos(Succ(x14))), Integer(Pos(Succ(x15)))) -> new_takeWhile13(x14, x15, x15, x14), new_takeWhile13(x16, x17, Zero, Succ(x18)) -> new_takeWhile0(Integer(Pos(Succ(x16))), Integer(Pos(new_primPlusNat0(x17)))) which results in the following constraint: (1) (new_takeWhile13(x14, x15, x15, x14)=new_takeWhile13(x16, x17, Zero, Succ(x18)) ==> new_takeWhile0(Integer(Pos(Succ(x14))), Integer(Pos(Succ(x15))))_>=_new_takeWhile13(x14, x15, x15, x14)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile0(Integer(Pos(Succ(Succ(x18)))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Succ(x18), Zero, Zero, Succ(x18))) For Pair new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) the following chains were created: *We consider the chain new_takeWhile13(x23, x24, Succ(x25), Succ(x26)) -> new_takeWhile13(x23, x24, x25, x26), new_takeWhile13(x27, x28, Succ(x29), Succ(x30)) -> new_takeWhile13(x27, x28, x29, x30) which results in the following constraint: (1) (new_takeWhile13(x23, x24, x25, x26)=new_takeWhile13(x27, x28, Succ(x29), Succ(x30)) ==> new_takeWhile13(x23, x24, Succ(x25), Succ(x26))_>=_new_takeWhile13(x23, x24, x25, x26)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile13(x23, x24, Succ(Succ(x29)), Succ(Succ(x30)))_>=_new_takeWhile13(x23, x24, Succ(x29), Succ(x30))) *We consider the chain new_takeWhile13(x31, x32, Succ(x33), Succ(x34)) -> new_takeWhile13(x31, x32, x33, x34), new_takeWhile13(x35, x36, Zero, Zero) -> new_takeWhile14(x35, x36) which results in the following constraint: (1) (new_takeWhile13(x31, x32, x33, x34)=new_takeWhile13(x35, x36, Zero, Zero) ==> new_takeWhile13(x31, x32, Succ(x33), Succ(x34))_>=_new_takeWhile13(x31, x32, x33, x34)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile13(x31, x32, Succ(Zero), Succ(Zero))_>=_new_takeWhile13(x31, x32, Zero, Zero)) *We consider the chain new_takeWhile13(x41, x42, Succ(x43), Succ(x44)) -> new_takeWhile13(x41, x42, x43, x44), new_takeWhile13(x45, x46, Zero, Succ(x47)) -> new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x46)))) which results in the following constraint: (1) (new_takeWhile13(x41, x42, x43, x44)=new_takeWhile13(x45, x46, Zero, Succ(x47)) ==> new_takeWhile13(x41, x42, Succ(x43), Succ(x44))_>=_new_takeWhile13(x41, x42, x43, x44)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile13(x41, x42, Succ(Zero), Succ(Succ(x47)))_>=_new_takeWhile13(x41, x42, Zero, Succ(x47))) For Pair new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) the following chains were created: *We consider the chain new_takeWhile13(x54, x55, Zero, Zero) -> new_takeWhile14(x54, x55), new_takeWhile14(x56, x57) -> new_takeWhile0(Integer(Pos(Succ(x56))), Integer(Pos(new_primPlusNat0(x57)))) which results in the following constraint: (1) (new_takeWhile14(x54, x55)=new_takeWhile14(x56, x57) ==> new_takeWhile13(x54, x55, Zero, Zero)_>=_new_takeWhile14(x54, x55)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_takeWhile13(x54, x55, Zero, Zero)_>=_new_takeWhile14(x54, x55)) For Pair new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) the following chains were created: *We consider the chain new_takeWhile14(x60, x61) -> new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x61)))), new_takeWhile0(Integer(Pos(Succ(x62))), Integer(Pos(Succ(x63)))) -> new_takeWhile13(x62, x63, x63, x62) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x61))))=new_takeWhile0(Integer(Pos(Succ(x62))), Integer(Pos(Succ(x63)))) ==> new_takeWhile14(x60, x61)_>=_new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x61))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x61)=Succ(x63) ==> new_takeWhile14(x60, x61)_>=_new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x61))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x61)=Succ(x63) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x89)))=Succ(x63) ==> new_takeWhile14(x60, x89)_>=_new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x89))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile14(x60, x89)_>=_new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x89))))) For Pair new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) the following chains were created: *We consider the chain new_takeWhile13(x72, x73, Zero, Succ(x74)) -> new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x73)))), new_takeWhile0(Integer(Pos(Succ(x75))), Integer(Pos(Succ(x76)))) -> new_takeWhile13(x75, x76, x76, x75) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x73))))=new_takeWhile0(Integer(Pos(Succ(x75))), Integer(Pos(Succ(x76)))) ==> new_takeWhile13(x72, x73, Zero, Succ(x74))_>=_new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x73))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x73)=Succ(x76) ==> new_takeWhile13(x72, x73, Zero, Succ(x74))_>=_new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x73))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x73)=Succ(x76) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x90)))=Succ(x76) ==> new_takeWhile13(x72, x90, Zero, Succ(x74))_>=_new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x90))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile13(x72, x90, Zero, Succ(x74))_>=_new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x90))))) To summarize, we get the following constraints P__>=_ for the following pairs. *new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) *(new_takeWhile0(Integer(Pos(Succ(Succ(x7)))), Integer(Pos(Succ(Succ(x6)))))_>=_new_takeWhile13(Succ(x7), Succ(x6), Succ(x6), Succ(x7))) *(new_takeWhile0(Integer(Pos(Succ(Zero))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Zero, Zero, Zero, Zero)) *(new_takeWhile0(Integer(Pos(Succ(Succ(x18)))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Succ(x18), Zero, Zero, Succ(x18))) *new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) *(new_takeWhile13(x23, x24, Succ(Succ(x29)), Succ(Succ(x30)))_>=_new_takeWhile13(x23, x24, Succ(x29), Succ(x30))) *(new_takeWhile13(x31, x32, Succ(Zero), Succ(Zero))_>=_new_takeWhile13(x31, x32, Zero, Zero)) *(new_takeWhile13(x41, x42, Succ(Zero), Succ(Succ(x47)))_>=_new_takeWhile13(x41, x42, Zero, Succ(x47))) *new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) *(new_takeWhile13(x54, x55, Zero, Zero)_>=_new_takeWhile14(x54, x55)) *new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) *(new_takeWhile14(x60, x89)_>=_new_takeWhile0(Integer(Pos(Succ(x60))), Integer(Pos(new_primPlusNat0(x89))))) *new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) *(new_takeWhile13(x72, x90, Zero, Succ(x74))_>=_new_takeWhile0(Integer(Pos(Succ(x72))), Integer(Pos(new_primPlusNat0(x90))))) The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. ---------------------------------------- (42) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (43) QDPPairToRuleProof (EQUIVALENT) The dependency pair new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) was transformed to the following new rules: anew_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Zero, Zero) -> cons_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(xu2040)) -> cons_new_takeWhile13(Zero, Succ(xu2040)) the following new pairs maintain the fan-in: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) the following new pairs maintain the fan-out: H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) ---------------------------------------- (44) Complex Obligation (AND) ---------------------------------------- (45) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Zero, Zero) -> cons_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(xu2040)) -> cons_new_takeWhile13(Zero, Succ(xu2040)) The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) new_new_takeWhile13(Succ(x0), Succ(x1)) anew_new_takeWhile13(Succ(x0), Succ(x1)) new_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (46) MNOCProof (EQUIVALENT) We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. ---------------------------------------- (47) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Zero, Zero) -> cons_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(xu2040)) -> cons_new_takeWhile13(Zero, Succ(xu2040)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (48) InductionCalculusProof (EQUIVALENT) Note that final constraints are written in bold face. For Pair new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) the following chains were created: *We consider the chain new_takeWhile0(Integer(Pos(Succ(x2))), Integer(Pos(Succ(x3)))) -> new_takeWhile13(x2, x3, x3, x2), new_takeWhile13(x4, x5, Zero, Zero) -> new_takeWhile14(x4, x5) which results in the following constraint: (1) (new_takeWhile13(x2, x3, x3, x2)=new_takeWhile13(x4, x5, Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(x2))), Integer(Pos(Succ(x3))))_>=_new_takeWhile13(x2, x3, x3, x2)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile0(Integer(Pos(Succ(Zero))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Zero, Zero, Zero, Zero)) *We consider the chain new_takeWhile0(Integer(Pos(Succ(x8))), Integer(Pos(Succ(x9)))) -> new_takeWhile13(x8, x9, x9, x8), new_takeWhile13(x10, x11, Zero, Succ(x12)) -> new_takeWhile0(Integer(Pos(Succ(x10))), Integer(Pos(new_primPlusNat0(x11)))) which results in the following constraint: (1) (new_takeWhile13(x8, x9, x9, x8)=new_takeWhile13(x10, x11, Zero, Succ(x12)) ==> new_takeWhile0(Integer(Pos(Succ(x8))), Integer(Pos(Succ(x9))))_>=_new_takeWhile13(x8, x9, x9, x8)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile0(Integer(Pos(Succ(Succ(x12)))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Succ(x12), Zero, Zero, Succ(x12))) For Pair new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) the following chains were created: *We consider the chain new_takeWhile13(x23, x24, Zero, Zero) -> new_takeWhile14(x23, x24), new_takeWhile14(x25, x26) -> new_takeWhile0(Integer(Pos(Succ(x25))), Integer(Pos(new_primPlusNat0(x26)))) which results in the following constraint: (1) (new_takeWhile14(x23, x24)=new_takeWhile14(x25, x26) ==> new_takeWhile13(x23, x24, Zero, Zero)_>=_new_takeWhile14(x23, x24)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_takeWhile13(x23, x24, Zero, Zero)_>=_new_takeWhile14(x23, x24)) For Pair new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) the following chains were created: *We consider the chain new_takeWhile14(x35, x36) -> new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x36)))), new_takeWhile0(Integer(Pos(Succ(x37))), Integer(Pos(Succ(x38)))) -> new_takeWhile13(x37, x38, x38, x37) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x36))))=new_takeWhile0(Integer(Pos(Succ(x37))), Integer(Pos(Succ(x38)))) ==> new_takeWhile14(x35, x36)_>=_new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x36))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x36)=Succ(x38) ==> new_takeWhile14(x35, x36)_>=_new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x36))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x36)=Succ(x38) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x137)))=Succ(x38) ==> new_takeWhile14(x35, x137)_>=_new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x137))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile14(x35, x137)_>=_new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x137))))) *We consider the chain new_takeWhile14(x45, x46) -> new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x46)))), new_takeWhile0(Integer(Pos(Succ(x47))), Integer(Pos(Succ(x48)))) -> H(x47, x48, anew_new_takeWhile13(x48, x47)) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x46))))=new_takeWhile0(Integer(Pos(Succ(x47))), Integer(Pos(Succ(x48)))) ==> new_takeWhile14(x45, x46)_>=_new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x46))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x46)=Succ(x48) ==> new_takeWhile14(x45, x46)_>=_new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x46))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x46)=Succ(x48) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x138)))=Succ(x48) ==> new_takeWhile14(x45, x138)_>=_new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x138))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile14(x45, x138)_>=_new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x138))))) For Pair new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) the following chains were created: *We consider the chain new_takeWhile13(x53, x54, Zero, Succ(x55)) -> new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x54)))), new_takeWhile0(Integer(Pos(Succ(x56))), Integer(Pos(Succ(x57)))) -> new_takeWhile13(x56, x57, x57, x56) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x54))))=new_takeWhile0(Integer(Pos(Succ(x56))), Integer(Pos(Succ(x57)))) ==> new_takeWhile13(x53, x54, Zero, Succ(x55))_>=_new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x54))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x54)=Succ(x57) ==> new_takeWhile13(x53, x54, Zero, Succ(x55))_>=_new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x54))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x54)=Succ(x57) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x139)))=Succ(x57) ==> new_takeWhile13(x53, x139, Zero, Succ(x55))_>=_new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x139))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile13(x53, x139, Zero, Succ(x55))_>=_new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x139))))) *We consider the chain new_takeWhile13(x67, x68, Zero, Succ(x69)) -> new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x68)))), new_takeWhile0(Integer(Pos(Succ(x70))), Integer(Pos(Succ(x71)))) -> H(x70, x71, anew_new_takeWhile13(x71, x70)) which results in the following constraint: (1) (new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x68))))=new_takeWhile0(Integer(Pos(Succ(x70))), Integer(Pos(Succ(x71)))) ==> new_takeWhile13(x67, x68, Zero, Succ(x69))_>=_new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x68))))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x68)=Succ(x71) ==> new_takeWhile13(x67, x68, Zero, Succ(x69))_>=_new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x68))))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x68)=Succ(x71) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x140)))=Succ(x71) ==> new_takeWhile13(x67, x140, Zero, Succ(x69))_>=_new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x140))))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile13(x67, x140, Zero, Succ(x69))_>=_new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x140))))) For Pair new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) the following chains were created: *We consider the chain new_takeWhile0(Integer(Pos(Succ(x88))), Integer(Pos(Succ(x89)))) -> H(x88, x89, anew_new_takeWhile13(x89, x88)), H(x90, x91, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(x90, x91, Zero, Zero) which results in the following constraint: (1) (H(x88, x89, anew_new_takeWhile13(x89, x88))=H(x90, x91, cons_new_takeWhile13(Zero, Zero)) ==> new_takeWhile0(Integer(Pos(Succ(x88))), Integer(Pos(Succ(x89))))_>=_H(x88, x89, anew_new_takeWhile13(x89, x88))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (anew_new_takeWhile13(x89, x88)=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(x88))), Integer(Pos(Succ(x89))))_>=_H(x88, x89, anew_new_takeWhile13(x89, x88))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_takeWhile13(x89, x88)=cons_new_takeWhile13(Zero, Zero) which results in the following new constraint: (3) (new_new_takeWhile13(x142, x141)=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x141)))), Integer(Pos(Succ(Succ(x142)))))_>=_H(Succ(x141), Succ(x142), anew_new_takeWhile13(Succ(x142), Succ(x141)))) We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_takeWhile13(x142, x141)=cons_new_takeWhile13(Zero, Zero) which results in the following new constraints: (4) (new_new_takeWhile13(x144, x143)=cons_new_takeWhile13(Zero, Zero) & (new_new_takeWhile13(x144, x143)=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x143)))), Integer(Pos(Succ(Succ(x144)))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile13(Succ(x144), Succ(x143)))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x143))))), Integer(Pos(Succ(Succ(Succ(x144))))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile13(Succ(Succ(x144)), Succ(Succ(x143))))) (5) (cons_new_takeWhile13(Zero, Zero)=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Zero)))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Zero)))) (6) (cons_new_takeWhile13(Zero, Succ(x145))=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x145))))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Succ(x145)), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Succ(x145))))) We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (new_new_takeWhile13(x144, x143)=cons_new_takeWhile13(Zero, Zero) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x143)))), Integer(Pos(Succ(Succ(x144)))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile13(Succ(x144), Succ(x143)))) with sigma = [ ] which results in the following new constraint: (7) (new_takeWhile0(Integer(Pos(Succ(Succ(x143)))), Integer(Pos(Succ(Succ(x144)))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile13(Succ(x144), Succ(x143))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x143))))), Integer(Pos(Succ(Succ(Succ(x144))))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile13(Succ(Succ(x144)), Succ(Succ(x143))))) We simplified constraint (5) using rules (I), (II) which results in the following new constraint: (8) (new_takeWhile0(Integer(Pos(Succ(Succ(Zero)))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Zero)))) We solved constraint (6) using rules (I), (II). *We consider the chain new_takeWhile0(Integer(Pos(Succ(x92))), Integer(Pos(Succ(x93)))) -> H(x92, x93, anew_new_takeWhile13(x93, x92)), H(x94, x95, cons_new_takeWhile13(Zero, Succ(x96))) -> new_takeWhile13(x94, x95, Zero, Succ(x96)) which results in the following constraint: (1) (H(x92, x93, anew_new_takeWhile13(x93, x92))=H(x94, x95, cons_new_takeWhile13(Zero, Succ(x96))) ==> new_takeWhile0(Integer(Pos(Succ(x92))), Integer(Pos(Succ(x93))))_>=_H(x92, x93, anew_new_takeWhile13(x93, x92))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (anew_new_takeWhile13(x93, x92)=cons_new_takeWhile13(Zero, Succ(x96)) ==> new_takeWhile0(Integer(Pos(Succ(x92))), Integer(Pos(Succ(x93))))_>=_H(x92, x93, anew_new_takeWhile13(x93, x92))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_takeWhile13(x93, x92)=cons_new_takeWhile13(Zero, Succ(x96)) which results in the following new constraint: (3) (new_new_takeWhile13(x147, x146)=cons_new_takeWhile13(Zero, Succ(x96)) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x146)))), Integer(Pos(Succ(Succ(x147)))))_>=_H(Succ(x146), Succ(x147), anew_new_takeWhile13(Succ(x147), Succ(x146)))) We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_takeWhile13(x147, x146)=cons_new_takeWhile13(Zero, Succ(x96)) which results in the following new constraints: (4) (new_new_takeWhile13(x149, x148)=cons_new_takeWhile13(Zero, Succ(x96)) & (\/x150:new_new_takeWhile13(x149, x148)=cons_new_takeWhile13(Zero, Succ(x150)) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x148)))), Integer(Pos(Succ(Succ(x149)))))_>=_H(Succ(x148), Succ(x149), anew_new_takeWhile13(Succ(x149), Succ(x148)))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x148))))), Integer(Pos(Succ(Succ(Succ(x149))))))_>=_H(Succ(Succ(x148)), Succ(Succ(x149)), anew_new_takeWhile13(Succ(Succ(x149)), Succ(Succ(x148))))) (5) (cons_new_takeWhile13(Zero, Zero)=cons_new_takeWhile13(Zero, Succ(x96)) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Zero)))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Zero)))) (6) (cons_new_takeWhile13(Zero, Succ(x151))=cons_new_takeWhile13(Zero, Succ(x96)) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x151))))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Succ(x151)), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Succ(x151))))) We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x150:new_new_takeWhile13(x149, x148)=cons_new_takeWhile13(Zero, Succ(x150)) ==> new_takeWhile0(Integer(Pos(Succ(Succ(x148)))), Integer(Pos(Succ(Succ(x149)))))_>=_H(Succ(x148), Succ(x149), anew_new_takeWhile13(Succ(x149), Succ(x148)))) with sigma = [x150 / x96] which results in the following new constraint: (7) (new_takeWhile0(Integer(Pos(Succ(Succ(x148)))), Integer(Pos(Succ(Succ(x149)))))_>=_H(Succ(x148), Succ(x149), anew_new_takeWhile13(Succ(x149), Succ(x148))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x148))))), Integer(Pos(Succ(Succ(Succ(x149))))))_>=_H(Succ(Succ(x148)), Succ(Succ(x149)), anew_new_takeWhile13(Succ(Succ(x149)), Succ(Succ(x148))))) We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (IV) which results in the following new constraint: (8) (new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x151))))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Succ(x151)), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Succ(x151))))) For Pair H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) the following chains were created: *We consider the chain H(x99, x100, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(x99, x100, Zero, Zero), new_takeWhile13(x101, x102, Zero, Zero) -> new_takeWhile14(x101, x102) which results in the following constraint: (1) (new_takeWhile13(x99, x100, Zero, Zero)=new_takeWhile13(x101, x102, Zero, Zero) ==> H(x99, x100, cons_new_takeWhile13(Zero, Zero))_>=_new_takeWhile13(x99, x100, Zero, Zero)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (H(x99, x100, cons_new_takeWhile13(Zero, Zero))_>=_new_takeWhile13(x99, x100, Zero, Zero)) For Pair H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) the following chains were created: *We consider the chain H(x122, x123, cons_new_takeWhile13(Zero, Succ(x124))) -> new_takeWhile13(x122, x123, Zero, Succ(x124)), new_takeWhile13(x125, x126, Zero, Succ(x127)) -> new_takeWhile0(Integer(Pos(Succ(x125))), Integer(Pos(new_primPlusNat0(x126)))) which results in the following constraint: (1) (new_takeWhile13(x122, x123, Zero, Succ(x124))=new_takeWhile13(x125, x126, Zero, Succ(x127)) ==> H(x122, x123, cons_new_takeWhile13(Zero, Succ(x124)))_>=_new_takeWhile13(x122, x123, Zero, Succ(x124))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (H(x122, x123, cons_new_takeWhile13(Zero, Succ(x124)))_>=_new_takeWhile13(x122, x123, Zero, Succ(x124))) To summarize, we get the following constraints P__>=_ for the following pairs. *new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) *(new_takeWhile0(Integer(Pos(Succ(Zero))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Zero, Zero, Zero, Zero)) *(new_takeWhile0(Integer(Pos(Succ(Succ(x12)))), Integer(Pos(Succ(Zero))))_>=_new_takeWhile13(Succ(x12), Zero, Zero, Succ(x12))) *new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) *(new_takeWhile13(x23, x24, Zero, Zero)_>=_new_takeWhile14(x23, x24)) *new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) *(new_takeWhile14(x35, x137)_>=_new_takeWhile0(Integer(Pos(Succ(x35))), Integer(Pos(new_primPlusNat0(x137))))) *(new_takeWhile14(x45, x138)_>=_new_takeWhile0(Integer(Pos(Succ(x45))), Integer(Pos(new_primPlusNat0(x138))))) *new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) *(new_takeWhile13(x53, x139, Zero, Succ(x55))_>=_new_takeWhile0(Integer(Pos(Succ(x53))), Integer(Pos(new_primPlusNat0(x139))))) *(new_takeWhile13(x67, x140, Zero, Succ(x69))_>=_new_takeWhile0(Integer(Pos(Succ(x67))), Integer(Pos(new_primPlusNat0(x140))))) *new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) *(new_takeWhile0(Integer(Pos(Succ(Succ(x143)))), Integer(Pos(Succ(Succ(x144)))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile13(Succ(x144), Succ(x143))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x143))))), Integer(Pos(Succ(Succ(Succ(x144))))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile13(Succ(Succ(x144)), Succ(Succ(x143))))) *(new_takeWhile0(Integer(Pos(Succ(Succ(Zero)))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Zero)))) *(new_takeWhile0(Integer(Pos(Succ(Succ(x148)))), Integer(Pos(Succ(Succ(x149)))))_>=_H(Succ(x148), Succ(x149), anew_new_takeWhile13(Succ(x149), Succ(x148))) ==> new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x148))))), Integer(Pos(Succ(Succ(Succ(x149))))))_>=_H(Succ(Succ(x148)), Succ(Succ(x149)), anew_new_takeWhile13(Succ(Succ(x149)), Succ(Succ(x148))))) *(new_takeWhile0(Integer(Pos(Succ(Succ(Succ(x151))))), Integer(Pos(Succ(Succ(Zero)))))_>=_H(Succ(Succ(x151)), Succ(Zero), anew_new_takeWhile13(Succ(Zero), Succ(Succ(x151))))) *H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) *(H(x99, x100, cons_new_takeWhile13(Zero, Zero))_>=_new_takeWhile13(x99, x100, Zero, Zero)) *H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) *(H(x122, x123, cons_new_takeWhile13(Zero, Succ(x124)))_>=_new_takeWhile13(x122, x123, Zero, Succ(x124))) The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. ---------------------------------------- (49) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000) new_takeWhile13(xu201, xu202, Zero, Zero) -> new_takeWhile14(xu201, xu202) new_takeWhile14(xu201, xu202) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202)))) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000)))) -> H(xu31000, xu30000, anew_new_takeWhile13(xu30000, xu31000)) H(xu201, xu202, cons_new_takeWhile13(Zero, Zero)) -> new_takeWhile13(xu201, xu202, Zero, Zero) H(xu201, xu202, cons_new_takeWhile13(Zero, Succ(xu2040))) -> new_takeWhile13(xu201, xu202, Zero, Succ(xu2040)) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Succ(xu2030), Succ(xu2040)) -> new_new_takeWhile13(xu2030, xu2040) new_new_takeWhile13(Zero, Zero) -> cons_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(xu2040)) -> cons_new_takeWhile13(Zero, Succ(xu2040)) The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) new_new_takeWhile13(Succ(x0), Succ(x1)) anew_new_takeWhile13(Succ(x0), Succ(x1)) new_new_takeWhile13(Zero, Zero) new_new_takeWhile13(Zero, Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (50) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (51) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040)) -> new_takeWhile13(xu201, xu202, xu2030, xu2040) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 ---------------------------------------- (52) YES ---------------------------------------- (53) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusInt1 -> Pos(Succ(Zero)) new_primPlusInt0 -> Pos(new_primPlusNat) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusInt1 new_primPlusInt0 new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (54) QDPSizeChangeProof (EQUIVALENT) We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL(new_primPlusInt(x_1)) = x_1 From the DPs we obtained the following set of size-change graphs: *new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000)))) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000))) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 1 >= 1, 2 > 2 We oriented the following set of usable rules [AAECC05,FROCOS05]. new_primPlusInt(Zero) -> Pos(Zero) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) ---------------------------------------- (55) YES ---------------------------------------- (56) Obligation: Q DP problem: The TRS P consists of the following rules: new_map(:(xu40, xu41)) -> new_map(xu41) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (57) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_map(:(xu40, xu41)) -> new_map(xu41) The graph contains the following edges 1 > 1 ---------------------------------------- (58) YES ---------------------------------------- (59) Obligation: Q DP problem: The TRS P consists of the following rules: new_foldr0(xu48, :(xu490, xu491), h, ba) -> new_foldr0(xu48, xu491, h, ba) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (60) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_foldr0(xu48, :(xu490, xu491), h, ba) -> new_foldr0(xu48, xu491, h, ba) The graph contains the following edges 1 >= 1, 2 > 2, 3 >= 3, 4 >= 4 ---------------------------------------- (61) YES ---------------------------------------- (62) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000))) new_takeWhile(Neg(Zero), Neg(Succ(Zero))) -> new_takeWhile(Neg(Zero), Pos(Zero)) new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Neg(Zero), Pos(Zero)) -> new_takeWhile(Neg(Zero), Pos(new_primPlusNat)) new_takeWhile(Pos(Succ(xu3100)), Pos(Zero)) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat)) new_takeWhile10(xu195, xu196, xu197, Zero, Zero) -> new_takeWhile12(xu195, xu196, xu197) new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990)) -> new_takeWhile(Neg(Succ(xu195)), xu197) new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000))) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000), xu3100, xu3000) new_takeWhile12(xu195, xu196, xu197) -> new_takeWhile(Neg(Succ(xu195)), xu197) new_takeWhile(Pos(Zero), Neg(Zero)) -> new_takeWhile(Pos(Zero), Pos(Succ(Zero))) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile(Neg(Zero), Neg(Zero)) -> new_takeWhile(Neg(Zero), Pos(Succ(Zero))) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000))) new_takeWhile(Pos(Zero), Pos(Zero)) -> new_takeWhile(Pos(Zero), Pos(new_primPlusNat)) new_takeWhile(Pos(xu310), Neg(Succ(Zero))) -> new_takeWhile(Pos(xu310), Pos(Zero)) new_takeWhile(Pos(Succ(xu3100)), Neg(Zero)) -> new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(Zero))) new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990)) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (63) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs with 7 less nodes. ---------------------------------------- (64) Complex Obligation (AND) ---------------------------------------- (65) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile12(xu195, xu196, xu197) -> new_takeWhile(Neg(Succ(xu195)), xu197) new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000))) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000), xu3100, xu3000) new_takeWhile10(xu195, xu196, xu197, Zero, Zero) -> new_takeWhile12(xu195, xu196, xu197) new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990)) -> new_takeWhile(Neg(Succ(xu195)), xu197) new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990)) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (66) QDPSizeChangeProof (EQUIVALENT) We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 0 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL(new_primPlusInt(x_1)) = x_1 From the DPs we obtained the following set of size-change graphs: *new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000))) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000), xu3100, xu3000) (allowed arguments on rhs = {1, 2, 3, 4, 5}) The graph contains the following edges 1 > 1, 2 > 2, 2 > 3, 1 > 4, 2 > 5 *new_takeWhile10(xu195, xu196, xu197, Zero, Zero) -> new_takeWhile12(xu195, xu196, xu197) (allowed arguments on rhs = {1, 2, 3}) The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3 *new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990)) -> new_takeWhile(Neg(Succ(xu195)), xu197) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 3 >= 2 *new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990)) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990) (allowed arguments on rhs = {1, 2, 3, 4, 5}) The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4, 5 > 5 *new_takeWhile12(xu195, xu196, xu197) -> new_takeWhile(Neg(Succ(xu195)), xu197) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 3 >= 2 We oriented the following set of usable rules [AAECC05,FROCOS05]. new_primPlusInt(Zero) -> Pos(Zero) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) ---------------------------------------- (67) YES ---------------------------------------- (68) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (69) QDPSizeChangeProof (EQUIVALENT) We used the following order and afs together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:EMB rules! AFS: Zero = Zero Neg(x1) = x1 Succ(x1) = Succ(x1) From the DPs we obtained the following set of size-change graphs: *new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000))) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 1 >= 1, 2 > 2 We oriented the following set of usable rules [AAECC05,FROCOS05]. none ---------------------------------------- (70) YES ---------------------------------------- (71) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Zero)) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat)) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (72) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile(Pos(Succ(xu3100)), Pos(Zero)) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat)) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Pos(x_1)) = 1 + x_1 POL(Succ(x_1)) = 0 POL(Zero) = 1 POL(new_primPlusNat) = 0 POL(new_primPlusNat0(x_1)) = 0 POL(new_primPlusNat1(x_1)) = 1 + x_1 POL(new_takeWhile(x_1, x_2)) = x_2 POL(new_takeWhile1(x_1, x_2, x_3, x_4)) = 1 POL(new_takeWhile11(x_1, x_2)) = 1 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusNat -> Succ(Zero) ---------------------------------------- (73) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (74) MNOCProof (EQUIVALENT) We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. ---------------------------------------- (75) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (76) InductionCalculusProof (EQUIVALENT) Note that final constraints are written in bold face. For Pair new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) the following chains were created: *We consider the chain new_takeWhile1(x3, x4, Zero, Succ(x5)) -> new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4))), new_takeWhile(Pos(Succ(x6)), Pos(Succ(x7))) -> new_takeWhile1(x6, x7, x7, x6) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))=new_takeWhile(Pos(Succ(x6)), Pos(Succ(x7))) ==> new_takeWhile1(x3, x4, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x4)=Succ(x7) ==> new_takeWhile1(x3, x4, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x4)=Succ(x7) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x89)))=Succ(x7) ==> new_takeWhile1(x3, x89, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x89)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile1(x3, x89, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x89)))) For Pair new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) the following chains were created: *We consider the chain new_takeWhile(Pos(Succ(x17)), Pos(Succ(x18))) -> new_takeWhile1(x17, x18, x18, x17), new_takeWhile1(x19, x20, Zero, Succ(x21)) -> new_takeWhile(Pos(Succ(x19)), Pos(new_primPlusNat0(x20))) which results in the following constraint: (1) (new_takeWhile1(x17, x18, x18, x17)=new_takeWhile1(x19, x20, Zero, Succ(x21)) ==> new_takeWhile(Pos(Succ(x17)), Pos(Succ(x18)))_>=_new_takeWhile1(x17, x18, x18, x17)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile(Pos(Succ(Succ(x21))), Pos(Succ(Zero)))_>=_new_takeWhile1(Succ(x21), Zero, Zero, Succ(x21))) *We consider the chain new_takeWhile(Pos(Succ(x24)), Pos(Succ(x25))) -> new_takeWhile1(x24, x25, x25, x24), new_takeWhile1(x26, x27, Succ(x28), Succ(x29)) -> new_takeWhile1(x26, x27, x28, x29) which results in the following constraint: (1) (new_takeWhile1(x24, x25, x25, x24)=new_takeWhile1(x26, x27, Succ(x28), Succ(x29)) ==> new_takeWhile(Pos(Succ(x24)), Pos(Succ(x25)))_>=_new_takeWhile1(x24, x25, x25, x24)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile(Pos(Succ(Succ(x29))), Pos(Succ(Succ(x28))))_>=_new_takeWhile1(Succ(x29), Succ(x28), Succ(x28), Succ(x29))) *We consider the chain new_takeWhile(Pos(Succ(x30)), Pos(Succ(x31))) -> new_takeWhile1(x30, x31, x31, x30), new_takeWhile1(x32, x33, Zero, Zero) -> new_takeWhile11(x32, x33) which results in the following constraint: (1) (new_takeWhile1(x30, x31, x31, x30)=new_takeWhile1(x32, x33, Zero, Zero) ==> new_takeWhile(Pos(Succ(x30)), Pos(Succ(x31)))_>=_new_takeWhile1(x30, x31, x31, x30)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_takeWhile1(Zero, Zero, Zero, Zero)) For Pair new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) the following chains were created: *We consider the chain new_takeWhile1(x36, x37, Succ(x38), Succ(x39)) -> new_takeWhile1(x36, x37, x38, x39), new_takeWhile1(x40, x41, Zero, Succ(x42)) -> new_takeWhile(Pos(Succ(x40)), Pos(new_primPlusNat0(x41))) which results in the following constraint: (1) (new_takeWhile1(x36, x37, x38, x39)=new_takeWhile1(x40, x41, Zero, Succ(x42)) ==> new_takeWhile1(x36, x37, Succ(x38), Succ(x39))_>=_new_takeWhile1(x36, x37, x38, x39)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile1(x36, x37, Succ(Zero), Succ(Succ(x42)))_>=_new_takeWhile1(x36, x37, Zero, Succ(x42))) *We consider the chain new_takeWhile1(x47, x48, Succ(x49), Succ(x50)) -> new_takeWhile1(x47, x48, x49, x50), new_takeWhile1(x51, x52, Succ(x53), Succ(x54)) -> new_takeWhile1(x51, x52, x53, x54) which results in the following constraint: (1) (new_takeWhile1(x47, x48, x49, x50)=new_takeWhile1(x51, x52, Succ(x53), Succ(x54)) ==> new_takeWhile1(x47, x48, Succ(x49), Succ(x50))_>=_new_takeWhile1(x47, x48, x49, x50)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile1(x47, x48, Succ(Succ(x53)), Succ(Succ(x54)))_>=_new_takeWhile1(x47, x48, Succ(x53), Succ(x54))) *We consider the chain new_takeWhile1(x55, x56, Succ(x57), Succ(x58)) -> new_takeWhile1(x55, x56, x57, x58), new_takeWhile1(x59, x60, Zero, Zero) -> new_takeWhile11(x59, x60) which results in the following constraint: (1) (new_takeWhile1(x55, x56, x57, x58)=new_takeWhile1(x59, x60, Zero, Zero) ==> new_takeWhile1(x55, x56, Succ(x57), Succ(x58))_>=_new_takeWhile1(x55, x56, x57, x58)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile1(x55, x56, Succ(Zero), Succ(Zero))_>=_new_takeWhile1(x55, x56, Zero, Zero)) For Pair new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) the following chains were created: *We consider the chain new_takeWhile1(x73, x74, Zero, Zero) -> new_takeWhile11(x73, x74), new_takeWhile11(x75, x76) -> new_takeWhile(Pos(Succ(x75)), Pos(new_primPlusNat0(x76))) which results in the following constraint: (1) (new_takeWhile11(x73, x74)=new_takeWhile11(x75, x76) ==> new_takeWhile1(x73, x74, Zero, Zero)_>=_new_takeWhile11(x73, x74)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_takeWhile1(x73, x74, Zero, Zero)_>=_new_takeWhile11(x73, x74)) For Pair new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) the following chains were created: *We consider the chain new_takeWhile11(x79, x80) -> new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x80))), new_takeWhile(Pos(Succ(x81)), Pos(Succ(x82))) -> new_takeWhile1(x81, x82, x82, x81) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x80)))=new_takeWhile(Pos(Succ(x81)), Pos(Succ(x82))) ==> new_takeWhile11(x79, x80)_>=_new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x80)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x80)=Succ(x82) ==> new_takeWhile11(x79, x80)_>=_new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x80)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x80)=Succ(x82) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x90)))=Succ(x82) ==> new_takeWhile11(x79, x90)_>=_new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x90)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile11(x79, x90)_>=_new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x90)))) To summarize, we get the following constraints P__>=_ for the following pairs. *new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) *(new_takeWhile1(x3, x89, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x89)))) *new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) *(new_takeWhile(Pos(Succ(Succ(x21))), Pos(Succ(Zero)))_>=_new_takeWhile1(Succ(x21), Zero, Zero, Succ(x21))) *(new_takeWhile(Pos(Succ(Succ(x29))), Pos(Succ(Succ(x28))))_>=_new_takeWhile1(Succ(x29), Succ(x28), Succ(x28), Succ(x29))) *(new_takeWhile(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_takeWhile1(Zero, Zero, Zero, Zero)) *new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) *(new_takeWhile1(x36, x37, Succ(Zero), Succ(Succ(x42)))_>=_new_takeWhile1(x36, x37, Zero, Succ(x42))) *(new_takeWhile1(x47, x48, Succ(Succ(x53)), Succ(Succ(x54)))_>=_new_takeWhile1(x47, x48, Succ(x53), Succ(x54))) *(new_takeWhile1(x55, x56, Succ(Zero), Succ(Zero))_>=_new_takeWhile1(x55, x56, Zero, Zero)) *new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) *(new_takeWhile1(x73, x74, Zero, Zero)_>=_new_takeWhile11(x73, x74)) *new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) *(new_takeWhile11(x79, x90)_>=_new_takeWhile(Pos(Succ(x79)), Pos(new_primPlusNat0(x90)))) The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. ---------------------------------------- (77) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (78) QDPPairToRuleProof (EQUIVALENT) The dependency pair new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) was transformed to the following new rules: anew_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Zero, Succ(xu1700)) -> cons_new_takeWhile1(Zero, Succ(xu1700)) new_new_takeWhile1(Zero, Zero) -> cons_new_takeWhile1(Zero, Zero) the following new pairs maintain the fan-in: new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) the following new pairs maintain the fan-out: H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) ---------------------------------------- (79) Complex Obligation (AND) ---------------------------------------- (80) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Zero, Succ(xu1700)) -> cons_new_takeWhile1(Zero, Succ(xu1700)) new_new_takeWhile1(Zero, Zero) -> cons_new_takeWhile1(Zero, Zero) The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) new_new_takeWhile1(Succ(x0), Succ(x1)) anew_new_takeWhile1(Succ(x0), Succ(x1)) new_new_takeWhile1(Zero, Succ(x0)) new_new_takeWhile1(Zero, Zero) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (81) MNOCProof (EQUIVALENT) We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. ---------------------------------------- (82) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Zero, Succ(xu1700)) -> cons_new_takeWhile1(Zero, Succ(xu1700)) new_new_takeWhile1(Zero, Zero) -> cons_new_takeWhile1(Zero, Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (83) InductionCalculusProof (EQUIVALENT) Note that final constraints are written in bold face. For Pair new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) the following chains were created: *We consider the chain new_takeWhile1(x3, x4, Zero, Succ(x5)) -> new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4))), new_takeWhile(Pos(Succ(x6)), Pos(Succ(x7))) -> new_takeWhile1(x6, x7, x7, x6) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))=new_takeWhile(Pos(Succ(x6)), Pos(Succ(x7))) ==> new_takeWhile1(x3, x4, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x4)=Succ(x7) ==> new_takeWhile1(x3, x4, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x4)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x4)=Succ(x7) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x137)))=Succ(x7) ==> new_takeWhile1(x3, x137, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x137)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile1(x3, x137, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x137)))) *We consider the chain new_takeWhile1(x14, x15, Zero, Succ(x16)) -> new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x15))), new_takeWhile(Pos(Succ(x17)), Pos(Succ(x18))) -> H(x17, x18, anew_new_takeWhile1(x18, x17)) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x15)))=new_takeWhile(Pos(Succ(x17)), Pos(Succ(x18))) ==> new_takeWhile1(x14, x15, Zero, Succ(x16))_>=_new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x15)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x15)=Succ(x18) ==> new_takeWhile1(x14, x15, Zero, Succ(x16))_>=_new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x15)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x15)=Succ(x18) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x138)))=Succ(x18) ==> new_takeWhile1(x14, x138, Zero, Succ(x16))_>=_new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x138)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile1(x14, x138, Zero, Succ(x16))_>=_new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x138)))) For Pair new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) the following chains were created: *We consider the chain new_takeWhile(Pos(Succ(x25)), Pos(Succ(x26))) -> new_takeWhile1(x25, x26, x26, x25), new_takeWhile1(x27, x28, Zero, Succ(x29)) -> new_takeWhile(Pos(Succ(x27)), Pos(new_primPlusNat0(x28))) which results in the following constraint: (1) (new_takeWhile1(x25, x26, x26, x25)=new_takeWhile1(x27, x28, Zero, Succ(x29)) ==> new_takeWhile(Pos(Succ(x25)), Pos(Succ(x26)))_>=_new_takeWhile1(x25, x26, x26, x25)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile(Pos(Succ(Succ(x29))), Pos(Succ(Zero)))_>=_new_takeWhile1(Succ(x29), Zero, Zero, Succ(x29))) *We consider the chain new_takeWhile(Pos(Succ(x32)), Pos(Succ(x33))) -> new_takeWhile1(x32, x33, x33, x32), new_takeWhile1(x34, x35, Zero, Zero) -> new_takeWhile11(x34, x35) which results in the following constraint: (1) (new_takeWhile1(x32, x33, x33, x32)=new_takeWhile1(x34, x35, Zero, Zero) ==> new_takeWhile(Pos(Succ(x32)), Pos(Succ(x33)))_>=_new_takeWhile1(x32, x33, x33, x32)) We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: (2) (new_takeWhile(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_takeWhile1(Zero, Zero, Zero, Zero)) For Pair new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) the following chains were created: *We consider the chain new_takeWhile1(x50, x51, Zero, Zero) -> new_takeWhile11(x50, x51), new_takeWhile11(x52, x53) -> new_takeWhile(Pos(Succ(x52)), Pos(new_primPlusNat0(x53))) which results in the following constraint: (1) (new_takeWhile11(x50, x51)=new_takeWhile11(x52, x53) ==> new_takeWhile1(x50, x51, Zero, Zero)_>=_new_takeWhile11(x50, x51)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_takeWhile1(x50, x51, Zero, Zero)_>=_new_takeWhile11(x50, x51)) For Pair new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) the following chains were created: *We consider the chain new_takeWhile11(x62, x63) -> new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x63))), new_takeWhile(Pos(Succ(x64)), Pos(Succ(x65))) -> new_takeWhile1(x64, x65, x65, x64) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x63)))=new_takeWhile(Pos(Succ(x64)), Pos(Succ(x65))) ==> new_takeWhile11(x62, x63)_>=_new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x63)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x63)=Succ(x65) ==> new_takeWhile11(x62, x63)_>=_new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x63)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x63)=Succ(x65) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x139)))=Succ(x65) ==> new_takeWhile11(x62, x139)_>=_new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x139)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile11(x62, x139)_>=_new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x139)))) *We consider the chain new_takeWhile11(x70, x71) -> new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x71))), new_takeWhile(Pos(Succ(x72)), Pos(Succ(x73))) -> H(x72, x73, anew_new_takeWhile1(x73, x72)) which results in the following constraint: (1) (new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x71)))=new_takeWhile(Pos(Succ(x72)), Pos(Succ(x73))) ==> new_takeWhile11(x70, x71)_>=_new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x71)))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (new_primPlusNat0(x71)=Succ(x73) ==> new_takeWhile11(x70, x71)_>=_new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x71)))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x71)=Succ(x73) which results in the following new constraint: (3) (Succ(Succ(new_primPlusNat1(x140)))=Succ(x73) ==> new_takeWhile11(x70, x140)_>=_new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x140)))) We simplified constraint (3) using rules (I), (II), (IV) which results in the following new constraint: (4) (new_takeWhile11(x70, x140)_>=_new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x140)))) For Pair new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) the following chains were created: *We consider the chain new_takeWhile(Pos(Succ(x88)), Pos(Succ(x89))) -> H(x88, x89, anew_new_takeWhile1(x89, x88)), H(x90, x91, cons_new_takeWhile1(Zero, Succ(x92))) -> new_takeWhile1(x90, x91, Zero, Succ(x92)) which results in the following constraint: (1) (H(x88, x89, anew_new_takeWhile1(x89, x88))=H(x90, x91, cons_new_takeWhile1(Zero, Succ(x92))) ==> new_takeWhile(Pos(Succ(x88)), Pos(Succ(x89)))_>=_H(x88, x89, anew_new_takeWhile1(x89, x88))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (anew_new_takeWhile1(x89, x88)=cons_new_takeWhile1(Zero, Succ(x92)) ==> new_takeWhile(Pos(Succ(x88)), Pos(Succ(x89)))_>=_H(x88, x89, anew_new_takeWhile1(x89, x88))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_takeWhile1(x89, x88)=cons_new_takeWhile1(Zero, Succ(x92)) which results in the following new constraint: (3) (new_new_takeWhile1(x142, x141)=cons_new_takeWhile1(Zero, Succ(x92)) ==> new_takeWhile(Pos(Succ(Succ(x141))), Pos(Succ(Succ(x142))))_>=_H(Succ(x141), Succ(x142), anew_new_takeWhile1(Succ(x142), Succ(x141)))) We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_takeWhile1(x142, x141)=cons_new_takeWhile1(Zero, Succ(x92)) which results in the following new constraints: (4) (new_new_takeWhile1(x144, x143)=cons_new_takeWhile1(Zero, Succ(x92)) & (\/x145:new_new_takeWhile1(x144, x143)=cons_new_takeWhile1(Zero, Succ(x145)) ==> new_takeWhile(Pos(Succ(Succ(x143))), Pos(Succ(Succ(x144))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile1(Succ(x144), Succ(x143)))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x143)))), Pos(Succ(Succ(Succ(x144)))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile1(Succ(Succ(x144)), Succ(Succ(x143))))) (5) (cons_new_takeWhile1(Zero, Succ(x146))=cons_new_takeWhile1(Zero, Succ(x92)) ==> new_takeWhile(Pos(Succ(Succ(Succ(x146)))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Succ(x146)), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Succ(x146))))) (6) (cons_new_takeWhile1(Zero, Zero)=cons_new_takeWhile1(Zero, Succ(x92)) ==> new_takeWhile(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Zero)))) We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x145:new_new_takeWhile1(x144, x143)=cons_new_takeWhile1(Zero, Succ(x145)) ==> new_takeWhile(Pos(Succ(Succ(x143))), Pos(Succ(Succ(x144))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile1(Succ(x144), Succ(x143)))) with sigma = [x145 / x92] which results in the following new constraint: (7) (new_takeWhile(Pos(Succ(Succ(x143))), Pos(Succ(Succ(x144))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile1(Succ(x144), Succ(x143))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x143)))), Pos(Succ(Succ(Succ(x144)))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile1(Succ(Succ(x144)), Succ(Succ(x143))))) We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: (8) (new_takeWhile(Pos(Succ(Succ(Succ(x146)))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Succ(x146)), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Succ(x146))))) We solved constraint (6) using rules (I), (II). *We consider the chain new_takeWhile(Pos(Succ(x93)), Pos(Succ(x94))) -> H(x93, x94, anew_new_takeWhile1(x94, x93)), H(x95, x96, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(x95, x96, Zero, Zero) which results in the following constraint: (1) (H(x93, x94, anew_new_takeWhile1(x94, x93))=H(x95, x96, cons_new_takeWhile1(Zero, Zero)) ==> new_takeWhile(Pos(Succ(x93)), Pos(Succ(x94)))_>=_H(x93, x94, anew_new_takeWhile1(x94, x93))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (anew_new_takeWhile1(x94, x93)=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(x93)), Pos(Succ(x94)))_>=_H(x93, x94, anew_new_takeWhile1(x94, x93))) We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_takeWhile1(x94, x93)=cons_new_takeWhile1(Zero, Zero) which results in the following new constraint: (3) (new_new_takeWhile1(x148, x147)=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(Succ(x147))), Pos(Succ(Succ(x148))))_>=_H(Succ(x147), Succ(x148), anew_new_takeWhile1(Succ(x148), Succ(x147)))) We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_takeWhile1(x148, x147)=cons_new_takeWhile1(Zero, Zero) which results in the following new constraints: (4) (new_new_takeWhile1(x150, x149)=cons_new_takeWhile1(Zero, Zero) & (new_new_takeWhile1(x150, x149)=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(Succ(x149))), Pos(Succ(Succ(x150))))_>=_H(Succ(x149), Succ(x150), anew_new_takeWhile1(Succ(x150), Succ(x149)))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x149)))), Pos(Succ(Succ(Succ(x150)))))_>=_H(Succ(Succ(x149)), Succ(Succ(x150)), anew_new_takeWhile1(Succ(Succ(x150)), Succ(Succ(x149))))) (5) (cons_new_takeWhile1(Zero, Succ(x151))=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(Succ(Succ(x151)))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Succ(x151)), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Succ(x151))))) (6) (cons_new_takeWhile1(Zero, Zero)=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Zero)))) We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (new_new_takeWhile1(x150, x149)=cons_new_takeWhile1(Zero, Zero) ==> new_takeWhile(Pos(Succ(Succ(x149))), Pos(Succ(Succ(x150))))_>=_H(Succ(x149), Succ(x150), anew_new_takeWhile1(Succ(x150), Succ(x149)))) with sigma = [ ] which results in the following new constraint: (7) (new_takeWhile(Pos(Succ(Succ(x149))), Pos(Succ(Succ(x150))))_>=_H(Succ(x149), Succ(x150), anew_new_takeWhile1(Succ(x150), Succ(x149))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x149)))), Pos(Succ(Succ(Succ(x150)))))_>=_H(Succ(Succ(x149)), Succ(Succ(x150)), anew_new_takeWhile1(Succ(Succ(x150)), Succ(Succ(x149))))) We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II) which results in the following new constraint: (8) (new_takeWhile(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Zero)))) For Pair H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) the following chains were created: *We consider the chain H(x97, x98, cons_new_takeWhile1(Zero, Succ(x99))) -> new_takeWhile1(x97, x98, Zero, Succ(x99)), new_takeWhile1(x100, x101, Zero, Succ(x102)) -> new_takeWhile(Pos(Succ(x100)), Pos(new_primPlusNat0(x101))) which results in the following constraint: (1) (new_takeWhile1(x97, x98, Zero, Succ(x99))=new_takeWhile1(x100, x101, Zero, Succ(x102)) ==> H(x97, x98, cons_new_takeWhile1(Zero, Succ(x99)))_>=_new_takeWhile1(x97, x98, Zero, Succ(x99))) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (H(x97, x98, cons_new_takeWhile1(Zero, Succ(x99)))_>=_new_takeWhile1(x97, x98, Zero, Succ(x99))) For Pair H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) the following chains were created: *We consider the chain H(x125, x126, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(x125, x126, Zero, Zero), new_takeWhile1(x127, x128, Zero, Zero) -> new_takeWhile11(x127, x128) which results in the following constraint: (1) (new_takeWhile1(x125, x126, Zero, Zero)=new_takeWhile1(x127, x128, Zero, Zero) ==> H(x125, x126, cons_new_takeWhile1(Zero, Zero))_>=_new_takeWhile1(x125, x126, Zero, Zero)) We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: (2) (H(x125, x126, cons_new_takeWhile1(Zero, Zero))_>=_new_takeWhile1(x125, x126, Zero, Zero)) To summarize, we get the following constraints P__>=_ for the following pairs. *new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) *(new_takeWhile1(x3, x137, Zero, Succ(x5))_>=_new_takeWhile(Pos(Succ(x3)), Pos(new_primPlusNat0(x137)))) *(new_takeWhile1(x14, x138, Zero, Succ(x16))_>=_new_takeWhile(Pos(Succ(x14)), Pos(new_primPlusNat0(x138)))) *new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) *(new_takeWhile(Pos(Succ(Succ(x29))), Pos(Succ(Zero)))_>=_new_takeWhile1(Succ(x29), Zero, Zero, Succ(x29))) *(new_takeWhile(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_takeWhile1(Zero, Zero, Zero, Zero)) *new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) *(new_takeWhile1(x50, x51, Zero, Zero)_>=_new_takeWhile11(x50, x51)) *new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) *(new_takeWhile11(x62, x139)_>=_new_takeWhile(Pos(Succ(x62)), Pos(new_primPlusNat0(x139)))) *(new_takeWhile11(x70, x140)_>=_new_takeWhile(Pos(Succ(x70)), Pos(new_primPlusNat0(x140)))) *new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) *(new_takeWhile(Pos(Succ(Succ(x143))), Pos(Succ(Succ(x144))))_>=_H(Succ(x143), Succ(x144), anew_new_takeWhile1(Succ(x144), Succ(x143))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x143)))), Pos(Succ(Succ(Succ(x144)))))_>=_H(Succ(Succ(x143)), Succ(Succ(x144)), anew_new_takeWhile1(Succ(Succ(x144)), Succ(Succ(x143))))) *(new_takeWhile(Pos(Succ(Succ(Succ(x146)))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Succ(x146)), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Succ(x146))))) *(new_takeWhile(Pos(Succ(Succ(x149))), Pos(Succ(Succ(x150))))_>=_H(Succ(x149), Succ(x150), anew_new_takeWhile1(Succ(x150), Succ(x149))) ==> new_takeWhile(Pos(Succ(Succ(Succ(x149)))), Pos(Succ(Succ(Succ(x150)))))_>=_H(Succ(Succ(x149)), Succ(Succ(x150)), anew_new_takeWhile1(Succ(Succ(x150)), Succ(Succ(x149))))) *(new_takeWhile(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))_>=_H(Succ(Zero), Succ(Zero), anew_new_takeWhile1(Succ(Zero), Succ(Zero)))) *H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) *(H(x97, x98, cons_new_takeWhile1(Zero, Succ(x99)))_>=_new_takeWhile1(x97, x98, Zero, Succ(x99))) *H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) *(H(x125, x126, cons_new_takeWhile1(Zero, Zero))_>=_new_takeWhile1(x125, x126, Zero, Zero)) The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. ---------------------------------------- (84) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100) new_takeWhile1(xu167, xu168, Zero, Zero) -> new_takeWhile11(xu167, xu168) new_takeWhile11(xu167, xu168) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168))) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000))) -> H(xu3100, xu3000, anew_new_takeWhile1(xu3000, xu3100)) H(xu167, xu168, cons_new_takeWhile1(Zero, Succ(xu1700))) -> new_takeWhile1(xu167, xu168, Zero, Succ(xu1700)) H(xu167, xu168, cons_new_takeWhile1(Zero, Zero)) -> new_takeWhile1(xu167, xu168, Zero, Zero) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero anew_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Succ(xu1690), Succ(xu1700)) -> new_new_takeWhile1(xu1690, xu1700) new_new_takeWhile1(Zero, Succ(xu1700)) -> cons_new_takeWhile1(Zero, Succ(xu1700)) new_new_takeWhile1(Zero, Zero) -> cons_new_takeWhile1(Zero, Zero) The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) new_new_takeWhile1(Succ(x0), Succ(x1)) anew_new_takeWhile1(Succ(x0), Succ(x1)) new_new_takeWhile1(Zero, Succ(x0)) new_new_takeWhile1(Zero, Zero) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (85) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (86) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700)) -> new_takeWhile1(xu167, xu168, xu1690, xu1700) The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 ---------------------------------------- (87) YES ---------------------------------------- (88) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000))) The TRS R consists of the following rules: new_primPlusNat0(xu168) -> Succ(Succ(new_primPlusNat1(xu168))) new_primPlusInt(Succ(xu300000)) -> Neg(Succ(xu300000)) new_primPlusNat1(Succ(xu1680)) -> Succ(xu1680) new_primPlusInt(Zero) -> Pos(Zero) new_primPlusNat -> Succ(Zero) new_primPlusNat1(Zero) -> Zero The set Q consists of the following terms: new_primPlusInt(Succ(x0)) new_primPlusInt(Zero) new_primPlusNat new_primPlusNat0(x0) new_primPlusNat1(Zero) new_primPlusNat1(Succ(x0)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (89) QDPSizeChangeProof (EQUIVALENT) We used the following order and afs together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. Order:EMB rules! AFS: Neg(x1) = x1 Pos(x1) = Pos Succ(x1) = Succ(x1) From the DPs we obtained the following set of size-change graphs: *new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000)))) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000))) (allowed arguments on rhs = {1, 2}) The graph contains the following edges 1 >= 1, 2 > 2 We oriented the following set of usable rules [AAECC05,FROCOS05]. none ---------------------------------------- (90) YES ---------------------------------------- (91) Obligation: Q DP problem: The TRS P consists of the following rules: new_psPs0(:(xu430, xu431), xu31, h, ba) -> new_psPs0(xu431, xu31, h, ba) R is empty. Q is empty. We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (92) QDPSizeChangeProof (EQUIVALENT) By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs: *new_psPs0(:(xu430, xu431), xu31, h, ba) -> new_psPs0(xu431, xu31, h, ba) The graph contains the following edges 1 > 1, 2 >= 2, 3 >= 3, 4 >= 4 ---------------------------------------- (93) YES ---------------------------------------- (94) Narrow (COMPLETE) Haskell To QDPs digraph dp_graph { node [outthreshold=100, inthreshold=100];1[label="range",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 3[label="range xu3",fontsize=16,color="blue",shape="box"];2990[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];3 -> 2990[label="",style="solid", color="blue", weight=9]; 2990 -> 4[label="",style="solid", color="blue", weight=3]; 2991[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];3 -> 2991[label="",style="solid", color="blue", weight=9]; 2991 -> 5[label="",style="solid", color="blue", weight=3]; 2992[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];3 -> 2992[label="",style="solid", color="blue", weight=9]; 2992 -> 6[label="",style="solid", color="blue", weight=3]; 2993[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];3 -> 2993[label="",style="solid", color="blue", weight=9]; 2993 -> 7[label="",style="solid", color="blue", weight=3]; 2994[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];3 -> 2994[label="",style="solid", color="blue", weight=9]; 2994 -> 8[label="",style="solid", color="blue", weight=3]; 2995[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];3 -> 2995[label="",style="solid", color="blue", weight=9]; 2995 -> 9[label="",style="solid", color="blue", weight=3]; 2996[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];3 -> 2996[label="",style="solid", color="blue", weight=9]; 2996 -> 10[label="",style="solid", color="blue", weight=3]; 2997[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];3 -> 2997[label="",style="solid", color="blue", weight=9]; 2997 -> 11[label="",style="solid", color="blue", weight=3]; 4[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];2998[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];4 -> 2998[label="",style="solid", color="burlywood", weight=9]; 2998 -> 12[label="",style="solid", color="burlywood", weight=3]; 5[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];2999[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];5 -> 2999[label="",style="solid", color="burlywood", weight=9]; 2999 -> 13[label="",style="solid", color="burlywood", weight=3]; 6[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3000[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];6 -> 3000[label="",style="solid", color="burlywood", weight=9]; 3000 -> 14[label="",style="solid", color="burlywood", weight=3]; 7[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3001[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];7 -> 3001[label="",style="solid", color="burlywood", weight=9]; 3001 -> 15[label="",style="solid", color="burlywood", weight=3]; 8[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3002[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];8 -> 3002[label="",style="solid", color="burlywood", weight=9]; 3002 -> 16[label="",style="solid", color="burlywood", weight=3]; 9[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3003[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];9 -> 3003[label="",style="solid", color="burlywood", weight=9]; 3003 -> 17[label="",style="solid", color="burlywood", weight=3]; 10[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3004[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];10 -> 3004[label="",style="solid", color="burlywood", weight=9]; 3004 -> 18[label="",style="solid", color="burlywood", weight=3]; 11[label="range xu3",fontsize=16,color="burlywood",shape="triangle"];3005[label="xu3/(xu30,xu31)",fontsize=10,color="white",style="solid",shape="box"];11 -> 3005[label="",style="solid", color="burlywood", weight=9]; 3005 -> 19[label="",style="solid", color="burlywood", weight=3]; 12[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3006[label="xu30/(xu300,xu301)",fontsize=10,color="white",style="solid",shape="box"];12 -> 3006[label="",style="solid", color="burlywood", weight=9]; 3006 -> 20[label="",style="solid", color="burlywood", weight=3]; 13[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3007[label="xu30/(xu300,xu301,xu302)",fontsize=10,color="white",style="solid",shape="box"];13 -> 3007[label="",style="solid", color="burlywood", weight=9]; 3007 -> 21[label="",style="solid", color="burlywood", weight=3]; 14[label="range (xu30,xu31)",fontsize=16,color="burlywood",shape="box"];3008[label="xu30/()",fontsize=10,color="white",style="solid",shape="box"];14 -> 3008[label="",style="solid", color="burlywood", weight=9]; 3008 -> 22[label="",style="solid", color="burlywood", weight=3]; 15[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];15 -> 23[label="",style="solid", color="black", weight=3]; 16[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];16 -> 24[label="",style="solid", color="black", weight=3]; 17[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];17 -> 25[label="",style="solid", color="black", weight=3]; 18[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];18 -> 26[label="",style="solid", color="black", weight=3]; 19[label="range (xu30,xu31)",fontsize=16,color="black",shape="box"];19 -> 27[label="",style="solid", color="black", weight=3]; 20[label="range ((xu300,xu301),xu31)",fontsize=16,color="burlywood",shape="box"];3009[label="xu31/(xu310,xu311)",fontsize=10,color="white",style="solid",shape="box"];20 -> 3009[label="",style="solid", color="burlywood", weight=9]; 3009 -> 28[label="",style="solid", color="burlywood", weight=3]; 21[label="range ((xu300,xu301,xu302),xu31)",fontsize=16,color="burlywood",shape="box"];3010[label="xu31/(xu310,xu311,xu312)",fontsize=10,color="white",style="solid",shape="box"];21 -> 3010[label="",style="solid", color="burlywood", weight=9]; 3010 -> 29[label="",style="solid", color="burlywood", weight=3]; 22[label="range ((),xu31)",fontsize=16,color="burlywood",shape="box"];3011[label="xu31/()",fontsize=10,color="white",style="solid",shape="box"];22 -> 3011[label="",style="solid", color="burlywood", weight=9]; 3011 -> 30[label="",style="solid", color="burlywood", weight=3]; 23[label="concatMap (range0 xu31 xu30) (LT : EQ : GT : [])",fontsize=16,color="black",shape="box"];23 -> 31[label="",style="solid", color="black", weight=3]; 24[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];24 -> 32[label="",style="solid", color="black", weight=3]; 25[label="concatMap (range6 xu31 xu30) (False : True : [])",fontsize=16,color="black",shape="box"];25 -> 33[label="",style="solid", color="black", weight=3]; 26[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];26 -> 34[label="",style="solid", color="black", weight=3]; 27[label="enumFromTo xu30 xu31",fontsize=16,color="black",shape="triangle"];27 -> 35[label="",style="solid", color="black", weight=3]; 28[label="range ((xu300,xu301),(xu310,xu311))",fontsize=16,color="black",shape="box"];28 -> 36[label="",style="solid", color="black", weight=3]; 29[label="range ((xu300,xu301,xu302),(xu310,xu311,xu312))",fontsize=16,color="black",shape="box"];29 -> 37[label="",style="solid", color="black", weight=3]; 30[label="range ((),())",fontsize=16,color="black",shape="box"];30 -> 38[label="",style="solid", color="black", weight=3]; 31[label="concat . map (range0 xu31 xu30)",fontsize=16,color="black",shape="box"];31 -> 39[label="",style="solid", color="black", weight=3]; 32[label="numericEnumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];32 -> 40[label="",style="solid", color="black", weight=3]; 33[label="concat . map (range6 xu31 xu30)",fontsize=16,color="black",shape="box"];33 -> 41[label="",style="solid", color="black", weight=3]; 34 -> 42[label="",style="dashed", color="red", weight=0]; 34[label="map toEnum (enumFromTo (fromEnum xu30) (fromEnum xu31))",fontsize=16,color="magenta"];34 -> 43[label="",style="dashed", color="magenta", weight=3]; 35[label="numericEnumFromTo xu30 xu31",fontsize=16,color="black",shape="box"];35 -> 44[label="",style="solid", color="black", weight=3]; 36[label="concatMap (range2 xu301 xu311) (range (xu300,xu310))",fontsize=16,color="black",shape="box"];36 -> 45[label="",style="solid", color="black", weight=3]; 37[label="concatMap (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310))",fontsize=16,color="black",shape="box"];37 -> 46[label="",style="solid", color="black", weight=3]; 38[label="() : []",fontsize=16,color="green",shape="box"];39[label="concat (map (range0 xu31 xu30) (LT : EQ : GT : []))",fontsize=16,color="black",shape="box"];39 -> 47[label="",style="solid", color="black", weight=3]; 40[label="takeWhile (flip (<=) xu31) (numericEnumFrom xu30)",fontsize=16,color="black",shape="triangle"];40 -> 48[label="",style="solid", color="black", weight=3]; 41[label="concat (map (range6 xu31 xu30) (False : True : []))",fontsize=16,color="black",shape="box"];41 -> 49[label="",style="solid", color="black", weight=3]; 43 -> 27[label="",style="dashed", color="red", weight=0]; 43[label="enumFromTo (fromEnum xu30) (fromEnum xu31)",fontsize=16,color="magenta"];43 -> 50[label="",style="dashed", color="magenta", weight=3]; 43 -> 51[label="",style="dashed", color="magenta", weight=3]; 42[label="map toEnum xu4",fontsize=16,color="burlywood",shape="triangle"];3012[label="xu4/xu40 : xu41",fontsize=10,color="white",style="solid",shape="box"];42 -> 3012[label="",style="solid", color="burlywood", weight=9]; 3012 -> 52[label="",style="solid", color="burlywood", weight=3]; 3013[label="xu4/[]",fontsize=10,color="white",style="solid",shape="box"];42 -> 3013[label="",style="solid", color="burlywood", weight=9]; 3013 -> 53[label="",style="solid", color="burlywood", weight=3]; 44[label="takeWhile (flip (<=) xu31) (numericEnumFrom xu30)",fontsize=16,color="black",shape="triangle"];44 -> 54[label="",style="solid", color="black", weight=3]; 45[label="concat . map (range2 xu301 xu311)",fontsize=16,color="black",shape="box"];45 -> 55[label="",style="solid", color="black", weight=3]; 46[label="concat . map (range5 xu302 xu312 xu301 xu311)",fontsize=16,color="black",shape="box"];46 -> 56[label="",style="solid", color="black", weight=3]; 47[label="foldr (++) [] (map (range0 xu31 xu30) (LT : EQ : GT : []))",fontsize=16,color="black",shape="box"];47 -> 57[label="",style="solid", color="black", weight=3]; 48[label="takeWhile (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];48 -> 58[label="",style="solid", color="black", weight=3]; 49[label="foldr (++) [] (map (range6 xu31 xu30) (False : True : []))",fontsize=16,color="black",shape="box"];49 -> 59[label="",style="solid", color="black", weight=3]; 50[label="fromEnum xu30",fontsize=16,color="black",shape="triangle"];50 -> 60[label="",style="solid", color="black", weight=3]; 51 -> 50[label="",style="dashed", color="red", weight=0]; 51[label="fromEnum xu31",fontsize=16,color="magenta"];51 -> 61[label="",style="dashed", color="magenta", weight=3]; 52[label="map toEnum (xu40 : xu41)",fontsize=16,color="black",shape="box"];52 -> 62[label="",style="solid", color="black", weight=3]; 53[label="map toEnum []",fontsize=16,color="black",shape="box"];53 -> 63[label="",style="solid", color="black", weight=3]; 54[label="takeWhile (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];54 -> 64[label="",style="solid", color="black", weight=3]; 55[label="concat (map (range2 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="black",shape="box"];55 -> 65[label="",style="solid", color="black", weight=3]; 56[label="concat (map (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="black",shape="box"];56 -> 66[label="",style="solid", color="black", weight=3]; 57[label="foldr (++) [] (range0 xu31 xu30 LT : map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];57 -> 67[label="",style="solid", color="black", weight=3]; 58[label="takeWhile2 (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];58 -> 68[label="",style="solid", color="black", weight=3]; 59[label="foldr (++) [] (range6 xu31 xu30 False : map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];59 -> 69[label="",style="solid", color="black", weight=3]; 60[label="primCharToInt xu30",fontsize=16,color="burlywood",shape="box"];3014[label="xu30/Char xu300",fontsize=10,color="white",style="solid",shape="box"];60 -> 3014[label="",style="solid", color="burlywood", weight=9]; 3014 -> 70[label="",style="solid", color="burlywood", weight=3]; 61[label="xu31",fontsize=16,color="green",shape="box"];62[label="toEnum xu40 : map toEnum xu41",fontsize=16,color="green",shape="box"];62 -> 71[label="",style="dashed", color="green", weight=3]; 62 -> 72[label="",style="dashed", color="green", weight=3]; 63[label="[]",fontsize=16,color="green",shape="box"];64[label="takeWhile2 (flip (<=) xu31) (xu30 : (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];64 -> 73[label="",style="solid", color="black", weight=3]; 65 -> 74[label="",style="dashed", color="red", weight=0]; 65[label="foldr (++) [] (map (range2 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="magenta"];65 -> 75[label="",style="dashed", color="magenta", weight=3]; 65 -> 76[label="",style="dashed", color="magenta", weight=3]; 65 -> 77[label="",style="dashed", color="magenta", weight=3]; 66 -> 78[label="",style="dashed", color="red", weight=0]; 66[label="foldr (++) [] (map (range5 xu302 xu312 xu301 xu311) (range (xu300,xu310)))",fontsize=16,color="magenta"];66 -> 79[label="",style="dashed", color="magenta", weight=3]; 66 -> 80[label="",style="dashed", color="magenta", weight=3]; 66 -> 81[label="",style="dashed", color="magenta", weight=3]; 66 -> 82[label="",style="dashed", color="magenta", weight=3]; 66 -> 83[label="",style="dashed", color="magenta", weight=3]; 67[label="(++) range0 xu31 xu30 LT foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];67 -> 84[label="",style="solid", color="black", weight=3]; 68[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (flip (<=) xu31 xu30)",fontsize=16,color="black",shape="box"];68 -> 85[label="",style="solid", color="black", weight=3]; 69[label="(++) range6 xu31 xu30 False foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];69 -> 86[label="",style="solid", color="black", weight=3]; 70[label="primCharToInt (Char xu300)",fontsize=16,color="black",shape="box"];70 -> 87[label="",style="solid", color="black", weight=3]; 71[label="toEnum xu40",fontsize=16,color="black",shape="box"];71 -> 88[label="",style="solid", color="black", weight=3]; 72 -> 42[label="",style="dashed", color="red", weight=0]; 72[label="map toEnum xu41",fontsize=16,color="magenta"];72 -> 89[label="",style="dashed", color="magenta", weight=3]; 73[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (flip (<=) xu31 xu30)",fontsize=16,color="black",shape="box"];73 -> 90[label="",style="solid", color="black", weight=3]; 75[label="xu311",fontsize=16,color="green",shape="box"];76[label="range (xu300,xu310)",fontsize=16,color="blue",shape="box"];3015[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];76 -> 3015[label="",style="solid", color="blue", weight=9]; 3015 -> 91[label="",style="solid", color="blue", weight=3]; 3016[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];76 -> 3016[label="",style="solid", color="blue", weight=9]; 3016 -> 92[label="",style="solid", color="blue", weight=3]; 3017[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];76 -> 3017[label="",style="solid", color="blue", weight=9]; 3017 -> 93[label="",style="solid", color="blue", weight=3]; 3018[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];76 -> 3018[label="",style="solid", color="blue", weight=9]; 3018 -> 94[label="",style="solid", color="blue", weight=3]; 3019[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];76 -> 3019[label="",style="solid", color="blue", weight=9]; 3019 -> 95[label="",style="solid", color="blue", weight=3]; 3020[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];76 -> 3020[label="",style="solid", color="blue", weight=9]; 3020 -> 96[label="",style="solid", color="blue", weight=3]; 3021[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];76 -> 3021[label="",style="solid", color="blue", weight=9]; 3021 -> 97[label="",style="solid", color="blue", weight=3]; 3022[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];76 -> 3022[label="",style="solid", color="blue", weight=9]; 3022 -> 98[label="",style="solid", color="blue", weight=3]; 77[label="xu301",fontsize=16,color="green",shape="box"];74[label="foldr (++) [] (map (range2 xu9 xu10) xu11)",fontsize=16,color="burlywood",shape="triangle"];3023[label="xu11/xu110 : xu111",fontsize=10,color="white",style="solid",shape="box"];74 -> 3023[label="",style="solid", color="burlywood", weight=9]; 3023 -> 99[label="",style="solid", color="burlywood", weight=3]; 3024[label="xu11/[]",fontsize=10,color="white",style="solid",shape="box"];74 -> 3024[label="",style="solid", color="burlywood", weight=9]; 3024 -> 100[label="",style="solid", color="burlywood", weight=3]; 79[label="xu312",fontsize=16,color="green",shape="box"];80[label="xu311",fontsize=16,color="green",shape="box"];81[label="range (xu300,xu310)",fontsize=16,color="blue",shape="box"];3025[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];81 -> 3025[label="",style="solid", color="blue", weight=9]; 3025 -> 101[label="",style="solid", color="blue", weight=3]; 3026[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];81 -> 3026[label="",style="solid", color="blue", weight=9]; 3026 -> 102[label="",style="solid", color="blue", weight=3]; 3027[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];81 -> 3027[label="",style="solid", color="blue", weight=9]; 3027 -> 103[label="",style="solid", color="blue", weight=3]; 3028[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];81 -> 3028[label="",style="solid", color="blue", weight=9]; 3028 -> 104[label="",style="solid", color="blue", weight=3]; 3029[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];81 -> 3029[label="",style="solid", color="blue", weight=9]; 3029 -> 105[label="",style="solid", color="blue", weight=3]; 3030[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];81 -> 3030[label="",style="solid", color="blue", weight=9]; 3030 -> 106[label="",style="solid", color="blue", weight=3]; 3031[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];81 -> 3031[label="",style="solid", color="blue", weight=9]; 3031 -> 107[label="",style="solid", color="blue", weight=3]; 3032[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];81 -> 3032[label="",style="solid", color="blue", weight=9]; 3032 -> 108[label="",style="solid", color="blue", weight=3]; 82[label="xu301",fontsize=16,color="green",shape="box"];83[label="xu302",fontsize=16,color="green",shape="box"];78[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu22)",fontsize=16,color="burlywood",shape="triangle"];3033[label="xu22/xu220 : xu221",fontsize=10,color="white",style="solid",shape="box"];78 -> 3033[label="",style="solid", color="burlywood", weight=9]; 3033 -> 109[label="",style="solid", color="burlywood", weight=3]; 3034[label="xu22/[]",fontsize=10,color="white",style="solid",shape="box"];78 -> 3034[label="",style="solid", color="burlywood", weight=9]; 3034 -> 110[label="",style="solid", color="burlywood", weight=3]; 84[label="(++) range00 LT (xu31 >= LT && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];84 -> 111[label="",style="solid", color="black", weight=3]; 85[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) ((<=) xu30 xu31)",fontsize=16,color="black",shape="box"];85 -> 112[label="",style="solid", color="black", weight=3]; 86[label="(++) range60 False (xu31 >= False && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];86 -> 113[label="",style="solid", color="black", weight=3]; 87[label="Pos xu300",fontsize=16,color="green",shape="box"];88[label="primIntToChar xu40",fontsize=16,color="burlywood",shape="box"];3035[label="xu40/Pos xu400",fontsize=10,color="white",style="solid",shape="box"];88 -> 3035[label="",style="solid", color="burlywood", weight=9]; 3035 -> 114[label="",style="solid", color="burlywood", weight=3]; 3036[label="xu40/Neg xu400",fontsize=10,color="white",style="solid",shape="box"];88 -> 3036[label="",style="solid", color="burlywood", weight=9]; 3036 -> 115[label="",style="solid", color="burlywood", weight=3]; 89[label="xu41",fontsize=16,color="green",shape="box"];90[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) ((<=) xu30 xu31)",fontsize=16,color="black",shape="box"];90 -> 116[label="",style="solid", color="black", weight=3]; 91 -> 4[label="",style="dashed", color="red", weight=0]; 91[label="range (xu300,xu310)",fontsize=16,color="magenta"];91 -> 117[label="",style="dashed", color="magenta", weight=3]; 92 -> 5[label="",style="dashed", color="red", weight=0]; 92[label="range (xu300,xu310)",fontsize=16,color="magenta"];92 -> 118[label="",style="dashed", color="magenta", weight=3]; 93 -> 6[label="",style="dashed", color="red", weight=0]; 93[label="range (xu300,xu310)",fontsize=16,color="magenta"];93 -> 119[label="",style="dashed", color="magenta", weight=3]; 94 -> 7[label="",style="dashed", color="red", weight=0]; 94[label="range (xu300,xu310)",fontsize=16,color="magenta"];94 -> 120[label="",style="dashed", color="magenta", weight=3]; 95 -> 8[label="",style="dashed", color="red", weight=0]; 95[label="range (xu300,xu310)",fontsize=16,color="magenta"];95 -> 121[label="",style="dashed", color="magenta", weight=3]; 96 -> 9[label="",style="dashed", color="red", weight=0]; 96[label="range (xu300,xu310)",fontsize=16,color="magenta"];96 -> 122[label="",style="dashed", color="magenta", weight=3]; 97 -> 10[label="",style="dashed", color="red", weight=0]; 97[label="range (xu300,xu310)",fontsize=16,color="magenta"];97 -> 123[label="",style="dashed", color="magenta", weight=3]; 98 -> 11[label="",style="dashed", color="red", weight=0]; 98[label="range (xu300,xu310)",fontsize=16,color="magenta"];98 -> 124[label="",style="dashed", color="magenta", weight=3]; 99[label="foldr (++) [] (map (range2 xu9 xu10) (xu110 : xu111))",fontsize=16,color="black",shape="box"];99 -> 125[label="",style="solid", color="black", weight=3]; 100[label="foldr (++) [] (map (range2 xu9 xu10) [])",fontsize=16,color="black",shape="box"];100 -> 126[label="",style="solid", color="black", weight=3]; 101 -> 4[label="",style="dashed", color="red", weight=0]; 101[label="range (xu300,xu310)",fontsize=16,color="magenta"];101 -> 127[label="",style="dashed", color="magenta", weight=3]; 102 -> 5[label="",style="dashed", color="red", weight=0]; 102[label="range (xu300,xu310)",fontsize=16,color="magenta"];102 -> 128[label="",style="dashed", color="magenta", weight=3]; 103 -> 6[label="",style="dashed", color="red", weight=0]; 103[label="range (xu300,xu310)",fontsize=16,color="magenta"];103 -> 129[label="",style="dashed", color="magenta", weight=3]; 104 -> 7[label="",style="dashed", color="red", weight=0]; 104[label="range (xu300,xu310)",fontsize=16,color="magenta"];104 -> 130[label="",style="dashed", color="magenta", weight=3]; 105 -> 8[label="",style="dashed", color="red", weight=0]; 105[label="range (xu300,xu310)",fontsize=16,color="magenta"];105 -> 131[label="",style="dashed", color="magenta", weight=3]; 106 -> 9[label="",style="dashed", color="red", weight=0]; 106[label="range (xu300,xu310)",fontsize=16,color="magenta"];106 -> 132[label="",style="dashed", color="magenta", weight=3]; 107 -> 10[label="",style="dashed", color="red", weight=0]; 107[label="range (xu300,xu310)",fontsize=16,color="magenta"];107 -> 133[label="",style="dashed", color="magenta", weight=3]; 108 -> 11[label="",style="dashed", color="red", weight=0]; 108[label="range (xu300,xu310)",fontsize=16,color="magenta"];108 -> 134[label="",style="dashed", color="magenta", weight=3]; 109[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) (xu220 : xu221))",fontsize=16,color="black",shape="box"];109 -> 135[label="",style="solid", color="black", weight=3]; 110[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) [])",fontsize=16,color="black",shape="box"];110 -> 136[label="",style="solid", color="black", weight=3]; 111[label="(++) range00 LT (compare xu31 LT /= LT && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];111 -> 137[label="",style="solid", color="black", weight=3]; 112[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (compare xu30 xu31 /= GT)",fontsize=16,color="black",shape="box"];112 -> 138[label="",style="solid", color="black", weight=3]; 113[label="(++) range60 False (compare xu31 False /= LT && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];113 -> 139[label="",style="solid", color="black", weight=3]; 114[label="primIntToChar (Pos xu400)",fontsize=16,color="black",shape="box"];114 -> 140[label="",style="solid", color="black", weight=3]; 115[label="primIntToChar (Neg xu400)",fontsize=16,color="burlywood",shape="box"];3037[label="xu400/Succ xu4000",fontsize=10,color="white",style="solid",shape="box"];115 -> 3037[label="",style="solid", color="burlywood", weight=9]; 3037 -> 141[label="",style="solid", color="burlywood", weight=3]; 3038[label="xu400/Zero",fontsize=10,color="white",style="solid",shape="box"];115 -> 3038[label="",style="solid", color="burlywood", weight=9]; 3038 -> 142[label="",style="solid", color="burlywood", weight=3]; 116[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (compare xu30 xu31 /= GT)",fontsize=16,color="black",shape="box"];116 -> 143[label="",style="solid", color="black", weight=3]; 117[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];118[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];119[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];120[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];121[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];122[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];123[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];124[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];125[label="foldr (++) [] (range2 xu9 xu10 xu110 : map (range2 xu9 xu10) xu111)",fontsize=16,color="black",shape="box"];125 -> 144[label="",style="solid", color="black", weight=3]; 126[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];126 -> 145[label="",style="solid", color="black", weight=3]; 127[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];128[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];129[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];130[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];131[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];132[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];133[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];134[label="(xu300,xu310)",fontsize=16,color="green",shape="box"];135[label="foldr (++) [] (range5 xu18 xu19 xu20 xu21 xu220 : map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="black",shape="box"];135 -> 146[label="",style="solid", color="black", weight=3]; 136[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];136 -> 147[label="",style="solid", color="black", weight=3]; 137[label="(++) range00 LT (not (compare xu31 LT == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];137 -> 148[label="",style="solid", color="black", weight=3]; 138[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (compare xu30 xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3039[label="xu30/Integer xu300",fontsize=10,color="white",style="solid",shape="box"];138 -> 3039[label="",style="solid", color="burlywood", weight=9]; 3039 -> 149[label="",style="solid", color="burlywood", weight=3]; 139[label="(++) range60 False (not (compare xu31 False == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];139 -> 150[label="",style="solid", color="black", weight=3]; 140[label="Char xu400",fontsize=16,color="green",shape="box"];141[label="primIntToChar (Neg (Succ xu4000))",fontsize=16,color="black",shape="box"];141 -> 151[label="",style="solid", color="black", weight=3]; 142[label="primIntToChar (Neg Zero)",fontsize=16,color="black",shape="box"];142 -> 152[label="",style="solid", color="black", weight=3]; 143[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (compare xu30 xu31 == GT))",fontsize=16,color="black",shape="box"];143 -> 153[label="",style="solid", color="black", weight=3]; 144 -> 449[label="",style="dashed", color="red", weight=0]; 144[label="(++) range2 xu9 xu10 xu110 foldr (++) [] (map (range2 xu9 xu10) xu111)",fontsize=16,color="magenta"];144 -> 450[label="",style="dashed", color="magenta", weight=3]; 144 -> 451[label="",style="dashed", color="magenta", weight=3]; 145[label="[]",fontsize=16,color="green",shape="box"];146 -> 473[label="",style="dashed", color="red", weight=0]; 146[label="(++) range5 xu18 xu19 xu20 xu21 xu220 foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="magenta"];146 -> 474[label="",style="dashed", color="magenta", weight=3]; 146 -> 475[label="",style="dashed", color="magenta", weight=3]; 147[label="[]",fontsize=16,color="green",shape="box"];148[label="(++) range00 LT (not (compare3 xu31 LT == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];148 -> 158[label="",style="solid", color="black", weight=3]; 149[label="takeWhile1 (flip (<=) xu31) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (compare (Integer xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3040[label="xu31/Integer xu310",fontsize=10,color="white",style="solid",shape="box"];149 -> 3040[label="",style="solid", color="burlywood", weight=9]; 3040 -> 159[label="",style="solid", color="burlywood", weight=3]; 150[label="(++) range60 False (not (compare3 xu31 False == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="black",shape="box"];150 -> 160[label="",style="solid", color="black", weight=3]; 151[label="error []",fontsize=16,color="red",shape="box"];152[label="Char Zero",fontsize=16,color="green",shape="box"];153[label="takeWhile1 (flip (<=) xu31) xu30 (numericEnumFrom $! xu30 + fromInt (Pos (Succ Zero))) (not (primCmpInt xu30 xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3041[label="xu30/Pos xu300",fontsize=10,color="white",style="solid",shape="box"];153 -> 3041[label="",style="solid", color="burlywood", weight=9]; 3041 -> 161[label="",style="solid", color="burlywood", weight=3]; 3042[label="xu30/Neg xu300",fontsize=10,color="white",style="solid",shape="box"];153 -> 3042[label="",style="solid", color="burlywood", weight=9]; 3042 -> 162[label="",style="solid", color="burlywood", weight=3]; 450 -> 74[label="",style="dashed", color="red", weight=0]; 450[label="foldr (++) [] (map (range2 xu9 xu10) xu111)",fontsize=16,color="magenta"];450 -> 468[label="",style="dashed", color="magenta", weight=3]; 451[label="range2 xu9 xu10 xu110",fontsize=16,color="black",shape="box"];451 -> 469[label="",style="solid", color="black", weight=3]; 449[label="(++) xu43 xu31",fontsize=16,color="burlywood",shape="triangle"];3043[label="xu43/xu430 : xu431",fontsize=10,color="white",style="solid",shape="box"];449 -> 3043[label="",style="solid", color="burlywood", weight=9]; 3043 -> 470[label="",style="solid", color="burlywood", weight=3]; 3044[label="xu43/[]",fontsize=10,color="white",style="solid",shape="box"];449 -> 3044[label="",style="solid", color="burlywood", weight=9]; 3044 -> 471[label="",style="solid", color="burlywood", weight=3]; 474 -> 78[label="",style="dashed", color="red", weight=0]; 474[label="foldr (++) [] (map (range5 xu18 xu19 xu20 xu21) xu221)",fontsize=16,color="magenta"];474 -> 492[label="",style="dashed", color="magenta", weight=3]; 475[label="range5 xu18 xu19 xu20 xu21 xu220",fontsize=16,color="black",shape="box"];475 -> 493[label="",style="solid", color="black", weight=3]; 473[label="(++) xu44 xu42",fontsize=16,color="burlywood",shape="triangle"];3045[label="xu44/xu440 : xu441",fontsize=10,color="white",style="solid",shape="box"];473 -> 3045[label="",style="solid", color="burlywood", weight=9]; 3045 -> 494[label="",style="solid", color="burlywood", weight=3]; 3046[label="xu44/[]",fontsize=10,color="white",style="solid",shape="box"];473 -> 3046[label="",style="solid", color="burlywood", weight=9]; 3046 -> 495[label="",style="solid", color="burlywood", weight=3]; 158[label="(++) range00 LT (not (compare2 xu31 LT (xu31 == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 xu31 xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3047[label="xu31/LT",fontsize=10,color="white",style="solid",shape="box"];158 -> 3047[label="",style="solid", color="burlywood", weight=9]; 3047 -> 167[label="",style="solid", color="burlywood", weight=3]; 3048[label="xu31/EQ",fontsize=10,color="white",style="solid",shape="box"];158 -> 3048[label="",style="solid", color="burlywood", weight=9]; 3048 -> 168[label="",style="solid", color="burlywood", weight=3]; 3049[label="xu31/GT",fontsize=10,color="white",style="solid",shape="box"];158 -> 3049[label="",style="solid", color="burlywood", weight=9]; 3049 -> 169[label="",style="solid", color="burlywood", weight=3]; 159[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (compare (Integer xu300) (Integer xu310) == GT))",fontsize=16,color="black",shape="box"];159 -> 170[label="",style="solid", color="black", weight=3]; 160[label="(++) range60 False (not (compare2 xu31 False (xu31 == False) == LT) && False >= xu30) foldr (++) [] (map (range6 xu31 xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3050[label="xu31/False",fontsize=10,color="white",style="solid",shape="box"];160 -> 3050[label="",style="solid", color="burlywood", weight=9]; 3050 -> 171[label="",style="solid", color="burlywood", weight=3]; 3051[label="xu31/True",fontsize=10,color="white",style="solid",shape="box"];160 -> 3051[label="",style="solid", color="burlywood", weight=9]; 3051 -> 172[label="",style="solid", color="burlywood", weight=3]; 161[label="takeWhile1 (flip (<=) xu31) (Pos xu300) (numericEnumFrom $! Pos xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3052[label="xu300/Succ xu3000",fontsize=10,color="white",style="solid",shape="box"];161 -> 3052[label="",style="solid", color="burlywood", weight=9]; 3052 -> 173[label="",style="solid", color="burlywood", weight=3]; 3053[label="xu300/Zero",fontsize=10,color="white",style="solid",shape="box"];161 -> 3053[label="",style="solid", color="burlywood", weight=9]; 3053 -> 174[label="",style="solid", color="burlywood", weight=3]; 162[label="takeWhile1 (flip (<=) xu31) (Neg xu300) (numericEnumFrom $! Neg xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg xu300) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3054[label="xu300/Succ xu3000",fontsize=10,color="white",style="solid",shape="box"];162 -> 3054[label="",style="solid", color="burlywood", weight=9]; 3054 -> 175[label="",style="solid", color="burlywood", weight=3]; 3055[label="xu300/Zero",fontsize=10,color="white",style="solid",shape="box"];162 -> 3055[label="",style="solid", color="burlywood", weight=9]; 3055 -> 176[label="",style="solid", color="burlywood", weight=3]; 468[label="xu111",fontsize=16,color="green",shape="box"];469[label="range20 xu9 xu10 xu110",fontsize=16,color="black",shape="box"];469 -> 496[label="",style="solid", color="black", weight=3]; 470[label="(++) (xu430 : xu431) xu31",fontsize=16,color="black",shape="box"];470 -> 497[label="",style="solid", color="black", weight=3]; 471[label="(++) [] xu31",fontsize=16,color="black",shape="box"];471 -> 498[label="",style="solid", color="black", weight=3]; 492[label="xu221",fontsize=16,color="green",shape="box"];493[label="range50 xu18 xu19 xu20 xu21 xu220",fontsize=16,color="black",shape="box"];493 -> 545[label="",style="solid", color="black", weight=3]; 494[label="(++) (xu440 : xu441) xu42",fontsize=16,color="black",shape="box"];494 -> 546[label="",style="solid", color="black", weight=3]; 495[label="(++) [] xu42",fontsize=16,color="black",shape="box"];495 -> 547[label="",style="solid", color="black", weight=3]; 167[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];167 -> 179[label="",style="solid", color="black", weight=3]; 168[label="(++) range00 LT (not (compare2 EQ LT (EQ == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];168 -> 180[label="",style="solid", color="black", weight=3]; 169[label="(++) range00 LT (not (compare2 GT LT (GT == LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];169 -> 181[label="",style="solid", color="black", weight=3]; 170[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer xu300) (numericEnumFrom $! Integer xu300 + fromInt (Pos (Succ Zero))) (not (primCmpInt xu300 xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3056[label="xu300/Pos xu3000",fontsize=10,color="white",style="solid",shape="box"];170 -> 3056[label="",style="solid", color="burlywood", weight=9]; 3056 -> 182[label="",style="solid", color="burlywood", weight=3]; 3057[label="xu300/Neg xu3000",fontsize=10,color="white",style="solid",shape="box"];170 -> 3057[label="",style="solid", color="burlywood", weight=9]; 3057 -> 183[label="",style="solid", color="burlywood", weight=3]; 171[label="(++) range60 False (not (compare2 False False (False == False) == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];171 -> 184[label="",style="solid", color="black", weight=3]; 172[label="(++) range60 False (not (compare2 True False (True == False) == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];172 -> 185[label="",style="solid", color="black", weight=3]; 173[label="takeWhile1 (flip (<=) xu31) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3058[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];173 -> 3058[label="",style="solid", color="burlywood", weight=9]; 3058 -> 186[label="",style="solid", color="burlywood", weight=3]; 3059[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];173 -> 3059[label="",style="solid", color="burlywood", weight=9]; 3059 -> 187[label="",style="solid", color="burlywood", weight=3]; 174[label="takeWhile1 (flip (<=) xu31) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3060[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];174 -> 3060[label="",style="solid", color="burlywood", weight=9]; 3060 -> 188[label="",style="solid", color="burlywood", weight=3]; 3061[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];174 -> 3061[label="",style="solid", color="burlywood", weight=9]; 3061 -> 189[label="",style="solid", color="burlywood", weight=3]; 175[label="takeWhile1 (flip (<=) xu31) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3062[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];175 -> 3062[label="",style="solid", color="burlywood", weight=9]; 3062 -> 190[label="",style="solid", color="burlywood", weight=3]; 3063[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];175 -> 3063[label="",style="solid", color="burlywood", weight=9]; 3063 -> 191[label="",style="solid", color="burlywood", weight=3]; 176[label="takeWhile1 (flip (<=) xu31) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) xu31 == GT))",fontsize=16,color="burlywood",shape="box"];3064[label="xu31/Pos xu310",fontsize=10,color="white",style="solid",shape="box"];176 -> 3064[label="",style="solid", color="burlywood", weight=9]; 3064 -> 192[label="",style="solid", color="burlywood", weight=3]; 3065[label="xu31/Neg xu310",fontsize=10,color="white",style="solid",shape="box"];176 -> 3065[label="",style="solid", color="burlywood", weight=9]; 3065 -> 193[label="",style="solid", color="burlywood", weight=3]; 496[label="concatMap (range1 xu110) (range (xu9,xu10))",fontsize=16,color="black",shape="box"];496 -> 548[label="",style="solid", color="black", weight=3]; 497[label="xu430 : xu431 ++ xu31",fontsize=16,color="green",shape="box"];497 -> 549[label="",style="dashed", color="green", weight=3]; 498[label="xu31",fontsize=16,color="green",shape="box"];545[label="concatMap (range4 xu220 xu18 xu19) (range (xu20,xu21))",fontsize=16,color="black",shape="box"];545 -> 599[label="",style="solid", color="black", weight=3]; 546[label="xu440 : xu441 ++ xu42",fontsize=16,color="green",shape="box"];546 -> 600[label="",style="dashed", color="green", weight=3]; 547[label="xu42",fontsize=16,color="green",shape="box"];179[label="(++) range00 LT (not (compare2 LT LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];179 -> 196[label="",style="solid", color="black", weight=3]; 180[label="(++) range00 LT (not (compare2 EQ LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];180 -> 197[label="",style="solid", color="black", weight=3]; 181[label="(++) range00 LT (not (compare2 GT LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];181 -> 198[label="",style="solid", color="black", weight=3]; 182[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos xu3000)) (numericEnumFrom $! Integer (Pos xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3066[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];182 -> 3066[label="",style="solid", color="burlywood", weight=9]; 3066 -> 199[label="",style="solid", color="burlywood", weight=3]; 3067[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];182 -> 3067[label="",style="solid", color="burlywood", weight=9]; 3067 -> 200[label="",style="solid", color="burlywood", weight=3]; 183[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg xu3000)) (numericEnumFrom $! Integer (Neg xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3068[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];183 -> 3068[label="",style="solid", color="burlywood", weight=9]; 3068 -> 201[label="",style="solid", color="burlywood", weight=3]; 3069[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];183 -> 3069[label="",style="solid", color="burlywood", weight=9]; 3069 -> 202[label="",style="solid", color="burlywood", weight=3]; 184[label="(++) range60 False (not (compare2 False False True == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];184 -> 203[label="",style="solid", color="black", weight=3]; 185[label="(++) range60 False (not (compare2 True False False == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];185 -> 204[label="",style="solid", color="black", weight=3]; 186[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) (Pos xu310) == GT))",fontsize=16,color="black",shape="box"];186 -> 205[label="",style="solid", color="black", weight=3]; 187[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu3000)) (Neg xu310) == GT))",fontsize=16,color="black",shape="box"];187 -> 206[label="",style="solid", color="black", weight=3]; 188[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3070[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];188 -> 3070[label="",style="solid", color="burlywood", weight=9]; 3070 -> 207[label="",style="solid", color="burlywood", weight=3]; 3071[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];188 -> 3071[label="",style="solid", color="burlywood", weight=9]; 3071 -> 208[label="",style="solid", color="burlywood", weight=3]; 189[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3072[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];189 -> 3072[label="",style="solid", color="burlywood", weight=9]; 3072 -> 209[label="",style="solid", color="burlywood", weight=3]; 3073[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];189 -> 3073[label="",style="solid", color="burlywood", weight=9]; 3073 -> 210[label="",style="solid", color="burlywood", weight=3]; 190[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) (Pos xu310) == GT))",fontsize=16,color="black",shape="box"];190 -> 211[label="",style="solid", color="black", weight=3]; 191[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu3000)) (Neg xu310) == GT))",fontsize=16,color="black",shape="box"];191 -> 212[label="",style="solid", color="black", weight=3]; 192[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3074[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];192 -> 3074[label="",style="solid", color="burlywood", weight=9]; 3074 -> 213[label="",style="solid", color="burlywood", weight=3]; 3075[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];192 -> 3075[label="",style="solid", color="burlywood", weight=9]; 3075 -> 214[label="",style="solid", color="burlywood", weight=3]; 193[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg xu310) == GT))",fontsize=16,color="burlywood",shape="box"];3076[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];193 -> 3076[label="",style="solid", color="burlywood", weight=9]; 3076 -> 215[label="",style="solid", color="burlywood", weight=3]; 3077[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];193 -> 3077[label="",style="solid", color="burlywood", weight=9]; 3077 -> 216[label="",style="solid", color="burlywood", weight=3]; 548[label="concat . map (range1 xu110)",fontsize=16,color="black",shape="box"];548 -> 601[label="",style="solid", color="black", weight=3]; 549 -> 449[label="",style="dashed", color="red", weight=0]; 549[label="xu431 ++ xu31",fontsize=16,color="magenta"];549 -> 602[label="",style="dashed", color="magenta", weight=3]; 599[label="concat . map (range4 xu220 xu18 xu19)",fontsize=16,color="black",shape="box"];599 -> 654[label="",style="solid", color="black", weight=3]; 600 -> 473[label="",style="dashed", color="red", weight=0]; 600[label="xu441 ++ xu42",fontsize=16,color="magenta"];600 -> 655[label="",style="dashed", color="magenta", weight=3]; 196[label="(++) range00 LT (not (EQ == LT) && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];196 -> 219[label="",style="solid", color="black", weight=3]; 197[label="(++) range00 LT (not (compare1 EQ LT (EQ <= LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];197 -> 220[label="",style="solid", color="black", weight=3]; 198[label="(++) range00 LT (not (compare1 GT LT (GT <= LT) == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];198 -> 221[label="",style="solid", color="black", weight=3]; 199[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3078[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];199 -> 3078[label="",style="solid", color="burlywood", weight=9]; 3078 -> 222[label="",style="solid", color="burlywood", weight=3]; 3079[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];199 -> 3079[label="",style="solid", color="burlywood", weight=9]; 3079 -> 223[label="",style="solid", color="burlywood", weight=3]; 200[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3080[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];200 -> 3080[label="",style="solid", color="burlywood", weight=9]; 3080 -> 224[label="",style="solid", color="burlywood", weight=3]; 3081[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];200 -> 3081[label="",style="solid", color="burlywood", weight=9]; 3081 -> 225[label="",style="solid", color="burlywood", weight=3]; 201[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3082[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];201 -> 3082[label="",style="solid", color="burlywood", weight=9]; 3082 -> 226[label="",style="solid", color="burlywood", weight=3]; 3083[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];201 -> 3083[label="",style="solid", color="burlywood", weight=9]; 3083 -> 227[label="",style="solid", color="burlywood", weight=3]; 202[label="takeWhile1 (flip (<=) (Integer xu310)) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3084[label="xu310/Pos xu3100",fontsize=10,color="white",style="solid",shape="box"];202 -> 3084[label="",style="solid", color="burlywood", weight=9]; 3084 -> 228[label="",style="solid", color="burlywood", weight=3]; 3085[label="xu310/Neg xu3100",fontsize=10,color="white",style="solid",shape="box"];202 -> 3085[label="",style="solid", color="burlywood", weight=9]; 3085 -> 229[label="",style="solid", color="burlywood", weight=3]; 203[label="(++) range60 False (not (EQ == LT) && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];203 -> 230[label="",style="solid", color="black", weight=3]; 204[label="(++) range60 False (not (compare1 True False (True <= False) == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];204 -> 231[label="",style="solid", color="black", weight=3]; 205[label="takeWhile1 (flip (<=) (Pos xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) xu310 == GT))",fontsize=16,color="burlywood",shape="box"];3086[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];205 -> 3086[label="",style="solid", color="burlywood", weight=9]; 3086 -> 232[label="",style="solid", color="burlywood", weight=3]; 3087[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];205 -> 3087[label="",style="solid", color="burlywood", weight=9]; 3087 -> 233[label="",style="solid", color="burlywood", weight=3]; 206[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];206 -> 234[label="",style="solid", color="black", weight=3]; 207[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];207 -> 235[label="",style="solid", color="black", weight=3]; 208[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];208 -> 236[label="",style="solid", color="black", weight=3]; 209[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];209 -> 237[label="",style="solid", color="black", weight=3]; 210[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];210 -> 238[label="",style="solid", color="black", weight=3]; 211[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];211 -> 239[label="",style="solid", color="black", weight=3]; 212[label="takeWhile1 (flip (<=) (Neg xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu310 (Succ xu3000) == GT))",fontsize=16,color="burlywood",shape="box"];3088[label="xu310/Succ xu3100",fontsize=10,color="white",style="solid",shape="box"];212 -> 3088[label="",style="solid", color="burlywood", weight=9]; 3088 -> 240[label="",style="solid", color="burlywood", weight=3]; 3089[label="xu310/Zero",fontsize=10,color="white",style="solid",shape="box"];212 -> 3089[label="",style="solid", color="burlywood", weight=9]; 3089 -> 241[label="",style="solid", color="burlywood", weight=3]; 213[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];213 -> 242[label="",style="solid", color="black", weight=3]; 214[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];214 -> 243[label="",style="solid", color="black", weight=3]; 215[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg (Succ xu3100)) == GT))",fontsize=16,color="black",shape="box"];215 -> 244[label="",style="solid", color="black", weight=3]; 216[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];216 -> 245[label="",style="solid", color="black", weight=3]; 601[label="concat (map (range1 xu110) (range (xu9,xu10)))",fontsize=16,color="black",shape="box"];601 -> 656[label="",style="solid", color="black", weight=3]; 602[label="xu431",fontsize=16,color="green",shape="box"];654[label="concat (map (range4 xu220 xu18 xu19) (range (xu20,xu21)))",fontsize=16,color="black",shape="box"];654 -> 713[label="",style="solid", color="black", weight=3]; 655[label="xu441",fontsize=16,color="green",shape="box"];219[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];219 -> 248[label="",style="solid", color="black", weight=3]; 220[label="(++) range00 LT (not (compare1 EQ LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];220 -> 249[label="",style="solid", color="black", weight=3]; 221[label="(++) range00 LT (not (compare1 GT LT False == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];221 -> 250[label="",style="solid", color="black", weight=3]; 222[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) (Pos xu3100) == GT))",fontsize=16,color="black",shape="box"];222 -> 251[label="",style="solid", color="black", weight=3]; 223[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos (Succ xu30000)) (Neg xu3100) == GT))",fontsize=16,color="black",shape="box"];223 -> 252[label="",style="solid", color="black", weight=3]; 224[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3090[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];224 -> 3090[label="",style="solid", color="burlywood", weight=9]; 3090 -> 253[label="",style="solid", color="burlywood", weight=3]; 3091[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];224 -> 3091[label="",style="solid", color="burlywood", weight=9]; 3091 -> 254[label="",style="solid", color="burlywood", weight=3]; 225[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3092[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];225 -> 3092[label="",style="solid", color="burlywood", weight=9]; 3092 -> 255[label="",style="solid", color="burlywood", weight=3]; 3093[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];225 -> 3093[label="",style="solid", color="burlywood", weight=9]; 3093 -> 256[label="",style="solid", color="burlywood", weight=3]; 226[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) (Pos xu3100) == GT))",fontsize=16,color="black",shape="box"];226 -> 257[label="",style="solid", color="black", weight=3]; 227[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg (Succ xu30000)) (Neg xu3100) == GT))",fontsize=16,color="black",shape="box"];227 -> 258[label="",style="solid", color="black", weight=3]; 228[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3094[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];228 -> 3094[label="",style="solid", color="burlywood", weight=9]; 3094 -> 259[label="",style="solid", color="burlywood", weight=3]; 3095[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];228 -> 3095[label="",style="solid", color="burlywood", weight=9]; 3095 -> 260[label="",style="solid", color="burlywood", weight=3]; 229[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg xu3100) == GT))",fontsize=16,color="burlywood",shape="box"];3096[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];229 -> 3096[label="",style="solid", color="burlywood", weight=9]; 3096 -> 261[label="",style="solid", color="burlywood", weight=3]; 3097[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];229 -> 3097[label="",style="solid", color="burlywood", weight=9]; 3097 -> 262[label="",style="solid", color="burlywood", weight=3]; 230[label="(++) range60 False (not False && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];230 -> 263[label="",style="solid", color="black", weight=3]; 231[label="(++) range60 False (not (compare1 True False False == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];231 -> 264[label="",style="solid", color="black", weight=3]; 232[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) (Succ xu3100) == GT))",fontsize=16,color="black",shape="box"];232 -> 265[label="",style="solid", color="black", weight=3]; 233[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3000) Zero == GT))",fontsize=16,color="black",shape="box"];233 -> 266[label="",style="solid", color="black", weight=3]; 234[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];234 -> 267[label="",style="solid", color="black", weight=3]; 235[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu3100) == GT))",fontsize=16,color="black",shape="box"];235 -> 268[label="",style="solid", color="black", weight=3]; 236[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];236 -> 269[label="",style="solid", color="black", weight=3]; 237[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];237 -> 270[label="",style="solid", color="black", weight=3]; 238[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];238 -> 271[label="",style="solid", color="black", weight=3]; 239[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];239 -> 272[label="",style="solid", color="black", weight=3]; 240[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3100) (Succ xu3000) == GT))",fontsize=16,color="black",shape="box"];240 -> 273[label="",style="solid", color="black", weight=3]; 241[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu3000) == GT))",fontsize=16,color="black",shape="box"];241 -> 274[label="",style="solid", color="black", weight=3]; 242[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];242 -> 275[label="",style="solid", color="black", weight=3]; 243[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];243 -> 276[label="",style="solid", color="black", weight=3]; 244[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu3100) Zero == GT))",fontsize=16,color="black",shape="box"];244 -> 277[label="",style="solid", color="black", weight=3]; 245[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];245 -> 278[label="",style="solid", color="black", weight=3]; 656 -> 714[label="",style="dashed", color="red", weight=0]; 656[label="foldr (++) [] (map (range1 xu110) (range (xu9,xu10)))",fontsize=16,color="magenta"];656 -> 715[label="",style="dashed", color="magenta", weight=3]; 656 -> 716[label="",style="dashed", color="magenta", weight=3]; 713 -> 717[label="",style="dashed", color="red", weight=0]; 713[label="foldr (++) [] (map (range4 xu220 xu18 xu19) (range (xu20,xu21)))",fontsize=16,color="magenta"];713 -> 718[label="",style="dashed", color="magenta", weight=3]; 713 -> 719[label="",style="dashed", color="magenta", weight=3]; 713 -> 720[label="",style="dashed", color="magenta", weight=3]; 713 -> 721[label="",style="dashed", color="magenta", weight=3]; 248[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];248 -> 289[label="",style="solid", color="black", weight=3]; 249[label="(++) range00 LT (not (compare0 EQ LT otherwise == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];249 -> 290[label="",style="solid", color="black", weight=3]; 250[label="(++) range00 LT (not (compare0 GT LT otherwise == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];250 -> 291[label="",style="solid", color="black", weight=3]; 251[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) xu3100 == GT))",fontsize=16,color="burlywood",shape="box"];3098[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];251 -> 3098[label="",style="solid", color="burlywood", weight=9]; 3098 -> 292[label="",style="solid", color="burlywood", weight=3]; 3099[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];251 -> 3099[label="",style="solid", color="burlywood", weight=9]; 3099 -> 293[label="",style="solid", color="burlywood", weight=3]; 252[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];252 -> 294[label="",style="solid", color="black", weight=3]; 253[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];253 -> 295[label="",style="solid", color="black", weight=3]; 254[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];254 -> 296[label="",style="solid", color="black", weight=3]; 255[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];255 -> 297[label="",style="solid", color="black", weight=3]; 256[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Pos Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];256 -> 298[label="",style="solid", color="black", weight=3]; 257[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];257 -> 299[label="",style="solid", color="black", weight=3]; 258[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3100 (Succ xu30000) == GT))",fontsize=16,color="burlywood",shape="box"];3100[label="xu3100/Succ xu31000",fontsize=10,color="white",style="solid",shape="box"];258 -> 3100[label="",style="solid", color="burlywood", weight=9]; 3100 -> 300[label="",style="solid", color="burlywood", weight=3]; 3101[label="xu3100/Zero",fontsize=10,color="white",style="solid",shape="box"];258 -> 3101[label="",style="solid", color="burlywood", weight=9]; 3101 -> 301[label="",style="solid", color="burlywood", weight=3]; 259[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];259 -> 302[label="",style="solid", color="black", weight=3]; 260[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Pos Zero) == GT))",fontsize=16,color="black",shape="box"];260 -> 303[label="",style="solid", color="black", weight=3]; 261[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg (Succ xu31000)) == GT))",fontsize=16,color="black",shape="box"];261 -> 304[label="",style="solid", color="black", weight=3]; 262[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpInt (Neg Zero) (Neg Zero) == GT))",fontsize=16,color="black",shape="box"];262 -> 305[label="",style="solid", color="black", weight=3]; 263[label="(++) range60 False (True && False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];263 -> 306[label="",style="solid", color="black", weight=3]; 264[label="(++) range60 False (not (compare0 True False otherwise == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];264 -> 307[label="",style="solid", color="black", weight=3]; 265 -> 2275[label="",style="dashed", color="red", weight=0]; 265[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3000 xu3100 == GT))",fontsize=16,color="magenta"];265 -> 2276[label="",style="dashed", color="magenta", weight=3]; 265 -> 2277[label="",style="dashed", color="magenta", weight=3]; 265 -> 2278[label="",style="dashed", color="magenta", weight=3]; 265 -> 2279[label="",style="dashed", color="magenta", weight=3]; 266[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];266 -> 310[label="",style="solid", color="black", weight=3]; 267[label="takeWhile1 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];267 -> 311[label="",style="solid", color="black", weight=3]; 268[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];268 -> 312[label="",style="solid", color="black", weight=3]; 269[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];269 -> 313[label="",style="solid", color="black", weight=3]; 270[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];270 -> 314[label="",style="solid", color="black", weight=3]; 271[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];271 -> 315[label="",style="solid", color="black", weight=3]; 272[label="takeWhile1 (flip (<=) (Pos xu310)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];272 -> 316[label="",style="solid", color="black", weight=3]; 273 -> 2391[label="",style="dashed", color="red", weight=0]; 273[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu3100 xu3000 == GT))",fontsize=16,color="magenta"];273 -> 2392[label="",style="dashed", color="magenta", weight=3]; 273 -> 2393[label="",style="dashed", color="magenta", weight=3]; 273 -> 2394[label="",style="dashed", color="magenta", weight=3]; 273 -> 2395[label="",style="dashed", color="magenta", weight=3]; 273 -> 2396[label="",style="dashed", color="magenta", weight=3]; 274[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];274 -> 319[label="",style="solid", color="black", weight=3]; 275[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];275 -> 320[label="",style="solid", color="black", weight=3]; 276[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];276 -> 321[label="",style="solid", color="black", weight=3]; 277[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];277 -> 322[label="",style="solid", color="black", weight=3]; 278[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];278 -> 323[label="",style="solid", color="black", weight=3]; 715[label="range (xu9,xu10)",fontsize=16,color="blue",shape="box"];3102[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];715 -> 3102[label="",style="solid", color="blue", weight=9]; 3102 -> 722[label="",style="solid", color="blue", weight=3]; 3103[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];715 -> 3103[label="",style="solid", color="blue", weight=9]; 3103 -> 723[label="",style="solid", color="blue", weight=3]; 3104[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];715 -> 3104[label="",style="solid", color="blue", weight=9]; 3104 -> 724[label="",style="solid", color="blue", weight=3]; 3105[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];715 -> 3105[label="",style="solid", color="blue", weight=9]; 3105 -> 725[label="",style="solid", color="blue", weight=3]; 3106[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];715 -> 3106[label="",style="solid", color="blue", weight=9]; 3106 -> 726[label="",style="solid", color="blue", weight=3]; 3107[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];715 -> 3107[label="",style="solid", color="blue", weight=9]; 3107 -> 727[label="",style="solid", color="blue", weight=3]; 3108[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];715 -> 3108[label="",style="solid", color="blue", weight=9]; 3108 -> 728[label="",style="solid", color="blue", weight=3]; 3109[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];715 -> 3109[label="",style="solid", color="blue", weight=9]; 3109 -> 729[label="",style="solid", color="blue", weight=3]; 716[label="xu110",fontsize=16,color="green",shape="box"];714[label="foldr (++) [] (map (range1 xu48) xu49)",fontsize=16,color="burlywood",shape="triangle"];3110[label="xu49/xu490 : xu491",fontsize=10,color="white",style="solid",shape="box"];714 -> 3110[label="",style="solid", color="burlywood", weight=9]; 3110 -> 730[label="",style="solid", color="burlywood", weight=3]; 3111[label="xu49/[]",fontsize=10,color="white",style="solid",shape="box"];714 -> 3111[label="",style="solid", color="burlywood", weight=9]; 3111 -> 731[label="",style="solid", color="burlywood", weight=3]; 718[label="xu19",fontsize=16,color="green",shape="box"];719[label="xu220",fontsize=16,color="green",shape="box"];720[label="range (xu20,xu21)",fontsize=16,color="blue",shape="box"];3112[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];720 -> 3112[label="",style="solid", color="blue", weight=9]; 3112 -> 732[label="",style="solid", color="blue", weight=3]; 3113[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];720 -> 3113[label="",style="solid", color="blue", weight=9]; 3113 -> 733[label="",style="solid", color="blue", weight=3]; 3114[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];720 -> 3114[label="",style="solid", color="blue", weight=9]; 3114 -> 734[label="",style="solid", color="blue", weight=3]; 3115[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];720 -> 3115[label="",style="solid", color="blue", weight=9]; 3115 -> 735[label="",style="solid", color="blue", weight=3]; 3116[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];720 -> 3116[label="",style="solid", color="blue", weight=9]; 3116 -> 736[label="",style="solid", color="blue", weight=3]; 3117[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];720 -> 3117[label="",style="solid", color="blue", weight=9]; 3117 -> 737[label="",style="solid", color="blue", weight=3]; 3118[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];720 -> 3118[label="",style="solid", color="blue", weight=9]; 3118 -> 738[label="",style="solid", color="blue", weight=3]; 3119[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];720 -> 3119[label="",style="solid", color="blue", weight=9]; 3119 -> 739[label="",style="solid", color="blue", weight=3]; 721[label="xu18",fontsize=16,color="green",shape="box"];717[label="foldr (++) [] (map (range4 xu55 xu56 xu57) xu58)",fontsize=16,color="burlywood",shape="triangle"];3120[label="xu58/xu580 : xu581",fontsize=10,color="white",style="solid",shape="box"];717 -> 3120[label="",style="solid", color="burlywood", weight=9]; 3120 -> 740[label="",style="solid", color="burlywood", weight=3]; 3121[label="xu58/[]",fontsize=10,color="white",style="solid",shape="box"];717 -> 3121[label="",style="solid", color="burlywood", weight=9]; 3121 -> 741[label="",style="solid", color="burlywood", weight=3]; 289[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];289 -> 344[label="",style="solid", color="black", weight=3]; 290[label="(++) range00 LT (not (compare0 EQ LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];290 -> 345[label="",style="solid", color="black", weight=3]; 291[label="(++) range00 LT (not (compare0 GT LT True == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];291 -> 346[label="",style="solid", color="black", weight=3]; 292[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) (Succ xu31000) == GT))",fontsize=16,color="black",shape="box"];292 -> 347[label="",style="solid", color="black", weight=3]; 293[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu30000) Zero == GT))",fontsize=16,color="black",shape="box"];293 -> 348[label="",style="solid", color="black", weight=3]; 294[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];294 -> 349[label="",style="solid", color="black", weight=3]; 295[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu31000) == GT))",fontsize=16,color="black",shape="box"];295 -> 350[label="",style="solid", color="black", weight=3]; 296[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];296 -> 351[label="",style="solid", color="black", weight=3]; 297[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];297 -> 352[label="",style="solid", color="black", weight=3]; 298[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];298 -> 353[label="",style="solid", color="black", weight=3]; 299[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];299 -> 354[label="",style="solid", color="black", weight=3]; 300[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu31000) (Succ xu30000) == GT))",fontsize=16,color="black",shape="box"];300 -> 355[label="",style="solid", color="black", weight=3]; 301[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu30000) == GT))",fontsize=16,color="black",shape="box"];301 -> 356[label="",style="solid", color="black", weight=3]; 302[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];302 -> 357[label="",style="solid", color="black", weight=3]; 303[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];303 -> 358[label="",style="solid", color="black", weight=3]; 304[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu31000) Zero == GT))",fontsize=16,color="black",shape="box"];304 -> 359[label="",style="solid", color="black", weight=3]; 305[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];305 -> 360[label="",style="solid", color="black", weight=3]; 306[label="(++) range60 False (False >= xu30) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];306 -> 361[label="",style="solid", color="black", weight=3]; 307[label="(++) range60 False (not (compare0 True False True == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];307 -> 362[label="",style="solid", color="black", weight=3]; 2276[label="xu3100",fontsize=16,color="green",shape="box"];2277[label="xu3000",fontsize=16,color="green",shape="box"];2278[label="xu3000",fontsize=16,color="green",shape="box"];2279[label="xu3100",fontsize=16,color="green",shape="box"];2275[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu169 xu170 == GT))",fontsize=16,color="burlywood",shape="triangle"];3122[label="xu169/Succ xu1690",fontsize=10,color="white",style="solid",shape="box"];2275 -> 3122[label="",style="solid", color="burlywood", weight=9]; 3122 -> 2316[label="",style="solid", color="burlywood", weight=3]; 3123[label="xu169/Zero",fontsize=10,color="white",style="solid",shape="box"];2275 -> 3123[label="",style="solid", color="burlywood", weight=9]; 3123 -> 2317[label="",style="solid", color="burlywood", weight=3]; 310[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];310 -> 367[label="",style="solid", color="black", weight=3]; 311[label="takeWhile0 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];311 -> 368[label="",style="solid", color="black", weight=3]; 312[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];312 -> 369[label="",style="solid", color="black", weight=3]; 313[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];313 -> 370[label="",style="solid", color="black", weight=3]; 314[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];314 -> 371[label="",style="solid", color="black", weight=3]; 315[label="takeWhile1 (flip (<=) (Neg Zero)) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];315 -> 372[label="",style="solid", color="black", weight=3]; 316[label="Neg (Succ xu3000) : takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];316 -> 373[label="",style="dashed", color="green", weight=3]; 2392[label="xu3000",fontsize=16,color="green",shape="box"];2393[label="xu3100",fontsize=16,color="green",shape="box"];2394[label="xu3000",fontsize=16,color="green",shape="box"];2395[label="Neg (Succ xu3000) + fromInt (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];2395 -> 2447[label="",style="solid", color="black", weight=3]; 2396[label="xu3100",fontsize=16,color="green",shape="box"];2391[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat xu198 xu199 == GT))",fontsize=16,color="burlywood",shape="triangle"];3124[label="xu198/Succ xu1980",fontsize=10,color="white",style="solid",shape="box"];2391 -> 3124[label="",style="solid", color="burlywood", weight=9]; 3124 -> 2448[label="",style="solid", color="burlywood", weight=3]; 3125[label="xu198/Zero",fontsize=10,color="white",style="solid",shape="box"];2391 -> 3125[label="",style="solid", color="burlywood", weight=9]; 3125 -> 2449[label="",style="solid", color="burlywood", weight=3]; 319[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];319 -> 378[label="",style="solid", color="black", weight=3]; 320[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];320 -> 379[label="",style="solid", color="black", weight=3]; 321[label="takeWhile1 (flip (<=) (Pos Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];321 -> 380[label="",style="solid", color="black", weight=3]; 322[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];322 -> 381[label="",style="solid", color="black", weight=3]; 323[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];323 -> 382[label="",style="solid", color="black", weight=3]; 722[label="range (xu9,xu10)",fontsize=16,color="burlywood",shape="triangle"];3126[label="xu9/(xu90,xu91)",fontsize=10,color="white",style="solid",shape="box"];722 -> 3126[label="",style="solid", color="burlywood", weight=9]; 3126 -> 800[label="",style="solid", color="burlywood", weight=3]; 723[label="range (xu9,xu10)",fontsize=16,color="burlywood",shape="triangle"];3127[label="xu9/(xu90,xu91,xu92)",fontsize=10,color="white",style="solid",shape="box"];723 -> 3127[label="",style="solid", color="burlywood", weight=9]; 3127 -> 801[label="",style="solid", color="burlywood", weight=3]; 724 -> 6[label="",style="dashed", color="red", weight=0]; 724[label="range (xu9,xu10)",fontsize=16,color="magenta"];724 -> 802[label="",style="dashed", color="magenta", weight=3]; 725 -> 7[label="",style="dashed", color="red", weight=0]; 725[label="range (xu9,xu10)",fontsize=16,color="magenta"];725 -> 803[label="",style="dashed", color="magenta", weight=3]; 726 -> 8[label="",style="dashed", color="red", weight=0]; 726[label="range (xu9,xu10)",fontsize=16,color="magenta"];726 -> 804[label="",style="dashed", color="magenta", weight=3]; 727 -> 9[label="",style="dashed", color="red", weight=0]; 727[label="range (xu9,xu10)",fontsize=16,color="magenta"];727 -> 805[label="",style="dashed", color="magenta", weight=3]; 728 -> 10[label="",style="dashed", color="red", weight=0]; 728[label="range (xu9,xu10)",fontsize=16,color="magenta"];728 -> 806[label="",style="dashed", color="magenta", weight=3]; 729 -> 11[label="",style="dashed", color="red", weight=0]; 729[label="range (xu9,xu10)",fontsize=16,color="magenta"];729 -> 807[label="",style="dashed", color="magenta", weight=3]; 730[label="foldr (++) [] (map (range1 xu48) (xu490 : xu491))",fontsize=16,color="black",shape="box"];730 -> 808[label="",style="solid", color="black", weight=3]; 731[label="foldr (++) [] (map (range1 xu48) [])",fontsize=16,color="black",shape="box"];731 -> 809[label="",style="solid", color="black", weight=3]; 732 -> 722[label="",style="dashed", color="red", weight=0]; 732[label="range (xu20,xu21)",fontsize=16,color="magenta"];732 -> 810[label="",style="dashed", color="magenta", weight=3]; 732 -> 811[label="",style="dashed", color="magenta", weight=3]; 733 -> 723[label="",style="dashed", color="red", weight=0]; 733[label="range (xu20,xu21)",fontsize=16,color="magenta"];733 -> 812[label="",style="dashed", color="magenta", weight=3]; 733 -> 813[label="",style="dashed", color="magenta", weight=3]; 734 -> 6[label="",style="dashed", color="red", weight=0]; 734[label="range (xu20,xu21)",fontsize=16,color="magenta"];734 -> 814[label="",style="dashed", color="magenta", weight=3]; 735 -> 7[label="",style="dashed", color="red", weight=0]; 735[label="range (xu20,xu21)",fontsize=16,color="magenta"];735 -> 815[label="",style="dashed", color="magenta", weight=3]; 736 -> 8[label="",style="dashed", color="red", weight=0]; 736[label="range (xu20,xu21)",fontsize=16,color="magenta"];736 -> 816[label="",style="dashed", color="magenta", weight=3]; 737 -> 9[label="",style="dashed", color="red", weight=0]; 737[label="range (xu20,xu21)",fontsize=16,color="magenta"];737 -> 817[label="",style="dashed", color="magenta", weight=3]; 738 -> 10[label="",style="dashed", color="red", weight=0]; 738[label="range (xu20,xu21)",fontsize=16,color="magenta"];738 -> 818[label="",style="dashed", color="magenta", weight=3]; 739 -> 11[label="",style="dashed", color="red", weight=0]; 739[label="range (xu20,xu21)",fontsize=16,color="magenta"];739 -> 819[label="",style="dashed", color="magenta", weight=3]; 740[label="foldr (++) [] (map (range4 xu55 xu56 xu57) (xu580 : xu581))",fontsize=16,color="black",shape="box"];740 -> 820[label="",style="solid", color="black", weight=3]; 741[label="foldr (++) [] (map (range4 xu55 xu56 xu57) [])",fontsize=16,color="black",shape="box"];741 -> 821[label="",style="solid", color="black", weight=3]; 344[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];344 -> 405[label="",style="solid", color="black", weight=3]; 345[label="(++) range00 LT (not (GT == LT) && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];345 -> 406[label="",style="solid", color="black", weight=3]; 346[label="(++) range00 LT (not (GT == LT) && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];346 -> 407[label="",style="solid", color="black", weight=3]; 347 -> 2460[label="",style="dashed", color="red", weight=0]; 347[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu30000 xu31000 == GT))",fontsize=16,color="magenta"];347 -> 2461[label="",style="dashed", color="magenta", weight=3]; 347 -> 2462[label="",style="dashed", color="magenta", weight=3]; 347 -> 2463[label="",style="dashed", color="magenta", weight=3]; 347 -> 2464[label="",style="dashed", color="magenta", weight=3]; 348[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];348 -> 410[label="",style="solid", color="black", weight=3]; 349[label="takeWhile1 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];349 -> 411[label="",style="solid", color="black", weight=3]; 350[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];350 -> 412[label="",style="solid", color="black", weight=3]; 351[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];351 -> 413[label="",style="solid", color="black", weight=3]; 352[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];352 -> 414[label="",style="solid", color="black", weight=3]; 353[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];353 -> 415[label="",style="solid", color="black", weight=3]; 354[label="takeWhile1 (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];354 -> 416[label="",style="solid", color="black", weight=3]; 355 -> 2509[label="",style="dashed", color="red", weight=0]; 355[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu31000 xu30000 == GT))",fontsize=16,color="magenta"];355 -> 2510[label="",style="dashed", color="magenta", weight=3]; 355 -> 2511[label="",style="dashed", color="magenta", weight=3]; 355 -> 2512[label="",style="dashed", color="magenta", weight=3]; 355 -> 2513[label="",style="dashed", color="magenta", weight=3]; 356[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];356 -> 419[label="",style="solid", color="black", weight=3]; 357[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];357 -> 420[label="",style="solid", color="black", weight=3]; 358[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];358 -> 421[label="",style="solid", color="black", weight=3]; 359[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];359 -> 422[label="",style="solid", color="black", weight=3]; 360[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];360 -> 423[label="",style="solid", color="black", weight=3]; 361[label="(++) range60 False (compare False xu30 /= LT) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];361 -> 424[label="",style="solid", color="black", weight=3]; 362[label="(++) range60 False (not (GT == LT) && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];362 -> 425[label="",style="solid", color="black", weight=3]; 2316[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) xu170 == GT))",fontsize=16,color="burlywood",shape="box"];3128[label="xu170/Succ xu1700",fontsize=10,color="white",style="solid",shape="box"];2316 -> 3128[label="",style="solid", color="burlywood", weight=9]; 3128 -> 2323[label="",style="solid", color="burlywood", weight=3]; 3129[label="xu170/Zero",fontsize=10,color="white",style="solid",shape="box"];2316 -> 3129[label="",style="solid", color="burlywood", weight=9]; 3129 -> 2324[label="",style="solid", color="burlywood", weight=3]; 2317[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu170 == GT))",fontsize=16,color="burlywood",shape="box"];3130[label="xu170/Succ xu1700",fontsize=10,color="white",style="solid",shape="box"];2317 -> 3130[label="",style="solid", color="burlywood", weight=9]; 3130 -> 2325[label="",style="solid", color="burlywood", weight=3]; 3131[label="xu170/Zero",fontsize=10,color="white",style="solid",shape="box"];2317 -> 3131[label="",style="solid", color="burlywood", weight=9]; 3131 -> 2326[label="",style="solid", color="burlywood", weight=3]; 367[label="takeWhile1 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];367 -> 430[label="",style="solid", color="black", weight=3]; 368[label="takeWhile0 (flip (<=) (Neg xu310)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];368 -> 431[label="",style="solid", color="black", weight=3]; 369[label="takeWhile1 (flip (<=) (Pos (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];369 -> 432[label="",style="solid", color="black", weight=3]; 370[label="Pos Zero : takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];370 -> 433[label="",style="dashed", color="green", weight=3]; 371[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];371 -> 434[label="",style="solid", color="black", weight=3]; 372[label="Pos Zero : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];372 -> 435[label="",style="dashed", color="green", weight=3]; 373[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];373 -> 436[label="",style="solid", color="black", weight=3]; 2447[label="primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2447 -> 2501[label="",style="solid", color="black", weight=3]; 2448[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) xu199 == GT))",fontsize=16,color="burlywood",shape="box"];3132[label="xu199/Succ xu1990",fontsize=10,color="white",style="solid",shape="box"];2448 -> 3132[label="",style="solid", color="burlywood", weight=9]; 3132 -> 2502[label="",style="solid", color="burlywood", weight=3]; 3133[label="xu199/Zero",fontsize=10,color="white",style="solid",shape="box"];2448 -> 3133[label="",style="solid", color="burlywood", weight=9]; 3133 -> 2503[label="",style="solid", color="burlywood", weight=3]; 2449[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero xu199 == GT))",fontsize=16,color="burlywood",shape="box"];3134[label="xu199/Succ xu1990",fontsize=10,color="white",style="solid",shape="box"];2449 -> 3134[label="",style="solid", color="burlywood", weight=9]; 3134 -> 2504[label="",style="solid", color="burlywood", weight=3]; 3135[label="xu199/Zero",fontsize=10,color="white",style="solid",shape="box"];2449 -> 3135[label="",style="solid", color="burlywood", weight=9]; 3135 -> 2505[label="",style="solid", color="burlywood", weight=3]; 378[label="takeWhile1 (flip (<=) (Neg Zero)) (Neg (Succ xu3000)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];378 -> 441[label="",style="solid", color="black", weight=3]; 379[label="Neg Zero : takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];379 -> 442[label="",style="dashed", color="green", weight=3]; 380[label="Neg Zero : takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];380 -> 443[label="",style="dashed", color="green", weight=3]; 381[label="takeWhile1 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];381 -> 444[label="",style="solid", color="black", weight=3]; 382[label="Neg Zero : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];382 -> 445[label="",style="dashed", color="green", weight=3]; 800[label="range ((xu90,xu91),xu10)",fontsize=16,color="burlywood",shape="box"];3136[label="xu10/(xu100,xu101)",fontsize=10,color="white",style="solid",shape="box"];800 -> 3136[label="",style="solid", color="burlywood", weight=9]; 3136 -> 881[label="",style="solid", color="burlywood", weight=3]; 801[label="range ((xu90,xu91,xu92),xu10)",fontsize=16,color="burlywood",shape="box"];3137[label="xu10/(xu100,xu101,xu102)",fontsize=10,color="white",style="solid",shape="box"];801 -> 3137[label="",style="solid", color="burlywood", weight=9]; 3137 -> 882[label="",style="solid", color="burlywood", weight=3]; 802[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];803[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];804[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];805[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];806[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];807[label="(xu9,xu10)",fontsize=16,color="green",shape="box"];808[label="foldr (++) [] (range1 xu48 xu490 : map (range1 xu48) xu491)",fontsize=16,color="black",shape="box"];808 -> 883[label="",style="solid", color="black", weight=3]; 809 -> 126[label="",style="dashed", color="red", weight=0]; 809[label="foldr (++) [] []",fontsize=16,color="magenta"];810[label="xu21",fontsize=16,color="green",shape="box"];811[label="xu20",fontsize=16,color="green",shape="box"];812[label="xu21",fontsize=16,color="green",shape="box"];813[label="xu20",fontsize=16,color="green",shape="box"];814[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];815[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];816[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];817[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];818[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];819[label="(xu20,xu21)",fontsize=16,color="green",shape="box"];820[label="foldr (++) [] (range4 xu55 xu56 xu57 xu580 : map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="black",shape="box"];820 -> 884[label="",style="solid", color="black", weight=3]; 821 -> 136[label="",style="dashed", color="red", weight=0]; 821[label="foldr (++) [] []",fontsize=16,color="magenta"];405[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];405 -> 499[label="",style="solid", color="black", weight=3]; 406[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];406 -> 500[label="",style="solid", color="black", weight=3]; 407[label="(++) range00 LT (not False && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];407 -> 501[label="",style="solid", color="black", weight=3]; 2461[label="xu31000",fontsize=16,color="green",shape="box"];2462[label="xu31000",fontsize=16,color="green",shape="box"];2463[label="xu30000",fontsize=16,color="green",shape="box"];2464[label="xu30000",fontsize=16,color="green",shape="box"];2460[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu203 xu204 == GT))",fontsize=16,color="burlywood",shape="triangle"];3138[label="xu203/Succ xu2030",fontsize=10,color="white",style="solid",shape="box"];2460 -> 3138[label="",style="solid", color="burlywood", weight=9]; 3138 -> 2506[label="",style="solid", color="burlywood", weight=3]; 3139[label="xu203/Zero",fontsize=10,color="white",style="solid",shape="box"];2460 -> 3139[label="",style="solid", color="burlywood", weight=9]; 3139 -> 2507[label="",style="solid", color="burlywood", weight=3]; 410[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];410 -> 506[label="",style="solid", color="black", weight=3]; 411[label="takeWhile0 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];411 -> 507[label="",style="solid", color="black", weight=3]; 412[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];412 -> 508[label="",style="solid", color="black", weight=3]; 413[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];413 -> 509[label="",style="solid", color="black", weight=3]; 414[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];414 -> 510[label="",style="solid", color="black", weight=3]; 415[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];415 -> 511[label="",style="solid", color="black", weight=3]; 416[label="Integer (Neg (Succ xu30000)) : takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];416 -> 512[label="",style="dashed", color="green", weight=3]; 2510[label="xu31000",fontsize=16,color="green",shape="box"];2511[label="xu30000",fontsize=16,color="green",shape="box"];2512[label="xu31000",fontsize=16,color="green",shape="box"];2513[label="xu30000",fontsize=16,color="green",shape="box"];2509[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu208 xu209 == GT))",fontsize=16,color="burlywood",shape="triangle"];3140[label="xu208/Succ xu2080",fontsize=10,color="white",style="solid",shape="box"];2509 -> 3140[label="",style="solid", color="burlywood", weight=9]; 3140 -> 2550[label="",style="solid", color="burlywood", weight=3]; 3141[label="xu208/Zero",fontsize=10,color="white",style="solid",shape="box"];2509 -> 3141[label="",style="solid", color="burlywood", weight=9]; 3141 -> 2551[label="",style="solid", color="burlywood", weight=3]; 419[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="box"];419 -> 517[label="",style="solid", color="black", weight=3]; 420[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];420 -> 518[label="",style="solid", color="black", weight=3]; 421[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];421 -> 519[label="",style="solid", color="black", weight=3]; 422[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];422 -> 520[label="",style="solid", color="black", weight=3]; 423[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];423 -> 521[label="",style="solid", color="black", weight=3]; 424[label="(++) range60 False (not (compare False xu30 == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];424 -> 522[label="",style="solid", color="black", weight=3]; 425[label="(++) range60 False (not False && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];425 -> 523[label="",style="solid", color="black", weight=3]; 2323[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) (Succ xu1700) == GT))",fontsize=16,color="black",shape="box"];2323 -> 2330[label="",style="solid", color="black", weight=3]; 2324[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu1690) Zero == GT))",fontsize=16,color="black",shape="box"];2324 -> 2331[label="",style="solid", color="black", weight=3]; 2325[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu1700) == GT))",fontsize=16,color="black",shape="box"];2325 -> 2332[label="",style="solid", color="black", weight=3]; 2326[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2326 -> 2333[label="",style="solid", color="black", weight=3]; 430[label="takeWhile0 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];430 -> 529[label="",style="solid", color="black", weight=3]; 431[label="[]",fontsize=16,color="green",shape="box"];432[label="Pos Zero : takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];432 -> 530[label="",style="dashed", color="green", weight=3]; 433[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];433 -> 531[label="",style="solid", color="black", weight=3]; 434[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Pos Zero) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];434 -> 532[label="",style="solid", color="black", weight=3]; 435[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];435 -> 533[label="",style="solid", color="black", weight=3]; 436[label="takeWhile (flip (<=) (Pos xu310)) (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];436 -> 534[label="",style="solid", color="black", weight=3]; 2501 -> 987[label="",style="dashed", color="red", weight=0]; 2501[label="primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2501 -> 2552[label="",style="dashed", color="magenta", weight=3]; 2502[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) (Succ xu1990) == GT))",fontsize=16,color="black",shape="box"];2502 -> 2553[label="",style="solid", color="black", weight=3]; 2503[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat (Succ xu1980) Zero == GT))",fontsize=16,color="black",shape="box"];2503 -> 2554[label="",style="solid", color="black", weight=3]; 2504[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero (Succ xu1990) == GT))",fontsize=16,color="black",shape="box"];2504 -> 2555[label="",style="solid", color="black", weight=3]; 2505[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2505 -> 2556[label="",style="solid", color="black", weight=3]; 441[label="Neg (Succ xu3000) : takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];441 -> 540[label="",style="dashed", color="green", weight=3]; 442[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];442 -> 541[label="",style="solid", color="black", weight=3]; 443[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];443 -> 542[label="",style="solid", color="black", weight=3]; 444[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];444 -> 543[label="",style="solid", color="black", weight=3]; 445[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];445 -> 544[label="",style="solid", color="black", weight=3]; 881[label="range ((xu90,xu91),(xu100,xu101))",fontsize=16,color="black",shape="box"];881 -> 958[label="",style="solid", color="black", weight=3]; 882[label="range ((xu90,xu91,xu92),(xu100,xu101,xu102))",fontsize=16,color="black",shape="box"];882 -> 959[label="",style="solid", color="black", weight=3]; 883 -> 449[label="",style="dashed", color="red", weight=0]; 883[label="(++) range1 xu48 xu490 foldr (++) [] (map (range1 xu48) xu491)",fontsize=16,color="magenta"];883 -> 960[label="",style="dashed", color="magenta", weight=3]; 883 -> 961[label="",style="dashed", color="magenta", weight=3]; 884 -> 473[label="",style="dashed", color="red", weight=0]; 884[label="(++) range4 xu55 xu56 xu57 xu580 foldr (++) [] (map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="magenta"];884 -> 962[label="",style="dashed", color="magenta", weight=3]; 884 -> 963[label="",style="dashed", color="magenta", weight=3]; 499[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];499 -> 550[label="",style="solid", color="black", weight=3]; 500[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];500 -> 551[label="",style="solid", color="black", weight=3]; 501[label="(++) range00 LT (True && LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];501 -> 552[label="",style="solid", color="black", weight=3]; 2506[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) xu204 == GT))",fontsize=16,color="burlywood",shape="box"];3142[label="xu204/Succ xu2040",fontsize=10,color="white",style="solid",shape="box"];2506 -> 3142[label="",style="solid", color="burlywood", weight=9]; 3142 -> 2557[label="",style="solid", color="burlywood", weight=3]; 3143[label="xu204/Zero",fontsize=10,color="white",style="solid",shape="box"];2506 -> 3143[label="",style="solid", color="burlywood", weight=9]; 3143 -> 2558[label="",style="solid", color="burlywood", weight=3]; 2507[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu204 == GT))",fontsize=16,color="burlywood",shape="box"];3144[label="xu204/Succ xu2040",fontsize=10,color="white",style="solid",shape="box"];2507 -> 3144[label="",style="solid", color="burlywood", weight=9]; 3144 -> 2559[label="",style="solid", color="burlywood", weight=3]; 3145[label="xu204/Zero",fontsize=10,color="white",style="solid",shape="box"];2507 -> 3145[label="",style="solid", color="burlywood", weight=9]; 3145 -> 2560[label="",style="solid", color="burlywood", weight=3]; 506[label="takeWhile1 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];506 -> 557[label="",style="solid", color="black", weight=3]; 507[label="takeWhile0 (flip (<=) (Integer (Neg xu3100))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];507 -> 558[label="",style="solid", color="black", weight=3]; 508[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];508 -> 559[label="",style="solid", color="black", weight=3]; 509[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];509 -> 560[label="",style="dashed", color="green", weight=3]; 510[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];510 -> 561[label="",style="solid", color="black", weight=3]; 511[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];511 -> 562[label="",style="dashed", color="green", weight=3]; 512[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];512 -> 563[label="",style="solid", color="black", weight=3]; 2550[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) xu209 == GT))",fontsize=16,color="burlywood",shape="box"];3146[label="xu209/Succ xu2090",fontsize=10,color="white",style="solid",shape="box"];2550 -> 3146[label="",style="solid", color="burlywood", weight=9]; 3146 -> 2575[label="",style="solid", color="burlywood", weight=3]; 3147[label="xu209/Zero",fontsize=10,color="white",style="solid",shape="box"];2550 -> 3147[label="",style="solid", color="burlywood", weight=9]; 3147 -> 2576[label="",style="solid", color="burlywood", weight=3]; 2551[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero xu209 == GT))",fontsize=16,color="burlywood",shape="box"];3148[label="xu209/Succ xu2090",fontsize=10,color="white",style="solid",shape="box"];2551 -> 3148[label="",style="solid", color="burlywood", weight=9]; 3148 -> 2577[label="",style="solid", color="burlywood", weight=3]; 3149[label="xu209/Zero",fontsize=10,color="white",style="solid",shape="box"];2551 -> 3149[label="",style="solid", color="burlywood", weight=9]; 3149 -> 2578[label="",style="solid", color="burlywood", weight=3]; 517[label="takeWhile1 (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];517 -> 568[label="",style="solid", color="black", weight=3]; 518[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];518 -> 569[label="",style="dashed", color="green", weight=3]; 519[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];519 -> 570[label="",style="dashed", color="green", weight=3]; 520[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];520 -> 571[label="",style="solid", color="black", weight=3]; 521[label="Integer (Neg Zero) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];521 -> 572[label="",style="dashed", color="green", weight=3]; 522[label="(++) range60 False (not (compare3 False xu30 == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="black",shape="box"];522 -> 573[label="",style="solid", color="black", weight=3]; 523[label="(++) range60 False (True && False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];523 -> 574[label="",style="solid", color="black", weight=3]; 2330 -> 2275[label="",style="dashed", color="red", weight=0]; 2330[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu1690 xu1700 == GT))",fontsize=16,color="magenta"];2330 -> 2337[label="",style="dashed", color="magenta", weight=3]; 2330 -> 2338[label="",style="dashed", color="magenta", weight=3]; 2331[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2331 -> 2339[label="",style="solid", color="black", weight=3]; 2332[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2332 -> 2340[label="",style="solid", color="black", weight=3]; 2333[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2333 -> 2341[label="",style="solid", color="black", weight=3]; 529[label="takeWhile0 (flip (<=) (Pos Zero)) (Pos (Succ xu3000)) (numericEnumFrom $! Pos (Succ xu3000) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];529 -> 582[label="",style="solid", color="black", weight=3]; 530[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom $! Pos Zero + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];530 -> 583[label="",style="solid", color="black", weight=3]; 531[label="takeWhile (flip (<=) (Pos Zero)) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];531 -> 584[label="",style="solid", color="black", weight=3]; 532[label="[]",fontsize=16,color="green",shape="box"];533[label="takeWhile (flip (<=) (Neg Zero)) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];533 -> 585[label="",style="solid", color="black", weight=3]; 534[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];534 -> 586[label="",style="solid", color="black", weight=3]; 2552[label="xu3000",fontsize=16,color="green",shape="box"];987[label="primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];987 -> 1075[label="",style="solid", color="black", weight=3]; 2553 -> 2391[label="",style="dashed", color="red", weight=0]; 2553[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (primCmpNat xu1980 xu1990 == GT))",fontsize=16,color="magenta"];2553 -> 2579[label="",style="dashed", color="magenta", weight=3]; 2553 -> 2580[label="",style="dashed", color="magenta", weight=3]; 2554[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (GT == GT))",fontsize=16,color="black",shape="box"];2554 -> 2581[label="",style="solid", color="black", weight=3]; 2555[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (LT == GT))",fontsize=16,color="black",shape="box"];2555 -> 2582[label="",style="solid", color="black", weight=3]; 2556[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2556 -> 2583[label="",style="solid", color="black", weight=3]; 540[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom $! Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];540 -> 594[label="",style="solid", color="black", weight=3]; 541[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];541 -> 595[label="",style="solid", color="black", weight=3]; 542[label="takeWhile (flip (<=) (Pos Zero)) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];542 -> 596[label="",style="solid", color="black", weight=3]; 543[label="takeWhile0 (flip (<=) (Neg (Succ xu3100))) (Neg Zero) (numericEnumFrom $! Neg Zero + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];543 -> 597[label="",style="solid", color="black", weight=3]; 544[label="takeWhile (flip (<=) (Neg Zero)) (Neg Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];544 -> 598[label="",style="solid", color="black", weight=3]; 958[label="concatMap (range2 xu91 xu101) (range (xu90,xu100))",fontsize=16,color="black",shape="box"];958 -> 1046[label="",style="solid", color="black", weight=3]; 959[label="concatMap (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100))",fontsize=16,color="black",shape="box"];959 -> 1047[label="",style="solid", color="black", weight=3]; 960 -> 714[label="",style="dashed", color="red", weight=0]; 960[label="foldr (++) [] (map (range1 xu48) xu491)",fontsize=16,color="magenta"];960 -> 1048[label="",style="dashed", color="magenta", weight=3]; 961[label="range1 xu48 xu490",fontsize=16,color="black",shape="box"];961 -> 1049[label="",style="solid", color="black", weight=3]; 962 -> 717[label="",style="dashed", color="red", weight=0]; 962[label="foldr (++) [] (map (range4 xu55 xu56 xu57) xu581)",fontsize=16,color="magenta"];962 -> 1050[label="",style="dashed", color="magenta", weight=3]; 963[label="range4 xu55 xu56 xu57 xu580",fontsize=16,color="black",shape="box"];963 -> 1051[label="",style="solid", color="black", weight=3]; 550[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 LT xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3150[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];550 -> 3150[label="",style="solid", color="burlywood", weight=9]; 3150 -> 603[label="",style="solid", color="burlywood", weight=3]; 3151[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];550 -> 3151[label="",style="solid", color="burlywood", weight=9]; 3151 -> 604[label="",style="solid", color="burlywood", weight=3]; 3152[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];550 -> 3152[label="",style="solid", color="burlywood", weight=9]; 3152 -> 605[label="",style="solid", color="burlywood", weight=3]; 551[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];551 -> 606[label="",style="solid", color="black", weight=3]; 552[label="(++) range00 LT (LT >= xu30) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];552 -> 607[label="",style="solid", color="black", weight=3]; 2557[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) (Succ xu2040) == GT))",fontsize=16,color="black",shape="box"];2557 -> 2584[label="",style="solid", color="black", weight=3]; 2558[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2030) Zero == GT))",fontsize=16,color="black",shape="box"];2558 -> 2585[label="",style="solid", color="black", weight=3]; 2559[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu2040) == GT))",fontsize=16,color="black",shape="box"];2559 -> 2586[label="",style="solid", color="black", weight=3]; 2560[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2560 -> 2587[label="",style="solid", color="black", weight=3]; 557[label="takeWhile0 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];557 -> 613[label="",style="solid", color="black", weight=3]; 558[label="[]",fontsize=16,color="green",shape="box"];559[label="Integer (Pos Zero) : takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];559 -> 614[label="",style="dashed", color="green", weight=3]; 560[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];560 -> 615[label="",style="solid", color="black", weight=3]; 561[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Pos Zero)) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];561 -> 616[label="",style="solid", color="black", weight=3]; 562[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];562 -> 617[label="",style="solid", color="black", weight=3]; 563[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];563 -> 618[label="",style="solid", color="black", weight=3]; 2575[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) (Succ xu2090) == GT))",fontsize=16,color="black",shape="box"];2575 -> 2602[label="",style="solid", color="black", weight=3]; 2576[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat (Succ xu2080) Zero == GT))",fontsize=16,color="black",shape="box"];2576 -> 2603[label="",style="solid", color="black", weight=3]; 2577[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero (Succ xu2090) == GT))",fontsize=16,color="black",shape="box"];2577 -> 2604[label="",style="solid", color="black", weight=3]; 2578[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat Zero Zero == GT))",fontsize=16,color="black",shape="box"];2578 -> 2605[label="",style="solid", color="black", weight=3]; 568[label="Integer (Neg (Succ xu30000)) : takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];568 -> 624[label="",style="dashed", color="green", weight=3]; 569[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];569 -> 625[label="",style="solid", color="black", weight=3]; 570[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];570 -> 626[label="",style="solid", color="black", weight=3]; 571[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];571 -> 627[label="",style="solid", color="black", weight=3]; 572[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];572 -> 628[label="",style="solid", color="black", weight=3]; 573[label="(++) range60 False (not (compare2 False xu30 (False == xu30) == LT)) foldr (++) [] (map (range6 False xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3153[label="xu30/False",fontsize=10,color="white",style="solid",shape="box"];573 -> 3153[label="",style="solid", color="burlywood", weight=9]; 3153 -> 629[label="",style="solid", color="burlywood", weight=3]; 3154[label="xu30/True",fontsize=10,color="white",style="solid",shape="box"];573 -> 3154[label="",style="solid", color="burlywood", weight=9]; 3154 -> 630[label="",style="solid", color="burlywood", weight=3]; 574[label="(++) range60 False (False >= xu30) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];574 -> 631[label="",style="solid", color="black", weight=3]; 2337[label="xu1690",fontsize=16,color="green",shape="box"];2338[label="xu1700",fontsize=16,color="green",shape="box"];2339[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2339 -> 2361[label="",style="solid", color="black", weight=3]; 2340[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2340 -> 2362[label="",style="solid", color="black", weight=3]; 2341 -> 2340[label="",style="dashed", color="red", weight=0]; 2341[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];582[label="[]",fontsize=16,color="green",shape="box"];583[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (Pos Zero + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];583 -> 639[label="",style="solid", color="black", weight=3]; 584[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];584 -> 640[label="",style="solid", color="black", weight=3]; 585[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];585 -> 641[label="",style="solid", color="black", weight=3]; 586[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];586 -> 642[label="",style="solid", color="black", weight=3]; 1075[label="primMinusNat (Succ Zero) (Succ xu30000)",fontsize=16,color="black",shape="box"];1075 -> 1166[label="",style="solid", color="black", weight=3]; 2579[label="xu1990",fontsize=16,color="green",shape="box"];2580[label="xu1980",fontsize=16,color="green",shape="box"];2581[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not True)",fontsize=16,color="black",shape="box"];2581 -> 2606[label="",style="solid", color="black", weight=3]; 2582[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not False)",fontsize=16,color="black",shape="triangle"];2582 -> 2607[label="",style="solid", color="black", weight=3]; 2583 -> 2582[label="",style="dashed", color="red", weight=0]; 2583[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) (not False)",fontsize=16,color="magenta"];594[label="takeWhile (flip (<=) (Neg Zero)) (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];594 -> 650[label="",style="solid", color="black", weight=3]; 595[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];595 -> 651[label="",style="solid", color="black", weight=3]; 596[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];596 -> 652[label="",style="solid", color="black", weight=3]; 597[label="[]",fontsize=16,color="green",shape="box"];598[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];598 -> 653[label="",style="solid", color="black", weight=3]; 1046[label="concat . map (range2 xu91 xu101)",fontsize=16,color="black",shape="box"];1046 -> 1134[label="",style="solid", color="black", weight=3]; 1047[label="concat . map (range5 xu92 xu102 xu91 xu101)",fontsize=16,color="black",shape="box"];1047 -> 1135[label="",style="solid", color="black", weight=3]; 1048[label="xu491",fontsize=16,color="green",shape="box"];1049[label="range10 xu48 xu490",fontsize=16,color="black",shape="box"];1049 -> 1136[label="",style="solid", color="black", weight=3]; 1050[label="xu581",fontsize=16,color="green",shape="box"];1051[label="range40 xu55 xu56 xu57 xu580",fontsize=16,color="black",shape="box"];1051 -> 1137[label="",style="solid", color="black", weight=3]; 603[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];603 -> 657[label="",style="solid", color="black", weight=3]; 604[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];604 -> 658[label="",style="solid", color="black", weight=3]; 605[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];605 -> 659[label="",style="solid", color="black", weight=3]; 606[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];606 -> 660[label="",style="solid", color="black", weight=3]; 607[label="(++) range00 LT (compare LT xu30 /= LT) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];607 -> 661[label="",style="solid", color="black", weight=3]; 2584 -> 2460[label="",style="dashed", color="red", weight=0]; 2584[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu2030 xu2040 == GT))",fontsize=16,color="magenta"];2584 -> 2608[label="",style="dashed", color="magenta", weight=3]; 2584 -> 2609[label="",style="dashed", color="magenta", weight=3]; 2585[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2585 -> 2610[label="",style="solid", color="black", weight=3]; 2586[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2586 -> 2611[label="",style="solid", color="black", weight=3]; 2587[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2587 -> 2612[label="",style="solid", color="black", weight=3]; 613[label="takeWhile0 (flip (<=) (Integer (Pos Zero))) (Integer (Pos (Succ xu30000))) (numericEnumFrom $! Integer (Pos (Succ xu30000)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];613 -> 669[label="",style="solid", color="black", weight=3]; 614[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom $! Integer (Pos Zero) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];614 -> 670[label="",style="solid", color="black", weight=3]; 615[label="takeWhile (flip (<=) (Integer (Pos Zero))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];615 -> 671[label="",style="solid", color="black", weight=3]; 616[label="[]",fontsize=16,color="green",shape="box"];617[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];617 -> 672[label="",style="solid", color="black", weight=3]; 618[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];618 -> 673[label="",style="solid", color="black", weight=3]; 2602 -> 2509[label="",style="dashed", color="red", weight=0]; 2602[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (primCmpNat xu2080 xu2090 == GT))",fontsize=16,color="magenta"];2602 -> 2627[label="",style="dashed", color="magenta", weight=3]; 2602 -> 2628[label="",style="dashed", color="magenta", weight=3]; 2603[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (GT == GT))",fontsize=16,color="black",shape="box"];2603 -> 2629[label="",style="solid", color="black", weight=3]; 2604[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (LT == GT))",fontsize=16,color="black",shape="box"];2604 -> 2630[label="",style="solid", color="black", weight=3]; 2605[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not (EQ == GT))",fontsize=16,color="black",shape="box"];2605 -> 2631[label="",style="solid", color="black", weight=3]; 624[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom $! Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];624 -> 681[label="",style="solid", color="black", weight=3]; 625[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];625 -> 682[label="",style="solid", color="black", weight=3]; 626[label="takeWhile (flip (<=) (Integer (Pos Zero))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];626 -> 683[label="",style="solid", color="black", weight=3]; 627[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu31000)))) (Integer (Neg Zero)) (numericEnumFrom $! Integer (Neg Zero) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];627 -> 684[label="",style="solid", color="black", weight=3]; 628[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Neg Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];628 -> 685[label="",style="solid", color="black", weight=3]; 629[label="(++) range60 False (not (compare2 False False (False == False) == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];629 -> 686[label="",style="solid", color="black", weight=3]; 630[label="(++) range60 False (not (compare2 False True (False == True) == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];630 -> 687[label="",style="solid", color="black", weight=3]; 631[label="(++) range60 False (compare False xu30 /= LT) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];631 -> 688[label="",style="solid", color="black", weight=3]; 2361[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2361 -> 2373[label="",style="solid", color="black", weight=3]; 2362[label="takeWhile1 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2362 -> 2374[label="",style="solid", color="black", weight=3]; 639[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos Zero + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos Zero + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];639 -> 697[label="",style="solid", color="black", weight=3]; 640[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];640 -> 698[label="",style="solid", color="black", weight=3]; 641[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];641 -> 699[label="",style="solid", color="black", weight=3]; 642[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];642 -> 700[label="",style="solid", color="black", weight=3]; 1166[label="primMinusNat Zero xu30000",fontsize=16,color="burlywood",shape="box"];3155[label="xu30000/Succ xu300000",fontsize=10,color="white",style="solid",shape="box"];1166 -> 3155[label="",style="solid", color="burlywood", weight=9]; 3155 -> 1319[label="",style="solid", color="burlywood", weight=3]; 3156[label="xu30000/Zero",fontsize=10,color="white",style="solid",shape="box"];1166 -> 3156[label="",style="solid", color="burlywood", weight=9]; 3156 -> 1320[label="",style="solid", color="burlywood", weight=3]; 2606[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) False",fontsize=16,color="black",shape="box"];2606 -> 2632[label="",style="solid", color="black", weight=3]; 2607[label="takeWhile1 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) True",fontsize=16,color="black",shape="box"];2607 -> 2633[label="",style="solid", color="black", weight=3]; 650[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Neg (Succ xu3000) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];650 -> 709[label="",style="solid", color="black", weight=3]; 651[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];651 -> 710[label="",style="solid", color="black", weight=3]; 652[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];652 -> 711[label="",style="solid", color="black", weight=3]; 653[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];653 -> 712[label="",style="solid", color="black", weight=3]; 1134[label="concat (map (range2 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="black",shape="box"];1134 -> 1199[label="",style="solid", color="black", weight=3]; 1135[label="concat (map (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="black",shape="box"];1135 -> 1200[label="",style="solid", color="black", weight=3]; 1136[label="(xu48,xu490) : []",fontsize=16,color="green",shape="box"];1137[label="concatMap (range3 xu55 xu580) (range (xu56,xu57))",fontsize=16,color="black",shape="box"];1137 -> 1201[label="",style="solid", color="black", weight=3]; 657[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];657 -> 742[label="",style="solid", color="black", weight=3]; 658[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];658 -> 743[label="",style="solid", color="black", weight=3]; 659[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];659 -> 744[label="",style="solid", color="black", weight=3]; 660[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];660 -> 745[label="",style="solid", color="black", weight=3]; 661[label="(++) range00 LT (not (compare LT xu30 == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];661 -> 746[label="",style="solid", color="black", weight=3]; 2608[label="xu2040",fontsize=16,color="green",shape="box"];2609[label="xu2030",fontsize=16,color="green",shape="box"];2610[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2610 -> 2634[label="",style="solid", color="black", weight=3]; 2611[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2611 -> 2635[label="",style="solid", color="black", weight=3]; 2612 -> 2611[label="",style="dashed", color="red", weight=0]; 2612[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];669[label="[]",fontsize=16,color="green",shape="box"];670[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (Integer (Pos Zero) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];670 -> 754[label="",style="solid", color="black", weight=3]; 671[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];671 -> 755[label="",style="solid", color="black", weight=3]; 672[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];672 -> 756[label="",style="solid", color="black", weight=3]; 673[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];673 -> 757[label="",style="solid", color="black", weight=3]; 2627[label="xu2080",fontsize=16,color="green",shape="box"];2628[label="xu2090",fontsize=16,color="green",shape="box"];2629[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not True)",fontsize=16,color="black",shape="box"];2629 -> 2651[label="",style="solid", color="black", weight=3]; 2630[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="black",shape="triangle"];2630 -> 2652[label="",style="solid", color="black", weight=3]; 2631 -> 2630[label="",style="dashed", color="red", weight=0]; 2631[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) (not False)",fontsize=16,color="magenta"];681[label="takeWhile (flip (<=) (Integer (Neg Zero))) (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];681 -> 765[label="",style="solid", color="black", weight=3]; 682[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];682 -> 766[label="",style="solid", color="black", weight=3]; 683[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];683 -> 767[label="",style="solid", color="black", weight=3]; 684[label="[]",fontsize=16,color="green",shape="box"];685[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];685 -> 768[label="",style="solid", color="black", weight=3]; 686[label="(++) range60 False (not (compare2 False False True == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];686 -> 769[label="",style="solid", color="black", weight=3]; 687[label="(++) range60 False (not (compare2 False True False == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];687 -> 770[label="",style="solid", color="black", weight=3]; 688[label="(++) range60 False (not (compare False xu30 == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];688 -> 771[label="",style="solid", color="black", weight=3]; 2373[label="takeWhile0 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2373 -> 2377[label="",style="solid", color="black", weight=3]; 2374[label="Pos (Succ xu168) : takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2374 -> 2378[label="",style="dashed", color="green", weight=3]; 697[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos Zero) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];697 -> 782[label="",style="solid", color="black", weight=3]; 698[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];698 -> 783[label="",style="solid", color="black", weight=3]; 699[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];699 -> 784[label="",style="solid", color="black", weight=3]; 700[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) (Succ xu3000))) (numericEnumFrom (primMinusNat (Succ Zero) (Succ xu3000))))",fontsize=16,color="black",shape="box"];700 -> 785[label="",style="solid", color="black", weight=3]; 1319[label="primMinusNat Zero (Succ xu300000)",fontsize=16,color="black",shape="box"];1319 -> 1404[label="",style="solid", color="black", weight=3]; 1320[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];1320 -> 1405[label="",style="solid", color="black", weight=3]; 2632[label="takeWhile0 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) otherwise",fontsize=16,color="black",shape="box"];2632 -> 2653[label="",style="solid", color="black", weight=3]; 2633[label="Neg (Succ xu196) : takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom $! xu197)",fontsize=16,color="green",shape="box"];2633 -> 2654[label="",style="dashed", color="green", weight=3]; 709[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];709 -> 796[label="",style="solid", color="black", weight=3]; 710[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];710 -> 797[label="",style="solid", color="black", weight=3]; 711[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];711 -> 798[label="",style="solid", color="black", weight=3]; 712[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];712 -> 799[label="",style="solid", color="black", weight=3]; 1199 -> 74[label="",style="dashed", color="red", weight=0]; 1199[label="foldr (++) [] (map (range2 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="magenta"];1199 -> 1208[label="",style="dashed", color="magenta", weight=3]; 1199 -> 1209[label="",style="dashed", color="magenta", weight=3]; 1199 -> 1210[label="",style="dashed", color="magenta", weight=3]; 1200 -> 78[label="",style="dashed", color="red", weight=0]; 1200[label="foldr (++) [] (map (range5 xu92 xu102 xu91 xu101) (range (xu90,xu100)))",fontsize=16,color="magenta"];1200 -> 1211[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1212[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1213[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1214[label="",style="dashed", color="magenta", weight=3]; 1200 -> 1215[label="",style="dashed", color="magenta", weight=3]; 1201[label="concat . map (range3 xu55 xu580)",fontsize=16,color="black",shape="box"];1201 -> 1216[label="",style="solid", color="black", weight=3]; 742[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];742 -> 822[label="",style="solid", color="black", weight=3]; 743[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];743 -> 823[label="",style="solid", color="black", weight=3]; 744[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];744 -> 824[label="",style="solid", color="black", weight=3]; 745[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];745 -> 825[label="",style="solid", color="black", weight=3]; 746[label="(++) range00 LT (not (compare3 LT xu30 == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="black",shape="box"];746 -> 826[label="",style="solid", color="black", weight=3]; 2634[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2634 -> 2655[label="",style="solid", color="black", weight=3]; 2635[label="takeWhile1 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2635 -> 2656[label="",style="solid", color="black", weight=3]; 754[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];754 -> 835[label="",style="solid", color="black", weight=3]; 755[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];755 -> 836[label="",style="solid", color="black", weight=3]; 756[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];756 -> 837[label="",style="solid", color="black", weight=3]; 757[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];757 -> 838[label="",style="solid", color="black", weight=3]; 2651[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) False",fontsize=16,color="black",shape="box"];2651 -> 2670[label="",style="solid", color="black", weight=3]; 2652[label="takeWhile1 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2652 -> 2671[label="",style="solid", color="black", weight=3]; 765[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];765 -> 847[label="",style="solid", color="black", weight=3]; 766[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];766 -> 848[label="",style="solid", color="black", weight=3]; 767[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];767 -> 849[label="",style="solid", color="black", weight=3]; 768[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];768 -> 850[label="",style="solid", color="black", weight=3]; 769[label="(++) range60 False (not (EQ == LT)) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];769 -> 851[label="",style="solid", color="black", weight=3]; 770[label="(++) range60 False (not (compare1 False True (False <= True) == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];770 -> 852[label="",style="solid", color="black", weight=3]; 771[label="(++) range60 False (not (compare3 False xu30 == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="black",shape="box"];771 -> 853[label="",style="solid", color="black", weight=3]; 2377[label="takeWhile0 (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168)) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2377 -> 2381[label="",style="solid", color="black", weight=3]; 2378[label="takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom $! Pos (Succ xu168) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2378 -> 2382[label="",style="solid", color="black", weight=3]; 782[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primPlusInt (Pos Zero) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];782 -> 863[label="",style="solid", color="black", weight=3]; 783[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];783 -> 864[label="",style="solid", color="black", weight=3]; 784[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];784 -> 865[label="",style="solid", color="black", weight=3]; 785[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero xu3000)) (numericEnumFrom (primMinusNat Zero xu3000)))",fontsize=16,color="burlywood",shape="box"];3157[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];785 -> 3157[label="",style="solid", color="burlywood", weight=9]; 3157 -> 866[label="",style="solid", color="burlywood", weight=3]; 3158[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];785 -> 3158[label="",style="solid", color="burlywood", weight=9]; 3158 -> 867[label="",style="solid", color="burlywood", weight=3]; 1404[label="Neg (Succ xu300000)",fontsize=16,color="green",shape="box"];1405[label="Pos Zero",fontsize=16,color="green",shape="box"];2653[label="takeWhile0 (flip (<=) (Neg (Succ xu195))) (Neg (Succ xu196)) (numericEnumFrom $! xu197) True",fontsize=16,color="black",shape="box"];2653 -> 2672[label="",style="solid", color="black", weight=3]; 2654[label="takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom $! xu197)",fontsize=16,color="black",shape="box"];2654 -> 2673[label="",style="solid", color="black", weight=3]; 796[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Neg (Succ xu3000)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];796 -> 877[label="",style="solid", color="black", weight=3]; 797[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];797 -> 878[label="",style="solid", color="black", weight=3]; 798[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];798 -> 879[label="",style="solid", color="black", weight=3]; 799[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) Zero)) (numericEnumFrom (primMinusNat (Succ Zero) Zero)))",fontsize=16,color="black",shape="box"];799 -> 880[label="",style="solid", color="black", weight=3]; 1208[label="xu101",fontsize=16,color="green",shape="box"];1209[label="range (xu90,xu100)",fontsize=16,color="blue",shape="box"];3159[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3159[label="",style="solid", color="blue", weight=9]; 3159 -> 1219[label="",style="solid", color="blue", weight=3]; 3160[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3160[label="",style="solid", color="blue", weight=9]; 3160 -> 1220[label="",style="solid", color="blue", weight=3]; 3161[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3161[label="",style="solid", color="blue", weight=9]; 3161 -> 1221[label="",style="solid", color="blue", weight=3]; 3162[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3162[label="",style="solid", color="blue", weight=9]; 3162 -> 1222[label="",style="solid", color="blue", weight=3]; 3163[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3163[label="",style="solid", color="blue", weight=9]; 3163 -> 1223[label="",style="solid", color="blue", weight=3]; 3164[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3164[label="",style="solid", color="blue", weight=9]; 3164 -> 1224[label="",style="solid", color="blue", weight=3]; 3165[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3165[label="",style="solid", color="blue", weight=9]; 3165 -> 1225[label="",style="solid", color="blue", weight=3]; 3166[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1209 -> 3166[label="",style="solid", color="blue", weight=9]; 3166 -> 1226[label="",style="solid", color="blue", weight=3]; 1210[label="xu91",fontsize=16,color="green",shape="box"];1211[label="xu102",fontsize=16,color="green",shape="box"];1212[label="xu101",fontsize=16,color="green",shape="box"];1213[label="range (xu90,xu100)",fontsize=16,color="blue",shape="box"];3167[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3167[label="",style="solid", color="blue", weight=9]; 3167 -> 1227[label="",style="solid", color="blue", weight=3]; 3168[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3168[label="",style="solid", color="blue", weight=9]; 3168 -> 1228[label="",style="solid", color="blue", weight=3]; 3169[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3169[label="",style="solid", color="blue", weight=9]; 3169 -> 1229[label="",style="solid", color="blue", weight=3]; 3170[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3170[label="",style="solid", color="blue", weight=9]; 3170 -> 1230[label="",style="solid", color="blue", weight=3]; 3171[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3171[label="",style="solid", color="blue", weight=9]; 3171 -> 1231[label="",style="solid", color="blue", weight=3]; 3172[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3172[label="",style="solid", color="blue", weight=9]; 3172 -> 1232[label="",style="solid", color="blue", weight=3]; 3173[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3173[label="",style="solid", color="blue", weight=9]; 3173 -> 1233[label="",style="solid", color="blue", weight=3]; 3174[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1213 -> 3174[label="",style="solid", color="blue", weight=9]; 3174 -> 1234[label="",style="solid", color="blue", weight=3]; 1214[label="xu91",fontsize=16,color="green",shape="box"];1215[label="xu92",fontsize=16,color="green",shape="box"];1216[label="concat (map (range3 xu55 xu580) (range (xu56,xu57)))",fontsize=16,color="black",shape="box"];1216 -> 1235[label="",style="solid", color="black", weight=3]; 822[label="(++) range00 LT (not False) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];822 -> 885[label="",style="solid", color="black", weight=3]; 823[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];823 -> 886[label="",style="solid", color="black", weight=3]; 824[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];824 -> 887[label="",style="solid", color="black", weight=3]; 825[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 EQ xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3175[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];825 -> 3175[label="",style="solid", color="burlywood", weight=9]; 3175 -> 888[label="",style="solid", color="burlywood", weight=3]; 3176[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];825 -> 3176[label="",style="solid", color="burlywood", weight=9]; 3176 -> 889[label="",style="solid", color="burlywood", weight=3]; 3177[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];825 -> 3177[label="",style="solid", color="burlywood", weight=9]; 3177 -> 890[label="",style="solid", color="burlywood", weight=3]; 826[label="(++) range00 LT (not (compare2 LT xu30 (LT == xu30) == LT)) foldr (++) [] (map (range0 GT xu30) (EQ : GT : []))",fontsize=16,color="burlywood",shape="box"];3178[label="xu30/LT",fontsize=10,color="white",style="solid",shape="box"];826 -> 3178[label="",style="solid", color="burlywood", weight=9]; 3178 -> 891[label="",style="solid", color="burlywood", weight=3]; 3179[label="xu30/EQ",fontsize=10,color="white",style="solid",shape="box"];826 -> 3179[label="",style="solid", color="burlywood", weight=9]; 3179 -> 892[label="",style="solid", color="burlywood", weight=3]; 3180[label="xu30/GT",fontsize=10,color="white",style="solid",shape="box"];826 -> 3180[label="",style="solid", color="burlywood", weight=9]; 3180 -> 893[label="",style="solid", color="burlywood", weight=3]; 2655[label="takeWhile0 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2655 -> 2674[label="",style="solid", color="black", weight=3]; 2656[label="Integer (Pos (Succ xu202)) : takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2656 -> 2675[label="",style="dashed", color="green", weight=3]; 835[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (Pos Zero) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos Zero) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];835 -> 904[label="",style="solid", color="black", weight=3]; 836[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];836 -> 905[label="",style="solid", color="black", weight=3]; 837[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];837 -> 906[label="",style="solid", color="black", weight=3]; 838 -> 40[label="",style="dashed", color="red", weight=0]; 838[label="takeWhile (flip (<=) (Integer (Pos xu3100))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];838 -> 907[label="",style="dashed", color="magenta", weight=3]; 838 -> 908[label="",style="dashed", color="magenta", weight=3]; 2670[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) otherwise",fontsize=16,color="black",shape="box"];2670 -> 2688[label="",style="solid", color="black", weight=3]; 2671[label="Integer (Neg (Succ xu207)) : takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2671 -> 2689[label="",style="dashed", color="green", weight=3]; 847[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu30000)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];847 -> 919[label="",style="solid", color="black", weight=3]; 848[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];848 -> 920[label="",style="solid", color="black", weight=3]; 849[label="takeWhile (flip (<=) (Integer (Pos Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];849 -> 921[label="",style="solid", color="black", weight=3]; 850[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];850 -> 922[label="",style="solid", color="black", weight=3]; 851[label="(++) range60 False (not False) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];851 -> 923[label="",style="solid", color="black", weight=3]; 852[label="(++) range60 False (not (compare1 False True True == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];852 -> 924[label="",style="solid", color="black", weight=3]; 853[label="(++) range60 False (not (compare2 False xu30 (False == xu30) == LT)) foldr (++) [] (map (range6 True xu30) (True : []))",fontsize=16,color="burlywood",shape="box"];3181[label="xu30/False",fontsize=10,color="white",style="solid",shape="box"];853 -> 3181[label="",style="solid", color="burlywood", weight=9]; 3181 -> 925[label="",style="solid", color="burlywood", weight=3]; 3182[label="xu30/True",fontsize=10,color="white",style="solid",shape="box"];853 -> 3182[label="",style="solid", color="burlywood", weight=9]; 3182 -> 926[label="",style="solid", color="burlywood", weight=3]; 2381[label="[]",fontsize=16,color="green",shape="box"];2382[label="takeWhile (flip (<=) (Pos (Succ xu167))) (Pos (Succ xu168) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Pos (Succ xu168) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2382 -> 2450[label="",style="solid", color="black", weight=3]; 863[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos (primPlusNat Zero (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero)))))",fontsize=16,color="black",shape="box"];863 -> 937[label="",style="solid", color="black", weight=3]; 864 -> 44[label="",style="dashed", color="red", weight=0]; 864[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];864 -> 938[label="",style="dashed", color="magenta", weight=3]; 864 -> 939[label="",style="dashed", color="magenta", weight=3]; 865 -> 44[label="",style="dashed", color="red", weight=0]; 865[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];865 -> 940[label="",style="dashed", color="magenta", weight=3]; 865 -> 941[label="",style="dashed", color="magenta", weight=3]; 866[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero (Succ xu30000))) (numericEnumFrom (primMinusNat Zero (Succ xu30000))))",fontsize=16,color="black",shape="box"];866 -> 942[label="",style="solid", color="black", weight=3]; 867[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (primMinusNat Zero Zero)) (numericEnumFrom (primMinusNat Zero Zero)))",fontsize=16,color="black",shape="box"];867 -> 943[label="",style="solid", color="black", weight=3]; 2672[label="[]",fontsize=16,color="green",shape="box"];2673[label="takeWhile (flip (<=) (Neg (Succ xu195))) (xu197 `seq` numericEnumFrom xu197)",fontsize=16,color="black",shape="box"];2673 -> 2690[label="",style="solid", color="black", weight=3]; 877[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat (Succ Zero) (Succ xu3000))) (numericEnumFrom (primMinusNat (Succ Zero) (Succ xu3000))))",fontsize=16,color="black",shape="box"];877 -> 954[label="",style="solid", color="black", weight=3]; 878[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];878 -> 955[label="",style="solid", color="black", weight=3]; 879[label="takeWhile (flip (<=) (Pos Zero)) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];879 -> 956[label="",style="solid", color="black", weight=3]; 880[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos (Succ Zero))) (numericEnumFrom (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];880 -> 957[label="",style="solid", color="black", weight=3]; 1219 -> 722[label="",style="dashed", color="red", weight=0]; 1219[label="range (xu90,xu100)",fontsize=16,color="magenta"];1219 -> 1238[label="",style="dashed", color="magenta", weight=3]; 1219 -> 1239[label="",style="dashed", color="magenta", weight=3]; 1220 -> 723[label="",style="dashed", color="red", weight=0]; 1220[label="range (xu90,xu100)",fontsize=16,color="magenta"];1220 -> 1240[label="",style="dashed", color="magenta", weight=3]; 1220 -> 1241[label="",style="dashed", color="magenta", weight=3]; 1221 -> 6[label="",style="dashed", color="red", weight=0]; 1221[label="range (xu90,xu100)",fontsize=16,color="magenta"];1221 -> 1242[label="",style="dashed", color="magenta", weight=3]; 1222 -> 7[label="",style="dashed", color="red", weight=0]; 1222[label="range (xu90,xu100)",fontsize=16,color="magenta"];1222 -> 1243[label="",style="dashed", color="magenta", weight=3]; 1223 -> 8[label="",style="dashed", color="red", weight=0]; 1223[label="range (xu90,xu100)",fontsize=16,color="magenta"];1223 -> 1244[label="",style="dashed", color="magenta", weight=3]; 1224 -> 9[label="",style="dashed", color="red", weight=0]; 1224[label="range (xu90,xu100)",fontsize=16,color="magenta"];1224 -> 1245[label="",style="dashed", color="magenta", weight=3]; 1225 -> 10[label="",style="dashed", color="red", weight=0]; 1225[label="range (xu90,xu100)",fontsize=16,color="magenta"];1225 -> 1246[label="",style="dashed", color="magenta", weight=3]; 1226 -> 11[label="",style="dashed", color="red", weight=0]; 1226[label="range (xu90,xu100)",fontsize=16,color="magenta"];1226 -> 1247[label="",style="dashed", color="magenta", weight=3]; 1227 -> 722[label="",style="dashed", color="red", weight=0]; 1227[label="range (xu90,xu100)",fontsize=16,color="magenta"];1227 -> 1248[label="",style="dashed", color="magenta", weight=3]; 1227 -> 1249[label="",style="dashed", color="magenta", weight=3]; 1228 -> 723[label="",style="dashed", color="red", weight=0]; 1228[label="range (xu90,xu100)",fontsize=16,color="magenta"];1228 -> 1250[label="",style="dashed", color="magenta", weight=3]; 1228 -> 1251[label="",style="dashed", color="magenta", weight=3]; 1229 -> 6[label="",style="dashed", color="red", weight=0]; 1229[label="range (xu90,xu100)",fontsize=16,color="magenta"];1229 -> 1252[label="",style="dashed", color="magenta", weight=3]; 1230 -> 7[label="",style="dashed", color="red", weight=0]; 1230[label="range (xu90,xu100)",fontsize=16,color="magenta"];1230 -> 1253[label="",style="dashed", color="magenta", weight=3]; 1231 -> 8[label="",style="dashed", color="red", weight=0]; 1231[label="range (xu90,xu100)",fontsize=16,color="magenta"];1231 -> 1254[label="",style="dashed", color="magenta", weight=3]; 1232 -> 9[label="",style="dashed", color="red", weight=0]; 1232[label="range (xu90,xu100)",fontsize=16,color="magenta"];1232 -> 1255[label="",style="dashed", color="magenta", weight=3]; 1233 -> 10[label="",style="dashed", color="red", weight=0]; 1233[label="range (xu90,xu100)",fontsize=16,color="magenta"];1233 -> 1256[label="",style="dashed", color="magenta", weight=3]; 1234 -> 11[label="",style="dashed", color="red", weight=0]; 1234[label="range (xu90,xu100)",fontsize=16,color="magenta"];1234 -> 1257[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1258[label="",style="dashed", color="red", weight=0]; 1235[label="foldr (++) [] (map (range3 xu55 xu580) (range (xu56,xu57)))",fontsize=16,color="magenta"];1235 -> 1259[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1260[label="",style="dashed", color="magenta", weight=3]; 1235 -> 1261[label="",style="dashed", color="magenta", weight=3]; 885[label="(++) range00 LT True foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];885 -> 964[label="",style="solid", color="black", weight=3]; 886[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];886 -> 965[label="",style="solid", color="black", weight=3]; 887[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];887 -> 966[label="",style="solid", color="black", weight=3]; 888[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];888 -> 967[label="",style="solid", color="black", weight=3]; 889[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];889 -> 968[label="",style="solid", color="black", weight=3]; 890[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];890 -> 969[label="",style="solid", color="black", weight=3]; 891[label="(++) range00 LT (not (compare2 LT LT (LT == LT) == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];891 -> 970[label="",style="solid", color="black", weight=3]; 892[label="(++) range00 LT (not (compare2 LT EQ (LT == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];892 -> 971[label="",style="solid", color="black", weight=3]; 893[label="(++) range00 LT (not (compare2 LT GT (LT == GT) == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];893 -> 972[label="",style="solid", color="black", weight=3]; 2674[label="takeWhile0 (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2674 -> 2691[label="",style="solid", color="black", weight=3]; 2675[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom $! Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2675 -> 2692[label="",style="solid", color="black", weight=3]; 904[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];904 -> 982[label="",style="solid", color="black", weight=3]; 905 -> 40[label="",style="dashed", color="red", weight=0]; 905[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];905 -> 983[label="",style="dashed", color="magenta", weight=3]; 905 -> 984[label="",style="dashed", color="magenta", weight=3]; 906 -> 40[label="",style="dashed", color="red", weight=0]; 906[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];906 -> 985[label="",style="dashed", color="magenta", weight=3]; 906 -> 986[label="",style="dashed", color="magenta", weight=3]; 907[label="Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];907 -> 987[label="",style="dashed", color="green", weight=3]; 908[label="Integer (Pos xu3100)",fontsize=16,color="green",shape="box"];2688[label="takeWhile0 (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))) True",fontsize=16,color="black",shape="box"];2688 -> 2705[label="",style="solid", color="black", weight=3]; 2689[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom $! Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))",fontsize=16,color="black",shape="box"];2689 -> 2706[label="",style="solid", color="black", weight=3]; 919[label="takeWhile (flip (<=) (Integer (Neg Zero))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];919 -> 997[label="",style="solid", color="black", weight=3]; 920 -> 40[label="",style="dashed", color="red", weight=0]; 920[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];920 -> 998[label="",style="dashed", color="magenta", weight=3]; 920 -> 999[label="",style="dashed", color="magenta", weight=3]; 921 -> 40[label="",style="dashed", color="red", weight=0]; 921[label="takeWhile (flip (<=) (Integer (Pos Zero))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];921 -> 1000[label="",style="dashed", color="magenta", weight=3]; 921 -> 1001[label="",style="dashed", color="magenta", weight=3]; 922 -> 40[label="",style="dashed", color="red", weight=0]; 922[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];922 -> 1002[label="",style="dashed", color="magenta", weight=3]; 922 -> 1003[label="",style="dashed", color="magenta", weight=3]; 923[label="(++) range60 False True foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];923 -> 1004[label="",style="solid", color="black", weight=3]; 924[label="(++) range60 False (not (LT == LT)) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];924 -> 1005[label="",style="solid", color="black", weight=3]; 925[label="(++) range60 False (not (compare2 False False (False == False) == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];925 -> 1006[label="",style="solid", color="black", weight=3]; 926[label="(++) range60 False (not (compare2 False True (False == True) == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];926 -> 1007[label="",style="solid", color="black", weight=3]; 2450[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (Pos (Succ xu168) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Pos (Succ xu168) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2450 -> 2508[label="",style="solid", color="black", weight=3]; 937 -> 44[label="",style="dashed", color="red", weight=0]; 937[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom (Pos (primPlusNat Zero (Succ Zero))))",fontsize=16,color="magenta"];937 -> 1020[label="",style="dashed", color="magenta", weight=3]; 937 -> 1021[label="",style="dashed", color="magenta", weight=3]; 938[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];938 -> 1022[label="",style="dashed", color="green", weight=3]; 939[label="Pos Zero",fontsize=16,color="green",shape="box"];940[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];940 -> 1023[label="",style="dashed", color="green", weight=3]; 941[label="Neg Zero",fontsize=16,color="green",shape="box"];942[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Neg (Succ xu30000))) (numericEnumFrom (Neg (Succ xu30000))))",fontsize=16,color="black",shape="box"];942 -> 1024[label="",style="solid", color="black", weight=3]; 943[label="takeWhile (flip (<=) (Pos xu310)) (enforceWHNF (WHNF (Pos Zero)) (numericEnumFrom (Pos Zero)))",fontsize=16,color="black",shape="box"];943 -> 1025[label="",style="solid", color="black", weight=3]; 2690[label="takeWhile (flip (<=) (Neg (Succ xu195))) (enforceWHNF (WHNF xu197) (numericEnumFrom xu197))",fontsize=16,color="black",shape="box"];2690 -> 2707[label="",style="solid", color="black", weight=3]; 954[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero xu3000)) (numericEnumFrom (primMinusNat Zero xu3000)))",fontsize=16,color="burlywood",shape="box"];3183[label="xu3000/Succ xu30000",fontsize=10,color="white",style="solid",shape="box"];954 -> 3183[label="",style="solid", color="burlywood", weight=9]; 3183 -> 1038[label="",style="solid", color="burlywood", weight=3]; 3184[label="xu3000/Zero",fontsize=10,color="white",style="solid",shape="box"];954 -> 3184[label="",style="solid", color="burlywood", weight=9]; 3184 -> 1039[label="",style="solid", color="burlywood", weight=3]; 955 -> 44[label="",style="dashed", color="red", weight=0]; 955[label="takeWhile (flip (<=) (Pos (Succ xu3100))) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];955 -> 1040[label="",style="dashed", color="magenta", weight=3]; 955 -> 1041[label="",style="dashed", color="magenta", weight=3]; 956 -> 44[label="",style="dashed", color="red", weight=0]; 956[label="takeWhile (flip (<=) (Pos Zero)) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];956 -> 1042[label="",style="dashed", color="magenta", weight=3]; 956 -> 1043[label="",style="dashed", color="magenta", weight=3]; 957 -> 44[label="",style="dashed", color="red", weight=0]; 957[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos (Succ Zero)))",fontsize=16,color="magenta"];957 -> 1044[label="",style="dashed", color="magenta", weight=3]; 957 -> 1045[label="",style="dashed", color="magenta", weight=3]; 1238[label="xu100",fontsize=16,color="green",shape="box"];1239[label="xu90",fontsize=16,color="green",shape="box"];1240[label="xu100",fontsize=16,color="green",shape="box"];1241[label="xu90",fontsize=16,color="green",shape="box"];1242[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1243[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1244[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1245[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1246[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1247[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1248[label="xu100",fontsize=16,color="green",shape="box"];1249[label="xu90",fontsize=16,color="green",shape="box"];1250[label="xu100",fontsize=16,color="green",shape="box"];1251[label="xu90",fontsize=16,color="green",shape="box"];1252[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1253[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1254[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1255[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1256[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1257[label="(xu90,xu100)",fontsize=16,color="green",shape="box"];1259[label="xu580",fontsize=16,color="green",shape="box"];1260[label="range (xu56,xu57)",fontsize=16,color="blue",shape="box"];3185[label="range :: ((@2) ((@2) a b) ((@2) a b)) -> [] ((@2) a b)",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3185[label="",style="solid", color="blue", weight=9]; 3185 -> 1262[label="",style="solid", color="blue", weight=3]; 3186[label="range :: ((@2) ((@3) a b c) ((@3) a b c)) -> [] ((@3) a b c)",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3186[label="",style="solid", color="blue", weight=9]; 3186 -> 1263[label="",style="solid", color="blue", weight=3]; 3187[label="range :: ((@2) () ()) -> [] ()",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3187[label="",style="solid", color="blue", weight=9]; 3187 -> 1264[label="",style="solid", color="blue", weight=3]; 3188[label="range :: ((@2) Ordering Ordering) -> [] Ordering",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3188[label="",style="solid", color="blue", weight=9]; 3188 -> 1265[label="",style="solid", color="blue", weight=3]; 3189[label="range :: ((@2) Integer Integer) -> [] Integer",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3189[label="",style="solid", color="blue", weight=9]; 3189 -> 1266[label="",style="solid", color="blue", weight=3]; 3190[label="range :: ((@2) Bool Bool) -> [] Bool",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3190[label="",style="solid", color="blue", weight=9]; 3190 -> 1267[label="",style="solid", color="blue", weight=3]; 3191[label="range :: ((@2) Char Char) -> [] Char",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3191[label="",style="solid", color="blue", weight=9]; 3191 -> 1268[label="",style="solid", color="blue", weight=3]; 3192[label="range :: ((@2) Int Int) -> [] Int",fontsize=10,color="white",style="solid",shape="box"];1260 -> 3192[label="",style="solid", color="blue", weight=9]; 3192 -> 1269[label="",style="solid", color="blue", weight=3]; 1261[label="xu55",fontsize=16,color="green",shape="box"];1258[label="foldr (++) [] (map (range3 xu69 xu70) xu71)",fontsize=16,color="burlywood",shape="triangle"];3193[label="xu71/xu710 : xu711",fontsize=10,color="white",style="solid",shape="box"];1258 -> 3193[label="",style="solid", color="burlywood", weight=9]; 3193 -> 1270[label="",style="solid", color="burlywood", weight=3]; 3194[label="xu71/[]",fontsize=10,color="white",style="solid",shape="box"];1258 -> 3194[label="",style="solid", color="burlywood", weight=9]; 3194 -> 1271[label="",style="solid", color="burlywood", weight=3]; 964[label="(++) (LT : []) foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];964 -> 1052[label="",style="solid", color="black", weight=3]; 965[label="(++) range00 LT (not True) foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];965 -> 1053[label="",style="solid", color="black", weight=3]; 966[label="(++) range00 LT (not True) foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];966 -> 1054[label="",style="solid", color="black", weight=3]; 967[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];967 -> 1055[label="",style="solid", color="black", weight=3]; 968[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];968 -> 1056[label="",style="solid", color="black", weight=3]; 969[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];969 -> 1057[label="",style="solid", color="black", weight=3]; 970[label="(++) range00 LT (not (compare2 LT LT True == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];970 -> 1058[label="",style="solid", color="black", weight=3]; 971[label="(++) range00 LT (not (compare2 LT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];971 -> 1059[label="",style="solid", color="black", weight=3]; 972[label="(++) range00 LT (not (compare2 LT GT False == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];972 -> 1060[label="",style="solid", color="black", weight=3]; 2691[label="[]",fontsize=16,color="green",shape="box"];2692[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2692 -> 2708[label="",style="solid", color="black", weight=3]; 982 -> 40[label="",style="dashed", color="red", weight=0]; 982[label="takeWhile (flip (<=) (Integer (Pos (Succ xu31000)))) (numericEnumFrom (Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];982 -> 1071[label="",style="dashed", color="magenta", weight=3]; 982 -> 1072[label="",style="dashed", color="magenta", weight=3]; 983[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];983 -> 1073[label="",style="dashed", color="green", weight=3]; 984[label="Integer (Pos Zero)",fontsize=16,color="green",shape="box"];985[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];985 -> 1074[label="",style="dashed", color="green", weight=3]; 986[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];2705[label="[]",fontsize=16,color="green",shape="box"];2706[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)) `seq` numericEnumFrom (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero))))",fontsize=16,color="black",shape="box"];2706 -> 2722[label="",style="solid", color="black", weight=3]; 997 -> 40[label="",style="dashed", color="red", weight=0]; 997[label="takeWhile (flip (<=) (Integer (Neg Zero))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];997 -> 1086[label="",style="dashed", color="magenta", weight=3]; 997 -> 1087[label="",style="dashed", color="magenta", weight=3]; 998[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];998 -> 1088[label="",style="dashed", color="green", weight=3]; 999[label="Integer (Pos (Succ xu31000))",fontsize=16,color="green",shape="box"];1000[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1000 -> 1089[label="",style="dashed", color="green", weight=3]; 1001[label="Integer (Pos Zero)",fontsize=16,color="green",shape="box"];1002[label="Integer (primPlusInt (Neg Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1002 -> 1090[label="",style="dashed", color="green", weight=3]; 1003[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];1004[label="(++) (False : []) foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1004 -> 1091[label="",style="solid", color="black", weight=3]; 1005[label="(++) range60 False (not True) foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1005 -> 1092[label="",style="solid", color="black", weight=3]; 1006[label="(++) range60 False (not (compare2 False False True == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1006 -> 1093[label="",style="solid", color="black", weight=3]; 1007[label="(++) range60 False (not (compare2 False True False == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1007 -> 1094[label="",style="solid", color="black", weight=3]; 2508[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (primPlusInt (Pos (Succ xu168)) (fromInt (Pos (Succ Zero))))) (numericEnumFrom (primPlusInt (Pos (Succ xu168)) (fromInt (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];2508 -> 2561[label="",style="solid", color="black", weight=3]; 1020[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];1020 -> 1106[label="",style="dashed", color="green", weight=3]; 1021[label="Pos (Succ xu3100)",fontsize=16,color="green",shape="box"];1022[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="black",shape="triangle"];1022 -> 1107[label="",style="solid", color="black", weight=3]; 1023 -> 1022[label="",style="dashed", color="red", weight=0]; 1023[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];1024 -> 44[label="",style="dashed", color="red", weight=0]; 1024[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom (Neg (Succ xu30000)))",fontsize=16,color="magenta"];1024 -> 1108[label="",style="dashed", color="magenta", weight=3]; 1024 -> 1109[label="",style="dashed", color="magenta", weight=3]; 1025 -> 44[label="",style="dashed", color="red", weight=0]; 1025[label="takeWhile (flip (<=) (Pos xu310)) (numericEnumFrom (Pos Zero))",fontsize=16,color="magenta"];1025 -> 1110[label="",style="dashed", color="magenta", weight=3]; 1025 -> 1111[label="",style="dashed", color="magenta", weight=3]; 2707 -> 44[label="",style="dashed", color="red", weight=0]; 2707[label="takeWhile (flip (<=) (Neg (Succ xu195))) (numericEnumFrom xu197)",fontsize=16,color="magenta"];2707 -> 2723[label="",style="dashed", color="magenta", weight=3]; 2707 -> 2724[label="",style="dashed", color="magenta", weight=3]; 1038[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero (Succ xu30000))) (numericEnumFrom (primMinusNat Zero (Succ xu30000))))",fontsize=16,color="black",shape="box"];1038 -> 1141[label="",style="solid", color="black", weight=3]; 1039[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (primMinusNat Zero Zero)) (numericEnumFrom (primMinusNat Zero Zero)))",fontsize=16,color="black",shape="box"];1039 -> 1142[label="",style="solid", color="black", weight=3]; 1040[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1041[label="Pos (Succ xu3100)",fontsize=16,color="green",shape="box"];1042[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1043[label="Pos Zero",fontsize=16,color="green",shape="box"];1044[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1045[label="Neg Zero",fontsize=16,color="green",shape="box"];1262 -> 722[label="",style="dashed", color="red", weight=0]; 1262[label="range (xu56,xu57)",fontsize=16,color="magenta"];1262 -> 1274[label="",style="dashed", color="magenta", weight=3]; 1262 -> 1275[label="",style="dashed", color="magenta", weight=3]; 1263 -> 723[label="",style="dashed", color="red", weight=0]; 1263[label="range (xu56,xu57)",fontsize=16,color="magenta"];1263 -> 1276[label="",style="dashed", color="magenta", weight=3]; 1263 -> 1277[label="",style="dashed", color="magenta", weight=3]; 1264 -> 6[label="",style="dashed", color="red", weight=0]; 1264[label="range (xu56,xu57)",fontsize=16,color="magenta"];1264 -> 1278[label="",style="dashed", color="magenta", weight=3]; 1265 -> 7[label="",style="dashed", color="red", weight=0]; 1265[label="range (xu56,xu57)",fontsize=16,color="magenta"];1265 -> 1279[label="",style="dashed", color="magenta", weight=3]; 1266 -> 8[label="",style="dashed", color="red", weight=0]; 1266[label="range (xu56,xu57)",fontsize=16,color="magenta"];1266 -> 1280[label="",style="dashed", color="magenta", weight=3]; 1267 -> 9[label="",style="dashed", color="red", weight=0]; 1267[label="range (xu56,xu57)",fontsize=16,color="magenta"];1267 -> 1281[label="",style="dashed", color="magenta", weight=3]; 1268 -> 10[label="",style="dashed", color="red", weight=0]; 1268[label="range (xu56,xu57)",fontsize=16,color="magenta"];1268 -> 1282[label="",style="dashed", color="magenta", weight=3]; 1269 -> 11[label="",style="dashed", color="red", weight=0]; 1269[label="range (xu56,xu57)",fontsize=16,color="magenta"];1269 -> 1283[label="",style="dashed", color="magenta", weight=3]; 1270[label="foldr (++) [] (map (range3 xu69 xu70) (xu710 : xu711))",fontsize=16,color="black",shape="box"];1270 -> 1284[label="",style="solid", color="black", weight=3]; 1271[label="foldr (++) [] (map (range3 xu69 xu70) [])",fontsize=16,color="black",shape="box"];1271 -> 1285[label="",style="solid", color="black", weight=3]; 1052[label="LT : [] ++ foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1052 -> 1143[label="",style="dashed", color="green", weight=3]; 1053[label="(++) range00 LT False foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1053 -> 1144[label="",style="solid", color="black", weight=3]; 1054[label="(++) range00 LT False foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1054 -> 1145[label="",style="solid", color="black", weight=3]; 1055[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1055 -> 1146[label="",style="solid", color="black", weight=3]; 1056[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1056 -> 1147[label="",style="solid", color="black", weight=3]; 1057[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1057 -> 1148[label="",style="solid", color="black", weight=3]; 1058[label="(++) range00 LT (not (EQ == LT)) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1058 -> 1149[label="",style="solid", color="black", weight=3]; 1059[label="(++) range00 LT (not (compare1 LT EQ (LT <= EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1059 -> 1150[label="",style="solid", color="black", weight=3]; 1060[label="(++) range00 LT (not (compare1 LT GT (LT <= GT) == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1060 -> 1151[label="",style="solid", color="black", weight=3]; 2708[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos (Succ xu202)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2708 -> 2725[label="",style="solid", color="black", weight=3]; 1071[label="Integer (primPlusInt (Pos Zero) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1071 -> 1164[label="",style="dashed", color="green", weight=3]; 1072[label="Integer (Pos (Succ xu31000))",fontsize=16,color="green",shape="box"];1073[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];1073 -> 1165[label="",style="solid", color="black", weight=3]; 1074 -> 1073[label="",style="dashed", color="red", weight=0]; 1074[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];2722[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu207)) + fromInt (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2722 -> 2739[label="",style="solid", color="black", weight=3]; 1086[label="Integer (primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];1086 -> 1179[label="",style="dashed", color="green", weight=3]; 1087[label="Integer (Neg Zero)",fontsize=16,color="green",shape="box"];1088[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];1088 -> 1180[label="",style="solid", color="black", weight=3]; 1089 -> 1088[label="",style="dashed", color="red", weight=0]; 1089[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1090 -> 1088[label="",style="dashed", color="red", weight=0]; 1090[label="primPlusInt (Neg Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1091[label="False : [] ++ foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="green",shape="box"];1091 -> 1181[label="",style="dashed", color="green", weight=3]; 1092[label="(++) range60 False False foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1092 -> 1182[label="",style="solid", color="black", weight=3]; 1093[label="(++) range60 False (not (EQ == LT)) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1093 -> 1183[label="",style="solid", color="black", weight=3]; 1094[label="(++) range60 False (not (compare1 False True (False <= True) == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1094 -> 1184[label="",style="solid", color="black", weight=3]; 2561[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (primPlusInt (Pos (Succ xu168)) (Pos (Succ Zero)))) (numericEnumFrom (primPlusInt (Pos (Succ xu168)) (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2561 -> 2588[label="",style="solid", color="black", weight=3]; 1106 -> 1022[label="",style="dashed", color="red", weight=0]; 1106[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];1107[label="Succ Zero",fontsize=16,color="green",shape="box"];1108[label="Neg (Succ xu30000)",fontsize=16,color="green",shape="box"];1109[label="Pos xu310",fontsize=16,color="green",shape="box"];1110[label="Pos Zero",fontsize=16,color="green",shape="box"];1111[label="Pos xu310",fontsize=16,color="green",shape="box"];2723[label="xu197",fontsize=16,color="green",shape="box"];2724[label="Neg (Succ xu195)",fontsize=16,color="green",shape="box"];1141[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Neg (Succ xu30000))) (numericEnumFrom (Neg (Succ xu30000))))",fontsize=16,color="black",shape="box"];1141 -> 1295[label="",style="solid", color="black", weight=3]; 1142[label="takeWhile (flip (<=) (Neg Zero)) (enforceWHNF (WHNF (Pos Zero)) (numericEnumFrom (Pos Zero)))",fontsize=16,color="black",shape="box"];1142 -> 1296[label="",style="solid", color="black", weight=3]; 1274[label="xu57",fontsize=16,color="green",shape="box"];1275[label="xu56",fontsize=16,color="green",shape="box"];1276[label="xu57",fontsize=16,color="green",shape="box"];1277[label="xu56",fontsize=16,color="green",shape="box"];1278[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1279[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1280[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1281[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1282[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1283[label="(xu56,xu57)",fontsize=16,color="green",shape="box"];1284[label="foldr (++) [] (range3 xu69 xu70 xu710 : map (range3 xu69 xu70) xu711)",fontsize=16,color="black",shape="box"];1284 -> 1297[label="",style="solid", color="black", weight=3]; 1285 -> 136[label="",style="dashed", color="red", weight=0]; 1285[label="foldr (++) [] []",fontsize=16,color="magenta"];1143[label="[] ++ foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1143 -> 1298[label="",style="solid", color="black", weight=3]; 1144[label="(++) [] foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1144 -> 1299[label="",style="solid", color="black", weight=3]; 1145[label="(++) [] foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1145 -> 1300[label="",style="solid", color="black", weight=3]; 1146[label="(++) range00 LT (not False) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1146 -> 1301[label="",style="solid", color="black", weight=3]; 1147[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1147 -> 1302[label="",style="solid", color="black", weight=3]; 1148[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1148 -> 1303[label="",style="solid", color="black", weight=3]; 1149[label="(++) range00 LT (not False) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1149 -> 1304[label="",style="solid", color="black", weight=3]; 1150[label="(++) range00 LT (not (compare1 LT EQ True == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1150 -> 1305[label="",style="solid", color="black", weight=3]; 1151[label="(++) range00 LT (not (compare1 LT GT True == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1151 -> 1306[label="",style="solid", color="black", weight=3]; 2725[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (Pos (Succ xu202)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Pos (Succ xu202)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2725 -> 2740[label="",style="solid", color="black", weight=3]; 1164 -> 1073[label="",style="dashed", color="red", weight=0]; 1164[label="primPlusInt (Pos Zero) (Pos (Succ Zero))",fontsize=16,color="magenta"];1165[label="Pos (primPlusNat Zero (Succ Zero))",fontsize=16,color="green",shape="box"];1165 -> 1318[label="",style="dashed", color="green", weight=3]; 2739[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (Neg (Succ xu207)) + Integer (Pos (Succ Zero)))) (numericEnumFrom (Integer (Neg (Succ xu207)) + Integer (Pos (Succ Zero)))))",fontsize=16,color="black",shape="box"];2739 -> 2752[label="",style="solid", color="black", weight=3]; 1179 -> 987[label="",style="dashed", color="red", weight=0]; 1179[label="primPlusInt (Neg (Succ xu30000)) (Pos (Succ Zero))",fontsize=16,color="magenta"];1180[label="primMinusNat (Succ Zero) Zero",fontsize=16,color="black",shape="box"];1180 -> 1335[label="",style="solid", color="black", weight=3]; 1181[label="[] ++ foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1181 -> 1336[label="",style="solid", color="black", weight=3]; 1182[label="(++) [] foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1182 -> 1337[label="",style="solid", color="black", weight=3]; 1183[label="(++) range60 False (not False) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1183 -> 1338[label="",style="solid", color="black", weight=3]; 1184[label="(++) range60 False (not (compare1 False True True == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1184 -> 1339[label="",style="solid", color="black", weight=3]; 2588[label="takeWhile (flip (<=) (Pos (Succ xu167))) (enforceWHNF (WHNF (Pos (primPlusNat (Succ xu168) (Succ Zero)))) (numericEnumFrom (Pos (primPlusNat (Succ xu168) (Succ Zero)))))",fontsize=16,color="black",shape="box"];2588 -> 2613[label="",style="solid", color="black", weight=3]; 1295 -> 44[label="",style="dashed", color="red", weight=0]; 1295[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Neg (Succ xu30000)))",fontsize=16,color="magenta"];1295 -> 1375[label="",style="dashed", color="magenta", weight=3]; 1295 -> 1376[label="",style="dashed", color="magenta", weight=3]; 1296 -> 44[label="",style="dashed", color="red", weight=0]; 1296[label="takeWhile (flip (<=) (Neg Zero)) (numericEnumFrom (Pos Zero))",fontsize=16,color="magenta"];1296 -> 1377[label="",style="dashed", color="magenta", weight=3]; 1296 -> 1378[label="",style="dashed", color="magenta", weight=3]; 1297 -> 473[label="",style="dashed", color="red", weight=0]; 1297[label="(++) range3 xu69 xu70 xu710 foldr (++) [] (map (range3 xu69 xu70) xu711)",fontsize=16,color="magenta"];1297 -> 1379[label="",style="dashed", color="magenta", weight=3]; 1297 -> 1380[label="",style="dashed", color="magenta", weight=3]; 1298[label="foldr (++) [] (map (range0 LT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1298 -> 1381[label="",style="solid", color="black", weight=3]; 1299[label="foldr (++) [] (map (range0 LT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1299 -> 1382[label="",style="solid", color="black", weight=3]; 1300[label="foldr (++) [] (map (range0 LT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1300 -> 1383[label="",style="solid", color="black", weight=3]; 1301[label="(++) range00 LT True foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1301 -> 1384[label="",style="solid", color="black", weight=3]; 1302[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1302 -> 1385[label="",style="solid", color="black", weight=3]; 1303[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1303 -> 1386[label="",style="solid", color="black", weight=3]; 1304[label="(++) range00 LT True foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1304 -> 1387[label="",style="solid", color="black", weight=3]; 1305[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1305 -> 1388[label="",style="solid", color="black", weight=3]; 1306[label="(++) range00 LT (not (LT == LT)) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1306 -> 1389[label="",style="solid", color="black", weight=3]; 2740[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (enforceWHNF (WHNF (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))))))",fontsize=16,color="black",shape="box"];2740 -> 2753[label="",style="solid", color="black", weight=3]; 1318 -> 1022[label="",style="dashed", color="red", weight=0]; 1318[label="primPlusNat Zero (Succ Zero)",fontsize=16,color="magenta"];2752 -> 2765[label="",style="dashed", color="red", weight=0]; 2752[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer (primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))))) (numericEnumFrom (Integer (primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))))))",fontsize=16,color="magenta"];2752 -> 2766[label="",style="dashed", color="magenta", weight=3]; 2752 -> 2767[label="",style="dashed", color="magenta", weight=3]; 1335[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];1336[label="foldr (++) [] (map (range6 False False) (True : []))",fontsize=16,color="black",shape="box"];1336 -> 1421[label="",style="solid", color="black", weight=3]; 1337[label="foldr (++) [] (map (range6 False True) (True : []))",fontsize=16,color="black",shape="box"];1337 -> 1422[label="",style="solid", color="black", weight=3]; 1338[label="(++) range60 False True foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1338 -> 1423[label="",style="solid", color="black", weight=3]; 1339[label="(++) range60 False (not (LT == LT)) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1339 -> 1424[label="",style="solid", color="black", weight=3]; 2613 -> 44[label="",style="dashed", color="red", weight=0]; 2613[label="takeWhile (flip (<=) (Pos (Succ xu167))) (numericEnumFrom (Pos (primPlusNat (Succ xu168) (Succ Zero))))",fontsize=16,color="magenta"];2613 -> 2636[label="",style="dashed", color="magenta", weight=3]; 2613 -> 2637[label="",style="dashed", color="magenta", weight=3]; 1375[label="Neg (Succ xu30000)",fontsize=16,color="green",shape="box"];1376[label="Neg Zero",fontsize=16,color="green",shape="box"];1377[label="Pos Zero",fontsize=16,color="green",shape="box"];1378[label="Neg Zero",fontsize=16,color="green",shape="box"];1379 -> 1258[label="",style="dashed", color="red", weight=0]; 1379[label="foldr (++) [] (map (range3 xu69 xu70) xu711)",fontsize=16,color="magenta"];1379 -> 1451[label="",style="dashed", color="magenta", weight=3]; 1380[label="range3 xu69 xu70 xu710",fontsize=16,color="black",shape="box"];1380 -> 1452[label="",style="solid", color="black", weight=3]; 1381[label="foldr (++) [] (range0 LT LT EQ : map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1381 -> 1453[label="",style="solid", color="black", weight=3]; 1382[label="foldr (++) [] (range0 LT EQ EQ : map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1382 -> 1454[label="",style="solid", color="black", weight=3]; 1383[label="foldr (++) [] (range0 LT GT EQ : map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1383 -> 1455[label="",style="solid", color="black", weight=3]; 1384[label="(++) (LT : []) foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1384 -> 1456[label="",style="solid", color="black", weight=3]; 1385[label="(++) range00 LT (not True) foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1385 -> 1457[label="",style="solid", color="black", weight=3]; 1386[label="(++) range00 LT (not True) foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1386 -> 1458[label="",style="solid", color="black", weight=3]; 1387[label="(++) (LT : []) foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1387 -> 1459[label="",style="solid", color="black", weight=3]; 1388[label="(++) range00 LT (not True) foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1388 -> 1460[label="",style="solid", color="black", weight=3]; 1389[label="(++) range00 LT (not True) foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1389 -> 1461[label="",style="solid", color="black", weight=3]; 2753 -> 40[label="",style="dashed", color="red", weight=0]; 2753[label="takeWhile (flip (<=) (Integer (Pos (Succ xu201)))) (numericEnumFrom (Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero)))))",fontsize=16,color="magenta"];2753 -> 2768[label="",style="dashed", color="magenta", weight=3]; 2753 -> 2769[label="",style="dashed", color="magenta", weight=3]; 2766 -> 987[label="",style="dashed", color="red", weight=0]; 2766[label="primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2766 -> 2770[label="",style="dashed", color="magenta", weight=3]; 2767 -> 987[label="",style="dashed", color="red", weight=0]; 2767[label="primPlusInt (Neg (Succ xu207)) (Pos (Succ Zero))",fontsize=16,color="magenta"];2767 -> 2771[label="",style="dashed", color="magenta", weight=3]; 2765[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (enforceWHNF (WHNF (Integer xu211)) (numericEnumFrom (Integer xu210)))",fontsize=16,color="black",shape="triangle"];2765 -> 2772[label="",style="solid", color="black", weight=3]; 1421[label="foldr (++) [] (range6 False False True : map (range6 False False) [])",fontsize=16,color="black",shape="box"];1421 -> 1490[label="",style="solid", color="black", weight=3]; 1422[label="foldr (++) [] (range6 False True True : map (range6 False True) [])",fontsize=16,color="black",shape="box"];1422 -> 1491[label="",style="solid", color="black", weight=3]; 1423[label="(++) (False : []) foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1423 -> 1492[label="",style="solid", color="black", weight=3]; 1424[label="(++) range60 False (not True) foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1424 -> 1493[label="",style="solid", color="black", weight=3]; 2636[label="Pos (primPlusNat (Succ xu168) (Succ Zero))",fontsize=16,color="green",shape="box"];2636 -> 2657[label="",style="dashed", color="green", weight=3]; 2637[label="Pos (Succ xu167)",fontsize=16,color="green",shape="box"];1451[label="xu711",fontsize=16,color="green",shape="box"];1452[label="range30 xu69 xu70 xu710",fontsize=16,color="black",shape="box"];1452 -> 1519[label="",style="solid", color="black", weight=3]; 1453[label="(++) range0 LT LT EQ foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1453 -> 1520[label="",style="solid", color="black", weight=3]; 1454[label="(++) range0 LT EQ EQ foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1454 -> 1521[label="",style="solid", color="black", weight=3]; 1455[label="(++) range0 LT GT EQ foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1455 -> 1522[label="",style="solid", color="black", weight=3]; 1456[label="LT : [] ++ foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1456 -> 1523[label="",style="dashed", color="green", weight=3]; 1457[label="(++) range00 LT False foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1457 -> 1524[label="",style="solid", color="black", weight=3]; 1458[label="(++) range00 LT False foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1458 -> 1525[label="",style="solid", color="black", weight=3]; 1459[label="LT : [] ++ foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="green",shape="box"];1459 -> 1526[label="",style="dashed", color="green", weight=3]; 1460[label="(++) range00 LT False foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1460 -> 1527[label="",style="solid", color="black", weight=3]; 1461[label="(++) range00 LT False foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1461 -> 1528[label="",style="solid", color="black", weight=3]; 2768[label="Integer (primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];2768 -> 2784[label="",style="dashed", color="green", weight=3]; 2769[label="Integer (Pos (Succ xu201))",fontsize=16,color="green",shape="box"];2770[label="xu207",fontsize=16,color="green",shape="box"];2771[label="xu207",fontsize=16,color="green",shape="box"];2772 -> 40[label="",style="dashed", color="red", weight=0]; 2772[label="takeWhile (flip (<=) (Integer (Neg (Succ xu206)))) (numericEnumFrom (Integer xu210))",fontsize=16,color="magenta"];2772 -> 2785[label="",style="dashed", color="magenta", weight=3]; 2772 -> 2786[label="",style="dashed", color="magenta", weight=3]; 1490[label="(++) range6 False False True foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1490 -> 1555[label="",style="solid", color="black", weight=3]; 1491[label="(++) range6 False True True foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1491 -> 1556[label="",style="solid", color="black", weight=3]; 1492[label="False : [] ++ foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="green",shape="box"];1492 -> 1557[label="",style="dashed", color="green", weight=3]; 1493[label="(++) range60 False False foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1493 -> 1558[label="",style="solid", color="black", weight=3]; 2657[label="primPlusNat (Succ xu168) (Succ Zero)",fontsize=16,color="black",shape="triangle"];2657 -> 2676[label="",style="solid", color="black", weight=3]; 1519[label="(xu69,xu70,xu710) : []",fontsize=16,color="green",shape="box"];1520[label="(++) range00 EQ (LT >= EQ && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1520 -> 1597[label="",style="solid", color="black", weight=3]; 1521[label="(++) range00 EQ (LT >= EQ && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1521 -> 1598[label="",style="solid", color="black", weight=3]; 1522[label="(++) range00 EQ (LT >= EQ && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1522 -> 1599[label="",style="solid", color="black", weight=3]; 1523[label="[] ++ foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1523 -> 1600[label="",style="solid", color="black", weight=3]; 1524[label="(++) [] foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1524 -> 1601[label="",style="solid", color="black", weight=3]; 1525[label="(++) [] foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1525 -> 1602[label="",style="solid", color="black", weight=3]; 1526[label="[] ++ foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1526 -> 1603[label="",style="solid", color="black", weight=3]; 1527[label="(++) [] foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1527 -> 1604[label="",style="solid", color="black", weight=3]; 1528[label="(++) [] foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1528 -> 1605[label="",style="solid", color="black", weight=3]; 2784[label="primPlusInt (Pos (Succ xu202)) (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];2784 -> 2798[label="",style="solid", color="black", weight=3]; 2785[label="Integer xu210",fontsize=16,color="green",shape="box"];2786[label="Integer (Neg (Succ xu206))",fontsize=16,color="green",shape="box"];1555[label="(++) range60 True (False >= True && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1555 -> 1648[label="",style="solid", color="black", weight=3]; 1556[label="(++) range60 True (False >= True && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1556 -> 1649[label="",style="solid", color="black", weight=3]; 1557[label="[] ++ foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1557 -> 1650[label="",style="solid", color="black", weight=3]; 1558[label="(++) [] foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1558 -> 1651[label="",style="solid", color="black", weight=3]; 2676[label="Succ (Succ (primPlusNat xu168 Zero))",fontsize=16,color="green",shape="box"];2676 -> 2693[label="",style="dashed", color="green", weight=3]; 1597[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1597 -> 1676[label="",style="solid", color="black", weight=3]; 1598[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1598 -> 1677[label="",style="solid", color="black", weight=3]; 1599[label="(++) range00 EQ (compare LT EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1599 -> 1678[label="",style="solid", color="black", weight=3]; 1600[label="foldr (++) [] (map (range0 EQ LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1600 -> 1679[label="",style="solid", color="black", weight=3]; 1601[label="foldr (++) [] (map (range0 EQ EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1601 -> 1680[label="",style="solid", color="black", weight=3]; 1602[label="foldr (++) [] (map (range0 EQ GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1602 -> 1681[label="",style="solid", color="black", weight=3]; 1603[label="foldr (++) [] (map (range0 GT LT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1603 -> 1682[label="",style="solid", color="black", weight=3]; 1604[label="foldr (++) [] (map (range0 GT EQ) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1604 -> 1683[label="",style="solid", color="black", weight=3]; 1605[label="foldr (++) [] (map (range0 GT GT) (EQ : GT : []))",fontsize=16,color="black",shape="box"];1605 -> 1684[label="",style="solid", color="black", weight=3]; 2798[label="Pos (primPlusNat (Succ xu202) (Succ Zero))",fontsize=16,color="green",shape="box"];2798 -> 2810[label="",style="dashed", color="green", weight=3]; 1648[label="(++) range60 True (compare False True /= LT && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1648 -> 1724[label="",style="solid", color="black", weight=3]; 1649[label="(++) range60 True (compare False True /= LT && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1649 -> 1725[label="",style="solid", color="black", weight=3]; 1650[label="foldr (++) [] (map (range6 True False) (True : []))",fontsize=16,color="black",shape="box"];1650 -> 1726[label="",style="solid", color="black", weight=3]; 1651[label="foldr (++) [] (map (range6 True True) (True : []))",fontsize=16,color="black",shape="box"];1651 -> 1727[label="",style="solid", color="black", weight=3]; 2693[label="primPlusNat xu168 Zero",fontsize=16,color="burlywood",shape="box"];3195[label="xu168/Succ xu1680",fontsize=10,color="white",style="solid",shape="box"];2693 -> 3195[label="",style="solid", color="burlywood", weight=9]; 3195 -> 2709[label="",style="solid", color="burlywood", weight=3]; 3196[label="xu168/Zero",fontsize=10,color="white",style="solid",shape="box"];2693 -> 3196[label="",style="solid", color="burlywood", weight=9]; 3196 -> 2710[label="",style="solid", color="burlywood", weight=3]; 1676[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1676 -> 1744[label="",style="solid", color="black", weight=3]; 1677[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1677 -> 1745[label="",style="solid", color="black", weight=3]; 1678[label="(++) range00 EQ (not (compare LT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1678 -> 1746[label="",style="solid", color="black", weight=3]; 1679[label="foldr (++) [] (range0 EQ LT EQ : map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1679 -> 1747[label="",style="solid", color="black", weight=3]; 1680[label="foldr (++) [] (range0 EQ EQ EQ : map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1680 -> 1748[label="",style="solid", color="black", weight=3]; 1681[label="foldr (++) [] (range0 EQ GT EQ : map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1681 -> 1749[label="",style="solid", color="black", weight=3]; 1682[label="foldr (++) [] (range0 GT LT EQ : map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1682 -> 1750[label="",style="solid", color="black", weight=3]; 1683[label="foldr (++) [] (range0 GT EQ EQ : map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1683 -> 1751[label="",style="solid", color="black", weight=3]; 1684[label="foldr (++) [] (range0 GT GT EQ : map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1684 -> 1752[label="",style="solid", color="black", weight=3]; 2810 -> 2657[label="",style="dashed", color="red", weight=0]; 2810[label="primPlusNat (Succ xu202) (Succ Zero)",fontsize=16,color="magenta"];2810 -> 2822[label="",style="dashed", color="magenta", weight=3]; 1724[label="(++) range60 True (not (compare False True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1724 -> 1781[label="",style="solid", color="black", weight=3]; 1725[label="(++) range60 True (not (compare False True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1725 -> 1782[label="",style="solid", color="black", weight=3]; 1726[label="foldr (++) [] (range6 True False True : map (range6 True False) [])",fontsize=16,color="black",shape="box"];1726 -> 1783[label="",style="solid", color="black", weight=3]; 1727[label="foldr (++) [] (range6 True True True : map (range6 True True) [])",fontsize=16,color="black",shape="box"];1727 -> 1784[label="",style="solid", color="black", weight=3]; 2709[label="primPlusNat (Succ xu1680) Zero",fontsize=16,color="black",shape="box"];2709 -> 2726[label="",style="solid", color="black", weight=3]; 2710[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];2710 -> 2727[label="",style="solid", color="black", weight=3]; 1744[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1744 -> 1858[label="",style="solid", color="black", weight=3]; 1745[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1745 -> 1859[label="",style="solid", color="black", weight=3]; 1746[label="(++) range00 EQ (not (compare3 LT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1746 -> 1860[label="",style="solid", color="black", weight=3]; 1747[label="(++) range0 EQ LT EQ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1747 -> 1861[label="",style="solid", color="black", weight=3]; 1748[label="(++) range0 EQ EQ EQ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1748 -> 1862[label="",style="solid", color="black", weight=3]; 1749[label="(++) range0 EQ GT EQ foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1749 -> 1863[label="",style="solid", color="black", weight=3]; 1750[label="(++) range0 GT LT EQ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1750 -> 1864[label="",style="solid", color="black", weight=3]; 1751[label="(++) range0 GT EQ EQ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1751 -> 1865[label="",style="solid", color="black", weight=3]; 1752[label="(++) range0 GT GT EQ foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1752 -> 1866[label="",style="solid", color="black", weight=3]; 2822[label="xu202",fontsize=16,color="green",shape="box"];1781[label="(++) range60 True (not (compare3 False True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1781 -> 1933[label="",style="solid", color="black", weight=3]; 1782[label="(++) range60 True (not (compare3 False True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1782 -> 1934[label="",style="solid", color="black", weight=3]; 1783[label="(++) range6 True False True foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];1783 -> 1935[label="",style="solid", color="black", weight=3]; 1784[label="(++) range6 True True True foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];1784 -> 1936[label="",style="solid", color="black", weight=3]; 2726[label="Succ xu1680",fontsize=16,color="green",shape="box"];2727[label="Zero",fontsize=16,color="green",shape="box"];1858[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1858 -> 1985[label="",style="solid", color="black", weight=3]; 1859[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1859 -> 1986[label="",style="solid", color="black", weight=3]; 1860[label="(++) range00 EQ (not (compare2 LT EQ (LT == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1860 -> 1987[label="",style="solid", color="black", weight=3]; 1861[label="(++) range00 EQ (EQ >= EQ && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1861 -> 1988[label="",style="solid", color="black", weight=3]; 1862[label="(++) range00 EQ (EQ >= EQ && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1862 -> 1989[label="",style="solid", color="black", weight=3]; 1863[label="(++) range00 EQ (EQ >= EQ && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1863 -> 1990[label="",style="solid", color="black", weight=3]; 1864[label="(++) range00 EQ (GT >= EQ && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1864 -> 1991[label="",style="solid", color="black", weight=3]; 1865[label="(++) range00 EQ (GT >= EQ && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1865 -> 1992[label="",style="solid", color="black", weight=3]; 1866[label="(++) range00 EQ (GT >= EQ && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1866 -> 1993[label="",style="solid", color="black", weight=3]; 1933[label="(++) range60 True (not (compare2 False True (False == True) == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];1933 -> 2028[label="",style="solid", color="black", weight=3]; 1934[label="(++) range60 True (not (compare2 False True (False == True) == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];1934 -> 2029[label="",style="solid", color="black", weight=3]; 1935[label="(++) range60 True (True >= True && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];1935 -> 2030[label="",style="solid", color="black", weight=3]; 1936[label="(++) range60 True (True >= True && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];1936 -> 2031[label="",style="solid", color="black", weight=3]; 1985[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];1985 -> 2046[label="",style="solid", color="black", weight=3]; 1986[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1986 -> 2047[label="",style="solid", color="black", weight=3]; 1987[label="(++) range00 EQ (not (compare2 LT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];1987 -> 2048[label="",style="solid", color="black", weight=3]; 1988[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];1988 -> 2049[label="",style="solid", color="black", weight=3]; 1989[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];1989 -> 2050[label="",style="solid", color="black", weight=3]; 1990[label="(++) range00 EQ (compare EQ EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];1990 -> 2051[label="",style="solid", color="black", weight=3]; 1991[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];1991 -> 2052[label="",style="solid", color="black", weight=3]; 1992[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];1992 -> 2053[label="",style="solid", color="black", weight=3]; 1993[label="(++) range00 EQ (compare GT EQ /= LT && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];1993 -> 2054[label="",style="solid", color="black", weight=3]; 2028[label="(++) range60 True (not (compare2 False True False == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2028 -> 2074[label="",style="solid", color="black", weight=3]; 2029[label="(++) range60 True (not (compare2 False True False == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2029 -> 2075[label="",style="solid", color="black", weight=3]; 2030[label="(++) range60 True (compare True True /= LT && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2030 -> 2076[label="",style="solid", color="black", weight=3]; 2031[label="(++) range60 True (compare True True /= LT && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2031 -> 2077[label="",style="solid", color="black", weight=3]; 2046[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2046 -> 2124[label="",style="solid", color="black", weight=3]; 2047[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2047 -> 2125[label="",style="solid", color="black", weight=3]; 2048[label="(++) range00 EQ (not (compare1 LT EQ (LT <= EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2048 -> 2126[label="",style="solid", color="black", weight=3]; 2049[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2049 -> 2127[label="",style="solid", color="black", weight=3]; 2050[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2050 -> 2128[label="",style="solid", color="black", weight=3]; 2051[label="(++) range00 EQ (not (compare EQ EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2051 -> 2129[label="",style="solid", color="black", weight=3]; 2052[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2052 -> 2130[label="",style="solid", color="black", weight=3]; 2053[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2053 -> 2131[label="",style="solid", color="black", weight=3]; 2054[label="(++) range00 EQ (not (compare GT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2054 -> 2132[label="",style="solid", color="black", weight=3]; 2074[label="(++) range60 True (not (compare1 False True (False <= True) == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2074 -> 2162[label="",style="solid", color="black", weight=3]; 2075[label="(++) range60 True (not (compare1 False True (False <= True) == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2075 -> 2163[label="",style="solid", color="black", weight=3]; 2076[label="(++) range60 True (not (compare True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2076 -> 2164[label="",style="solid", color="black", weight=3]; 2077[label="(++) range60 True (not (compare True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2077 -> 2165[label="",style="solid", color="black", weight=3]; 2124[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2124 -> 2176[label="",style="solid", color="black", weight=3]; 2125[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2125 -> 2177[label="",style="solid", color="black", weight=3]; 2126[label="(++) range00 EQ (not (compare1 LT EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2126 -> 2178[label="",style="solid", color="black", weight=3]; 2127[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2127 -> 2179[label="",style="solid", color="black", weight=3]; 2128[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2128 -> 2180[label="",style="solid", color="black", weight=3]; 2129[label="(++) range00 EQ (not (compare3 EQ EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2129 -> 2181[label="",style="solid", color="black", weight=3]; 2130[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2130 -> 2182[label="",style="solid", color="black", weight=3]; 2131[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2131 -> 2183[label="",style="solid", color="black", weight=3]; 2132[label="(++) range00 EQ (not (compare3 GT EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2132 -> 2184[label="",style="solid", color="black", weight=3]; 2162[label="(++) range60 True (not (compare1 False True True == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2162 -> 2233[label="",style="solid", color="black", weight=3]; 2163[label="(++) range60 True (not (compare1 False True True == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2163 -> 2234[label="",style="solid", color="black", weight=3]; 2164[label="(++) range60 True (not (compare3 True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2164 -> 2235[label="",style="solid", color="black", weight=3]; 2165[label="(++) range60 True (not (compare3 True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2165 -> 2236[label="",style="solid", color="black", weight=3]; 2176[label="(++) range00 EQ (not (LT == LT) && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2176 -> 2249[label="",style="solid", color="black", weight=3]; 2177[label="(++) range00 EQ (not (LT == LT) && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2177 -> 2250[label="",style="solid", color="black", weight=3]; 2178[label="(++) range00 EQ (not (LT == LT) && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2178 -> 2251[label="",style="solid", color="black", weight=3]; 2179[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2179 -> 2252[label="",style="solid", color="black", weight=3]; 2180[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2180 -> 2253[label="",style="solid", color="black", weight=3]; 2181[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2181 -> 2254[label="",style="solid", color="black", weight=3]; 2182[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2182 -> 2255[label="",style="solid", color="black", weight=3]; 2183[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2183 -> 2256[label="",style="solid", color="black", weight=3]; 2184[label="(++) range00 EQ (not (compare2 GT EQ (GT == EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2184 -> 2257[label="",style="solid", color="black", weight=3]; 2233[label="(++) range60 True (not (LT == LT) && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2233 -> 2271[label="",style="solid", color="black", weight=3]; 2234[label="(++) range60 True (not (LT == LT) && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2234 -> 2272[label="",style="solid", color="black", weight=3]; 2235[label="(++) range60 True (not (compare2 True True (True == True) == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2235 -> 2273[label="",style="solid", color="black", weight=3]; 2236[label="(++) range60 True (not (compare2 True True (True == True) == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2236 -> 2274[label="",style="solid", color="black", weight=3]; 2249[label="(++) range00 EQ (not True && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2249 -> 2348[label="",style="solid", color="black", weight=3]; 2250[label="(++) range00 EQ (not True && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2250 -> 2349[label="",style="solid", color="black", weight=3]; 2251[label="(++) range00 EQ (not True && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2251 -> 2350[label="",style="solid", color="black", weight=3]; 2252[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2252 -> 2351[label="",style="solid", color="black", weight=3]; 2253[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2253 -> 2352[label="",style="solid", color="black", weight=3]; 2254[label="(++) range00 EQ (not (compare2 EQ EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2254 -> 2353[label="",style="solid", color="black", weight=3]; 2255[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2255 -> 2354[label="",style="solid", color="black", weight=3]; 2256[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2256 -> 2355[label="",style="solid", color="black", weight=3]; 2257[label="(++) range00 EQ (not (compare2 GT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2257 -> 2356[label="",style="solid", color="black", weight=3]; 2271[label="(++) range60 True (not True && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2271 -> 2387[label="",style="solid", color="black", weight=3]; 2272[label="(++) range60 True (not True && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2272 -> 2388[label="",style="solid", color="black", weight=3]; 2273[label="(++) range60 True (not (compare2 True True True == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2273 -> 2389[label="",style="solid", color="black", weight=3]; 2274[label="(++) range60 True (not (compare2 True True True == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2274 -> 2390[label="",style="solid", color="black", weight=3]; 2348[label="(++) range00 EQ (False && EQ >= LT) foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2348 -> 2451[label="",style="solid", color="black", weight=3]; 2349[label="(++) range00 EQ (False && EQ >= EQ) foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2349 -> 2452[label="",style="solid", color="black", weight=3]; 2350[label="(++) range00 EQ (False && EQ >= GT) foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2350 -> 2453[label="",style="solid", color="black", weight=3]; 2351[label="(++) range00 EQ (not (EQ == LT) && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2351 -> 2454[label="",style="solid", color="black", weight=3]; 2352[label="(++) range00 EQ (not (EQ == LT) && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2352 -> 2455[label="",style="solid", color="black", weight=3]; 2353[label="(++) range00 EQ (not (EQ == LT) && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2353 -> 2456[label="",style="solid", color="black", weight=3]; 2354[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2354 -> 2457[label="",style="solid", color="black", weight=3]; 2355[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2355 -> 2458[label="",style="solid", color="black", weight=3]; 2356[label="(++) range00 EQ (not (compare1 GT EQ (GT <= EQ) == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2356 -> 2459[label="",style="solid", color="black", weight=3]; 2387[label="(++) range60 True (False && True >= False) foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2387 -> 2562[label="",style="solid", color="black", weight=3]; 2388[label="(++) range60 True (False && True >= True) foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2388 -> 2563[label="",style="solid", color="black", weight=3]; 2389[label="(++) range60 True (not (EQ == LT) && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2389 -> 2564[label="",style="solid", color="black", weight=3]; 2390[label="(++) range60 True (not (EQ == LT) && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2390 -> 2565[label="",style="solid", color="black", weight=3]; 2451[label="(++) range00 EQ False foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2451 -> 2566[label="",style="solid", color="black", weight=3]; 2452[label="(++) range00 EQ False foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2452 -> 2567[label="",style="solid", color="black", weight=3]; 2453[label="(++) range00 EQ False foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2453 -> 2568[label="",style="solid", color="black", weight=3]; 2454[label="(++) range00 EQ (not False && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2454 -> 2569[label="",style="solid", color="black", weight=3]; 2455[label="(++) range00 EQ (not False && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2455 -> 2570[label="",style="solid", color="black", weight=3]; 2456[label="(++) range00 EQ (not False && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2456 -> 2571[label="",style="solid", color="black", weight=3]; 2457[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2457 -> 2572[label="",style="solid", color="black", weight=3]; 2458[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2458 -> 2573[label="",style="solid", color="black", weight=3]; 2459[label="(++) range00 EQ (not (compare1 GT EQ False == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2459 -> 2574[label="",style="solid", color="black", weight=3]; 2562[label="(++) range60 True False foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2562 -> 2589[label="",style="solid", color="black", weight=3]; 2563[label="(++) range60 True False foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2563 -> 2590[label="",style="solid", color="black", weight=3]; 2564[label="(++) range60 True (not False && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2564 -> 2591[label="",style="solid", color="black", weight=3]; 2565[label="(++) range60 True (not False && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2565 -> 2592[label="",style="solid", color="black", weight=3]; 2566[label="(++) [] foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2566 -> 2593[label="",style="solid", color="black", weight=3]; 2567[label="(++) [] foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2567 -> 2594[label="",style="solid", color="black", weight=3]; 2568[label="(++) [] foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2568 -> 2595[label="",style="solid", color="black", weight=3]; 2569[label="(++) range00 EQ (True && EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2569 -> 2596[label="",style="solid", color="black", weight=3]; 2570[label="(++) range00 EQ (True && EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2570 -> 2597[label="",style="solid", color="black", weight=3]; 2571[label="(++) range00 EQ (True && EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2571 -> 2598[label="",style="solid", color="black", weight=3]; 2572[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2572 -> 2599[label="",style="solid", color="black", weight=3]; 2573[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2573 -> 2600[label="",style="solid", color="black", weight=3]; 2574[label="(++) range00 EQ (not (compare0 GT EQ otherwise == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2574 -> 2601[label="",style="solid", color="black", weight=3]; 2589[label="(++) [] foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2589 -> 2614[label="",style="solid", color="black", weight=3]; 2590[label="(++) [] foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2590 -> 2615[label="",style="solid", color="black", weight=3]; 2591[label="(++) range60 True (True && True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2591 -> 2616[label="",style="solid", color="black", weight=3]; 2592[label="(++) range60 True (True && True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2592 -> 2617[label="",style="solid", color="black", weight=3]; 2593[label="foldr (++) [] (map (range0 LT LT) (GT : []))",fontsize=16,color="black",shape="box"];2593 -> 2618[label="",style="solid", color="black", weight=3]; 2594[label="foldr (++) [] (map (range0 LT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2594 -> 2619[label="",style="solid", color="black", weight=3]; 2595[label="foldr (++) [] (map (range0 LT GT) (GT : []))",fontsize=16,color="black",shape="box"];2595 -> 2620[label="",style="solid", color="black", weight=3]; 2596[label="(++) range00 EQ (EQ >= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2596 -> 2621[label="",style="solid", color="black", weight=3]; 2597[label="(++) range00 EQ (EQ >= EQ) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2597 -> 2622[label="",style="solid", color="black", weight=3]; 2598[label="(++) range00 EQ (EQ >= GT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2598 -> 2623[label="",style="solid", color="black", weight=3]; 2599[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2599 -> 2624[label="",style="solid", color="black", weight=3]; 2600[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2600 -> 2625[label="",style="solid", color="black", weight=3]; 2601[label="(++) range00 EQ (not (compare0 GT EQ True == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2601 -> 2626[label="",style="solid", color="black", weight=3]; 2614[label="foldr (++) [] (map (range6 False False) [])",fontsize=16,color="black",shape="box"];2614 -> 2638[label="",style="solid", color="black", weight=3]; 2615[label="foldr (++) [] (map (range6 False True) [])",fontsize=16,color="black",shape="box"];2615 -> 2639[label="",style="solid", color="black", weight=3]; 2616[label="(++) range60 True (True >= False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2616 -> 2640[label="",style="solid", color="black", weight=3]; 2617[label="(++) range60 True (True >= True) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2617 -> 2641[label="",style="solid", color="black", weight=3]; 2618[label="foldr (++) [] (range0 LT LT GT : map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2618 -> 2642[label="",style="solid", color="black", weight=3]; 2619[label="foldr (++) [] (range0 LT EQ GT : map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2619 -> 2643[label="",style="solid", color="black", weight=3]; 2620[label="foldr (++) [] (range0 LT GT GT : map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2620 -> 2644[label="",style="solid", color="black", weight=3]; 2621[label="(++) range00 EQ (compare EQ LT /= LT) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2621 -> 2645[label="",style="solid", color="black", weight=3]; 2622[label="(++) range00 EQ (compare EQ EQ /= LT) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2622 -> 2646[label="",style="solid", color="black", weight=3]; 2623[label="(++) range00 EQ (compare EQ GT /= LT) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2623 -> 2647[label="",style="solid", color="black", weight=3]; 2624[label="(++) range00 EQ (not (GT == LT) && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2624 -> 2648[label="",style="solid", color="black", weight=3]; 2625[label="(++) range00 EQ (not (GT == LT) && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2625 -> 2649[label="",style="solid", color="black", weight=3]; 2626[label="(++) range00 EQ (not (GT == LT) && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2626 -> 2650[label="",style="solid", color="black", weight=3]; 2638[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];2638 -> 2658[label="",style="solid", color="black", weight=3]; 2639 -> 2638[label="",style="dashed", color="red", weight=0]; 2639[label="foldr (++) [] []",fontsize=16,color="magenta"];2640[label="(++) range60 True (compare True False /= LT) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2640 -> 2659[label="",style="solid", color="black", weight=3]; 2641[label="(++) range60 True (compare True True /= LT) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2641 -> 2660[label="",style="solid", color="black", weight=3]; 2642[label="(++) range0 LT LT GT foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2642 -> 2661[label="",style="solid", color="black", weight=3]; 2643[label="(++) range0 LT EQ GT foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2643 -> 2662[label="",style="solid", color="black", weight=3]; 2644[label="(++) range0 LT GT GT foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2644 -> 2663[label="",style="solid", color="black", weight=3]; 2645[label="(++) range00 EQ (not (compare EQ LT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2645 -> 2664[label="",style="solid", color="black", weight=3]; 2646[label="(++) range00 EQ (not (compare EQ EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2646 -> 2665[label="",style="solid", color="black", weight=3]; 2647[label="(++) range00 EQ (not (compare EQ GT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2647 -> 2666[label="",style="solid", color="black", weight=3]; 2648[label="(++) range00 EQ (not False && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2648 -> 2667[label="",style="solid", color="black", weight=3]; 2649[label="(++) range00 EQ (not False && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2649 -> 2668[label="",style="solid", color="black", weight=3]; 2650[label="(++) range00 EQ (not False && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2650 -> 2669[label="",style="solid", color="black", weight=3]; 2658[label="[]",fontsize=16,color="green",shape="box"];2659[label="(++) range60 True (not (compare True False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2659 -> 2677[label="",style="solid", color="black", weight=3]; 2660[label="(++) range60 True (not (compare True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2660 -> 2678[label="",style="solid", color="black", weight=3]; 2661[label="(++) range00 GT (LT >= GT && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2661 -> 2679[label="",style="solid", color="black", weight=3]; 2662[label="(++) range00 GT (LT >= GT && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2662 -> 2680[label="",style="solid", color="black", weight=3]; 2663[label="(++) range00 GT (LT >= GT && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2663 -> 2681[label="",style="solid", color="black", weight=3]; 2664[label="(++) range00 EQ (not (compare3 EQ LT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2664 -> 2682[label="",style="solid", color="black", weight=3]; 2665[label="(++) range00 EQ (not (compare3 EQ EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2665 -> 2683[label="",style="solid", color="black", weight=3]; 2666[label="(++) range00 EQ (not (compare3 EQ GT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2666 -> 2684[label="",style="solid", color="black", weight=3]; 2667[label="(++) range00 EQ (True && EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2667 -> 2685[label="",style="solid", color="black", weight=3]; 2668[label="(++) range00 EQ (True && EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2668 -> 2686[label="",style="solid", color="black", weight=3]; 2669[label="(++) range00 EQ (True && EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2669 -> 2687[label="",style="solid", color="black", weight=3]; 2677[label="(++) range60 True (not (compare3 True False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2677 -> 2694[label="",style="solid", color="black", weight=3]; 2678[label="(++) range60 True (not (compare3 True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2678 -> 2695[label="",style="solid", color="black", weight=3]; 2679[label="(++) range00 GT (compare LT GT /= LT && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2679 -> 2696[label="",style="solid", color="black", weight=3]; 2680[label="(++) range00 GT (compare LT GT /= LT && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2680 -> 2697[label="",style="solid", color="black", weight=3]; 2681[label="(++) range00 GT (compare LT GT /= LT && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2681 -> 2698[label="",style="solid", color="black", weight=3]; 2682[label="(++) range00 EQ (not (compare2 EQ LT (EQ == LT) == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2682 -> 2699[label="",style="solid", color="black", weight=3]; 2683[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2683 -> 2700[label="",style="solid", color="black", weight=3]; 2684[label="(++) range00 EQ (not (compare2 EQ GT (EQ == GT) == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2684 -> 2701[label="",style="solid", color="black", weight=3]; 2685[label="(++) range00 EQ (EQ >= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2685 -> 2702[label="",style="solid", color="black", weight=3]; 2686[label="(++) range00 EQ (EQ >= EQ) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2686 -> 2703[label="",style="solid", color="black", weight=3]; 2687[label="(++) range00 EQ (EQ >= GT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2687 -> 2704[label="",style="solid", color="black", weight=3]; 2694[label="(++) range60 True (not (compare2 True False (True == False) == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2694 -> 2711[label="",style="solid", color="black", weight=3]; 2695[label="(++) range60 True (not (compare2 True True (True == True) == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2695 -> 2712[label="",style="solid", color="black", weight=3]; 2696[label="(++) range00 GT (not (compare LT GT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2696 -> 2713[label="",style="solid", color="black", weight=3]; 2697[label="(++) range00 GT (not (compare LT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2697 -> 2714[label="",style="solid", color="black", weight=3]; 2698[label="(++) range00 GT (not (compare LT GT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2698 -> 2715[label="",style="solid", color="black", weight=3]; 2699[label="(++) range00 EQ (not (compare2 EQ LT False == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2699 -> 2716[label="",style="solid", color="black", weight=3]; 2700[label="(++) range00 EQ (not (compare2 EQ EQ True == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2700 -> 2717[label="",style="solid", color="black", weight=3]; 2701[label="(++) range00 EQ (not (compare2 EQ GT False == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2701 -> 2718[label="",style="solid", color="black", weight=3]; 2702[label="(++) range00 EQ (compare EQ LT /= LT) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2702 -> 2719[label="",style="solid", color="black", weight=3]; 2703[label="(++) range00 EQ (compare EQ EQ /= LT) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2703 -> 2720[label="",style="solid", color="black", weight=3]; 2704[label="(++) range00 EQ (compare EQ GT /= LT) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2704 -> 2721[label="",style="solid", color="black", weight=3]; 2711[label="(++) range60 True (not (compare2 True False False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2711 -> 2728[label="",style="solid", color="black", weight=3]; 2712[label="(++) range60 True (not (compare2 True True True == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2712 -> 2729[label="",style="solid", color="black", weight=3]; 2713[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2713 -> 2730[label="",style="solid", color="black", weight=3]; 2714[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2714 -> 2731[label="",style="solid", color="black", weight=3]; 2715[label="(++) range00 GT (not (compare3 LT GT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2715 -> 2732[label="",style="solid", color="black", weight=3]; 2716[label="(++) range00 EQ (not (compare1 EQ LT (EQ <= LT) == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2716 -> 2733[label="",style="solid", color="black", weight=3]; 2717[label="(++) range00 EQ (not (EQ == LT)) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2717 -> 2734[label="",style="solid", color="black", weight=3]; 2718[label="(++) range00 EQ (not (compare1 EQ GT (EQ <= GT) == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2718 -> 2735[label="",style="solid", color="black", weight=3]; 2719[label="(++) range00 EQ (not (compare EQ LT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2719 -> 2736[label="",style="solid", color="black", weight=3]; 2720[label="(++) range00 EQ (not (compare EQ EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2720 -> 2737[label="",style="solid", color="black", weight=3]; 2721[label="(++) range00 EQ (not (compare EQ GT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2721 -> 2738[label="",style="solid", color="black", weight=3]; 2728[label="(++) range60 True (not (compare1 True False (True <= False) == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2728 -> 2741[label="",style="solid", color="black", weight=3]; 2729[label="(++) range60 True (not (EQ == LT)) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2729 -> 2742[label="",style="solid", color="black", weight=3]; 2730[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2730 -> 2743[label="",style="solid", color="black", weight=3]; 2731[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2731 -> 2744[label="",style="solid", color="black", weight=3]; 2732[label="(++) range00 GT (not (compare2 LT GT (LT == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2732 -> 2745[label="",style="solid", color="black", weight=3]; 2733[label="(++) range00 EQ (not (compare1 EQ LT False == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2733 -> 2746[label="",style="solid", color="black", weight=3]; 2734[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2734 -> 2747[label="",style="solid", color="black", weight=3]; 2735[label="(++) range00 EQ (not (compare1 EQ GT True == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2735 -> 2748[label="",style="solid", color="black", weight=3]; 2736[label="(++) range00 EQ (not (compare3 EQ LT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2736 -> 2749[label="",style="solid", color="black", weight=3]; 2737[label="(++) range00 EQ (not (compare3 EQ EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2737 -> 2750[label="",style="solid", color="black", weight=3]; 2738[label="(++) range00 EQ (not (compare3 EQ GT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2738 -> 2751[label="",style="solid", color="black", weight=3]; 2741[label="(++) range60 True (not (compare1 True False False == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2741 -> 2754[label="",style="solid", color="black", weight=3]; 2742[label="(++) range60 True (not False) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2742 -> 2755[label="",style="solid", color="black", weight=3]; 2743[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2743 -> 2756[label="",style="solid", color="black", weight=3]; 2744[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2744 -> 2757[label="",style="solid", color="black", weight=3]; 2745[label="(++) range00 GT (not (compare2 LT GT False == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2745 -> 2758[label="",style="solid", color="black", weight=3]; 2746[label="(++) range00 EQ (not (compare0 EQ LT otherwise == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2746 -> 2759[label="",style="solid", color="black", weight=3]; 2747[label="(++) range00 EQ True foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2747 -> 2760[label="",style="solid", color="black", weight=3]; 2748[label="(++) range00 EQ (not (LT == LT)) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2748 -> 2761[label="",style="solid", color="black", weight=3]; 2749[label="(++) range00 EQ (not (compare2 EQ LT (EQ == LT) == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2749 -> 2762[label="",style="solid", color="black", weight=3]; 2750[label="(++) range00 EQ (not (compare2 EQ EQ (EQ == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2750 -> 2763[label="",style="solid", color="black", weight=3]; 2751[label="(++) range00 EQ (not (compare2 EQ GT (EQ == GT) == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2751 -> 2764[label="",style="solid", color="black", weight=3]; 2754[label="(++) range60 True (not (compare0 True False otherwise == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2754 -> 2773[label="",style="solid", color="black", weight=3]; 2755[label="(++) range60 True True foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2755 -> 2774[label="",style="solid", color="black", weight=3]; 2756[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2756 -> 2775[label="",style="solid", color="black", weight=3]; 2757[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2757 -> 2776[label="",style="solid", color="black", weight=3]; 2758[label="(++) range00 GT (not (compare1 LT GT (LT <= GT) == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2758 -> 2777[label="",style="solid", color="black", weight=3]; 2759[label="(++) range00 EQ (not (compare0 EQ LT True == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2759 -> 2778[label="",style="solid", color="black", weight=3]; 2760[label="(++) (EQ : []) foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2760 -> 2779[label="",style="solid", color="black", weight=3]; 2761[label="(++) range00 EQ (not True) foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2761 -> 2780[label="",style="solid", color="black", weight=3]; 2762[label="(++) range00 EQ (not (compare2 EQ LT False == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2762 -> 2781[label="",style="solid", color="black", weight=3]; 2763[label="(++) range00 EQ (not (compare2 EQ EQ True == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2763 -> 2782[label="",style="solid", color="black", weight=3]; 2764[label="(++) range00 EQ (not (compare2 EQ GT False == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2764 -> 2783[label="",style="solid", color="black", weight=3]; 2773[label="(++) range60 True (not (compare0 True False True == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2773 -> 2787[label="",style="solid", color="black", weight=3]; 2774[label="(++) (True : []) foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2774 -> 2788[label="",style="solid", color="black", weight=3]; 2775[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2775 -> 2789[label="",style="solid", color="black", weight=3]; 2776[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2776 -> 2790[label="",style="solid", color="black", weight=3]; 2777[label="(++) range00 GT (not (compare1 LT GT True == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2777 -> 2791[label="",style="solid", color="black", weight=3]; 2778[label="(++) range00 EQ (not (GT == LT)) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2778 -> 2792[label="",style="solid", color="black", weight=3]; 2779[label="EQ : [] ++ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="green",shape="box"];2779 -> 2793[label="",style="dashed", color="green", weight=3]; 2780[label="(++) range00 EQ False foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2780 -> 2794[label="",style="solid", color="black", weight=3]; 2781[label="(++) range00 EQ (not (compare1 EQ LT (EQ <= LT) == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2781 -> 2795[label="",style="solid", color="black", weight=3]; 2782[label="(++) range00 EQ (not (EQ == LT)) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2782 -> 2796[label="",style="solid", color="black", weight=3]; 2783[label="(++) range00 EQ (not (compare1 EQ GT (EQ <= GT) == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2783 -> 2797[label="",style="solid", color="black", weight=3]; 2787[label="(++) range60 True (not (GT == LT)) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2787 -> 2799[label="",style="solid", color="black", weight=3]; 2788[label="True : [] ++ foldr (++) [] (map (range6 True True) [])",fontsize=16,color="green",shape="box"];2788 -> 2800[label="",style="dashed", color="green", weight=3]; 2789[label="(++) range00 GT (not (LT == LT) && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2789 -> 2801[label="",style="solid", color="black", weight=3]; 2790[label="(++) range00 GT (not (LT == LT) && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2790 -> 2802[label="",style="solid", color="black", weight=3]; 2791[label="(++) range00 GT (not (LT == LT) && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2791 -> 2803[label="",style="solid", color="black", weight=3]; 2792[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2792 -> 2804[label="",style="solid", color="black", weight=3]; 2793[label="[] ++ foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2793 -> 2805[label="",style="solid", color="black", weight=3]; 2794[label="(++) [] foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2794 -> 2806[label="",style="solid", color="black", weight=3]; 2795[label="(++) range00 EQ (not (compare1 EQ LT False == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2795 -> 2807[label="",style="solid", color="black", weight=3]; 2796[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2796 -> 2808[label="",style="solid", color="black", weight=3]; 2797[label="(++) range00 EQ (not (compare1 EQ GT True == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2797 -> 2809[label="",style="solid", color="black", weight=3]; 2799[label="(++) range60 True (not False) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2799 -> 2811[label="",style="solid", color="black", weight=3]; 2800[label="[] ++ foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2800 -> 2812[label="",style="solid", color="black", weight=3]; 2801[label="(++) range00 GT (not True && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2801 -> 2813[label="",style="solid", color="black", weight=3]; 2802[label="(++) range00 GT (not True && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2802 -> 2814[label="",style="solid", color="black", weight=3]; 2803[label="(++) range00 GT (not True && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2803 -> 2815[label="",style="solid", color="black", weight=3]; 2804[label="(++) range00 EQ True foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2804 -> 2816[label="",style="solid", color="black", weight=3]; 2805[label="foldr (++) [] (map (range0 EQ EQ) (GT : []))",fontsize=16,color="black",shape="box"];2805 -> 2817[label="",style="solid", color="black", weight=3]; 2806[label="foldr (++) [] (map (range0 EQ GT) (GT : []))",fontsize=16,color="black",shape="box"];2806 -> 2818[label="",style="solid", color="black", weight=3]; 2807[label="(++) range00 EQ (not (compare0 EQ LT otherwise == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2807 -> 2819[label="",style="solid", color="black", weight=3]; 2808[label="(++) range00 EQ True foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2808 -> 2820[label="",style="solid", color="black", weight=3]; 2809[label="(++) range00 EQ (not (LT == LT)) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2809 -> 2821[label="",style="solid", color="black", weight=3]; 2811[label="(++) range60 True True foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2811 -> 2823[label="",style="solid", color="black", weight=3]; 2812[label="foldr (++) [] (map (range6 True True) [])",fontsize=16,color="black",shape="box"];2812 -> 2824[label="",style="solid", color="black", weight=3]; 2813[label="(++) range00 GT (False && GT >= LT) foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2813 -> 2825[label="",style="solid", color="black", weight=3]; 2814[label="(++) range00 GT (False && GT >= EQ) foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2814 -> 2826[label="",style="solid", color="black", weight=3]; 2815[label="(++) range00 GT (False && GT >= GT) foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2815 -> 2827[label="",style="solid", color="black", weight=3]; 2816[label="(++) (EQ : []) foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2816 -> 2828[label="",style="solid", color="black", weight=3]; 2817[label="foldr (++) [] (range0 EQ EQ GT : map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2817 -> 2829[label="",style="solid", color="black", weight=3]; 2818[label="foldr (++) [] (range0 EQ GT GT : map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2818 -> 2830[label="",style="solid", color="black", weight=3]; 2819[label="(++) range00 EQ (not (compare0 EQ LT True == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2819 -> 2831[label="",style="solid", color="black", weight=3]; 2820[label="(++) (EQ : []) foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2820 -> 2832[label="",style="solid", color="black", weight=3]; 2821[label="(++) range00 EQ (not True) foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2821 -> 2833[label="",style="solid", color="black", weight=3]; 2823[label="(++) (True : []) foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2823 -> 2834[label="",style="solid", color="black", weight=3]; 2824 -> 2638[label="",style="dashed", color="red", weight=0]; 2824[label="foldr (++) [] []",fontsize=16,color="magenta"];2825[label="(++) range00 GT False foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2825 -> 2835[label="",style="solid", color="black", weight=3]; 2826[label="(++) range00 GT False foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2826 -> 2836[label="",style="solid", color="black", weight=3]; 2827[label="(++) range00 GT False foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2827 -> 2837[label="",style="solid", color="black", weight=3]; 2828[label="EQ : [] ++ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="green",shape="box"];2828 -> 2838[label="",style="dashed", color="green", weight=3]; 2829[label="(++) range0 EQ EQ GT foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2829 -> 2839[label="",style="solid", color="black", weight=3]; 2830[label="(++) range0 EQ GT GT foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2830 -> 2840[label="",style="solid", color="black", weight=3]; 2831[label="(++) range00 EQ (not (GT == LT)) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2831 -> 2841[label="",style="solid", color="black", weight=3]; 2832[label="EQ : [] ++ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="green",shape="box"];2832 -> 2842[label="",style="dashed", color="green", weight=3]; 2833[label="(++) range00 EQ False foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2833 -> 2843[label="",style="solid", color="black", weight=3]; 2834[label="True : [] ++ foldr (++) [] (map (range6 True False) [])",fontsize=16,color="green",shape="box"];2834 -> 2844[label="",style="dashed", color="green", weight=3]; 2835[label="(++) [] foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2835 -> 2845[label="",style="solid", color="black", weight=3]; 2836[label="(++) [] foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2836 -> 2846[label="",style="solid", color="black", weight=3]; 2837[label="(++) [] foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2837 -> 2847[label="",style="solid", color="black", weight=3]; 2838[label="[] ++ foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2838 -> 2848[label="",style="solid", color="black", weight=3]; 2839[label="(++) range00 GT (EQ >= GT && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2839 -> 2849[label="",style="solid", color="black", weight=3]; 2840[label="(++) range00 GT (EQ >= GT && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2840 -> 2850[label="",style="solid", color="black", weight=3]; 2841[label="(++) range00 EQ (not False) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2841 -> 2851[label="",style="solid", color="black", weight=3]; 2842[label="[] ++ foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2842 -> 2852[label="",style="solid", color="black", weight=3]; 2843[label="(++) [] foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2843 -> 2853[label="",style="solid", color="black", weight=3]; 2844[label="[] ++ foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2844 -> 2854[label="",style="solid", color="black", weight=3]; 2845[label="foldr (++) [] (map (range0 LT LT) [])",fontsize=16,color="black",shape="box"];2845 -> 2855[label="",style="solid", color="black", weight=3]; 2846[label="foldr (++) [] (map (range0 LT EQ) [])",fontsize=16,color="black",shape="box"];2846 -> 2856[label="",style="solid", color="black", weight=3]; 2847[label="foldr (++) [] (map (range0 LT GT) [])",fontsize=16,color="black",shape="box"];2847 -> 2857[label="",style="solid", color="black", weight=3]; 2848[label="foldr (++) [] (map (range0 EQ LT) (GT : []))",fontsize=16,color="black",shape="box"];2848 -> 2858[label="",style="solid", color="black", weight=3]; 2849[label="(++) range00 GT (compare EQ GT /= LT && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2849 -> 2859[label="",style="solid", color="black", weight=3]; 2850[label="(++) range00 GT (compare EQ GT /= LT && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2850 -> 2860[label="",style="solid", color="black", weight=3]; 2851[label="(++) range00 EQ True foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2851 -> 2861[label="",style="solid", color="black", weight=3]; 2852[label="foldr (++) [] (map (range0 GT EQ) (GT : []))",fontsize=16,color="black",shape="box"];2852 -> 2862[label="",style="solid", color="black", weight=3]; 2853[label="foldr (++) [] (map (range0 GT GT) (GT : []))",fontsize=16,color="black",shape="box"];2853 -> 2863[label="",style="solid", color="black", weight=3]; 2854[label="foldr (++) [] (map (range6 True False) [])",fontsize=16,color="black",shape="box"];2854 -> 2864[label="",style="solid", color="black", weight=3]; 2855[label="foldr (++) [] []",fontsize=16,color="black",shape="triangle"];2855 -> 2865[label="",style="solid", color="black", weight=3]; 2856 -> 2855[label="",style="dashed", color="red", weight=0]; 2856[label="foldr (++) [] []",fontsize=16,color="magenta"];2857 -> 2855[label="",style="dashed", color="red", weight=0]; 2857[label="foldr (++) [] []",fontsize=16,color="magenta"];2858[label="foldr (++) [] (range0 EQ LT GT : map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2858 -> 2866[label="",style="solid", color="black", weight=3]; 2859[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2859 -> 2867[label="",style="solid", color="black", weight=3]; 2860[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2860 -> 2868[label="",style="solid", color="black", weight=3]; 2861[label="(++) (EQ : []) foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2861 -> 2869[label="",style="solid", color="black", weight=3]; 2862[label="foldr (++) [] (range0 GT EQ GT : map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2862 -> 2870[label="",style="solid", color="black", weight=3]; 2863[label="foldr (++) [] (range0 GT GT GT : map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2863 -> 2871[label="",style="solid", color="black", weight=3]; 2864 -> 2638[label="",style="dashed", color="red", weight=0]; 2864[label="foldr (++) [] []",fontsize=16,color="magenta"];2865[label="[]",fontsize=16,color="green",shape="box"];2866[label="(++) range0 EQ LT GT foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2866 -> 2872[label="",style="solid", color="black", weight=3]; 2867[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2867 -> 2873[label="",style="solid", color="black", weight=3]; 2868[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2868 -> 2874[label="",style="solid", color="black", weight=3]; 2869[label="EQ : [] ++ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="green",shape="box"];2869 -> 2875[label="",style="dashed", color="green", weight=3]; 2870[label="(++) range0 GT EQ GT foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2870 -> 2876[label="",style="solid", color="black", weight=3]; 2871[label="(++) range0 GT GT GT foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2871 -> 2877[label="",style="solid", color="black", weight=3]; 2872[label="(++) range00 GT (EQ >= GT && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2872 -> 2878[label="",style="solid", color="black", weight=3]; 2873[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2873 -> 2879[label="",style="solid", color="black", weight=3]; 2874[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2874 -> 2880[label="",style="solid", color="black", weight=3]; 2875[label="[] ++ foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2875 -> 2881[label="",style="solid", color="black", weight=3]; 2876[label="(++) range00 GT (GT >= GT && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2876 -> 2882[label="",style="solid", color="black", weight=3]; 2877[label="(++) range00 GT (GT >= GT && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2877 -> 2883[label="",style="solid", color="black", weight=3]; 2878[label="(++) range00 GT (compare EQ GT /= LT && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2878 -> 2884[label="",style="solid", color="black", weight=3]; 2879[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2879 -> 2885[label="",style="solid", color="black", weight=3]; 2880[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2880 -> 2886[label="",style="solid", color="black", weight=3]; 2881[label="foldr (++) [] (map (range0 GT LT) (GT : []))",fontsize=16,color="black",shape="box"];2881 -> 2887[label="",style="solid", color="black", weight=3]; 2882[label="(++) range00 GT (compare GT GT /= LT && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2882 -> 2888[label="",style="solid", color="black", weight=3]; 2883[label="(++) range00 GT (compare GT GT /= LT && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2883 -> 2889[label="",style="solid", color="black", weight=3]; 2884[label="(++) range00 GT (not (compare EQ GT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2884 -> 2890[label="",style="solid", color="black", weight=3]; 2885[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2885 -> 2891[label="",style="solid", color="black", weight=3]; 2886[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2886 -> 2892[label="",style="solid", color="black", weight=3]; 2887[label="foldr (++) [] (range0 GT LT GT : map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2887 -> 2893[label="",style="solid", color="black", weight=3]; 2888[label="(++) range00 GT (not (compare GT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2888 -> 2894[label="",style="solid", color="black", weight=3]; 2889[label="(++) range00 GT (not (compare GT GT == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2889 -> 2895[label="",style="solid", color="black", weight=3]; 2890[label="(++) range00 GT (not (compare3 EQ GT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2890 -> 2896[label="",style="solid", color="black", weight=3]; 2891[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2891 -> 2897[label="",style="solid", color="black", weight=3]; 2892[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2892 -> 2898[label="",style="solid", color="black", weight=3]; 2893[label="(++) range0 GT LT GT foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2893 -> 2899[label="",style="solid", color="black", weight=3]; 2894[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2894 -> 2900[label="",style="solid", color="black", weight=3]; 2895[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2895 -> 2901[label="",style="solid", color="black", weight=3]; 2896[label="(++) range00 GT (not (compare2 EQ GT (EQ == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2896 -> 2902[label="",style="solid", color="black", weight=3]; 2897[label="(++) range00 GT (not (LT == LT) && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2897 -> 2903[label="",style="solid", color="black", weight=3]; 2898[label="(++) range00 GT (not (LT == LT) && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2898 -> 2904[label="",style="solid", color="black", weight=3]; 2899[label="(++) range00 GT (GT >= GT && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2899 -> 2905[label="",style="solid", color="black", weight=3]; 2900[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2900 -> 2906[label="",style="solid", color="black", weight=3]; 2901[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2901 -> 2907[label="",style="solid", color="black", weight=3]; 2902[label="(++) range00 GT (not (compare2 EQ GT False == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2902 -> 2908[label="",style="solid", color="black", weight=3]; 2903[label="(++) range00 GT (not True && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2903 -> 2909[label="",style="solid", color="black", weight=3]; 2904[label="(++) range00 GT (not True && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2904 -> 2910[label="",style="solid", color="black", weight=3]; 2905[label="(++) range00 GT (compare GT GT /= LT && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2905 -> 2911[label="",style="solid", color="black", weight=3]; 2906[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2906 -> 2912[label="",style="solid", color="black", weight=3]; 2907[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2907 -> 2913[label="",style="solid", color="black", weight=3]; 2908[label="(++) range00 GT (not (compare1 EQ GT (EQ <= GT) == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2908 -> 2914[label="",style="solid", color="black", weight=3]; 2909[label="(++) range00 GT (False && GT >= EQ) foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2909 -> 2915[label="",style="solid", color="black", weight=3]; 2910[label="(++) range00 GT (False && GT >= GT) foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2910 -> 2916[label="",style="solid", color="black", weight=3]; 2911[label="(++) range00 GT (not (compare GT GT == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2911 -> 2917[label="",style="solid", color="black", weight=3]; 2912[label="(++) range00 GT (not (EQ == LT) && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2912 -> 2918[label="",style="solid", color="black", weight=3]; 2913[label="(++) range00 GT (not (EQ == LT) && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2913 -> 2919[label="",style="solid", color="black", weight=3]; 2914[label="(++) range00 GT (not (compare1 EQ GT True == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2914 -> 2920[label="",style="solid", color="black", weight=3]; 2915[label="(++) range00 GT False foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2915 -> 2921[label="",style="solid", color="black", weight=3]; 2916[label="(++) range00 GT False foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2916 -> 2922[label="",style="solid", color="black", weight=3]; 2917[label="(++) range00 GT (not (compare3 GT GT == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2917 -> 2923[label="",style="solid", color="black", weight=3]; 2918[label="(++) range00 GT (not False && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2918 -> 2924[label="",style="solid", color="black", weight=3]; 2919[label="(++) range00 GT (not False && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2919 -> 2925[label="",style="solid", color="black", weight=3]; 2920[label="(++) range00 GT (not (LT == LT) && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2920 -> 2926[label="",style="solid", color="black", weight=3]; 2921[label="(++) [] foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2921 -> 2927[label="",style="solid", color="black", weight=3]; 2922[label="(++) [] foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2922 -> 2928[label="",style="solid", color="black", weight=3]; 2923[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2923 -> 2929[label="",style="solid", color="black", weight=3]; 2924[label="(++) range00 GT (True && GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2924 -> 2930[label="",style="solid", color="black", weight=3]; 2925[label="(++) range00 GT (True && GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2925 -> 2931[label="",style="solid", color="black", weight=3]; 2926[label="(++) range00 GT (not True && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2926 -> 2932[label="",style="solid", color="black", weight=3]; 2927[label="foldr (++) [] (map (range0 EQ EQ) [])",fontsize=16,color="black",shape="box"];2927 -> 2933[label="",style="solid", color="black", weight=3]; 2928[label="foldr (++) [] (map (range0 EQ GT) [])",fontsize=16,color="black",shape="box"];2928 -> 2934[label="",style="solid", color="black", weight=3]; 2929[label="(++) range00 GT (not (compare2 GT GT True == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2929 -> 2935[label="",style="solid", color="black", weight=3]; 2930[label="(++) range00 GT (GT >= EQ) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2930 -> 2936[label="",style="solid", color="black", weight=3]; 2931[label="(++) range00 GT (GT >= GT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2931 -> 2937[label="",style="solid", color="black", weight=3]; 2932[label="(++) range00 GT (False && GT >= LT) foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2932 -> 2938[label="",style="solid", color="black", weight=3]; 2933 -> 2855[label="",style="dashed", color="red", weight=0]; 2933[label="foldr (++) [] []",fontsize=16,color="magenta"];2934 -> 2855[label="",style="dashed", color="red", weight=0]; 2934[label="foldr (++) [] []",fontsize=16,color="magenta"];2935[label="(++) range00 GT (not (EQ == LT) && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2935 -> 2939[label="",style="solid", color="black", weight=3]; 2936[label="(++) range00 GT (compare GT EQ /= LT) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2936 -> 2940[label="",style="solid", color="black", weight=3]; 2937[label="(++) range00 GT (compare GT GT /= LT) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2937 -> 2941[label="",style="solid", color="black", weight=3]; 2938[label="(++) range00 GT False foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2938 -> 2942[label="",style="solid", color="black", weight=3]; 2939[label="(++) range00 GT (not False && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2939 -> 2943[label="",style="solid", color="black", weight=3]; 2940[label="(++) range00 GT (not (compare GT EQ == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2940 -> 2944[label="",style="solid", color="black", weight=3]; 2941[label="(++) range00 GT (not (compare GT GT == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2941 -> 2945[label="",style="solid", color="black", weight=3]; 2942[label="(++) [] foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2942 -> 2946[label="",style="solid", color="black", weight=3]; 2943[label="(++) range00 GT (True && GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2943 -> 2947[label="",style="solid", color="black", weight=3]; 2944[label="(++) range00 GT (not (compare3 GT EQ == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2944 -> 2948[label="",style="solid", color="black", weight=3]; 2945[label="(++) range00 GT (not (compare3 GT GT == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2945 -> 2949[label="",style="solid", color="black", weight=3]; 2946[label="foldr (++) [] (map (range0 EQ LT) [])",fontsize=16,color="black",shape="box"];2946 -> 2950[label="",style="solid", color="black", weight=3]; 2947[label="(++) range00 GT (GT >= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2947 -> 2951[label="",style="solid", color="black", weight=3]; 2948[label="(++) range00 GT (not (compare2 GT EQ (GT == EQ) == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2948 -> 2952[label="",style="solid", color="black", weight=3]; 2949[label="(++) range00 GT (not (compare2 GT GT (GT == GT) == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2949 -> 2953[label="",style="solid", color="black", weight=3]; 2950 -> 2855[label="",style="dashed", color="red", weight=0]; 2950[label="foldr (++) [] []",fontsize=16,color="magenta"];2951[label="(++) range00 GT (compare GT LT /= LT) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2951 -> 2954[label="",style="solid", color="black", weight=3]; 2952[label="(++) range00 GT (not (compare2 GT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2952 -> 2955[label="",style="solid", color="black", weight=3]; 2953[label="(++) range00 GT (not (compare2 GT GT True == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2953 -> 2956[label="",style="solid", color="black", weight=3]; 2954[label="(++) range00 GT (not (compare GT LT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2954 -> 2957[label="",style="solid", color="black", weight=3]; 2955[label="(++) range00 GT (not (compare1 GT EQ (GT <= EQ) == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2955 -> 2958[label="",style="solid", color="black", weight=3]; 2956[label="(++) range00 GT (not (EQ == LT)) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2956 -> 2959[label="",style="solid", color="black", weight=3]; 2957[label="(++) range00 GT (not (compare3 GT LT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2957 -> 2960[label="",style="solid", color="black", weight=3]; 2958[label="(++) range00 GT (not (compare1 GT EQ False == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2958 -> 2961[label="",style="solid", color="black", weight=3]; 2959[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2959 -> 2962[label="",style="solid", color="black", weight=3]; 2960[label="(++) range00 GT (not (compare2 GT LT (GT == LT) == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2960 -> 2963[label="",style="solid", color="black", weight=3]; 2961[label="(++) range00 GT (not (compare0 GT EQ otherwise == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2961 -> 2964[label="",style="solid", color="black", weight=3]; 2962[label="(++) range00 GT True foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2962 -> 2965[label="",style="solid", color="black", weight=3]; 2963[label="(++) range00 GT (not (compare2 GT LT False == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2963 -> 2966[label="",style="solid", color="black", weight=3]; 2964[label="(++) range00 GT (not (compare0 GT EQ True == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2964 -> 2967[label="",style="solid", color="black", weight=3]; 2965[label="(++) (GT : []) foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2965 -> 2968[label="",style="solid", color="black", weight=3]; 2966[label="(++) range00 GT (not (compare1 GT LT (GT <= LT) == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2966 -> 2969[label="",style="solid", color="black", weight=3]; 2967[label="(++) range00 GT (not (GT == LT)) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2967 -> 2970[label="",style="solid", color="black", weight=3]; 2968[label="GT : [] ++ foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="green",shape="box"];2968 -> 2971[label="",style="dashed", color="green", weight=3]; 2969[label="(++) range00 GT (not (compare1 GT LT False == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2969 -> 2972[label="",style="solid", color="black", weight=3]; 2970[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2970 -> 2973[label="",style="solid", color="black", weight=3]; 2971[label="[] ++ foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2971 -> 2974[label="",style="solid", color="black", weight=3]; 2972[label="(++) range00 GT (not (compare0 GT LT otherwise == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2972 -> 2975[label="",style="solid", color="black", weight=3]; 2973[label="(++) range00 GT True foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2973 -> 2976[label="",style="solid", color="black", weight=3]; 2974[label="foldr (++) [] (map (range0 GT GT) [])",fontsize=16,color="black",shape="box"];2974 -> 2977[label="",style="solid", color="black", weight=3]; 2975[label="(++) range00 GT (not (compare0 GT LT True == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2975 -> 2978[label="",style="solid", color="black", weight=3]; 2976[label="(++) (GT : []) foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2976 -> 2979[label="",style="solid", color="black", weight=3]; 2977 -> 2855[label="",style="dashed", color="red", weight=0]; 2977[label="foldr (++) [] []",fontsize=16,color="magenta"];2978[label="(++) range00 GT (not (GT == LT)) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2978 -> 2980[label="",style="solid", color="black", weight=3]; 2979[label="GT : [] ++ foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="green",shape="box"];2979 -> 2981[label="",style="dashed", color="green", weight=3]; 2980[label="(++) range00 GT (not False) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2980 -> 2982[label="",style="solid", color="black", weight=3]; 2981[label="[] ++ foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2981 -> 2983[label="",style="solid", color="black", weight=3]; 2982[label="(++) range00 GT True foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2982 -> 2984[label="",style="solid", color="black", weight=3]; 2983[label="foldr (++) [] (map (range0 GT EQ) [])",fontsize=16,color="black",shape="box"];2983 -> 2985[label="",style="solid", color="black", weight=3]; 2984[label="(++) (GT : []) foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2984 -> 2986[label="",style="solid", color="black", weight=3]; 2985 -> 2855[label="",style="dashed", color="red", weight=0]; 2985[label="foldr (++) [] []",fontsize=16,color="magenta"];2986[label="GT : [] ++ foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="green",shape="box"];2986 -> 2987[label="",style="dashed", color="green", weight=3]; 2987[label="[] ++ foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2987 -> 2988[label="",style="solid", color="black", weight=3]; 2988[label="foldr (++) [] (map (range0 GT LT) [])",fontsize=16,color="black",shape="box"];2988 -> 2989[label="",style="solid", color="black", weight=3]; 2989 -> 2855[label="",style="dashed", color="red", weight=0]; 2989[label="foldr (++) [] []",fontsize=16,color="magenta"];} ---------------------------------------- (95) Complex Obligation (AND) ---------------------------------------- (96) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040), []) -> new_takeWhile13(xu201, xu202, xu2030, xu2040, []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000))), []) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000, []) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1([])), []) new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090), []) -> new_takeWhile15(xu206, xu207, xu2080, xu2090, []) new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt0([])), []) new_takeWhile15(xu206, xu207, Zero, Succ(xu2090), []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040), []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile14(xu201, xu202, []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000, []) new_takeWhile15(xu206, xu207, Zero, Zero, []) -> new_takeWhile16(xu206, xu207, []) new_takeWhile2(xu206, xu211, xu210, []) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210), []) new_takeWhile16(xu206, xu207, []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) new_takeWhile13(xu201, xu202, Zero, Zero, []) -> new_takeWhile14(xu201, xu202, []) new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (97) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs. ---------------------------------------- (98) Complex Obligation (AND) ---------------------------------------- (99) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile15(xu206, xu207, Zero, Succ(xu2090), []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) new_takeWhile2(xu206, xu211, xu210, []) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210), []) new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000, []) new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090), []) -> new_takeWhile15(xu206, xu207, xu2080, xu2090, []) new_takeWhile15(xu206, xu207, Zero, Zero, []) -> new_takeWhile16(xu206, xu207, []) new_takeWhile16(xu206, xu207, []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (100) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile0(Integer(Neg(Succ(xu31000))), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile15(xu31000, xu30000, xu31000, xu30000, []) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = 1 + x_1 POL(Pos(x_1)) = 1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL([]) = 1 POL(new_primPlusInt(x_1, x_2)) = x_1 + x_2 POL(new_primPlusInt0(x_1)) = 1 + x_1 POL(new_primPlusInt1(x_1)) = 1 + x_1 POL(new_primPlusNat(x_1)) = 1 + x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 POL(new_takeWhile0(x_1, x_2, x_3)) = x_2 POL(new_takeWhile15(x_1, x_2, x_3, x_4, x_5)) = x_2 + x_5 POL(new_takeWhile16(x_1, x_2, x_3)) = x_2 + x_3 POL(new_takeWhile2(x_1, x_2, x_3, x_4)) = x_3 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) ---------------------------------------- (101) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile15(xu206, xu207, Zero, Succ(xu2090), []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) new_takeWhile2(xu206, xu211, xu210, []) -> new_takeWhile0(Integer(Neg(Succ(xu206))), Integer(xu210), []) new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090), []) -> new_takeWhile15(xu206, xu207, xu2080, xu2090, []) new_takeWhile15(xu206, xu207, Zero, Zero, []) -> new_takeWhile16(xu206, xu207, []) new_takeWhile16(xu206, xu207, []) -> new_takeWhile2(xu206, new_primPlusInt(xu207, []), new_primPlusInt(xu207, []), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (102) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 4 less nodes. ---------------------------------------- (103) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090), []) -> new_takeWhile15(xu206, xu207, xu2080, xu2090, []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (104) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile15(xu206, xu207, Succ(xu2080), Succ(xu2090), []) -> new_takeWhile15(xu206, xu207, xu2080, xu2090, []) Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 0 POL([]) = 2 POL(new_primPlusInt(x_1, x_2)) = 1 + 2*x_1 + x_2 POL(new_primPlusInt0(x_1)) = x_1 POL(new_primPlusInt1(x_1)) = 2*x_1 POL(new_primPlusNat(x_1)) = x_1 POL(new_primPlusNat0(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = 2*x_1 + 2*x_2 POL(new_takeWhile15(x_1, x_2, x_3, x_4, x_5)) = x_1 + x_2 + x_3 + x_4 + x_5 ---------------------------------------- (105) Obligation: Q DP problem: P is empty. The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (106) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (107) YES ---------------------------------------- (108) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (109) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = 2*x_1 POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 2 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = x_1 + 2*x_2 POL(new_primPlusInt0(x_1)) = 2 + x_1 POL(new_primPlusInt1(x_1)) = 2 + 2*x_1 POL(new_primPlusNat(x_1)) = 2 + x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + 2*x_2 POL(new_takeWhile0(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 ---------------------------------------- (110) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (111) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt1([])), []) Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = 2*x_1 POL(Neg(x_1)) = 2 + 2*x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 2 POL([]) = 2 POL(new_primPlusInt(x_1, x_2)) = 2*x_1 + x_2 POL(new_primPlusInt0(x_1)) = 2 + x_1 POL(new_primPlusInt1(x_1)) = 1 + 2*x_1 POL(new_primPlusNat(x_1)) = x_1 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_1 + 2*x_2 POL(new_takeWhile0(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 ---------------------------------------- (112) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile0(Integer(Neg(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat([]) -> Succ(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (113) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. ---------------------------------------- (114) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) The TRS R consists of the following rules: new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat([]) -> Succ(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (115) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile0(Integer(Neg(Zero)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Neg(Zero)), Integer(new_primPlusInt(xu30000, [])), []) Strictly oriented rules of the TRS R: new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = 2*x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 0 POL([]) = 1 POL(new_primPlusInt(x_1, x_2)) = 2*x_1 + x_2 POL(new_primPlusInt0(x_1)) = 2 + 2*x_1 POL(new_primPlusNat(x_1)) = x_1 POL(new_takeWhile0(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (116) Obligation: Q DP problem: P is empty. The TRS R consists of the following rules: new_primPlusNat([]) -> Succ(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (117) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (118) YES ---------------------------------------- (119) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile13(xu201, xu202, Zero, Succ(xu2040), []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000))), []) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000, []) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040), []) -> new_takeWhile13(xu201, xu202, xu2030, xu2040, []) new_takeWhile13(xu201, xu202, Zero, Zero, []) -> new_takeWhile14(xu201, xu202, []) new_takeWhile14(xu201, xu202, []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000, [])), []) new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (120) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile0(Integer(Pos(xu3100)), Integer(Neg(Succ(xu30000))), []) -> new_takeWhile0(Integer(Pos(xu3100)), Integer(new_primPlusInt(xu30000, [])), []) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 0 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 0 POL([]) = 1 POL(new_primPlusInt(x_1, x_2)) = x_1 POL(new_primPlusInt0(x_1)) = 0 POL(new_primPlusInt1(x_1)) = 0 POL(new_primPlusNat(x_1)) = x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 POL(new_takeWhile0(x_1, x_2, x_3)) = x_2 POL(new_takeWhile13(x_1, x_2, x_3, x_4, x_5)) = 0 POL(new_takeWhile14(x_1, x_2, x_3)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) ---------------------------------------- (121) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile13(xu201, xu202, Zero, Succ(xu2040), []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000))), []) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000, []) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040), []) -> new_takeWhile13(xu201, xu202, xu2030, xu2040, []) new_takeWhile13(xu201, xu202, Zero, Zero, []) -> new_takeWhile14(xu201, xu202, []) new_takeWhile14(xu201, xu202, []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1([])), []) new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (122) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. ---------------------------------------- (123) Complex Obligation (AND) ---------------------------------------- (124) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (125) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile0(Integer(Pos(Zero)), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt1([])), []) Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = 1 + 2*x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 0 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 POL(new_primPlusInt0(x_1)) = x_1 POL(new_primPlusInt1(x_1)) = x_1 POL(new_primPlusNat(x_1)) = 2*x_1 POL(new_primPlusNat0(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = 1 + 2*x_1 + x_2 POL(new_takeWhile0(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (126) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Zero)), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Zero)), Integer(new_primPlusInt0([])), []) The TRS R consists of the following rules: new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat([]) -> Succ(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (127) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. ---------------------------------------- (128) TRUE ---------------------------------------- (129) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000))), []) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000, []) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040), []) -> new_takeWhile13(xu201, xu202, xu2030, xu2040, []) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040), []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1([])), []) new_takeWhile13(xu201, xu202, Zero, Zero, []) -> new_takeWhile14(xu201, xu202, []) new_takeWhile14(xu201, xu202, []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (130) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt0([])), []) new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Neg(Zero)), []) -> new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(new_primPlusInt1([])), []) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Integer(x_1)) = x_1 POL(Neg(x_1)) = 1 + x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = 0 POL(Zero) = 1 POL([]) = 1 POL(new_primPlusInt(x_1, x_2)) = 1 + x_2 POL(new_primPlusInt0(x_1)) = 0 POL(new_primPlusInt1(x_1)) = x_1 POL(new_primPlusNat(x_1)) = 0 POL(new_primPlusNat0(x_1, x_2)) = 0 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_1 + x_2 POL(new_takeWhile0(x_1, x_2, x_3)) = x_2 POL(new_takeWhile13(x_1, x_2, x_3, x_4, x_5)) = 0 POL(new_takeWhile14(x_1, x_2, x_3)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) ---------------------------------------- (131) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile0(Integer(Pos(Succ(xu31000))), Integer(Pos(Succ(xu30000))), []) -> new_takeWhile13(xu31000, xu30000, xu30000, xu31000, []) new_takeWhile13(xu201, xu202, Succ(xu2030), Succ(xu2040), []) -> new_takeWhile13(xu201, xu202, xu2030, xu2040, []) new_takeWhile13(xu201, xu202, Zero, Succ(xu2040), []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) new_takeWhile13(xu201, xu202, Zero, Zero, []) -> new_takeWhile14(xu201, xu202, []) new_takeWhile14(xu201, xu202, []) -> new_takeWhile0(Integer(Pos(Succ(xu201))), Integer(Pos(new_primPlusNat0(xu202, []))), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusInt0([]) -> Pos(new_primPlusNat([])) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) new_primPlusInt1([]) -> Pos(Succ(Zero)) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (132) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Neg(Succ(Zero)), []) -> new_takeWhile(Neg(Zero), Pos(Zero), []) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000)), []) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100, []) new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000)), []) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000, []), xu3100, xu3000, []) new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990), []) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990, []) new_takeWhile10(xu195, xu196, xu197, Zero, Zero, []) -> new_takeWhile12(xu195, xu196, xu197, []) new_takeWhile(Neg(Zero), Pos(Zero), []) -> new_takeWhile(Neg(Zero), Pos(new_primPlusNat([])), []) new_takeWhile(Pos(Succ(xu3100)), Pos(Zero), []) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat([])), []) new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000)), []) new_takeWhile(Neg(Zero), Neg(Zero), []) -> new_takeWhile(Neg(Zero), Pos(Succ(Zero)), []) new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990), []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) new_takeWhile12(xu195, xu196, xu197, []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) new_takeWhile(Pos(xu310), Neg(Succ(Zero)), []) -> new_takeWhile(Pos(xu310), Pos(Zero), []) new_takeWhile(Pos(Succ(xu3100)), Neg(Zero), []) -> new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(Zero)), []) new_takeWhile11(xu167, xu168, []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) new_takeWhile(Pos(Zero), Pos(Zero), []) -> new_takeWhile(Pos(Zero), Pos(new_primPlusNat([])), []) new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700), []) -> new_takeWhile1(xu167, xu168, xu1690, xu1700, []) new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000)), []) new_takeWhile1(xu167, xu168, Zero, Succ(xu1700), []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) new_takeWhile1(xu167, xu168, Zero, Zero, []) -> new_takeWhile11(xu167, xu168, []) new_takeWhile(Pos(Zero), Neg(Zero), []) -> new_takeWhile(Pos(Zero), Pos(Succ(Zero)), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (133) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 6 SCCs with 5 less nodes. ---------------------------------------- (134) Complex Obligation (AND) ---------------------------------------- (135) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(Zero), Pos(Zero), []) -> new_takeWhile(Pos(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (136) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 2 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 2 + x_1 + x_2 POL(new_primPlusNat(x_1)) = 2 + 2*x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + 2*x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (137) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(Zero), Pos(Zero), []) -> new_takeWhile(Pos(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (138) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 1 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat(x_1)) = 1 + 2*x_1 POL(new_primPlusNat1(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (139) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(Zero), Pos(Zero), []) -> new_takeWhile(Pos(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat([]) -> Succ(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (140) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. ---------------------------------------- (141) TRUE ---------------------------------------- (142) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Pos(Zero), []) -> new_takeWhile(Neg(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (143) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 2 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 2 + x_1 + x_2 POL(new_primPlusNat(x_1)) = 2 + 2*x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + 2*x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (144) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Pos(Zero), []) -> new_takeWhile(Neg(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (145) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusNat1(Zero, []) -> Zero new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 2*x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 1 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat(x_1)) = 1 + 2*x_1 POL(new_primPlusNat1(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (146) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Pos(Zero), []) -> new_takeWhile(Neg(Zero), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat([]) -> Succ(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (147) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. ---------------------------------------- (148) TRUE ---------------------------------------- (149) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990), []) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990, []) new_takeWhile10(xu195, xu196, xu197, Zero, Zero, []) -> new_takeWhile12(xu195, xu196, xu197, []) new_takeWhile12(xu195, xu196, xu197, []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000)), []) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000, []), xu3100, xu3000, []) new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990), []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (150) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile10(xu195, xu196, xu197, Zero, Zero, []) -> new_takeWhile12(xu195, xu196, xu197, []) new_takeWhile10(xu195, xu196, xu197, Zero, Succ(xu1990), []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = 0 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 1 POL([]) = 1 POL(new_primPlusInt(x_1, x_2)) = x_1 POL(new_primPlusNat(x_1)) = 1 + x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 POL(new_takeWhile10(x_1, x_2, x_3, x_4, x_5, x_6)) = 1 + x_1 + x_3 + x_6 POL(new_takeWhile12(x_1, x_2, x_3, x_4)) = x_1 + x_3 + x_4 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) ---------------------------------------- (151) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990), []) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990, []) new_takeWhile12(xu195, xu196, xu197, []) -> new_takeWhile(Neg(Succ(xu195)), xu197, []) new_takeWhile(Neg(Succ(xu3100)), Neg(Succ(xu3000)), []) -> new_takeWhile10(xu3100, xu3000, new_primPlusInt(xu3000, []), xu3100, xu3000, []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (152) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. ---------------------------------------- (153) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990), []) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990, []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (154) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile10(xu195, xu196, xu197, Succ(xu1980), Succ(xu1990), []) -> new_takeWhile10(xu195, xu196, xu197, xu1980, xu1990, []) Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + 2*x_1 POL(Pos(x_1)) = 1 + x_1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 2 POL([]) = 2 POL(new_primPlusInt(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat(x_1)) = 2*x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + x_2 POL(new_takeWhile10(x_1, x_2, x_3, x_4, x_5, x_6)) = x_1 + x_2 + x_3 + x_4 + x_5 + x_6 ---------------------------------------- (155) Obligation: Q DP problem: P is empty. R is empty. Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (156) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (157) YES ---------------------------------------- (158) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700), []) -> new_takeWhile1(xu167, xu168, xu1690, xu1700, []) new_takeWhile1(xu167, xu168, Zero, Succ(xu1700), []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000)), []) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100, []) new_takeWhile1(xu167, xu168, Zero, Zero, []) -> new_takeWhile11(xu167, xu168, []) new_takeWhile11(xu167, xu168, []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) new_takeWhile(Pos(Succ(xu3100)), Pos(Zero), []) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat([])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (159) QDPOrderProof (EQUIVALENT) We use the reduction pair processor [LPAR04,JAR06]. The following pairs can be oriented strictly and are deleted. new_takeWhile(Pos(Succ(xu3100)), Pos(Zero), []) -> new_takeWhile(Pos(Succ(xu3100)), Pos(new_primPlusNat([])), []) The remaining pairs can at least be oriented weakly. Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = 0 POL(Zero) = 1 POL([]) = 0 POL(new_primPlusInt(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat(x_1)) = x_1 POL(new_primPlusNat0(x_1, x_2)) = x_2 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(new_takeWhile1(x_1, x_2, x_3, x_4, x_5)) = x_5 POL(new_takeWhile11(x_1, x_2, x_3)) = 0 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) ---------------------------------------- (160) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile1(xu167, xu168, Succ(xu1690), Succ(xu1700), []) -> new_takeWhile1(xu167, xu168, xu1690, xu1700, []) new_takeWhile1(xu167, xu168, Zero, Succ(xu1700), []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) new_takeWhile(Pos(Succ(xu3100)), Pos(Succ(xu3000)), []) -> new_takeWhile1(xu3100, xu3000, xu3000, xu3100, []) new_takeWhile1(xu167, xu168, Zero, Zero, []) -> new_takeWhile11(xu167, xu168, []) new_takeWhile11(xu167, xu168, []) -> new_takeWhile(Pos(Succ(xu167)), Pos(new_primPlusNat0(xu168, [])), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (161) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000)), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (162) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + 2*x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 1 POL([]) = 2 POL(new_primPlusInt(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat(x_1)) = 1 + x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (163) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000)), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (164) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile(Pos(xu310), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Pos(xu310), Neg(Succ(xu30000)), []) Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = 1 + x_1 POL([]) = 1 POL(new_primPlusNat0(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (165) Obligation: Q DP problem: P is empty. R is empty. Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (166) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (167) YES ---------------------------------------- (168) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000)), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (169) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented rules of the TRS R: new_primPlusNat1(Succ(xu1680), []) -> Succ(xu1680) new_primPlusInt(Succ(xu300000), []) -> Neg(Succ(xu300000)) new_primPlusNat1(Zero, []) -> Zero new_primPlusNat([]) -> Succ(Zero) new_primPlusInt(Zero, []) -> Pos(Zero) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = 1 + 2*x_1 POL(Pos(x_1)) = x_1 POL(Succ(x_1)) = x_1 POL(Zero) = 1 POL([]) = 2 POL(new_primPlusInt(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat(x_1)) = 1 + x_1 POL(new_primPlusNat0(x_1, x_2)) = 1 + x_1 + x_2 POL(new_primPlusNat1(x_1, x_2)) = 1 + x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (170) Obligation: Q DP problem: The TRS P consists of the following rules: new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000)), []) The TRS R consists of the following rules: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (171) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: new_takeWhile(Neg(Zero), Neg(Succ(Succ(xu30000))), []) -> new_takeWhile(Neg(Zero), Neg(Succ(xu30000)), []) Strictly oriented rules of the TRS R: new_primPlusNat0(xu168, []) -> Succ(Succ(new_primPlusNat1(xu168, []))) Used ordering: Polynomial interpretation [POLO]: POL(Neg(x_1)) = x_1 POL(Succ(x_1)) = 1 + x_1 POL(Zero) = 0 POL([]) = 1 POL(new_primPlusNat0(x_1, x_2)) = 2 + 2*x_1 + 2*x_2 POL(new_primPlusNat1(x_1, x_2)) = x_1 + x_2 POL(new_takeWhile(x_1, x_2, x_3)) = x_1 + x_2 + x_3 ---------------------------------------- (172) Obligation: Q DP problem: P is empty. R is empty. Q is empty. We have to consider all (P,Q,R)-chains. ---------------------------------------- (173) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (174) YES