22.95/10.33 YES 25.68/11.12 proof of /export/starexec/sandbox2/benchmark/theBenchmark.hs 25.68/11.12 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 25.68/11.12 25.68/11.12 25.68/11.12 H-Termination with start terms of the given HASKELL could be proven: 25.68/11.12 25.68/11.12 (0) HASKELL 25.68/11.12 (1) LR [EQUIVALENT, 0 ms] 25.68/11.12 (2) HASKELL 25.68/11.12 (3) CR [EQUIVALENT, 0 ms] 25.68/11.12 (4) HASKELL 25.68/11.12 (5) BR [EQUIVALENT, 0 ms] 25.68/11.12 (6) HASKELL 25.68/11.12 (7) COR [EQUIVALENT, 14 ms] 25.68/11.12 (8) HASKELL 25.68/11.12 (9) LetRed [EQUIVALENT, 0 ms] 25.68/11.12 (10) HASKELL 25.68/11.12 (11) NumRed [SOUND, 7 ms] 25.68/11.12 (12) HASKELL 25.68/11.12 (13) Narrow [SOUND, 0 ms] 25.68/11.12 (14) AND 25.68/11.12 (15) QDP 25.68/11.12 (16) DependencyGraphProof [EQUIVALENT, 0 ms] 25.68/11.12 (17) AND 25.68/11.12 (18) QDP 25.68/11.12 (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (20) YES 25.68/11.12 (21) QDP 25.68/11.12 (22) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (23) YES 25.68/11.12 (24) QDP 25.68/11.12 (25) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (26) YES 25.68/11.12 (27) QDP 25.68/11.12 (28) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (29) YES 25.68/11.12 (30) QDP 25.68/11.12 (31) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (32) YES 25.68/11.12 (33) QDP 25.68/11.12 (34) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (35) YES 25.68/11.12 (36) QDP 25.68/11.12 (37) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (38) YES 25.68/11.12 (39) QDP 25.68/11.12 (40) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (41) YES 25.68/11.12 (42) QDP 25.68/11.12 (43) DependencyGraphProof [EQUIVALENT, 0 ms] 25.68/11.12 (44) AND 25.68/11.12 (45) QDP 25.68/11.12 (46) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (47) YES 25.68/11.12 (48) QDP 25.68/11.12 (49) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (50) YES 25.68/11.12 (51) QDP 25.68/11.12 (52) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (53) YES 25.68/11.12 (54) QDP 25.68/11.12 (55) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (56) YES 25.68/11.12 (57) QDP 25.68/11.12 (58) QDPSizeChangeProof [EQUIVALENT, 0 ms] 25.68/11.12 (59) YES 25.68/11.12 25.68/11.12 25.68/11.12 ---------------------------------------- 25.68/11.12 25.68/11.12 (0) 25.68/11.12 Obligation: 25.68/11.12 mainModule Main 25.68/11.12 module FiniteMap where { 25.68/11.12 import qualified Main; 25.68/11.12 import qualified Maybe; 25.68/11.12 import qualified Prelude; 25.68/11.13 data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) ; 25.68/11.13 25.68/11.13 instance (Eq a, Eq b) => Eq FiniteMap b a where { 25.68/11.13 } 25.68/11.13 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 25.68/11.13 addToFM fm key elt = addToFM_C (\old new ->new) fm key elt; 25.68/11.13 25.68/11.13 addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b; 25.68/11.13 addToFM_C combiner EmptyFM key elt = unitFM key elt; 25.68/11.13 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt | new_key < key = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r 25.68/11.13 | new_key > key = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) 25.68/11.13 | otherwise = Branch new_key (combiner elt new_elt) size fm_l fm_r; 25.68/11.13 25.68/11.13 emptyFM :: FiniteMap a b; 25.68/11.13 emptyFM = EmptyFM; 25.68/11.13 25.68/11.13 findMax :: FiniteMap b a -> (b,a); 25.68/11.13 findMax (Branch key elt _ _ EmptyFM) = (key,elt); 25.68/11.13 findMax (Branch key elt _ _ fm_r) = findMax fm_r; 25.68/11.13 25.68/11.13 findMin :: FiniteMap b a -> (b,a); 25.68/11.13 findMin (Branch key elt _ EmptyFM _) = (key,elt); 25.68/11.13 findMin (Branch key elt _ fm_l _) = findMin fm_l; 25.68/11.13 25.68/11.13 mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.68/11.13 mkBalBranch key elt fm_L fm_R | size_l + size_r < 2 = mkBranch 1 key elt fm_L fm_R 25.68/11.13 | size_r > sIZE_RATIO * size_l = case fm_R of { 25.68/11.13 Branch _ _ _ fm_rl fm_rr | sizeFM fm_rl < 2 * sizeFM fm_rr -> single_L fm_L fm_R 25.68/11.13 | otherwise -> double_L fm_L fm_R; 25.68/11.13 } 25.68/11.13 | size_l > sIZE_RATIO * size_r = case fm_L of { 25.68/11.13 Branch _ _ _ fm_ll fm_lr | sizeFM fm_lr < 2 * sizeFM fm_ll -> single_R fm_L fm_R 25.68/11.13 | otherwise -> double_R fm_L fm_R; 25.68/11.13 } 25.68/11.13 | otherwise = mkBranch 2 key elt fm_L fm_R where { 25.68/11.13 double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 25.68/11.13 double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 25.68/11.13 single_L fm_l (Branch key_r elt_r _ fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 25.68/11.13 single_R (Branch key_l elt_l _ fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 25.68/11.13 size_l = sizeFM fm_L; 25.68/11.13 size_r = sizeFM fm_R; 25.68/11.13 }; 25.68/11.13 25.68/11.13 mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.68/11.13 mkBranch which key elt fm_l fm_r = let { 25.68/11.13 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 25.68/11.13 } in result where { 25.68/11.13 balance_ok = True; 25.68/11.13 left_ok = case fm_l of { 25.68/11.13 EmptyFM-> True; 25.68/11.13 Branch left_key _ _ _ _-> let { 25.68/11.13 biggest_left_key = fst (findMax fm_l); 25.68/11.13 } in biggest_left_key < key; 25.68/11.13 } ; 25.68/11.13 left_size = sizeFM fm_l; 25.68/11.13 right_ok = case fm_r of { 25.68/11.13 EmptyFM-> True; 25.68/11.13 Branch right_key _ _ _ _-> let { 25.68/11.13 smallest_right_key = fst (findMin fm_r); 25.68/11.13 } in key < smallest_right_key; 25.68/11.13 } ; 25.68/11.13 right_size = sizeFM fm_r; 25.68/11.13 unbox :: Int -> Int; 25.68/11.13 unbox x = x; 25.68/11.13 }; 25.68/11.13 25.68/11.13 mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.68/11.13 mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt; 25.68/11.13 mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt; 25.68/11.13 mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lr) fm_r@(Branch key_r elt_r _ fm_rl fm_rr) | sIZE_RATIO * size_l < size_r = mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr 25.68/11.13 | sIZE_RATIO * size_r < size_l = mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r) 25.68/11.13 | otherwise = mkBranch 13 key elt fm_l fm_r where { 25.68/11.13 size_l = sizeFM fm_l; 25.68/11.13 size_r = sizeFM fm_r; 25.68/11.13 }; 25.68/11.13 25.68/11.13 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.68/11.13 plusFM EmptyFM fm2 = fm2; 25.68/11.13 plusFM fm1 EmptyFM = fm1; 25.68/11.13 plusFM fm1 (Branch split_key elt1 _ left right) = mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 25.68/11.13 gts = splitGT fm1 split_key; 25.68/11.13 lts = splitLT fm1 split_key; 25.68/11.13 }; 25.68/11.13 25.68/11.13 sIZE_RATIO :: Int; 25.68/11.13 sIZE_RATIO = 5; 25.68/11.13 25.68/11.13 sizeFM :: FiniteMap b a -> Int; 25.68/11.13 sizeFM EmptyFM = 0; 25.68/11.13 sizeFM (Branch _ _ size _ _) = size; 25.68/11.13 25.68/11.13 splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.68/11.13 splitGT EmptyFM split_key = emptyFM; 25.68/11.13 splitGT (Branch key elt _ fm_l fm_r) split_key | split_key > key = splitGT fm_r split_key 25.86/11.13 | split_key < key = mkVBalBranch key elt (splitGT fm_l split_key) fm_r 25.86/11.13 | otherwise = fm_r; 25.86/11.13 25.86/11.13 splitLT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 25.86/11.13 splitLT EmptyFM split_key = emptyFM; 25.86/11.13 splitLT (Branch key elt _ fm_l fm_r) split_key | split_key < key = splitLT fm_l split_key 25.86/11.13 | split_key > key = mkVBalBranch key elt fm_l (splitLT fm_r split_key) 25.86/11.13 | otherwise = fm_l; 25.86/11.13 25.86/11.13 unitFM :: a -> b -> FiniteMap a b; 25.86/11.13 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 25.86/11.13 25.86/11.13 } 25.86/11.13 module Maybe where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 module Main where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (1) LR (EQUIVALENT) 25.86/11.13 Lambda Reductions: 25.86/11.13 The following Lambda expression 25.86/11.13 "\oldnew->new" 25.86/11.13 is transformed to 25.86/11.13 "addToFM0 old new = new; 25.86/11.13 " 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (2) 25.86/11.13 Obligation: 25.86/11.13 mainModule Main 25.86/11.13 module FiniteMap where { 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) ; 25.86/11.13 25.86/11.13 instance (Eq a, Eq b) => Eq FiniteMap a b where { 25.86/11.13 } 25.86/11.13 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 25.86/11.13 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 25.86/11.13 25.86/11.13 addToFM0 old new = new; 25.86/11.13 25.86/11.13 addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a; 25.86/11.13 addToFM_C combiner EmptyFM key elt = unitFM key elt; 25.86/11.13 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt | new_key < key = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r 25.86/11.13 | new_key > key = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) 25.86/11.13 | otherwise = Branch new_key (combiner elt new_elt) size fm_l fm_r; 25.86/11.13 25.86/11.13 emptyFM :: FiniteMap a b; 25.86/11.13 emptyFM = EmptyFM; 25.86/11.13 25.86/11.13 findMax :: FiniteMap b a -> (b,a); 25.86/11.13 findMax (Branch key elt _ _ EmptyFM) = (key,elt); 25.86/11.13 findMax (Branch key elt _ _ fm_r) = findMax fm_r; 25.86/11.13 25.86/11.13 findMin :: FiniteMap a b -> (a,b); 25.86/11.13 findMin (Branch key elt _ EmptyFM _) = (key,elt); 25.86/11.13 findMin (Branch key elt _ fm_l _) = findMin fm_l; 25.86/11.13 25.86/11.13 mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.86/11.13 mkBalBranch key elt fm_L fm_R | size_l + size_r < 2 = mkBranch 1 key elt fm_L fm_R 25.86/11.13 | size_r > sIZE_RATIO * size_l = case fm_R of { 25.86/11.13 Branch _ _ _ fm_rl fm_rr | sizeFM fm_rl < 2 * sizeFM fm_rr -> single_L fm_L fm_R 25.86/11.13 | otherwise -> double_L fm_L fm_R; 25.86/11.13 } 25.86/11.13 | size_l > sIZE_RATIO * size_r = case fm_L of { 25.86/11.13 Branch _ _ _ fm_ll fm_lr | sizeFM fm_lr < 2 * sizeFM fm_ll -> single_R fm_L fm_R 25.86/11.13 | otherwise -> double_R fm_L fm_R; 25.86/11.13 } 25.86/11.13 | otherwise = mkBranch 2 key elt fm_L fm_R where { 25.86/11.13 double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 25.86/11.13 double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 25.86/11.13 single_L fm_l (Branch key_r elt_r _ fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 25.86/11.13 single_R (Branch key_l elt_l _ fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 25.86/11.13 size_l = sizeFM fm_L; 25.86/11.13 size_r = sizeFM fm_R; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkBranch which key elt fm_l fm_r = let { 25.86/11.13 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 25.86/11.13 } in result where { 25.86/11.13 balance_ok = True; 25.86/11.13 left_ok = case fm_l of { 25.86/11.13 EmptyFM-> True; 25.86/11.13 Branch left_key _ _ _ _-> let { 25.86/11.13 biggest_left_key = fst (findMax fm_l); 25.86/11.13 } in biggest_left_key < key; 25.86/11.13 } ; 25.86/11.13 left_size = sizeFM fm_l; 25.86/11.13 right_ok = case fm_r of { 25.86/11.13 EmptyFM-> True; 25.86/11.13 Branch right_key _ _ _ _-> let { 25.86/11.13 smallest_right_key = fst (findMin fm_r); 25.86/11.13 } in key < smallest_right_key; 25.86/11.13 } ; 25.86/11.13 right_size = sizeFM fm_r; 25.86/11.13 unbox :: Int -> Int; 25.86/11.13 unbox x = x; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt; 25.86/11.13 mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt; 25.86/11.13 mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lr) fm_r@(Branch key_r elt_r _ fm_rl fm_rr) | sIZE_RATIO * size_l < size_r = mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr 25.86/11.13 | sIZE_RATIO * size_r < size_l = mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r) 25.86/11.13 | otherwise = mkBranch 13 key elt fm_l fm_r where { 25.86/11.13 size_l = sizeFM fm_l; 25.86/11.13 size_r = sizeFM fm_r; 25.86/11.13 }; 25.86/11.13 25.86/11.13 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 plusFM EmptyFM fm2 = fm2; 25.86/11.13 plusFM fm1 EmptyFM = fm1; 25.86/11.13 plusFM fm1 (Branch split_key elt1 _ left right) = mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 25.86/11.13 gts = splitGT fm1 split_key; 25.86/11.13 lts = splitLT fm1 split_key; 25.86/11.13 }; 25.86/11.13 25.86/11.13 sIZE_RATIO :: Int; 25.86/11.13 sIZE_RATIO = 5; 25.86/11.13 25.86/11.13 sizeFM :: FiniteMap b a -> Int; 25.86/11.13 sizeFM EmptyFM = 0; 25.86/11.13 sizeFM (Branch _ _ size _ _) = size; 25.86/11.13 25.86/11.13 splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.86/11.13 splitGT EmptyFM split_key = emptyFM; 25.86/11.13 splitGT (Branch key elt _ fm_l fm_r) split_key | split_key > key = splitGT fm_r split_key 25.86/11.13 | split_key < key = mkVBalBranch key elt (splitGT fm_l split_key) fm_r 25.86/11.13 | otherwise = fm_r; 25.86/11.13 25.86/11.13 splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.86/11.13 splitLT EmptyFM split_key = emptyFM; 25.86/11.13 splitLT (Branch key elt _ fm_l fm_r) split_key | split_key < key = splitLT fm_l split_key 25.86/11.13 | split_key > key = mkVBalBranch key elt fm_l (splitLT fm_r split_key) 25.86/11.13 | otherwise = fm_l; 25.86/11.13 25.86/11.13 unitFM :: b -> a -> FiniteMap b a; 25.86/11.13 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 25.86/11.13 25.86/11.13 } 25.86/11.13 module Maybe where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 module Main where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (3) CR (EQUIVALENT) 25.86/11.13 Case Reductions: 25.86/11.13 The following Case expression 25.86/11.13 "case fm_r of { 25.86/11.13 EmptyFM -> True; 25.86/11.13 Branch right_key _ _ _ _ -> let { 25.86/11.13 smallest_right_key = fst (findMin fm_r); 25.86/11.13 } in key < smallest_right_key} 25.86/11.13 " 25.86/11.13 is transformed to 25.86/11.13 "right_ok0 fm_r key EmptyFM = True; 25.86/11.13 right_ok0 fm_r key (Branch right_key _ _ _ _) = let { 25.86/11.13 smallest_right_key = fst (findMin fm_r); 25.86/11.13 } in key < smallest_right_key; 25.86/11.13 " 25.86/11.13 The following Case expression 25.86/11.13 "case fm_l of { 25.86/11.13 EmptyFM -> True; 25.86/11.13 Branch left_key _ _ _ _ -> let { 25.86/11.13 biggest_left_key = fst (findMax fm_l); 25.86/11.13 } in biggest_left_key < key} 25.86/11.13 " 25.86/11.13 is transformed to 25.86/11.13 "left_ok0 fm_l key EmptyFM = True; 25.86/11.13 left_ok0 fm_l key (Branch left_key _ _ _ _) = let { 25.86/11.13 biggest_left_key = fst (findMax fm_l); 25.86/11.13 } in biggest_left_key < key; 25.86/11.13 " 25.86/11.13 The following Case expression 25.86/11.13 "case fm_R of { 25.86/11.13 Branch _ _ _ fm_rl fm_rr |sizeFM fm_rl < 2 * sizeFM fm_rrsingle_L fm_L fm_R|otherwisedouble_L fm_L fm_R} 25.86/11.13 " 25.86/11.13 is transformed to 25.86/11.13 "mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr)|sizeFM fm_rl < 2 * sizeFM fm_rrsingle_L fm_L fm_R|otherwisedouble_L fm_L fm_R; 25.86/11.13 " 25.86/11.13 The following Case expression 25.86/11.13 "case fm_L of { 25.86/11.13 Branch _ _ _ fm_ll fm_lr |sizeFM fm_lr < 2 * sizeFM fm_llsingle_R fm_L fm_R|otherwisedouble_R fm_L fm_R} 25.86/11.13 " 25.86/11.13 is transformed to 25.86/11.13 "mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr)|sizeFM fm_lr < 2 * sizeFM fm_llsingle_R fm_L fm_R|otherwisedouble_R fm_L fm_R; 25.86/11.13 " 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (4) 25.86/11.13 Obligation: 25.86/11.13 mainModule Main 25.86/11.13 module FiniteMap where { 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) ; 25.86/11.13 25.86/11.13 instance (Eq a, Eq b) => Eq FiniteMap b a where { 25.86/11.13 } 25.86/11.13 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 25.86/11.13 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 25.86/11.13 25.86/11.13 addToFM0 old new = new; 25.86/11.13 25.86/11.13 addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b; 25.86/11.13 addToFM_C combiner EmptyFM key elt = unitFM key elt; 25.86/11.13 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt | new_key < key = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r 25.86/11.13 | new_key > key = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) 25.86/11.13 | otherwise = Branch new_key (combiner elt new_elt) size fm_l fm_r; 25.86/11.13 25.86/11.13 emptyFM :: FiniteMap b a; 25.86/11.13 emptyFM = EmptyFM; 25.86/11.13 25.86/11.13 findMax :: FiniteMap b a -> (b,a); 25.86/11.13 findMax (Branch key elt _ _ EmptyFM) = (key,elt); 25.86/11.13 findMax (Branch key elt _ _ fm_r) = findMax fm_r; 25.86/11.13 25.86/11.13 findMin :: FiniteMap a b -> (a,b); 25.86/11.13 findMin (Branch key elt _ EmptyFM _) = (key,elt); 25.86/11.13 findMin (Branch key elt _ fm_l _) = findMin fm_l; 25.86/11.13 25.86/11.13 mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkBalBranch key elt fm_L fm_R | size_l + size_r < 2 = mkBranch 1 key elt fm_L fm_R 25.86/11.13 | size_r > sIZE_RATIO * size_l = mkBalBranch0 fm_L fm_R fm_R 25.86/11.13 | size_l > sIZE_RATIO * size_r = mkBalBranch1 fm_L fm_R fm_L 25.86/11.13 | otherwise = mkBranch 2 key elt fm_L fm_R where { 25.86/11.13 double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 25.86/11.13 double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 25.86/11.13 mkBalBranch0 fm_L fm_R (Branch _ _ _ fm_rl fm_rr) | sizeFM fm_rl < 2 * sizeFM fm_rr = single_L fm_L fm_R 25.86/11.13 | otherwise = double_L fm_L fm_R; 25.86/11.13 mkBalBranch1 fm_L fm_R (Branch _ _ _ fm_ll fm_lr) | sizeFM fm_lr < 2 * sizeFM fm_ll = single_R fm_L fm_R 25.86/11.13 | otherwise = double_R fm_L fm_R; 25.86/11.13 single_L fm_l (Branch key_r elt_r _ fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 25.86/11.13 single_R (Branch key_l elt_l _ fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 25.86/11.13 size_l = sizeFM fm_L; 25.86/11.13 size_r = sizeFM fm_R; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkBranch which key elt fm_l fm_r = let { 25.86/11.13 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 25.86/11.13 } in result where { 25.86/11.13 balance_ok = True; 25.86/11.13 left_ok = left_ok0 fm_l key fm_l; 25.86/11.13 left_ok0 fm_l key EmptyFM = True; 25.86/11.13 left_ok0 fm_l key (Branch left_key _ _ _ _) = let { 25.86/11.13 biggest_left_key = fst (findMax fm_l); 25.86/11.13 } in biggest_left_key < key; 25.86/11.13 left_size = sizeFM fm_l; 25.86/11.13 right_ok = right_ok0 fm_r key fm_r; 25.86/11.13 right_ok0 fm_r key EmptyFM = True; 25.86/11.13 right_ok0 fm_r key (Branch right_key _ _ _ _) = let { 25.86/11.13 smallest_right_key = fst (findMin fm_r); 25.86/11.13 } in key < smallest_right_key; 25.86/11.13 right_size = sizeFM fm_r; 25.86/11.13 unbox :: Int -> Int; 25.86/11.13 unbox x = x; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt; 25.86/11.13 mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt; 25.86/11.13 mkVBalBranch key elt fm_l@(Branch key_l elt_l _ fm_ll fm_lr) fm_r@(Branch key_r elt_r _ fm_rl fm_rr) | sIZE_RATIO * size_l < size_r = mkBalBranch key_r elt_r (mkVBalBranch key elt fm_l fm_rl) fm_rr 25.86/11.13 | sIZE_RATIO * size_r < size_l = mkBalBranch key_l elt_l fm_ll (mkVBalBranch key elt fm_lr fm_r) 25.86/11.13 | otherwise = mkBranch 13 key elt fm_l fm_r where { 25.86/11.13 size_l = sizeFM fm_l; 25.86/11.13 size_r = sizeFM fm_r; 25.86/11.13 }; 25.86/11.13 25.86/11.13 plusFM :: Ord a => FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.86/11.13 plusFM EmptyFM fm2 = fm2; 25.86/11.13 plusFM fm1 EmptyFM = fm1; 25.86/11.13 plusFM fm1 (Branch split_key elt1 _ left right) = mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 25.86/11.13 gts = splitGT fm1 split_key; 25.86/11.13 lts = splitLT fm1 split_key; 25.86/11.13 }; 25.86/11.13 25.86/11.13 sIZE_RATIO :: Int; 25.86/11.13 sIZE_RATIO = 5; 25.86/11.13 25.86/11.13 sizeFM :: FiniteMap a b -> Int; 25.86/11.13 sizeFM EmptyFM = 0; 25.86/11.13 sizeFM (Branch _ _ size _ _) = size; 25.86/11.13 25.86/11.13 splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 25.86/11.13 splitGT EmptyFM split_key = emptyFM; 25.86/11.13 splitGT (Branch key elt _ fm_l fm_r) split_key | split_key > key = splitGT fm_r split_key 25.86/11.13 | split_key < key = mkVBalBranch key elt (splitGT fm_l split_key) fm_r 25.86/11.13 | otherwise = fm_r; 25.86/11.13 25.86/11.13 splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.86/11.13 splitLT EmptyFM split_key = emptyFM; 25.86/11.13 splitLT (Branch key elt _ fm_l fm_r) split_key | split_key < key = splitLT fm_l split_key 25.86/11.13 | split_key > key = mkVBalBranch key elt fm_l (splitLT fm_r split_key) 25.86/11.13 | otherwise = fm_l; 25.86/11.13 25.86/11.13 unitFM :: a -> b -> FiniteMap a b; 25.86/11.13 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 25.86/11.13 25.86/11.13 } 25.86/11.13 module Maybe where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 module Main where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (5) BR (EQUIVALENT) 25.86/11.13 Replaced joker patterns by fresh variables and removed binding patterns. 25.86/11.13 25.86/11.13 Binding Reductions: 25.86/11.13 The bind variable of the following binding Pattern 25.86/11.13 "fm_l@(Branch wv ww wx wy wz)" 25.86/11.13 is replaced by the following term 25.86/11.13 "Branch wv ww wx wy wz" 25.86/11.13 The bind variable of the following binding Pattern 25.86/11.13 "fm_r@(Branch xv xw xx xy xz)" 25.86/11.13 is replaced by the following term 25.86/11.13 "Branch xv xw xx xy xz" 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (6) 25.86/11.13 Obligation: 25.86/11.13 mainModule Main 25.86/11.13 module FiniteMap where { 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) ; 25.86/11.13 25.86/11.13 instance (Eq a, Eq b) => Eq FiniteMap b a where { 25.86/11.13 } 25.86/11.13 addToFM :: Ord a => FiniteMap a b -> a -> b -> FiniteMap a b; 25.86/11.13 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 25.86/11.13 25.86/11.13 addToFM0 old new = new; 25.86/11.13 25.86/11.13 addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a; 25.86/11.13 addToFM_C combiner EmptyFM key elt = unitFM key elt; 25.86/11.13 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt | new_key < key = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r 25.86/11.13 | new_key > key = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt) 25.86/11.13 | otherwise = Branch new_key (combiner elt new_elt) size fm_l fm_r; 25.86/11.13 25.86/11.13 emptyFM :: FiniteMap a b; 25.86/11.13 emptyFM = EmptyFM; 25.86/11.13 25.86/11.13 findMax :: FiniteMap b a -> (b,a); 25.86/11.13 findMax (Branch key elt zy zz EmptyFM) = (key,elt); 25.86/11.13 findMax (Branch key elt vuu vuv fm_r) = findMax fm_r; 25.86/11.13 25.86/11.13 findMin :: FiniteMap b a -> (b,a); 25.86/11.13 findMin (Branch key elt vxu EmptyFM vxv) = (key,elt); 25.86/11.13 findMin (Branch key elt vxw fm_l vxx) = findMin fm_l; 25.86/11.13 25.86/11.13 mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.86/11.13 mkBalBranch key elt fm_L fm_R | size_l + size_r < 2 = mkBranch 1 key elt fm_L fm_R 25.86/11.13 | size_r > sIZE_RATIO * size_l = mkBalBranch0 fm_L fm_R fm_R 25.86/11.13 | size_l > sIZE_RATIO * size_r = mkBalBranch1 fm_L fm_R fm_L 25.86/11.13 | otherwise = mkBranch 2 key elt fm_L fm_R where { 25.86/11.13 double_L fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 25.86/11.13 double_R (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 25.86/11.13 mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) | sizeFM fm_rl < 2 * sizeFM fm_rr = single_L fm_L fm_R 25.86/11.13 | otherwise = double_L fm_L fm_R; 25.86/11.13 mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) | sizeFM fm_lr < 2 * sizeFM fm_ll = single_R fm_L fm_R 25.86/11.13 | otherwise = double_R fm_L fm_R; 25.86/11.13 single_L fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 25.86/11.13 single_R (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 25.86/11.13 size_l = sizeFM fm_L; 25.86/11.13 size_r = sizeFM fm_R; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 25.86/11.13 mkBranch which key elt fm_l fm_r = let { 25.86/11.13 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 25.86/11.13 } in result where { 25.86/11.13 balance_ok = True; 25.86/11.13 left_ok = left_ok0 fm_l key fm_l; 25.86/11.13 left_ok0 fm_l key EmptyFM = True; 25.86/11.13 left_ok0 fm_l key (Branch left_key yw yx yy yz) = let { 25.86/11.13 biggest_left_key = fst (findMax fm_l); 25.86/11.13 } in biggest_left_key < key; 25.86/11.13 left_size = sizeFM fm_l; 25.86/11.13 right_ok = right_ok0 fm_r key fm_r; 25.86/11.13 right_ok0 fm_r key EmptyFM = True; 25.86/11.13 right_ok0 fm_r key (Branch right_key zu zv zw zx) = let { 25.86/11.13 smallest_right_key = fst (findMin fm_r); 25.86/11.13 } in key < smallest_right_key; 25.86/11.13 right_size = sizeFM fm_r; 25.86/11.13 unbox :: Int -> Int; 25.86/11.13 unbox x = x; 25.86/11.13 }; 25.86/11.13 25.86/11.13 mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt; 25.86/11.13 mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt; 25.86/11.13 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) | sIZE_RATIO * size_l < size_r = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz 25.86/11.13 | sIZE_RATIO * size_r < size_l = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)) 25.86/11.13 | otherwise = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) where { 25.86/11.13 size_l = sizeFM (Branch wv ww wx wy wz); 25.86/11.13 size_r = sizeFM (Branch xv xw xx xy xz); 25.86/11.13 }; 25.86/11.13 25.86/11.13 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 25.86/11.13 plusFM EmptyFM fm2 = fm2; 25.86/11.13 plusFM fm1 EmptyFM = fm1; 25.86/11.13 plusFM fm1 (Branch split_key elt1 vz left right) = mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 25.86/11.13 gts = splitGT fm1 split_key; 25.86/11.13 lts = splitLT fm1 split_key; 25.86/11.13 }; 25.86/11.13 25.86/11.13 sIZE_RATIO :: Int; 25.86/11.13 sIZE_RATIO = 5; 25.86/11.13 25.86/11.13 sizeFM :: FiniteMap a b -> Int; 25.86/11.13 sizeFM EmptyFM = 0; 25.86/11.13 sizeFM (Branch vww vwx size vwy vwz) = size; 25.86/11.13 25.86/11.13 splitGT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.86/11.13 splitGT EmptyFM split_key = emptyFM; 25.86/11.13 splitGT (Branch key elt yu fm_l fm_r) split_key | split_key > key = splitGT fm_r split_key 25.86/11.13 | split_key < key = mkVBalBranch key elt (splitGT fm_l split_key) fm_r 25.86/11.13 | otherwise = fm_r; 25.86/11.13 25.86/11.13 splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 25.86/11.13 splitLT EmptyFM split_key = emptyFM; 25.86/11.13 splitLT (Branch key elt yv fm_l fm_r) split_key | split_key < key = splitLT fm_l split_key 25.86/11.13 | split_key > key = mkVBalBranch key elt fm_l (splitLT fm_r split_key) 25.86/11.13 | otherwise = fm_l; 25.86/11.13 25.86/11.13 unitFM :: b -> a -> FiniteMap b a; 25.86/11.13 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 25.86/11.13 25.86/11.13 } 25.86/11.13 module Maybe where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Main; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 module Main where { 25.86/11.13 import qualified FiniteMap; 25.86/11.13 import qualified Maybe; 25.86/11.13 import qualified Prelude; 25.86/11.13 } 25.86/11.13 25.86/11.13 ---------------------------------------- 25.86/11.13 25.86/11.13 (7) COR (EQUIVALENT) 25.86/11.13 Cond Reductions: 25.86/11.13 The following Function with conditions 25.86/11.13 "compare x y|x == yEQ|x <= yLT|otherwiseGT; 25.86/11.13 " 25.86/11.13 is transformed to 25.86/11.13 "compare x y = compare3 x y; 25.86/11.13 " 25.86/11.13 "compare1 x y True = LT; 25.86/11.13 compare1 x y False = compare0 x y otherwise; 25.86/11.13 " 25.86/11.13 "compare2 x y True = EQ; 25.86/11.13 compare2 x y False = compare1 x y (x <= y); 26.22/11.26 " 26.22/11.26 "compare0 x y True = GT; 26.22/11.26 " 26.22/11.26 "compare3 x y = compare2 x y (x == y); 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "undefined |Falseundefined; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "undefined = undefined1; 26.22/11.26 " 26.22/11.26 "undefined0 True = undefined; 26.22/11.26 " 26.22/11.26 "undefined1 = undefined0 False; 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "addToFM_C combiner EmptyFM key elt = unitFM key elt; 26.22/11.26 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt|new_key < keymkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r|new_key > keymkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt)|otherwiseBranch new_key (combiner elt new_elt) size fm_l fm_r; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt; 26.22/11.26 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt; 26.22/11.26 " 26.22/11.26 "addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_elt) size fm_l fm_r; 26.22/11.26 " 26.22/11.26 "addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r; 26.22/11.26 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key); 26.22/11.26 " 26.22/11.26 "addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt); 26.22/11.26 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise; 26.22/11.26 " 26.22/11.26 "addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key); 26.22/11.26 " 26.22/11.26 "addToFM_C4 combiner EmptyFM key elt = unitFM key elt; 26.22/11.26 addToFM_C4 vyu vyv vyw vyx = addToFM_C3 vyu vyv vyw vyx; 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "mkVBalBranch key elt EmptyFM fm_r = addToFM fm_r key elt; 26.22/11.26 mkVBalBranch key elt fm_l EmptyFM = addToFM fm_l key elt; 26.22/11.26 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz)|sIZE_RATIO * size_l < size_rmkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz|sIZE_RATIO * size_r < size_lmkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz))|otherwisemkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) where { 26.22/11.26 size_l = sizeFM (Branch wv ww wx wy wz); 26.22/11.26 ; 26.22/11.26 size_r = sizeFM (Branch xv xw xx xy xz); 26.22/11.26 } 26.22/11.26 ; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r; 26.22/11.26 mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM; 26.22/11.26 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.22/11.26 " 26.22/11.26 "mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_l < size_r) where { 26.22/11.26 mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.22/11.26 ; 26.22/11.26 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.22/11.26 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.22/11.26 ; 26.22/11.26 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.22/11.26 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_r < size_l); 26.22/11.26 ; 26.22/11.26 size_l = sizeFM (Branch wv ww wx wy wz); 26.22/11.26 ; 26.22/11.26 size_r = sizeFM (Branch xv xw xx xy xz); 26.22/11.26 } 26.22/11.26 ; 26.22/11.26 " 26.22/11.26 "mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt; 26.22/11.26 mkVBalBranch4 vzv vzw vzx vzy = mkVBalBranch3 vzv vzw vzx vzy; 26.22/11.26 " 26.22/11.26 "mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt; 26.22/11.26 mkVBalBranch5 wuu wuv wuw wux = mkVBalBranch4 wuu wuv wuw wux; 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "splitGT EmptyFM split_key = emptyFM; 26.22/11.26 splitGT (Branch key elt yu fm_l fm_r) split_key|split_key > keysplitGT fm_r split_key|split_key < keymkVBalBranch key elt (splitGT fm_l split_key) fm_r|otherwisefm_r; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "splitGT EmptyFM split_key = splitGT4 EmptyFM split_key; 26.22/11.26 splitGT (Branch key elt yu fm_l fm_r) split_key = splitGT3 (Branch key elt yu fm_l fm_r) split_key; 26.22/11.26 " 26.22/11.26 "splitGT1 key elt yu fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_key) fm_r; 26.22/11.26 splitGT1 key elt yu fm_l fm_r split_key False = splitGT0 key elt yu fm_l fm_r split_key otherwise; 26.22/11.26 " 26.22/11.26 "splitGT0 key elt yu fm_l fm_r split_key True = fm_r; 26.22/11.26 " 26.22/11.26 "splitGT2 key elt yu fm_l fm_r split_key True = splitGT fm_r split_key; 26.22/11.26 splitGT2 key elt yu fm_l fm_r split_key False = splitGT1 key elt yu fm_l fm_r split_key (split_key < key); 26.22/11.26 " 26.22/11.26 "splitGT3 (Branch key elt yu fm_l fm_r) split_key = splitGT2 key elt yu fm_l fm_r split_key (split_key > key); 26.22/11.26 " 26.22/11.26 "splitGT4 EmptyFM split_key = emptyFM; 26.22/11.26 splitGT4 wvu wvv = splitGT3 wvu wvv; 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "splitLT EmptyFM split_key = emptyFM; 26.22/11.26 splitLT (Branch key elt yv fm_l fm_r) split_key|split_key < keysplitLT fm_l split_key|split_key > keymkVBalBranch key elt fm_l (splitLT fm_r split_key)|otherwisefm_l; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "splitLT EmptyFM split_key = splitLT4 EmptyFM split_key; 26.22/11.26 splitLT (Branch key elt yv fm_l fm_r) split_key = splitLT3 (Branch key elt yv fm_l fm_r) split_key; 26.22/11.26 " 26.22/11.26 "splitLT0 key elt yv fm_l fm_r split_key True = fm_l; 26.22/11.26 " 26.22/11.26 "splitLT1 key elt yv fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key); 26.22/11.26 splitLT1 key elt yv fm_l fm_r split_key False = splitLT0 key elt yv fm_l fm_r split_key otherwise; 26.22/11.26 " 26.22/11.26 "splitLT2 key elt yv fm_l fm_r split_key True = splitLT fm_l split_key; 26.22/11.26 splitLT2 key elt yv fm_l fm_r split_key False = splitLT1 key elt yv fm_l fm_r split_key (split_key > key); 26.22/11.26 " 26.22/11.26 "splitLT3 (Branch key elt yv fm_l fm_r) split_key = splitLT2 key elt yv fm_l fm_r split_key (split_key < key); 26.22/11.26 " 26.22/11.26 "splitLT4 EmptyFM split_key = emptyFM; 26.22/11.26 splitLT4 wvy wvz = splitLT3 wvy wvz; 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr)|sizeFM fm_lr < 2 * sizeFM fm_llsingle_R fm_L fm_R|otherwisedouble_R fm_L fm_R; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.22/11.26 " 26.22/11.26 "mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = double_R fm_L fm_R; 26.22/11.26 " 26.22/11.26 "mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = single_R fm_L fm_R; 26.22/11.26 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.22/11.26 " 26.22/11.26 "mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr)|sizeFM fm_rl < 2 * sizeFM fm_rrsingle_L fm_L fm_R|otherwisedouble_L fm_L fm_R; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.22/11.26 " 26.22/11.26 "mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = double_L fm_L fm_R; 26.22/11.26 " 26.22/11.26 "mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = single_L fm_L fm_R; 26.22/11.26 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.22/11.26 " 26.22/11.26 "mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.22/11.26 " 26.22/11.26 The following Function with conditions 26.22/11.26 "mkBalBranch key elt fm_L fm_R|size_l + size_r < 2mkBranch 1 key elt fm_L fm_R|size_r > sIZE_RATIO * size_lmkBalBranch0 fm_L fm_R fm_R|size_l > sIZE_RATIO * size_rmkBalBranch1 fm_L fm_R fm_L|otherwisemkBranch 2 key elt fm_L fm_R where { 26.22/11.26 double_L fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.22/11.26 ; 26.22/11.26 double_R (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 26.22/11.26 ; 26.22/11.26 mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr)|sizeFM fm_rl < 2 * sizeFM fm_rrsingle_L fm_L fm_R|otherwisedouble_L fm_L fm_R; 26.22/11.26 ; 26.22/11.26 mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr)|sizeFM fm_lr < 2 * sizeFM fm_llsingle_R fm_L fm_R|otherwisedouble_R fm_L fm_R; 26.22/11.26 ; 26.22/11.26 single_L fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 26.22/11.26 ; 26.22/11.26 single_R (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 26.22/11.26 ; 26.22/11.26 size_l = sizeFM fm_L; 26.22/11.26 ; 26.22/11.26 size_r = sizeFM fm_R; 26.22/11.26 } 26.22/11.26 ; 26.22/11.26 " 26.22/11.26 is transformed to 26.22/11.26 "mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R; 26.22/11.26 " 26.22/11.26 "mkBalBranch6 key elt fm_L fm_R = mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where { 26.22/11.26 double_L fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.22/11.26 ; 26.22/11.26 double_R (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 26.22/11.26 ; 26.22/11.26 mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.22/11.26 ; 26.22/11.26 mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = double_L fm_L fm_R; 26.22/11.26 ; 26.22/11.26 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = single_L fm_L fm_R; 26.22/11.26 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.22/11.26 ; 26.22/11.26 mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.22/11.26 ; 26.22/11.26 mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.22/11.26 ; 26.22/11.26 mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = double_R fm_L fm_R; 26.22/11.26 ; 26.22/11.26 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = single_R fm_L fm_R; 26.22/11.26 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.22/11.26 ; 26.22/11.26 mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.22/11.26 ; 26.22/11.26 mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R; 26.22/11.26 ; 26.22/11.26 mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L; 26.22/11.26 mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise; 26.22/11.26 ; 26.22/11.26 mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R; 26.22/11.26 mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r); 26.22/11.26 ; 26.22/11.26 mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R; 26.22/11.26 mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l); 26.22/11.26 ; 26.22/11.26 single_L fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 26.22/11.26 ; 26.22/11.26 single_R (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 26.22/11.26 ; 26.22/11.26 size_l = sizeFM fm_L; 26.22/11.26 ; 26.22/11.26 size_r = sizeFM fm_R; 26.22/11.26 } 26.22/11.26 ; 26.22/11.26 " 26.22/11.26 26.22/11.26 ---------------------------------------- 26.22/11.26 26.22/11.26 (8) 26.22/11.26 Obligation: 26.22/11.26 mainModule Main 26.22/11.26 module FiniteMap where { 26.22/11.26 import qualified Main; 26.22/11.26 import qualified Maybe; 26.22/11.26 import qualified Prelude; 26.22/11.26 data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) ; 26.22/11.26 26.22/11.26 instance (Eq a, Eq b) => Eq FiniteMap a b where { 26.22/11.26 } 26.22/11.26 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 26.22/11.26 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 26.22/11.26 26.22/11.26 addToFM0 old new = new; 26.22/11.26 26.22/11.26 addToFM_C :: Ord a => (b -> b -> b) -> FiniteMap a b -> a -> b -> FiniteMap a b; 26.22/11.26 addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt; 26.22/11.26 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt; 26.22/11.26 26.22/11.26 addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_elt) size fm_l fm_r; 26.22/11.26 26.22/11.26 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt); 26.22/11.26 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise; 26.22/11.26 26.22/11.26 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r; 26.22/11.26 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key); 26.22/11.26 26.22/11.26 addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key); 26.22/11.26 26.22/11.26 addToFM_C4 combiner EmptyFM key elt = unitFM key elt; 26.22/11.26 addToFM_C4 vyu vyv vyw vyx = addToFM_C3 vyu vyv vyw vyx; 26.22/11.26 26.22/11.26 emptyFM :: FiniteMap a b; 26.22/11.26 emptyFM = EmptyFM; 26.22/11.26 26.22/11.26 findMax :: FiniteMap a b -> (a,b); 26.22/11.26 findMax (Branch key elt zy zz EmptyFM) = (key,elt); 26.22/11.26 findMax (Branch key elt vuu vuv fm_r) = findMax fm_r; 26.22/11.26 26.22/11.26 findMin :: FiniteMap a b -> (a,b); 26.22/11.26 findMin (Branch key elt vxu EmptyFM vxv) = (key,elt); 26.22/11.26 findMin (Branch key elt vxw fm_l vxx) = findMin fm_l; 26.22/11.26 26.22/11.26 mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.22/11.26 mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R; 26.22/11.26 26.22/11.26 mkBalBranch6 key elt fm_L fm_R = mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where { 26.22/11.26 double_L fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.22/11.26 double_R (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 26.22/11.26 mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.22/11.26 mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = double_L fm_L fm_R; 26.22/11.26 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = single_L fm_L fm_R; 26.22/11.26 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.22/11.26 mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.22/11.26 mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.22/11.26 mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = double_R fm_L fm_R; 26.22/11.26 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = single_R fm_L fm_R; 26.22/11.26 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.22/11.26 mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.22/11.26 mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R; 26.22/11.26 mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L; 26.22/11.26 mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise; 26.22/11.26 mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R; 26.22/11.26 mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r); 26.22/11.26 mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R; 26.22/11.26 mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l); 26.22/11.26 single_L fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 26.22/11.26 single_R (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 26.22/11.26 size_l = sizeFM fm_L; 26.22/11.26 size_r = sizeFM fm_R; 26.22/11.26 }; 26.22/11.26 26.22/11.26 mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.22/11.26 mkBranch which key elt fm_l fm_r = let { 26.22/11.26 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 26.22/11.26 } in result where { 26.22/11.26 balance_ok = True; 26.22/11.26 left_ok = left_ok0 fm_l key fm_l; 26.22/11.26 left_ok0 fm_l key EmptyFM = True; 26.22/11.26 left_ok0 fm_l key (Branch left_key yw yx yy yz) = let { 26.22/11.26 biggest_left_key = fst (findMax fm_l); 26.22/11.26 } in biggest_left_key < key; 26.22/11.26 left_size = sizeFM fm_l; 26.22/11.26 right_ok = right_ok0 fm_r key fm_r; 26.22/11.26 right_ok0 fm_r key EmptyFM = True; 26.22/11.26 right_ok0 fm_r key (Branch right_key zu zv zw zx) = let { 26.22/11.26 smallest_right_key = fst (findMin fm_r); 26.22/11.26 } in key < smallest_right_key; 26.22/11.26 right_size = sizeFM fm_r; 26.42/11.31 unbox :: Int -> Int; 26.42/11.31 unbox x = x; 26.42/11.31 }; 26.42/11.31 26.42/11.31 mkVBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 26.42/11.31 mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r; 26.42/11.31 mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM; 26.42/11.31 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.42/11.31 26.42/11.31 mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_l < size_r) where { 26.42/11.31 mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.42/11.31 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.42/11.31 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.42/11.31 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.42/11.31 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_r < size_l); 26.42/11.31 size_l = sizeFM (Branch wv ww wx wy wz); 26.42/11.31 size_r = sizeFM (Branch xv xw xx xy xz); 26.42/11.31 }; 26.42/11.31 26.42/11.31 mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt; 26.42/11.31 mkVBalBranch4 vzv vzw vzx vzy = mkVBalBranch3 vzv vzw vzx vzy; 26.42/11.31 26.42/11.31 mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt; 26.42/11.31 mkVBalBranch5 wuu wuv wuw wux = mkVBalBranch4 wuu wuv wuw wux; 26.42/11.31 26.42/11.31 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.42/11.31 plusFM EmptyFM fm2 = fm2; 26.42/11.31 plusFM fm1 EmptyFM = fm1; 26.42/11.31 plusFM fm1 (Branch split_key elt1 vz left right) = mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 26.42/11.31 gts = splitGT fm1 split_key; 26.42/11.31 lts = splitLT fm1 split_key; 26.42/11.31 }; 26.42/11.31 26.42/11.31 sIZE_RATIO :: Int; 26.42/11.31 sIZE_RATIO = 5; 26.42/11.31 26.42/11.31 sizeFM :: FiniteMap b a -> Int; 26.42/11.31 sizeFM EmptyFM = 0; 26.42/11.31 sizeFM (Branch vww vwx size vwy vwz) = size; 26.42/11.31 26.42/11.31 splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 26.42/11.31 splitGT EmptyFM split_key = splitGT4 EmptyFM split_key; 26.42/11.31 splitGT (Branch key elt yu fm_l fm_r) split_key = splitGT3 (Branch key elt yu fm_l fm_r) split_key; 26.42/11.31 26.42/11.31 splitGT0 key elt yu fm_l fm_r split_key True = fm_r; 26.42/11.31 26.42/11.31 splitGT1 key elt yu fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_key) fm_r; 26.42/11.31 splitGT1 key elt yu fm_l fm_r split_key False = splitGT0 key elt yu fm_l fm_r split_key otherwise; 26.42/11.31 26.42/11.31 splitGT2 key elt yu fm_l fm_r split_key True = splitGT fm_r split_key; 26.42/11.31 splitGT2 key elt yu fm_l fm_r split_key False = splitGT1 key elt yu fm_l fm_r split_key (split_key < key); 26.42/11.31 26.42/11.31 splitGT3 (Branch key elt yu fm_l fm_r) split_key = splitGT2 key elt yu fm_l fm_r split_key (split_key > key); 26.42/11.31 26.42/11.31 splitGT4 EmptyFM split_key = emptyFM; 26.42/11.31 splitGT4 wvu wvv = splitGT3 wvu wvv; 26.42/11.31 26.42/11.31 splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 26.42/11.31 splitLT EmptyFM split_key = splitLT4 EmptyFM split_key; 26.42/11.31 splitLT (Branch key elt yv fm_l fm_r) split_key = splitLT3 (Branch key elt yv fm_l fm_r) split_key; 26.42/11.31 26.42/11.31 splitLT0 key elt yv fm_l fm_r split_key True = fm_l; 26.42/11.31 26.42/11.31 splitLT1 key elt yv fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key); 26.42/11.31 splitLT1 key elt yv fm_l fm_r split_key False = splitLT0 key elt yv fm_l fm_r split_key otherwise; 26.42/11.31 26.42/11.31 splitLT2 key elt yv fm_l fm_r split_key True = splitLT fm_l split_key; 26.42/11.31 splitLT2 key elt yv fm_l fm_r split_key False = splitLT1 key elt yv fm_l fm_r split_key (split_key > key); 26.42/11.31 26.42/11.31 splitLT3 (Branch key elt yv fm_l fm_r) split_key = splitLT2 key elt yv fm_l fm_r split_key (split_key < key); 26.42/11.31 26.42/11.31 splitLT4 EmptyFM split_key = emptyFM; 26.42/11.31 splitLT4 wvy wvz = splitLT3 wvy wvz; 26.42/11.31 26.42/11.31 unitFM :: a -> b -> FiniteMap a b; 26.42/11.31 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 26.42/11.31 26.42/11.31 } 26.42/11.31 module Maybe where { 26.42/11.31 import qualified FiniteMap; 26.42/11.31 import qualified Main; 26.42/11.31 import qualified Prelude; 26.42/11.31 } 26.42/11.31 module Main where { 26.42/11.31 import qualified FiniteMap; 26.42/11.31 import qualified Maybe; 26.42/11.31 import qualified Prelude; 26.42/11.31 } 26.42/11.31 26.42/11.31 ---------------------------------------- 26.42/11.31 26.42/11.31 (9) LetRed (EQUIVALENT) 26.42/11.31 Let/Where Reductions: 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "mkBalBranch5 key elt fm_L fm_R (size_l + size_r < 2) where { 26.42/11.31 double_L fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 key elt fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.42/11.31 ; 26.42/11.31 double_R (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 key elt fm_lrr fm_r); 26.42/11.31 ; 26.42/11.31 mkBalBranch0 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.42/11.31 ; 26.42/11.31 mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = double_L fm_L fm_R; 26.42/11.31 ; 26.42/11.31 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr True = single_L fm_L fm_R; 26.42/11.31 mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch00 fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.42/11.31 ; 26.42/11.31 mkBalBranch02 fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch01 fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.42/11.31 ; 26.42/11.31 mkBalBranch1 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.42/11.31 ; 26.42/11.31 mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = double_R fm_L fm_R; 26.42/11.31 ; 26.42/11.31 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr True = single_R fm_L fm_R; 26.42/11.31 mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch10 fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.42/11.31 ; 26.42/11.31 mkBalBranch12 fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch11 fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.42/11.31 ; 26.42/11.31 mkBalBranch2 key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R; 26.42/11.31 ; 26.42/11.31 mkBalBranch3 key elt fm_L fm_R True = mkBalBranch1 fm_L fm_R fm_L; 26.42/11.31 mkBalBranch3 key elt fm_L fm_R False = mkBalBranch2 key elt fm_L fm_R otherwise; 26.42/11.31 ; 26.42/11.31 mkBalBranch4 key elt fm_L fm_R True = mkBalBranch0 fm_L fm_R fm_R; 26.42/11.31 mkBalBranch4 key elt fm_L fm_R False = mkBalBranch3 key elt fm_L fm_R (size_l > sIZE_RATIO * size_r); 26.42/11.31 ; 26.42/11.31 mkBalBranch5 key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R; 26.42/11.31 mkBalBranch5 key elt fm_L fm_R False = mkBalBranch4 key elt fm_L fm_R (size_r > sIZE_RATIO * size_l); 26.42/11.31 ; 26.42/11.31 single_L fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 key elt fm_l fm_rl) fm_rr; 26.42/11.31 ; 26.42/11.31 single_R (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 key elt fm_lr fm_r); 26.42/11.31 ; 26.42/11.31 size_l = sizeFM fm_L; 26.42/11.31 ; 26.42/11.31 size_r = sizeFM fm_R; 26.42/11.31 } 26.42/11.31 " 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkBalBranch6Single_R www wwx wwy wwz (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 www wwx fm_lr fm_r); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.42/11.31 " 26.42/11.31 "mkBalBranch6Size_r www wwx wwy wwz = sizeFM wwy; 26.42/11.31 " 26.42/11.31 "mkBalBranch6Double_L www wwx wwy wwz fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 www wwx fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.42/11.31 " 26.42/11.31 "mkBalBranch6Size_l www wwx wwy wwz = sizeFM wwz; 26.42/11.31 " 26.42/11.31 "mkBalBranch6Double_R www wwx wwy wwz (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 www wwx fm_lrr fm_r); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R fm_L; 26.42/11.31 mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R otherwise; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Single_L www wwx wwy wwz fm_L fm_R; 26.42/11.31 mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.42/11.31 " 26.42/11.31 "mkBalBranch6Single_L www wwx wwy wwz fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 www wwx fm_l fm_rl) fm_rr; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Single_R www wwx wwy wwz fm_L fm_R; 26.42/11.31 mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Double_R www wwx wwy wwz fm_L fm_R; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R fm_R; 26.42/11.31 mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_l www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_r www wwx wwy wwz); 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Double_L www wwx wwy wwz fm_L fm_R; 26.42/11.31 " 26.42/11.31 "mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R; 26.42/11.31 mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_r www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_l www wwx wwy wwz); 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "let { 26.42/11.31 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 26.42/11.31 } in result where { 26.42/11.31 balance_ok = True; 26.42/11.31 ; 26.42/11.31 left_ok = left_ok0 fm_l key fm_l; 26.42/11.31 ; 26.42/11.31 left_ok0 fm_l key EmptyFM = True; 26.42/11.31 left_ok0 fm_l key (Branch left_key yw yx yy yz) = let { 26.42/11.31 biggest_left_key = fst (findMax fm_l); 26.42/11.31 } in biggest_left_key < key; 26.42/11.31 ; 26.42/11.31 left_size = sizeFM fm_l; 26.42/11.31 ; 26.42/11.31 right_ok = right_ok0 fm_r key fm_r; 26.42/11.31 ; 26.42/11.31 right_ok0 fm_r key EmptyFM = True; 26.42/11.31 right_ok0 fm_r key (Branch right_key zu zv zw zx) = let { 26.42/11.31 smallest_right_key = fst (findMin fm_r); 26.42/11.31 } in key < smallest_right_key; 26.42/11.31 ; 26.42/11.31 right_size = sizeFM fm_r; 26.42/11.31 ; 26.42/11.31 unbox x = x; 26.42/11.31 } 26.42/11.31 " 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkBranchLeft_ok wxu wxv wxw = mkBranchLeft_ok0 wxu wxv wxw wxu wxv wxu; 26.42/11.31 " 26.42/11.31 "mkBranchRight_ok0 wxu wxv wxw fm_r key EmptyFM = True; 26.42/11.31 mkBranchRight_ok0 wxu wxv wxw fm_r key (Branch right_key zu zv zw zx) = key < mkBranchRight_ok0Smallest_right_key fm_r; 26.42/11.31 " 26.42/11.31 "mkBranchLeft_size wxu wxv wxw = sizeFM wxu; 26.42/11.31 " 26.42/11.31 "mkBranchLeft_ok0 wxu wxv wxw fm_l key EmptyFM = True; 26.42/11.31 mkBranchLeft_ok0 wxu wxv wxw fm_l key (Branch left_key yw yx yy yz) = mkBranchLeft_ok0Biggest_left_key fm_l < key; 26.42/11.31 " 26.42/11.31 "mkBranchRight_size wxu wxv wxw = sizeFM wxw; 26.42/11.31 " 26.42/11.31 "mkBranchUnbox wxu wxv wxw x = x; 26.42/11.31 " 26.42/11.31 "mkBranchBalance_ok wxu wxv wxw = True; 26.42/11.31 " 26.42/11.31 "mkBranchRight_ok wxu wxv wxw = mkBranchRight_ok0 wxu wxv wxw wxw wxv wxw; 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "let { 26.42/11.31 result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r; 26.42/11.31 } in result" 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkBranchResult wxx wxy wxz wyu = Branch wxx wxy (mkBranchUnbox wxz wxx wyu (1 + mkBranchLeft_size wxz wxx wyu + mkBranchRight_size wxz wxx wyu)) wxz wyu; 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "mkVBalBranch split_key elt1 (plusFM lts left) (plusFM gts right) where { 26.42/11.31 gts = splitGT fm1 split_key; 26.42/11.31 ; 26.42/11.31 lts = splitLT fm1 split_key; 26.42/11.31 } 26.42/11.31 " 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "plusFMGts wyv wyw = splitGT wyv wyw; 26.42/11.31 " 26.42/11.31 "plusFMLts wyv wyw = splitLT wyv wyw; 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_l < size_r) where { 26.42/11.31 mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.42/11.31 ; 26.42/11.31 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.42/11.31 mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch0 key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.42/11.31 ; 26.42/11.31 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.42/11.31 mkVBalBranch2 key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch1 key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * size_r < size_l); 26.42/11.31 ; 26.42/11.31 size_l = sizeFM (Branch wv ww wx wy wz); 26.42/11.31 ; 26.42/11.31 size_r = sizeFM (Branch xv xw xx xy xz); 26.42/11.31 } 26.42/11.31 " 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wyx wyy wyz wzu wzv); 26.42/11.31 " 26.42/11.31 "mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.42/11.31 mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu < mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu); 26.42/11.31 " 26.42/11.31 "mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.42/11.31 " 26.42/11.31 "mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wzw wzx wzy wzz xuu); 26.42/11.31 " 26.42/11.31 "mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.42/11.31 mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "let { 26.42/11.31 smallest_right_key = fst (findMin fm_r); 26.42/11.31 } in key < smallest_right_key" 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkBranchRight_ok0Smallest_right_key xuv = fst (findMin xuv); 26.42/11.31 " 26.42/11.31 The bindings of the following Let/Where expression 26.42/11.31 "let { 26.42/11.31 biggest_left_key = fst (findMax fm_l); 26.42/11.31 } in biggest_left_key < key" 26.42/11.31 are unpacked to the following functions on top level 26.42/11.31 "mkBranchLeft_ok0Biggest_left_key xuw = fst (findMax xuw); 26.42/11.31 " 26.42/11.31 26.42/11.31 ---------------------------------------- 26.42/11.31 26.42/11.31 (10) 26.42/11.31 Obligation: 26.42/11.31 mainModule Main 26.42/11.31 module FiniteMap where { 26.42/11.31 import qualified Main; 26.42/11.31 import qualified Maybe; 26.42/11.31 import qualified Prelude; 26.42/11.31 data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b) ; 26.42/11.31 26.42/11.31 instance (Eq a, Eq b) => Eq FiniteMap a b where { 26.42/11.31 } 26.42/11.31 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 26.42/11.31 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 26.42/11.31 26.42/11.31 addToFM0 old new = new; 26.42/11.31 26.42/11.31 addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a; 26.42/11.31 addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt; 26.42/11.31 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt; 26.42/11.31 26.42/11.31 addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_elt) size fm_l fm_r; 26.42/11.31 26.42/11.31 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt); 26.42/11.31 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise; 26.42/11.31 26.42/11.31 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r; 26.42/11.31 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key); 26.42/11.31 26.42/11.31 addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key); 26.42/11.34 26.42/11.34 addToFM_C4 combiner EmptyFM key elt = unitFM key elt; 26.42/11.34 addToFM_C4 vyu vyv vyw vyx = addToFM_C3 vyu vyv vyw vyx; 26.42/11.34 26.42/11.34 emptyFM :: FiniteMap b a; 26.42/11.34 emptyFM = EmptyFM; 26.42/11.34 26.42/11.34 findMax :: FiniteMap b a -> (b,a); 26.42/11.34 findMax (Branch key elt zy zz EmptyFM) = (key,elt); 26.42/11.34 findMax (Branch key elt vuu vuv fm_r) = findMax fm_r; 26.42/11.34 26.42/11.34 findMin :: FiniteMap a b -> (a,b); 26.42/11.34 findMin (Branch key elt vxu EmptyFM vxv) = (key,elt); 26.42/11.34 findMin (Branch key elt vxw fm_l vxx) = findMin fm_l; 26.42/11.34 26.42/11.34 mkBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.42/11.34 mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R; 26.42/11.34 26.42/11.34 mkBalBranch6 key elt fm_L fm_R = mkBalBranch6MkBalBranch5 key elt fm_R fm_L key elt fm_L fm_R (mkBalBranch6Size_l key elt fm_R fm_L + mkBalBranch6Size_r key elt fm_R fm_L < 2); 26.42/11.34 26.42/11.34 mkBalBranch6Double_L www wwx wwy wwz fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch 5 key_rl elt_rl (mkBranch 6 www wwx fm_l fm_rll) (mkBranch 7 key_r elt_r fm_rlr fm_rr); 26.42/11.34 26.42/11.34 mkBalBranch6Double_R www wwx wwy wwz (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch 10 key_lr elt_lr (mkBranch 11 key_l elt_l fm_ll fm_lrl) (mkBranch 12 www wwx fm_lrr fm_r); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Double_L www wwx wwy wwz fm_L fm_R; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Single_L www wwx wwy wwz fm_L fm_R; 26.42/11.34 mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < 2 * sizeFM fm_rr); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Double_R www wwx wwy wwz fm_L fm_R; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Single_R www wwx wwy wwz fm_L fm_R; 26.42/11.34 mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < 2 * sizeFM fm_ll); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R True = mkBranch 2 key elt fm_L fm_R; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R fm_L; 26.42/11.34 mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R otherwise; 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R fm_R; 26.42/11.34 mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_l www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_r www wwx wwy wwz); 26.42/11.34 26.42/11.34 mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R True = mkBranch 1 key elt fm_L fm_R; 26.42/11.34 mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_r www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_l www wwx wwy wwz); 26.42/11.34 26.42/11.34 mkBalBranch6Single_L www wwx wwy wwz fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch 3 key_r elt_r (mkBranch 4 www wwx fm_l fm_rl) fm_rr; 26.42/11.34 26.42/11.34 mkBalBranch6Single_R www wwx wwy wwz (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch 8 key_l elt_l fm_ll (mkBranch 9 www wwx fm_lr fm_r); 26.42/11.34 26.42/11.34 mkBalBranch6Size_l www wwx wwy wwz = sizeFM wwz; 26.42/11.34 26.42/11.34 mkBalBranch6Size_r www wwx wwy wwz = sizeFM wwy; 26.42/11.34 26.42/11.34 mkBranch :: Ord a => Int -> a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 26.42/11.34 mkBranch which key elt fm_l fm_r = mkBranchResult key elt fm_l fm_r; 26.42/11.34 26.42/11.34 mkBranchBalance_ok wxu wxv wxw = True; 26.42/11.34 26.42/11.34 mkBranchLeft_ok wxu wxv wxw = mkBranchLeft_ok0 wxu wxv wxw wxu wxv wxu; 26.42/11.34 26.42/11.34 mkBranchLeft_ok0 wxu wxv wxw fm_l key EmptyFM = True; 26.42/11.34 mkBranchLeft_ok0 wxu wxv wxw fm_l key (Branch left_key yw yx yy yz) = mkBranchLeft_ok0Biggest_left_key fm_l < key; 26.42/11.34 26.42/11.34 mkBranchLeft_ok0Biggest_left_key xuw = fst (findMax xuw); 26.42/11.34 26.42/11.34 mkBranchLeft_size wxu wxv wxw = sizeFM wxu; 26.42/11.34 26.42/11.34 mkBranchResult wxx wxy wxz wyu = Branch wxx wxy (mkBranchUnbox wxz wxx wyu (1 + mkBranchLeft_size wxz wxx wyu + mkBranchRight_size wxz wxx wyu)) wxz wyu; 26.42/11.34 26.42/11.34 mkBranchRight_ok wxu wxv wxw = mkBranchRight_ok0 wxu wxv wxw wxw wxv wxw; 26.42/11.34 26.42/11.34 mkBranchRight_ok0 wxu wxv wxw fm_r key EmptyFM = True; 26.42/11.34 mkBranchRight_ok0 wxu wxv wxw fm_r key (Branch right_key zu zv zw zx) = key < mkBranchRight_ok0Smallest_right_key fm_r; 26.42/11.34 26.42/11.34 mkBranchRight_ok0Smallest_right_key xuv = fst (findMin xuv); 26.42/11.34 26.42/11.34 mkBranchRight_size wxu wxv wxw = sizeFM wxw; 26.42/11.34 26.42/11.34 mkBranchUnbox :: Ord a => -> (FiniteMap a b) ( -> a ( -> (FiniteMap a b) (Int -> Int))); 26.42/11.34 mkBranchUnbox wxu wxv wxw x = x; 26.42/11.34 26.42/11.34 mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.42/11.34 mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r; 26.42/11.34 mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM; 26.42/11.34 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.42/11.34 26.42/11.34 mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3MkVBalBranch2 wv ww wx wy wz xv xw xx xy xz key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * mkVBalBranch3Size_l wv ww wx wy wz xv xw xx xy xz < mkVBalBranch3Size_r wv ww wx wy wz xv xw xx xy xz); 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch 13 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.75/11.36 mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.75/11.36 mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu < mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu); 26.75/11.36 26.75/11.36 mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wyx wyy wyz wzu wzv); 26.75/11.36 26.75/11.36 mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wzw wzx wzy wzz xuu); 26.75/11.36 26.75/11.36 mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt; 26.75/11.36 mkVBalBranch4 vzv vzw vzx vzy = mkVBalBranch3 vzv vzw vzx vzy; 26.75/11.36 26.75/11.36 mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt; 26.75/11.36 mkVBalBranch5 wuu wuv wuw wux = mkVBalBranch4 wuu wuv wuw wux; 26.75/11.36 26.75/11.36 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.75/11.36 plusFM EmptyFM fm2 = fm2; 26.75/11.36 plusFM fm1 EmptyFM = fm1; 26.75/11.36 plusFM fm1 (Branch split_key elt1 vz left right) = mkVBalBranch split_key elt1 (plusFM (plusFMLts fm1 split_key) left) (plusFM (plusFMGts fm1 split_key) right); 26.75/11.36 26.75/11.36 plusFMGts wyv wyw = splitGT wyv wyw; 26.75/11.36 26.75/11.36 plusFMLts wyv wyw = splitLT wyv wyw; 26.75/11.36 26.75/11.36 sIZE_RATIO :: Int; 26.75/11.36 sIZE_RATIO = 5; 26.75/11.36 26.75/11.36 sizeFM :: FiniteMap b a -> Int; 26.75/11.36 sizeFM EmptyFM = 0; 26.75/11.36 sizeFM (Branch vww vwx size vwy vwz) = size; 26.75/11.36 26.75/11.36 splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 26.75/11.36 splitGT EmptyFM split_key = splitGT4 EmptyFM split_key; 26.75/11.36 splitGT (Branch key elt yu fm_l fm_r) split_key = splitGT3 (Branch key elt yu fm_l fm_r) split_key; 26.75/11.36 26.75/11.36 splitGT0 key elt yu fm_l fm_r split_key True = fm_r; 26.75/11.36 26.75/11.36 splitGT1 key elt yu fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_key) fm_r; 26.75/11.36 splitGT1 key elt yu fm_l fm_r split_key False = splitGT0 key elt yu fm_l fm_r split_key otherwise; 26.75/11.36 26.75/11.36 splitGT2 key elt yu fm_l fm_r split_key True = splitGT fm_r split_key; 26.75/11.36 splitGT2 key elt yu fm_l fm_r split_key False = splitGT1 key elt yu fm_l fm_r split_key (split_key < key); 26.75/11.36 26.75/11.36 splitGT3 (Branch key elt yu fm_l fm_r) split_key = splitGT2 key elt yu fm_l fm_r split_key (split_key > key); 26.75/11.36 26.75/11.36 splitGT4 EmptyFM split_key = emptyFM; 26.75/11.36 splitGT4 wvu wvv = splitGT3 wvu wvv; 26.75/11.36 26.75/11.36 splitLT :: Ord b => FiniteMap b a -> b -> FiniteMap b a; 26.75/11.36 splitLT EmptyFM split_key = splitLT4 EmptyFM split_key; 26.75/11.36 splitLT (Branch key elt yv fm_l fm_r) split_key = splitLT3 (Branch key elt yv fm_l fm_r) split_key; 26.75/11.36 26.75/11.36 splitLT0 key elt yv fm_l fm_r split_key True = fm_l; 26.75/11.36 26.75/11.36 splitLT1 key elt yv fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key); 26.75/11.36 splitLT1 key elt yv fm_l fm_r split_key False = splitLT0 key elt yv fm_l fm_r split_key otherwise; 26.75/11.36 26.75/11.36 splitLT2 key elt yv fm_l fm_r split_key True = splitLT fm_l split_key; 26.75/11.36 splitLT2 key elt yv fm_l fm_r split_key False = splitLT1 key elt yv fm_l fm_r split_key (split_key > key); 26.75/11.36 26.75/11.36 splitLT3 (Branch key elt yv fm_l fm_r) split_key = splitLT2 key elt yv fm_l fm_r split_key (split_key < key); 26.75/11.36 26.75/11.36 splitLT4 EmptyFM split_key = emptyFM; 26.75/11.36 splitLT4 wvy wvz = splitLT3 wvy wvz; 26.75/11.36 26.75/11.36 unitFM :: a -> b -> FiniteMap a b; 26.75/11.36 unitFM key elt = Branch key elt 1 emptyFM emptyFM; 26.75/11.36 26.75/11.36 } 26.75/11.36 module Maybe where { 26.75/11.36 import qualified FiniteMap; 26.75/11.36 import qualified Main; 26.75/11.36 import qualified Prelude; 26.75/11.36 } 26.75/11.36 module Main where { 26.75/11.36 import qualified FiniteMap; 26.75/11.36 import qualified Maybe; 26.75/11.36 import qualified Prelude; 26.75/11.36 } 26.75/11.36 26.75/11.36 ---------------------------------------- 26.75/11.36 26.75/11.36 (11) NumRed (SOUND) 26.75/11.36 Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. 26.75/11.36 ---------------------------------------- 26.75/11.36 26.75/11.36 (12) 26.75/11.36 Obligation: 26.75/11.36 mainModule Main 26.75/11.36 module FiniteMap where { 26.75/11.36 import qualified Main; 26.75/11.36 import qualified Maybe; 26.75/11.36 import qualified Prelude; 26.75/11.36 data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a) ; 26.75/11.36 26.75/11.36 instance (Eq a, Eq b) => Eq FiniteMap b a where { 26.75/11.36 } 26.75/11.36 addToFM :: Ord b => FiniteMap b a -> b -> a -> FiniteMap b a; 26.75/11.36 addToFM fm key elt = addToFM_C addToFM0 fm key elt; 26.75/11.36 26.75/11.36 addToFM0 old new = new; 26.75/11.36 26.75/11.36 addToFM_C :: Ord b => (a -> a -> a) -> FiniteMap b a -> b -> a -> FiniteMap b a; 26.75/11.36 addToFM_C combiner EmptyFM key elt = addToFM_C4 combiner EmptyFM key elt; 26.75/11.36 addToFM_C combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt; 26.75/11.36 26.75/11.36 addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt True = Branch new_key (combiner elt new_elt) size fm_l fm_r; 26.75/11.36 26.75/11.36 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt fm_l (addToFM_C combiner fm_r new_key new_elt); 26.75/11.36 addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C0 combiner key elt size fm_l fm_r new_key new_elt otherwise; 26.75/11.36 26.75/11.36 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt True = mkBalBranch key elt (addToFM_C combiner fm_l new_key new_elt) fm_r; 26.75/11.36 addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt False = addToFM_C1 combiner key elt size fm_l fm_r new_key new_elt (new_key > key); 26.75/11.36 26.75/11.36 addToFM_C3 combiner (Branch key elt size fm_l fm_r) new_key new_elt = addToFM_C2 combiner key elt size fm_l fm_r new_key new_elt (new_key < key); 26.75/11.36 26.75/11.36 addToFM_C4 combiner EmptyFM key elt = unitFM key elt; 26.75/11.36 addToFM_C4 vyu vyv vyw vyx = addToFM_C3 vyu vyv vyw vyx; 26.75/11.36 26.75/11.36 emptyFM :: FiniteMap b a; 26.75/11.36 emptyFM = EmptyFM; 26.75/11.36 26.75/11.36 findMax :: FiniteMap b a -> (b,a); 26.75/11.36 findMax (Branch key elt zy zz EmptyFM) = (key,elt); 26.75/11.36 findMax (Branch key elt vuu vuv fm_r) = findMax fm_r; 26.75/11.36 26.75/11.36 findMin :: FiniteMap a b -> (a,b); 26.75/11.36 findMin (Branch key elt vxu EmptyFM vxv) = (key,elt); 26.75/11.36 findMin (Branch key elt vxw fm_l vxx) = findMin fm_l; 26.75/11.36 26.75/11.36 mkBalBranch :: Ord a => a -> b -> FiniteMap a b -> FiniteMap a b -> FiniteMap a b; 26.75/11.36 mkBalBranch key elt fm_L fm_R = mkBalBranch6 key elt fm_L fm_R; 26.75/11.36 26.75/11.36 mkBalBranch6 key elt fm_L fm_R = mkBalBranch6MkBalBranch5 key elt fm_R fm_L key elt fm_L fm_R (mkBalBranch6Size_l key elt fm_R fm_L + mkBalBranch6Size_r key elt fm_R fm_L < Pos (Succ (Succ Zero))); 26.75/11.36 26.75/11.36 mkBalBranch6Double_L www wwx wwy wwz fm_l (Branch key_r elt_r vvw (Branch key_rl elt_rl vvx fm_rll fm_rlr) fm_rr) = mkBranch (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) key_rl elt_rl (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) www wwx fm_l fm_rll) (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) key_r elt_r fm_rlr fm_rr); 26.75/11.36 26.75/11.36 mkBalBranch6Double_R www wwx wwy wwz (Branch key_l elt_l vux fm_ll (Branch key_lr elt_lr vuy fm_lrl fm_lrr)) fm_r = mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) key_lr elt_lr (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) key_l elt_l fm_ll fm_lrl) (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) www wwx fm_lrr fm_r); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Double_L www wwx wwy wwz fm_L fm_R; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr True = mkBalBranch6Single_L www wwx wwy wwz fm_L fm_R; 26.75/11.36 mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr False = mkBalBranch6MkBalBranch00 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr otherwise; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch02 www wwx wwy wwz fm_L fm_R (Branch vvy vvz vwu fm_rl fm_rr) = mkBalBranch6MkBalBranch01 www wwx wwy wwz fm_L fm_R vvy vvz vwu fm_rl fm_rr (sizeFM fm_rl < Pos (Succ (Succ Zero)) * sizeFM fm_rr); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Double_R www wwx wwy wwz fm_L fm_R; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr True = mkBalBranch6Single_R www wwx wwy wwz fm_L fm_R; 26.75/11.36 mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr False = mkBalBranch6MkBalBranch10 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr otherwise; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch12 www wwx wwy wwz fm_L fm_R (Branch vuz vvu vvv fm_ll fm_lr) = mkBalBranch6MkBalBranch11 www wwx wwy wwz fm_L fm_R vuz vvu vvv fm_ll fm_lr (sizeFM fm_lr < Pos (Succ (Succ Zero)) * sizeFM fm_ll); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R True = mkBranch (Pos (Succ (Succ Zero))) key elt fm_L fm_R; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch1 www wwx wwy wwz fm_L fm_R fm_L; 26.75/11.36 mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch2 www wwx wwy wwz key elt fm_L fm_R otherwise; 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R True = mkBalBranch6MkBalBranch0 www wwx wwy wwz fm_L fm_R fm_R; 26.75/11.36 mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch3 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_l www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_r www wwx wwy wwz); 26.75/11.36 26.75/11.36 mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R True = mkBranch (Pos (Succ Zero)) key elt fm_L fm_R; 26.75/11.36 mkBalBranch6MkBalBranch5 www wwx wwy wwz key elt fm_L fm_R False = mkBalBranch6MkBalBranch4 www wwx wwy wwz key elt fm_L fm_R (mkBalBranch6Size_r www wwx wwy wwz > sIZE_RATIO * mkBalBranch6Size_l www wwx wwy wwz); 26.75/11.36 26.75/11.36 mkBalBranch6Single_L www wwx wwy wwz fm_l (Branch key_r elt_r vwv fm_rl fm_rr) = mkBranch (Pos (Succ (Succ (Succ Zero)))) key_r elt_r (mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) www wwx fm_l fm_rl) fm_rr; 26.75/11.36 26.75/11.36 mkBalBranch6Single_R www wwx wwy wwz (Branch key_l elt_l vuw fm_ll fm_lr) fm_r = mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))) key_l elt_l fm_ll (mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) www wwx fm_lr fm_r); 26.75/11.36 26.75/11.36 mkBalBranch6Size_l www wwx wwy wwz = sizeFM wwz; 26.75/11.36 26.75/11.36 mkBalBranch6Size_r www wwx wwy wwz = sizeFM wwy; 26.75/11.36 26.75/11.36 mkBranch :: Ord b => Int -> b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.75/11.36 mkBranch which key elt fm_l fm_r = mkBranchResult key elt fm_l fm_r; 26.75/11.36 26.75/11.36 mkBranchBalance_ok wxu wxv wxw = True; 26.75/11.36 26.75/11.36 mkBranchLeft_ok wxu wxv wxw = mkBranchLeft_ok0 wxu wxv wxw wxu wxv wxu; 26.75/11.36 26.75/11.36 mkBranchLeft_ok0 wxu wxv wxw fm_l key EmptyFM = True; 26.75/11.36 mkBranchLeft_ok0 wxu wxv wxw fm_l key (Branch left_key yw yx yy yz) = mkBranchLeft_ok0Biggest_left_key fm_l < key; 26.75/11.36 26.75/11.36 mkBranchLeft_ok0Biggest_left_key xuw = fst (findMax xuw); 26.75/11.36 26.75/11.36 mkBranchLeft_size wxu wxv wxw = sizeFM wxu; 26.75/11.36 26.75/11.36 mkBranchResult wxx wxy wxz wyu = Branch wxx wxy (mkBranchUnbox wxz wxx wyu (Pos (Succ Zero) + mkBranchLeft_size wxz wxx wyu + mkBranchRight_size wxz wxx wyu)) wxz wyu; 26.75/11.36 26.75/11.36 mkBranchRight_ok wxu wxv wxw = mkBranchRight_ok0 wxu wxv wxw wxw wxv wxw; 26.75/11.36 26.75/11.36 mkBranchRight_ok0 wxu wxv wxw fm_r key EmptyFM = True; 26.75/11.36 mkBranchRight_ok0 wxu wxv wxw fm_r key (Branch right_key zu zv zw zx) = key < mkBranchRight_ok0Smallest_right_key fm_r; 26.75/11.36 26.75/11.36 mkBranchRight_ok0Smallest_right_key xuv = fst (findMin xuv); 26.75/11.36 26.75/11.36 mkBranchRight_size wxu wxv wxw = sizeFM wxw; 26.75/11.36 26.75/11.36 mkBranchUnbox :: Ord a => -> (FiniteMap a b) ( -> a ( -> (FiniteMap a b) (Int -> Int))); 26.75/11.36 mkBranchUnbox wxu wxv wxw x = x; 26.75/11.36 26.75/11.36 mkVBalBranch :: Ord b => b -> a -> FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.75/11.36 mkVBalBranch key elt EmptyFM fm_r = mkVBalBranch5 key elt EmptyFM fm_r; 26.75/11.36 mkVBalBranch key elt fm_l EmptyFM = mkVBalBranch4 key elt fm_l EmptyFM; 26.75/11.36 mkVBalBranch key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.75/11.36 26.75/11.36 mkVBalBranch3 key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz) = mkVBalBranch3MkVBalBranch2 wv ww wx wy wz xv xw xx xy xz key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * mkVBalBranch3Size_l wv ww wx wy wz xv xw xx xy xz < mkVBalBranch3Size_r wv ww wx wy wz xv xw xx xy xz); 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) key elt (Branch wv ww wx wy wz) (Branch xv xw xx xy xz); 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch wv ww wy (mkVBalBranch key elt wz (Branch xv xw xx xy xz)); 26.75/11.36 mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch0 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz otherwise; 26.75/11.36 26.75/11.36 mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz True = mkBalBranch xv xw (mkVBalBranch key elt (Branch wv ww wx wy wz) xy) xz; 26.75/11.36 mkVBalBranch3MkVBalBranch2 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz False = mkVBalBranch3MkVBalBranch1 wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu key elt wv ww wx wy wz xv xw xx xy xz (sIZE_RATIO * mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu < mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu); 26.75/11.36 26.75/11.36 mkVBalBranch3Size_l wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wyx wyy wyz wzu wzv); 26.75/11.36 26.75/11.36 mkVBalBranch3Size_r wyx wyy wyz wzu wzv wzw wzx wzy wzz xuu = sizeFM (Branch wzw wzx wzy wzz xuu); 26.75/11.36 26.75/11.36 mkVBalBranch4 key elt fm_l EmptyFM = addToFM fm_l key elt; 26.75/11.36 mkVBalBranch4 vzv vzw vzx vzy = mkVBalBranch3 vzv vzw vzx vzy; 26.75/11.36 26.75/11.36 mkVBalBranch5 key elt EmptyFM fm_r = addToFM fm_r key elt; 26.75/11.36 mkVBalBranch5 wuu wuv wuw wux = mkVBalBranch4 wuu wuv wuw wux; 26.75/11.36 26.75/11.36 plusFM :: Ord b => FiniteMap b a -> FiniteMap b a -> FiniteMap b a; 26.75/11.36 plusFM EmptyFM fm2 = fm2; 26.75/11.36 plusFM fm1 EmptyFM = fm1; 26.75/11.36 plusFM fm1 (Branch split_key elt1 vz left right) = mkVBalBranch split_key elt1 (plusFM (plusFMLts fm1 split_key) left) (plusFM (plusFMGts fm1 split_key) right); 26.75/11.36 26.75/11.36 plusFMGts wyv wyw = splitGT wyv wyw; 26.75/11.36 26.75/11.36 plusFMLts wyv wyw = splitLT wyv wyw; 26.75/11.36 26.75/11.36 sIZE_RATIO :: Int; 26.75/11.36 sIZE_RATIO = Pos (Succ (Succ (Succ (Succ (Succ Zero))))); 26.75/11.36 26.75/11.36 sizeFM :: FiniteMap b a -> Int; 26.75/11.36 sizeFM EmptyFM = Pos Zero; 26.75/11.36 sizeFM (Branch vww vwx size vwy vwz) = size; 26.75/11.36 26.75/11.36 splitGT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 26.75/11.36 splitGT EmptyFM split_key = splitGT4 EmptyFM split_key; 26.75/11.36 splitGT (Branch key elt yu fm_l fm_r) split_key = splitGT3 (Branch key elt yu fm_l fm_r) split_key; 26.75/11.36 26.75/11.36 splitGT0 key elt yu fm_l fm_r split_key True = fm_r; 26.75/11.36 26.75/11.36 splitGT1 key elt yu fm_l fm_r split_key True = mkVBalBranch key elt (splitGT fm_l split_key) fm_r; 26.75/11.36 splitGT1 key elt yu fm_l fm_r split_key False = splitGT0 key elt yu fm_l fm_r split_key otherwise; 26.75/11.36 26.75/11.36 splitGT2 key elt yu fm_l fm_r split_key True = splitGT fm_r split_key; 26.75/11.36 splitGT2 key elt yu fm_l fm_r split_key False = splitGT1 key elt yu fm_l fm_r split_key (split_key < key); 26.75/11.36 26.75/11.36 splitGT3 (Branch key elt yu fm_l fm_r) split_key = splitGT2 key elt yu fm_l fm_r split_key (split_key > key); 26.75/11.36 26.75/11.36 splitGT4 EmptyFM split_key = emptyFM; 26.75/11.36 splitGT4 wvu wvv = splitGT3 wvu wvv; 26.75/11.36 26.75/11.36 splitLT :: Ord a => FiniteMap a b -> a -> FiniteMap a b; 26.75/11.36 splitLT EmptyFM split_key = splitLT4 EmptyFM split_key; 26.75/11.36 splitLT (Branch key elt yv fm_l fm_r) split_key = splitLT3 (Branch key elt yv fm_l fm_r) split_key; 26.75/11.36 26.75/11.36 splitLT0 key elt yv fm_l fm_r split_key True = fm_l; 26.75/11.36 26.75/11.36 splitLT1 key elt yv fm_l fm_r split_key True = mkVBalBranch key elt fm_l (splitLT fm_r split_key); 26.75/11.36 splitLT1 key elt yv fm_l fm_r split_key False = splitLT0 key elt yv fm_l fm_r split_key otherwise; 26.75/11.36 26.75/11.36 splitLT2 key elt yv fm_l fm_r split_key True = splitLT fm_l split_key; 26.75/11.36 splitLT2 key elt yv fm_l fm_r split_key False = splitLT1 key elt yv fm_l fm_r split_key (split_key > key); 26.75/11.36 26.75/11.36 splitLT3 (Branch key elt yv fm_l fm_r) split_key = splitLT2 key elt yv fm_l fm_r split_key (split_key < key); 26.75/11.36 26.75/11.36 splitLT4 EmptyFM split_key = emptyFM; 26.75/11.36 splitLT4 wvy wvz = splitLT3 wvy wvz; 26.75/11.36 26.75/11.36 unitFM :: a -> b -> FiniteMap a b; 26.75/11.36 unitFM key elt = Branch key elt (Pos (Succ Zero)) emptyFM emptyFM; 26.75/11.36 26.75/11.36 } 26.75/11.36 module Maybe where { 26.75/11.36 import qualified FiniteMap; 26.75/11.36 import qualified Main; 26.75/11.36 import qualified Prelude; 26.75/11.36 } 26.75/11.36 module Main where { 26.75/11.36 import qualified FiniteMap; 26.75/11.36 import qualified Maybe; 26.75/11.36 import qualified Prelude; 26.75/11.36 } 26.75/11.36 26.75/11.36 ---------------------------------------- 26.75/11.36 26.75/11.36 (13) Narrow (SOUND) 26.75/11.36 Haskell To QDPs 26.75/11.36 26.75/11.36 digraph dp_graph { 26.75/11.36 node [outthreshold=100, inthreshold=100];1[label="FiniteMap.plusFM",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 26.75/11.36 3[label="FiniteMap.plusFM xux3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 26.75/11.36 4[label="FiniteMap.plusFM xux3 xux4",fontsize=16,color="burlywood",shape="triangle"];9368[label="xux3/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];4 -> 9368[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9368 -> 5[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9369[label="xux3/FiniteMap.Branch xux30 xux31 xux32 xux33 xux34",fontsize=10,color="white",style="solid",shape="box"];4 -> 9369[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9369 -> 6[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 5[label="FiniteMap.plusFM FiniteMap.EmptyFM xux4",fontsize=16,color="black",shape="box"];5 -> 7[label="",style="solid", color="black", weight=3]; 26.75/11.37 6[label="FiniteMap.plusFM (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux4",fontsize=16,color="burlywood",shape="box"];9370[label="xux4/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];6 -> 9370[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9370 -> 8[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9371[label="xux4/FiniteMap.Branch xux40 xux41 xux42 xux43 xux44",fontsize=10,color="white",style="solid",shape="box"];6 -> 9371[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9371 -> 9[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7[label="xux4",fontsize=16,color="green",shape="box"];8[label="FiniteMap.plusFM (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8 -> 10[label="",style="solid", color="black", weight=3]; 26.75/11.37 9[label="FiniteMap.plusFM (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) (FiniteMap.Branch xux40 xux41 xux42 xux43 xux44)",fontsize=16,color="black",shape="box"];9 -> 11[label="",style="solid", color="black", weight=3]; 26.75/11.37 10[label="FiniteMap.Branch xux30 xux31 xux32 xux33 xux34",fontsize=16,color="green",shape="box"];11 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.37 11[label="FiniteMap.mkVBalBranch xux40 xux41 (FiniteMap.plusFM (FiniteMap.plusFMLts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40) xux43) (FiniteMap.plusFM (FiniteMap.plusFMGts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40) xux44)",fontsize=16,color="magenta"];11 -> 13[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 11 -> 14[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 13 -> 4[label="",style="dashed", color="red", weight=0]; 26.75/11.37 13[label="FiniteMap.plusFM (FiniteMap.plusFMGts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40) xux44",fontsize=16,color="magenta"];13 -> 15[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 13 -> 16[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 14 -> 4[label="",style="dashed", color="red", weight=0]; 26.75/11.37 14[label="FiniteMap.plusFM (FiniteMap.plusFMLts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40) xux43",fontsize=16,color="magenta"];14 -> 17[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 14 -> 18[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 12[label="FiniteMap.mkVBalBranch xux40 xux41 xux6 xux5",fontsize=16,color="burlywood",shape="triangle"];9372[label="xux6/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];12 -> 9372[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9372 -> 19[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9373[label="xux6/FiniteMap.Branch xux60 xux61 xux62 xux63 xux64",fontsize=10,color="white",style="solid",shape="box"];12 -> 9373[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9373 -> 20[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 15[label="FiniteMap.plusFMGts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="box"];15 -> 21[label="",style="solid", color="black", weight=3]; 26.75/11.37 16[label="xux44",fontsize=16,color="green",shape="box"];17[label="FiniteMap.plusFMLts (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="box"];17 -> 22[label="",style="solid", color="black", weight=3]; 26.75/11.37 18[label="xux43",fontsize=16,color="green",shape="box"];19[label="FiniteMap.mkVBalBranch xux40 xux41 FiniteMap.EmptyFM xux5",fontsize=16,color="black",shape="box"];19 -> 23[label="",style="solid", color="black", weight=3]; 26.75/11.37 20[label="FiniteMap.mkVBalBranch xux40 xux41 (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) xux5",fontsize=16,color="burlywood",shape="box"];9374[label="xux5/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];20 -> 9374[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9374 -> 24[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9375[label="xux5/FiniteMap.Branch xux50 xux51 xux52 xux53 xux54",fontsize=10,color="white",style="solid",shape="box"];20 -> 9375[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9375 -> 25[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 21[label="FiniteMap.splitGT (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="box"];21 -> 26[label="",style="solid", color="black", weight=3]; 26.75/11.37 22[label="FiniteMap.splitLT (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="box"];22 -> 27[label="",style="solid", color="black", weight=3]; 26.75/11.37 23[label="FiniteMap.mkVBalBranch5 xux40 xux41 FiniteMap.EmptyFM xux5",fontsize=16,color="black",shape="box"];23 -> 28[label="",style="solid", color="black", weight=3]; 26.75/11.37 24[label="FiniteMap.mkVBalBranch xux40 xux41 (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];24 -> 29[label="",style="solid", color="black", weight=3]; 26.75/11.37 25[label="FiniteMap.mkVBalBranch xux40 xux41 (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)",fontsize=16,color="black",shape="box"];25 -> 30[label="",style="solid", color="black", weight=3]; 26.75/11.37 26[label="FiniteMap.splitGT3 (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="triangle"];26 -> 31[label="",style="solid", color="black", weight=3]; 26.75/11.37 27[label="FiniteMap.splitLT3 (FiniteMap.Branch xux30 xux31 xux32 xux33 xux34) xux40",fontsize=16,color="black",shape="triangle"];27 -> 32[label="",style="solid", color="black", weight=3]; 26.75/11.37 28[label="FiniteMap.addToFM xux5 xux40 xux41",fontsize=16,color="black",shape="triangle"];28 -> 33[label="",style="solid", color="black", weight=3]; 26.75/11.37 29[label="FiniteMap.mkVBalBranch4 xux40 xux41 (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];29 -> 34[label="",style="solid", color="black", weight=3]; 26.75/11.37 30[label="FiniteMap.mkVBalBranch3 xux40 xux41 (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)",fontsize=16,color="black",shape="box"];30 -> 35[label="",style="solid", color="black", weight=3]; 26.75/11.37 31[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 xux40 (xux40 > xux30)",fontsize=16,color="black",shape="box"];31 -> 36[label="",style="solid", color="black", weight=3]; 26.75/11.37 32[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 xux40 (xux40 < xux30)",fontsize=16,color="black",shape="box"];32 -> 37[label="",style="solid", color="black", weight=3]; 26.75/11.37 33[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux5 xux40 xux41",fontsize=16,color="burlywood",shape="triangle"];9376[label="xux5/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];33 -> 9376[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9376 -> 38[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9377[label="xux5/FiniteMap.Branch xux50 xux51 xux52 xux53 xux54",fontsize=10,color="white",style="solid",shape="box"];33 -> 9377[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9377 -> 39[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 34 -> 28[label="",style="dashed", color="red", weight=0]; 26.75/11.37 34[label="FiniteMap.addToFM (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64) xux40 xux41",fontsize=16,color="magenta"];34 -> 40[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4968[label="",style="dashed", color="red", weight=0]; 26.75/11.37 35[label="FiniteMap.mkVBalBranch3MkVBalBranch2 xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54 xux40 xux41 xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54 (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54 < FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54)",fontsize=16,color="magenta"];35 -> 4969[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4970[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4971[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4972[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4973[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4974[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4975[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4976[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4977[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4978[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4979[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4980[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 35 -> 4981[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 36[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare xux40 xux30 == GT)",fontsize=16,color="black",shape="box"];36 -> 42[label="",style="solid", color="black", weight=3]; 26.75/11.37 37[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare xux40 xux30 == LT)",fontsize=16,color="black",shape="box"];37 -> 43[label="",style="solid", color="black", weight=3]; 26.75/11.37 38[label="FiniteMap.addToFM_C FiniteMap.addToFM0 FiniteMap.EmptyFM xux40 xux41",fontsize=16,color="black",shape="box"];38 -> 44[label="",style="solid", color="black", weight=3]; 26.75/11.37 39[label="FiniteMap.addToFM_C FiniteMap.addToFM0 (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54) xux40 xux41",fontsize=16,color="black",shape="box"];39 -> 45[label="",style="solid", color="black", weight=3]; 26.75/11.37 40[label="FiniteMap.Branch xux60 xux61 xux62 xux63 xux64",fontsize=16,color="green",shape="box"];4969[label="xux63",fontsize=16,color="green",shape="box"];4970[label="xux52",fontsize=16,color="green",shape="box"];4971[label="xux64",fontsize=16,color="green",shape="box"];4972[label="xux54",fontsize=16,color="green",shape="box"];4973[label="xux53",fontsize=16,color="green",shape="box"];4974[label="FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54 < FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54",fontsize=16,color="black",shape="box"];4974 -> 6599[label="",style="solid", color="black", weight=3]; 26.75/11.37 4975[label="xux61",fontsize=16,color="green",shape="box"];4976[label="xux62",fontsize=16,color="green",shape="box"];4977[label="xux60",fontsize=16,color="green",shape="box"];4978[label="xux51",fontsize=16,color="green",shape="box"];4979[label="xux40",fontsize=16,color="green",shape="box"];4980[label="xux50",fontsize=16,color="green",shape="box"];4981[label="xux41",fontsize=16,color="green",shape="box"];4968[label="FiniteMap.mkVBalBranch3MkVBalBranch2 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux381",fontsize=16,color="burlywood",shape="triangle"];9378[label="xux381/False",fontsize=10,color="white",style="solid",shape="box"];4968 -> 9378[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9378 -> 6600[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9379[label="xux381/True",fontsize=10,color="white",style="solid",shape="box"];4968 -> 9379[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9379 -> 6601[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 42[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare3 xux40 xux30 == GT)",fontsize=16,color="black",shape="box"];42 -> 47[label="",style="solid", color="black", weight=3]; 26.75/11.37 43[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare3 xux40 xux30 == LT)",fontsize=16,color="black",shape="box"];43 -> 48[label="",style="solid", color="black", weight=3]; 26.75/11.37 44[label="FiniteMap.addToFM_C4 FiniteMap.addToFM0 FiniteMap.EmptyFM xux40 xux41",fontsize=16,color="black",shape="box"];44 -> 49[label="",style="solid", color="black", weight=3]; 26.75/11.37 45[label="FiniteMap.addToFM_C3 FiniteMap.addToFM0 (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54) xux40 xux41",fontsize=16,color="black",shape="box"];45 -> 50[label="",style="solid", color="black", weight=3]; 26.75/11.37 6599[label="compare (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6599 -> 6639[label="",style="solid", color="black", weight=3]; 26.75/11.37 6600[label="FiniteMap.mkVBalBranch3MkVBalBranch2 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 False",fontsize=16,color="black",shape="box"];6600 -> 6640[label="",style="solid", color="black", weight=3]; 26.75/11.37 6601[label="FiniteMap.mkVBalBranch3MkVBalBranch2 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 True",fontsize=16,color="black",shape="box"];6601 -> 6641[label="",style="solid", color="black", weight=3]; 26.75/11.37 47[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare2 xux40 xux30 (xux40 == xux30) == GT)",fontsize=16,color="burlywood",shape="box"];9380[label="xux40/LT",fontsize=10,color="white",style="solid",shape="box"];47 -> 9380[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9380 -> 52[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9381[label="xux40/EQ",fontsize=10,color="white",style="solid",shape="box"];47 -> 9381[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9381 -> 53[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9382[label="xux40/GT",fontsize=10,color="white",style="solid",shape="box"];47 -> 9382[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9382 -> 54[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 48[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 xux40 (compare2 xux40 xux30 (xux40 == xux30) == LT)",fontsize=16,color="burlywood",shape="box"];9383[label="xux40/LT",fontsize=10,color="white",style="solid",shape="box"];48 -> 9383[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9383 -> 55[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9384[label="xux40/EQ",fontsize=10,color="white",style="solid",shape="box"];48 -> 9384[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9384 -> 56[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9385[label="xux40/GT",fontsize=10,color="white",style="solid",shape="box"];48 -> 9385[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9385 -> 57[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 49[label="FiniteMap.unitFM xux40 xux41",fontsize=16,color="black",shape="box"];49 -> 58[label="",style="solid", color="black", weight=3]; 26.75/11.37 50 -> 7317[label="",style="dashed", color="red", weight=0]; 26.75/11.37 50[label="FiniteMap.addToFM_C2 FiniteMap.addToFM0 xux50 xux51 xux52 xux53 xux54 xux40 xux41 (xux40 < xux50)",fontsize=16,color="magenta"];50 -> 7318[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7319[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7320[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7321[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7322[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7323[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7324[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 50 -> 7325[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6639[label="primCmpInt (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6639 -> 6725[label="",style="solid", color="black", weight=3]; 26.75/11.37 6640[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 < FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394)",fontsize=16,color="black",shape="box"];6640 -> 6726[label="",style="solid", color="black", weight=3]; 26.75/11.37 6641[label="FiniteMap.mkBalBranch xux1390 xux1391 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1394",fontsize=16,color="black",shape="box"];6641 -> 6727[label="",style="solid", color="black", weight=3]; 26.75/11.37 52[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 LT (compare2 LT xux30 (LT == xux30) == GT)",fontsize=16,color="burlywood",shape="box"];9386[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];52 -> 9386[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9386 -> 61[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9387[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];52 -> 9387[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9387 -> 62[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9388[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];52 -> 9388[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9388 -> 63[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 53[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 EQ (compare2 EQ xux30 (EQ == xux30) == GT)",fontsize=16,color="burlywood",shape="box"];9389[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];53 -> 9389[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9389 -> 64[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9390[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];53 -> 9390[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9390 -> 65[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9391[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];53 -> 9391[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9391 -> 66[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 54[label="FiniteMap.splitGT2 xux30 xux31 xux32 xux33 xux34 GT (compare2 GT xux30 (GT == xux30) == GT)",fontsize=16,color="burlywood",shape="box"];9392[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];54 -> 9392[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9392 -> 67[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9393[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];54 -> 9393[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9393 -> 68[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9394[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];54 -> 9394[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9394 -> 69[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 55[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 LT (compare2 LT xux30 (LT == xux30) == LT)",fontsize=16,color="burlywood",shape="box"];9395[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];55 -> 9395[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9395 -> 70[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9396[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];55 -> 9396[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9396 -> 71[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9397[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];55 -> 9397[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9397 -> 72[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 56[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 EQ (compare2 EQ xux30 (EQ == xux30) == LT)",fontsize=16,color="burlywood",shape="box"];9398[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];56 -> 9398[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9398 -> 73[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9399[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];56 -> 9399[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9399 -> 74[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9400[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];56 -> 9400[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9400 -> 75[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 57[label="FiniteMap.splitLT2 xux30 xux31 xux32 xux33 xux34 GT (compare2 GT xux30 (GT == xux30) == LT)",fontsize=16,color="burlywood",shape="box"];9401[label="xux30/LT",fontsize=10,color="white",style="solid",shape="box"];57 -> 9401[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9401 -> 76[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9402[label="xux30/EQ",fontsize=10,color="white",style="solid",shape="box"];57 -> 9402[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9402 -> 77[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9403[label="xux30/GT",fontsize=10,color="white",style="solid",shape="box"];57 -> 9403[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9403 -> 78[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 58[label="FiniteMap.Branch xux40 xux41 (Pos (Succ Zero)) FiniteMap.emptyFM FiniteMap.emptyFM",fontsize=16,color="green",shape="box"];58 -> 79[label="",style="dashed", color="green", weight=3]; 26.75/11.37 58 -> 80[label="",style="dashed", color="green", weight=3]; 26.75/11.37 7318[label="xux40 < xux50",fontsize=16,color="black",shape="triangle"];7318 -> 7718[label="",style="solid", color="black", weight=3]; 26.75/11.37 7319[label="xux50",fontsize=16,color="green",shape="box"];7320[label="xux41",fontsize=16,color="green",shape="box"];7321[label="xux53",fontsize=16,color="green",shape="box"];7322[label="xux52",fontsize=16,color="green",shape="box"];7323[label="xux40",fontsize=16,color="green",shape="box"];7324[label="xux51",fontsize=16,color="green",shape="box"];7325[label="xux54",fontsize=16,color="green",shape="box"];7317[label="FiniteMap.addToFM_C2 FiniteMap.addToFM0 xux476 xux477 xux478 xux479 xux480 xux481 xux482 xux483",fontsize=16,color="burlywood",shape="triangle"];9404[label="xux483/False",fontsize=10,color="white",style="solid",shape="box"];7317 -> 9404[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9404 -> 7719[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9405[label="xux483/True",fontsize=10,color="white",style="solid",shape="box"];7317 -> 9405[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9405 -> 7720[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 6725[label="primCmpInt (primMulInt FiniteMap.sIZE_RATIO (FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6725 -> 6800[label="",style="solid", color="black", weight=3]; 26.75/11.37 6726[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (compare (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6726 -> 6801[label="",style="solid", color="black", weight=3]; 26.75/11.37 6727[label="FiniteMap.mkBalBranch6 xux1390 xux1391 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1394",fontsize=16,color="black",shape="box"];6727 -> 6802[label="",style="solid", color="black", weight=3]; 26.75/11.37 61[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT (LT == LT) == GT)",fontsize=16,color="black",shape="box"];61 -> 83[label="",style="solid", color="black", weight=3]; 26.75/11.37 62[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ (LT == EQ) == GT)",fontsize=16,color="black",shape="box"];62 -> 84[label="",style="solid", color="black", weight=3]; 26.75/11.37 63[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT (LT == GT) == GT)",fontsize=16,color="black",shape="box"];63 -> 85[label="",style="solid", color="black", weight=3]; 26.75/11.37 64[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT (EQ == LT) == GT)",fontsize=16,color="black",shape="box"];64 -> 86[label="",style="solid", color="black", weight=3]; 26.75/11.37 65[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ (EQ == EQ) == GT)",fontsize=16,color="black",shape="box"];65 -> 87[label="",style="solid", color="black", weight=3]; 26.75/11.37 66[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT (EQ == GT) == GT)",fontsize=16,color="black",shape="box"];66 -> 88[label="",style="solid", color="black", weight=3]; 26.75/11.37 67[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT (GT == LT) == GT)",fontsize=16,color="black",shape="box"];67 -> 89[label="",style="solid", color="black", weight=3]; 26.75/11.37 68[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ (GT == EQ) == GT)",fontsize=16,color="black",shape="box"];68 -> 90[label="",style="solid", color="black", weight=3]; 26.75/11.37 69[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT (GT == GT) == GT)",fontsize=16,color="black",shape="box"];69 -> 91[label="",style="solid", color="black", weight=3]; 26.75/11.37 70[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT (LT == LT) == LT)",fontsize=16,color="black",shape="box"];70 -> 92[label="",style="solid", color="black", weight=3]; 26.75/11.37 71[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ (LT == EQ) == LT)",fontsize=16,color="black",shape="box"];71 -> 93[label="",style="solid", color="black", weight=3]; 26.75/11.37 72[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT (LT == GT) == LT)",fontsize=16,color="black",shape="box"];72 -> 94[label="",style="solid", color="black", weight=3]; 26.75/11.37 73[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT (EQ == LT) == LT)",fontsize=16,color="black",shape="box"];73 -> 95[label="",style="solid", color="black", weight=3]; 26.75/11.37 74[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ (EQ == EQ) == LT)",fontsize=16,color="black",shape="box"];74 -> 96[label="",style="solid", color="black", weight=3]; 26.75/11.37 75[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT (EQ == GT) == LT)",fontsize=16,color="black",shape="box"];75 -> 97[label="",style="solid", color="black", weight=3]; 26.75/11.37 76[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT (GT == LT) == LT)",fontsize=16,color="black",shape="box"];76 -> 98[label="",style="solid", color="black", weight=3]; 26.75/11.37 77[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ (GT == EQ) == LT)",fontsize=16,color="black",shape="box"];77 -> 99[label="",style="solid", color="black", weight=3]; 26.75/11.37 78[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT (GT == GT) == LT)",fontsize=16,color="black",shape="box"];78 -> 100[label="",style="solid", color="black", weight=3]; 26.75/11.37 79[label="FiniteMap.emptyFM",fontsize=16,color="black",shape="triangle"];79 -> 101[label="",style="solid", color="black", weight=3]; 26.75/11.37 80 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.37 80[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];7718[label="compare xux40 xux50 == LT",fontsize=16,color="black",shape="box"];7718 -> 7731[label="",style="solid", color="black", weight=3]; 26.75/11.37 7719[label="FiniteMap.addToFM_C2 FiniteMap.addToFM0 xux476 xux477 xux478 xux479 xux480 xux481 xux482 False",fontsize=16,color="black",shape="box"];7719 -> 7732[label="",style="solid", color="black", weight=3]; 26.75/11.37 7720[label="FiniteMap.addToFM_C2 FiniteMap.addToFM0 xux476 xux477 xux478 xux479 xux480 xux481 xux482 True",fontsize=16,color="black",shape="box"];7720 -> 7733[label="",style="solid", color="black", weight=3]; 26.75/11.37 6800[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.mkVBalBranch3Size_l xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6800 -> 6832[label="",style="solid", color="black", weight=3]; 26.75/11.37 6801[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (primCmpInt (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6801 -> 6833[label="",style="solid", color="black", weight=3]; 26.75/11.37 6802[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1390 xux1391 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1394 (FiniteMap.mkBalBranch6Size_l xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) + FiniteMap.mkBalBranch6Size_r xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];6802 -> 6834[label="",style="solid", color="black", weight=3]; 26.75/11.37 83[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT True == GT)",fontsize=16,color="black",shape="box"];83 -> 104[label="",style="solid", color="black", weight=3]; 26.75/11.37 84[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ False == GT)",fontsize=16,color="black",shape="box"];84 -> 105[label="",style="solid", color="black", weight=3]; 26.75/11.37 85[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT False == GT)",fontsize=16,color="black",shape="box"];85 -> 106[label="",style="solid", color="black", weight=3]; 26.75/11.37 86[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT False == GT)",fontsize=16,color="black",shape="box"];86 -> 107[label="",style="solid", color="black", weight=3]; 26.75/11.37 87[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ True == GT)",fontsize=16,color="black",shape="box"];87 -> 108[label="",style="solid", color="black", weight=3]; 26.75/11.37 88[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT False == GT)",fontsize=16,color="black",shape="box"];88 -> 109[label="",style="solid", color="black", weight=3]; 26.75/11.37 89[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT False == GT)",fontsize=16,color="black",shape="box"];89 -> 110[label="",style="solid", color="black", weight=3]; 26.75/11.37 90[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ False == GT)",fontsize=16,color="black",shape="box"];90 -> 111[label="",style="solid", color="black", weight=3]; 26.75/11.37 91[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT True == GT)",fontsize=16,color="black",shape="box"];91 -> 112[label="",style="solid", color="black", weight=3]; 26.75/11.37 92[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT True == LT)",fontsize=16,color="black",shape="box"];92 -> 113[label="",style="solid", color="black", weight=3]; 26.75/11.37 93[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ False == LT)",fontsize=16,color="black",shape="box"];93 -> 114[label="",style="solid", color="black", weight=3]; 26.75/11.37 94[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT False == LT)",fontsize=16,color="black",shape="box"];94 -> 115[label="",style="solid", color="black", weight=3]; 26.75/11.37 95[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT False == LT)",fontsize=16,color="black",shape="box"];95 -> 116[label="",style="solid", color="black", weight=3]; 26.75/11.37 96[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ True == LT)",fontsize=16,color="black",shape="box"];96 -> 117[label="",style="solid", color="black", weight=3]; 26.75/11.37 97[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT False == LT)",fontsize=16,color="black",shape="box"];97 -> 118[label="",style="solid", color="black", weight=3]; 26.75/11.37 98[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT False == LT)",fontsize=16,color="black",shape="box"];98 -> 119[label="",style="solid", color="black", weight=3]; 26.75/11.37 99[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ False == LT)",fontsize=16,color="black",shape="box"];99 -> 120[label="",style="solid", color="black", weight=3]; 26.75/11.37 100[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT True == LT)",fontsize=16,color="black",shape="box"];100 -> 121[label="",style="solid", color="black", weight=3]; 26.75/11.37 101[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];7731[label="compare3 xux40 xux50 == LT",fontsize=16,color="black",shape="box"];7731 -> 7780[label="",style="solid", color="black", weight=3]; 26.75/11.37 7732 -> 7781[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7732[label="FiniteMap.addToFM_C1 FiniteMap.addToFM0 xux476 xux477 xux478 xux479 xux480 xux481 xux482 (xux481 > xux476)",fontsize=16,color="magenta"];7732 -> 7782[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7783[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7784[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7785[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7786[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7787[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7788[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7732 -> 7789[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7733[label="FiniteMap.mkBalBranch xux476 xux477 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux480",fontsize=16,color="black",shape="box"];7733 -> 7790[label="",style="solid", color="black", weight=3]; 26.75/11.37 6832[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.sizeFM (FiniteMap.Branch xux60 xux61 xux62 xux63 xux64))) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6832 -> 6837[label="",style="solid", color="black", weight=3]; 26.75/11.37 6833[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (primCmpInt (primMulInt FiniteMap.sIZE_RATIO (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6833 -> 6838[label="",style="solid", color="black", weight=3]; 26.75/11.37 6834[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1390 xux1391 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1394 (compare (FiniteMap.mkBalBranch6Size_l xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) + FiniteMap.mkBalBranch6Size_r xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];6834 -> 6839[label="",style="solid", color="black", weight=3]; 26.75/11.37 104[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 LT (EQ == GT)",fontsize=16,color="black",shape="box"];104 -> 127[label="",style="solid", color="black", weight=3]; 26.75/11.37 105[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ (LT <= EQ) == GT)",fontsize=16,color="black",shape="box"];105 -> 128[label="",style="solid", color="black", weight=3]; 26.75/11.37 106[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT (LT <= GT) == GT)",fontsize=16,color="black",shape="box"];106 -> 129[label="",style="solid", color="black", weight=3]; 26.75/11.37 107[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT (EQ <= LT) == GT)",fontsize=16,color="black",shape="box"];107 -> 130[label="",style="solid", color="black", weight=3]; 26.75/11.37 108[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 EQ (EQ == GT)",fontsize=16,color="black",shape="box"];108 -> 131[label="",style="solid", color="black", weight=3]; 26.75/11.37 109[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT (EQ <= GT) == GT)",fontsize=16,color="black",shape="box"];109 -> 132[label="",style="solid", color="black", weight=3]; 26.75/11.37 110[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT (GT <= LT) == GT)",fontsize=16,color="black",shape="box"];110 -> 133[label="",style="solid", color="black", weight=3]; 26.75/11.37 111[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ (GT <= EQ) == GT)",fontsize=16,color="black",shape="box"];111 -> 134[label="",style="solid", color="black", weight=3]; 26.75/11.37 112[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 GT (EQ == GT)",fontsize=16,color="black",shape="box"];112 -> 135[label="",style="solid", color="black", weight=3]; 26.75/11.37 113[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 LT (EQ == LT)",fontsize=16,color="black",shape="box"];113 -> 136[label="",style="solid", color="black", weight=3]; 26.75/11.37 114[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ (LT <= EQ) == LT)",fontsize=16,color="black",shape="box"];114 -> 137[label="",style="solid", color="black", weight=3]; 26.75/11.37 115[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT (LT <= GT) == LT)",fontsize=16,color="black",shape="box"];115 -> 138[label="",style="solid", color="black", weight=3]; 26.75/11.37 116[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT (EQ <= LT) == LT)",fontsize=16,color="black",shape="box"];116 -> 139[label="",style="solid", color="black", weight=3]; 26.75/11.37 117[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 EQ (EQ == LT)",fontsize=16,color="black",shape="box"];117 -> 140[label="",style="solid", color="black", weight=3]; 26.75/11.37 118[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT (EQ <= GT) == LT)",fontsize=16,color="black",shape="box"];118 -> 141[label="",style="solid", color="black", weight=3]; 26.75/11.37 119[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT (GT <= LT) == LT)",fontsize=16,color="black",shape="box"];119 -> 142[label="",style="solid", color="black", weight=3]; 26.75/11.37 120[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ (GT <= EQ) == LT)",fontsize=16,color="black",shape="box"];120 -> 143[label="",style="solid", color="black", weight=3]; 26.75/11.37 121[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 GT (EQ == LT)",fontsize=16,color="black",shape="box"];121 -> 144[label="",style="solid", color="black", weight=3]; 26.75/11.37 7780[label="compare2 xux40 xux50 (xux40 == xux50) == LT",fontsize=16,color="burlywood",shape="box"];9406[label="xux40/LT",fontsize=10,color="white",style="solid",shape="box"];7780 -> 9406[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9406 -> 7791[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9407[label="xux40/EQ",fontsize=10,color="white",style="solid",shape="box"];7780 -> 9407[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9407 -> 7792[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9408[label="xux40/GT",fontsize=10,color="white",style="solid",shape="box"];7780 -> 9408[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9408 -> 7793[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7782[label="xux477",fontsize=16,color="green",shape="box"];7783[label="xux476",fontsize=16,color="green",shape="box"];7784[label="xux480",fontsize=16,color="green",shape="box"];7785[label="xux478",fontsize=16,color="green",shape="box"];7786[label="xux481 > xux476",fontsize=16,color="blue",shape="box"];9409[label="> :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9409[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9409 -> 7794[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9410[label="> :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9410[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9410 -> 7795[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9411[label="> :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9411[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9411 -> 7796[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9412[label="> :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9412[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9412 -> 7797[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9413[label="> :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9413[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9413 -> 7798[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9414[label="> :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9414[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9414 -> 7799[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9415[label="> :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9415[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9415 -> 7800[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9416[label="> :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9416[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9416 -> 7801[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9417[label="> :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9417[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9417 -> 7802[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9418[label="> :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9418[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9418 -> 7803[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9419[label="> :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9419[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9419 -> 7804[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9420[label="> :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9420[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9420 -> 7805[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9421[label="> :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9421[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9421 -> 7806[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9422[label="> :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];7786 -> 9422[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9422 -> 7807[label="",style="solid", color="blue", weight=3]; 26.75/11.37 7787[label="xux479",fontsize=16,color="green",shape="box"];7788[label="xux481",fontsize=16,color="green",shape="box"];7789[label="xux482",fontsize=16,color="green",shape="box"];7781[label="FiniteMap.addToFM_C1 FiniteMap.addToFM0 xux494 xux495 xux496 xux497 xux498 xux499 xux500 xux501",fontsize=16,color="burlywood",shape="triangle"];9423[label="xux501/False",fontsize=10,color="white",style="solid",shape="box"];7781 -> 9423[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9423 -> 7808[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9424[label="xux501/True",fontsize=10,color="white",style="solid",shape="box"];7781 -> 9424[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9424 -> 7809[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7790[label="FiniteMap.mkBalBranch6 xux476 xux477 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux480",fontsize=16,color="black",shape="box"];7790 -> 7814[label="",style="solid", color="black", weight=3]; 26.75/11.37 6837[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux62) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 xux62 xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="burlywood",shape="box"];9425[label="xux62/Pos xux620",fontsize=10,color="white",style="solid",shape="box"];6837 -> 9425[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9425 -> 6864[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9426[label="xux62/Neg xux620",fontsize=10,color="white",style="solid",shape="box"];6837 -> 9426[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9426 -> 6865[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 6838[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6838 -> 6866[label="",style="solid", color="black", weight=3]; 26.75/11.37 6839 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.37 6839[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1390 xux1391 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) xux1394 (primCmpInt (FiniteMap.mkBalBranch6Size_l xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393) + FiniteMap.mkBalBranch6Size_r xux1390 xux1391 xux1394 (FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];6839 -> 8091[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8092[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8093[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8094[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8095[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8096[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6839 -> 8097[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 127[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];127 -> 156[label="",style="solid", color="black", weight=3]; 26.75/11.37 128[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ True == GT)",fontsize=16,color="black",shape="box"];128 -> 157[label="",style="solid", color="black", weight=3]; 26.75/11.37 129[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT True == GT)",fontsize=16,color="black",shape="box"];129 -> 158[label="",style="solid", color="black", weight=3]; 26.75/11.37 130[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT False == GT)",fontsize=16,color="black",shape="box"];130 -> 159[label="",style="solid", color="black", weight=3]; 26.75/11.37 131[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];131 -> 160[label="",style="solid", color="black", weight=3]; 26.75/11.37 132[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT True == GT)",fontsize=16,color="black",shape="box"];132 -> 161[label="",style="solid", color="black", weight=3]; 26.75/11.37 133[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT False == GT)",fontsize=16,color="black",shape="box"];133 -> 162[label="",style="solid", color="black", weight=3]; 26.75/11.37 134[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ False == GT)",fontsize=16,color="black",shape="box"];134 -> 163[label="",style="solid", color="black", weight=3]; 26.75/11.37 135[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];135 -> 164[label="",style="solid", color="black", weight=3]; 26.75/11.37 136[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];136 -> 165[label="",style="solid", color="black", weight=3]; 26.75/11.37 137[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ True == LT)",fontsize=16,color="black",shape="box"];137 -> 166[label="",style="solid", color="black", weight=3]; 26.75/11.37 138[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT True == LT)",fontsize=16,color="black",shape="box"];138 -> 167[label="",style="solid", color="black", weight=3]; 26.75/11.37 139[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT False == LT)",fontsize=16,color="black",shape="box"];139 -> 168[label="",style="solid", color="black", weight=3]; 26.75/11.37 140[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];140 -> 169[label="",style="solid", color="black", weight=3]; 26.75/11.37 141[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT True == LT)",fontsize=16,color="black",shape="box"];141 -> 170[label="",style="solid", color="black", weight=3]; 26.75/11.37 142[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT False == LT)",fontsize=16,color="black",shape="box"];142 -> 171[label="",style="solid", color="black", weight=3]; 26.75/11.37 143[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ False == LT)",fontsize=16,color="black",shape="box"];143 -> 172[label="",style="solid", color="black", weight=3]; 26.75/11.37 144[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];144 -> 173[label="",style="solid", color="black", weight=3]; 26.75/11.37 7791[label="compare2 LT xux50 (LT == xux50) == LT",fontsize=16,color="burlywood",shape="box"];9427[label="xux50/LT",fontsize=10,color="white",style="solid",shape="box"];7791 -> 9427[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9427 -> 7815[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9428[label="xux50/EQ",fontsize=10,color="white",style="solid",shape="box"];7791 -> 9428[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9428 -> 7816[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9429[label="xux50/GT",fontsize=10,color="white",style="solid",shape="box"];7791 -> 9429[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9429 -> 7817[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7792[label="compare2 EQ xux50 (EQ == xux50) == LT",fontsize=16,color="burlywood",shape="box"];9430[label="xux50/LT",fontsize=10,color="white",style="solid",shape="box"];7792 -> 9430[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9430 -> 7818[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9431[label="xux50/EQ",fontsize=10,color="white",style="solid",shape="box"];7792 -> 9431[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9431 -> 7819[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9432[label="xux50/GT",fontsize=10,color="white",style="solid",shape="box"];7792 -> 9432[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9432 -> 7820[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7793[label="compare2 GT xux50 (GT == xux50) == LT",fontsize=16,color="burlywood",shape="box"];9433[label="xux50/LT",fontsize=10,color="white",style="solid",shape="box"];7793 -> 9433[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9433 -> 7821[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9434[label="xux50/EQ",fontsize=10,color="white",style="solid",shape="box"];7793 -> 9434[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9434 -> 7822[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9435[label="xux50/GT",fontsize=10,color="white",style="solid",shape="box"];7793 -> 9435[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9435 -> 7823[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7794[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7794 -> 7824[label="",style="solid", color="black", weight=3]; 26.75/11.37 7795[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7795 -> 7825[label="",style="solid", color="black", weight=3]; 26.75/11.37 7796[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7796 -> 7826[label="",style="solid", color="black", weight=3]; 26.75/11.37 7797[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7797 -> 7827[label="",style="solid", color="black", weight=3]; 26.75/11.37 7798[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7798 -> 7828[label="",style="solid", color="black", weight=3]; 26.75/11.37 7799[label="xux481 > xux476",fontsize=16,color="black",shape="triangle"];7799 -> 7829[label="",style="solid", color="black", weight=3]; 26.75/11.37 7800[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7800 -> 7830[label="",style="solid", color="black", weight=3]; 26.75/11.37 7801[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7801 -> 7831[label="",style="solid", color="black", weight=3]; 26.75/11.37 7802[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7802 -> 7832[label="",style="solid", color="black", weight=3]; 26.75/11.37 7803[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7803 -> 7833[label="",style="solid", color="black", weight=3]; 26.75/11.37 7804[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7804 -> 7834[label="",style="solid", color="black", weight=3]; 26.75/11.37 7805[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7805 -> 7835[label="",style="solid", color="black", weight=3]; 26.75/11.37 7806[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7806 -> 7836[label="",style="solid", color="black", weight=3]; 26.75/11.37 7807[label="xux481 > xux476",fontsize=16,color="black",shape="box"];7807 -> 7837[label="",style="solid", color="black", weight=3]; 26.75/11.37 7808[label="FiniteMap.addToFM_C1 FiniteMap.addToFM0 xux494 xux495 xux496 xux497 xux498 xux499 xux500 False",fontsize=16,color="black",shape="box"];7808 -> 7838[label="",style="solid", color="black", weight=3]; 26.75/11.37 7809[label="FiniteMap.addToFM_C1 FiniteMap.addToFM0 xux494 xux495 xux496 xux497 xux498 xux499 xux500 True",fontsize=16,color="black",shape="box"];7809 -> 7839[label="",style="solid", color="black", weight=3]; 26.75/11.37 7814[label="FiniteMap.mkBalBranch6MkBalBranch5 xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux476 xux477 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux480 (FiniteMap.mkBalBranch6Size_l xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) + FiniteMap.mkBalBranch6Size_r xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7814 -> 7869[label="",style="solid", color="black", weight=3]; 26.75/11.37 6864[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Pos xux620)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos xux620) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6864 -> 6886[label="",style="solid", color="black", weight=3]; 26.75/11.37 6865[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Neg xux620)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg xux620) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6865 -> 6887[label="",style="solid", color="black", weight=3]; 26.75/11.37 6866[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.sizeFM (FiniteMap.Branch xux1390 xux1391 xux1392 xux1393 xux1394))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6866 -> 6888[label="",style="solid", color="black", weight=3]; 26.75/11.37 8091[label="xux1394",fontsize=16,color="green",shape="box"];8092[label="xux1391",fontsize=16,color="green",shape="box"];8093[label="xux1390",fontsize=16,color="green",shape="box"];8094[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux1393",fontsize=16,color="burlywood",shape="box"];9436[label="xux1393/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8094 -> 9436[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9436 -> 8109[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9437[label="xux1393/FiniteMap.Branch xux13930 xux13931 xux13932 xux13933 xux13934",fontsize=10,color="white",style="solid",shape="box"];8094 -> 9437[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9437 -> 8110[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8095[label="xux1394",fontsize=16,color="green",shape="box"];8096[label="xux1394",fontsize=16,color="green",shape="box"];8097[label="xux1394",fontsize=16,color="green",shape="box"];8090[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 xux497 xux494 xux495 xux497 xux558 (primCmpInt (FiniteMap.mkBalBranch6Size_l xux494 xux495 xux561 xux497 + FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 xux497) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="triangle"];8090 -> 8111[label="",style="solid", color="black", weight=3]; 26.75/11.37 156[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (LT < LT)",fontsize=16,color="black",shape="box"];156 -> 187[label="",style="solid", color="black", weight=3]; 26.75/11.37 157[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT (LT == GT)",fontsize=16,color="black",shape="box"];157 -> 188[label="",style="solid", color="black", weight=3]; 26.75/11.37 158[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT (LT == GT)",fontsize=16,color="black",shape="box"];158 -> 189[label="",style="solid", color="black", weight=3]; 26.75/11.37 159[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT otherwise == GT)",fontsize=16,color="black",shape="box"];159 -> 190[label="",style="solid", color="black", weight=3]; 26.75/11.37 160[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (EQ < EQ)",fontsize=16,color="black",shape="box"];160 -> 191[label="",style="solid", color="black", weight=3]; 26.75/11.37 161[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ (LT == GT)",fontsize=16,color="black",shape="box"];161 -> 192[label="",style="solid", color="black", weight=3]; 26.75/11.37 162[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT otherwise == GT)",fontsize=16,color="black",shape="box"];162 -> 193[label="",style="solid", color="black", weight=3]; 26.75/11.37 163[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ otherwise == GT)",fontsize=16,color="black",shape="box"];163 -> 194[label="",style="solid", color="black", weight=3]; 26.75/11.37 164[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (GT < GT)",fontsize=16,color="black",shape="box"];164 -> 195[label="",style="solid", color="black", weight=3]; 26.75/11.37 165[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (LT > LT)",fontsize=16,color="black",shape="box"];165 -> 196[label="",style="solid", color="black", weight=3]; 26.75/11.37 166[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT (LT == LT)",fontsize=16,color="black",shape="box"];166 -> 197[label="",style="solid", color="black", weight=3]; 26.75/11.37 167[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT (LT == LT)",fontsize=16,color="black",shape="box"];167 -> 198[label="",style="solid", color="black", weight=3]; 26.75/11.37 168[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT otherwise == LT)",fontsize=16,color="black",shape="box"];168 -> 199[label="",style="solid", color="black", weight=3]; 26.75/11.37 169[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (EQ > EQ)",fontsize=16,color="black",shape="box"];169 -> 200[label="",style="solid", color="black", weight=3]; 26.75/11.37 170[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ (LT == LT)",fontsize=16,color="black",shape="box"];170 -> 201[label="",style="solid", color="black", weight=3]; 26.75/11.37 171[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT otherwise == LT)",fontsize=16,color="black",shape="box"];171 -> 202[label="",style="solid", color="black", weight=3]; 26.75/11.37 172[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ otherwise == LT)",fontsize=16,color="black",shape="box"];172 -> 203[label="",style="solid", color="black", weight=3]; 26.75/11.37 173[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (GT > GT)",fontsize=16,color="black",shape="box"];173 -> 204[label="",style="solid", color="black", weight=3]; 26.75/11.37 7815[label="compare2 LT LT (LT == LT) == LT",fontsize=16,color="black",shape="box"];7815 -> 7870[label="",style="solid", color="black", weight=3]; 26.75/11.37 7816[label="compare2 LT EQ (LT == EQ) == LT",fontsize=16,color="black",shape="box"];7816 -> 7871[label="",style="solid", color="black", weight=3]; 26.75/11.37 7817[label="compare2 LT GT (LT == GT) == LT",fontsize=16,color="black",shape="box"];7817 -> 7872[label="",style="solid", color="black", weight=3]; 26.75/11.37 7818[label="compare2 EQ LT (EQ == LT) == LT",fontsize=16,color="black",shape="box"];7818 -> 7873[label="",style="solid", color="black", weight=3]; 26.75/11.37 7819[label="compare2 EQ EQ (EQ == EQ) == LT",fontsize=16,color="black",shape="box"];7819 -> 7874[label="",style="solid", color="black", weight=3]; 26.75/11.37 7820[label="compare2 EQ GT (EQ == GT) == LT",fontsize=16,color="black",shape="box"];7820 -> 7875[label="",style="solid", color="black", weight=3]; 26.75/11.37 7821[label="compare2 GT LT (GT == LT) == LT",fontsize=16,color="black",shape="box"];7821 -> 7876[label="",style="solid", color="black", weight=3]; 26.75/11.37 7822[label="compare2 GT EQ (GT == EQ) == LT",fontsize=16,color="black",shape="box"];7822 -> 7877[label="",style="solid", color="black", weight=3]; 26.75/11.37 7823[label="compare2 GT GT (GT == GT) == LT",fontsize=16,color="black",shape="box"];7823 -> 7878[label="",style="solid", color="black", weight=3]; 26.75/11.37 7824[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7824 -> 7879[label="",style="solid", color="black", weight=3]; 26.75/11.37 7825[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7825 -> 7880[label="",style="solid", color="black", weight=3]; 26.75/11.37 7826[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7826 -> 7881[label="",style="solid", color="black", weight=3]; 26.75/11.37 7827[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7827 -> 7882[label="",style="solid", color="black", weight=3]; 26.75/11.37 7828[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7828 -> 7883[label="",style="solid", color="black", weight=3]; 26.75/11.37 7829[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7829 -> 7884[label="",style="solid", color="black", weight=3]; 26.75/11.37 7830[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7830 -> 7885[label="",style="solid", color="black", weight=3]; 26.75/11.37 7831[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7831 -> 7886[label="",style="solid", color="black", weight=3]; 26.75/11.37 7832[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7832 -> 7887[label="",style="solid", color="black", weight=3]; 26.75/11.37 7833[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7833 -> 7888[label="",style="solid", color="black", weight=3]; 26.75/11.37 7834[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7834 -> 7889[label="",style="solid", color="black", weight=3]; 26.75/11.37 7835[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7835 -> 7890[label="",style="solid", color="black", weight=3]; 26.75/11.37 7836[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7836 -> 7891[label="",style="solid", color="black", weight=3]; 26.75/11.37 7837[label="compare xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7837 -> 7892[label="",style="solid", color="black", weight=3]; 26.75/11.37 7838[label="FiniteMap.addToFM_C0 FiniteMap.addToFM0 xux494 xux495 xux496 xux497 xux498 xux499 xux500 otherwise",fontsize=16,color="black",shape="box"];7838 -> 7893[label="",style="solid", color="black", weight=3]; 26.75/11.37 7839[label="FiniteMap.mkBalBranch xux494 xux495 xux497 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500)",fontsize=16,color="black",shape="box"];7839 -> 7894[label="",style="solid", color="black", weight=3]; 26.75/11.37 7869[label="FiniteMap.mkBalBranch6MkBalBranch5 xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux476 xux477 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux480 (compare (FiniteMap.mkBalBranch6Size_l xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) + FiniteMap.mkBalBranch6Size_r xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];7869 -> 7909[label="",style="solid", color="black", weight=3]; 26.75/11.37 6886[label="primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux620)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos xux620) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="burlywood",shape="box"];9438[label="xux620/Succ xux6200",fontsize=10,color="white",style="solid",shape="box"];6886 -> 9438[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9438 -> 6909[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9439[label="xux620/Zero",fontsize=10,color="white",style="solid",shape="box"];6886 -> 9439[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9439 -> 6910[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 6887[label="primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux620)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg xux620) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="burlywood",shape="box"];9440[label="xux620/Succ xux6200",fontsize=10,color="white",style="solid",shape="box"];6887 -> 9440[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9440 -> 6911[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9441[label="xux620/Zero",fontsize=10,color="white",style="solid",shape="box"];6887 -> 9441[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9441 -> 6912[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 6888[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394 (primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux1392) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 xux1392 xux1393 xux1394) == LT)",fontsize=16,color="burlywood",shape="box"];9442[label="xux1392/Pos xux13920",fontsize=10,color="white",style="solid",shape="box"];6888 -> 9442[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9442 -> 6913[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9443[label="xux1392/Neg xux13920",fontsize=10,color="white",style="solid",shape="box"];6888 -> 9443[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9443 -> 6914[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8109[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8109 -> 8165[label="",style="solid", color="black", weight=3]; 26.75/11.37 8110[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux13930 xux13931 xux13932 xux13933 xux13934)",fontsize=16,color="black",shape="box"];8110 -> 8166[label="",style="solid", color="black", weight=3]; 26.75/11.37 8111[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 xux497 xux494 xux495 xux497 xux558 (primCmpInt (primPlusInt (FiniteMap.mkBalBranch6Size_l xux494 xux495 xux561 xux497) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 xux497)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8111 -> 8167[label="",style="solid", color="black", weight=3]; 26.75/11.37 187[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (compare LT LT == LT)",fontsize=16,color="black",shape="box"];187 -> 218[label="",style="solid", color="black", weight=3]; 26.75/11.37 188[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];188 -> 219[label="",style="solid", color="black", weight=3]; 26.75/11.37 189[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];189 -> 220[label="",style="solid", color="black", weight=3]; 26.75/11.37 190[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT True == GT)",fontsize=16,color="black",shape="box"];190 -> 221[label="",style="solid", color="black", weight=3]; 26.75/11.37 191[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (compare EQ EQ == LT)",fontsize=16,color="black",shape="box"];191 -> 222[label="",style="solid", color="black", weight=3]; 26.75/11.37 192[label="FiniteMap.splitGT2 GT xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];192 -> 223[label="",style="solid", color="black", weight=3]; 26.75/11.37 193[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT True == GT)",fontsize=16,color="black",shape="box"];193 -> 224[label="",style="solid", color="black", weight=3]; 26.75/11.37 194[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ True == GT)",fontsize=16,color="black",shape="box"];194 -> 225[label="",style="solid", color="black", weight=3]; 26.75/11.37 195[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (compare GT GT == LT)",fontsize=16,color="black",shape="box"];195 -> 226[label="",style="solid", color="black", weight=3]; 26.75/11.37 196[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (compare LT LT == GT)",fontsize=16,color="black",shape="box"];196 -> 227[label="",style="solid", color="black", weight=3]; 26.75/11.37 197[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];197 -> 228[label="",style="solid", color="black", weight=3]; 26.75/11.37 198[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];198 -> 229[label="",style="solid", color="black", weight=3]; 26.75/11.37 199[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT True == LT)",fontsize=16,color="black",shape="box"];199 -> 230[label="",style="solid", color="black", weight=3]; 26.75/11.37 200[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (compare EQ EQ == GT)",fontsize=16,color="black",shape="box"];200 -> 231[label="",style="solid", color="black", weight=3]; 26.75/11.37 201[label="FiniteMap.splitLT2 GT xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];201 -> 232[label="",style="solid", color="black", weight=3]; 26.75/11.37 202[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT True == LT)",fontsize=16,color="black",shape="box"];202 -> 233[label="",style="solid", color="black", weight=3]; 26.75/11.37 203[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ True == LT)",fontsize=16,color="black",shape="box"];203 -> 234[label="",style="solid", color="black", weight=3]; 26.75/11.37 204[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (compare GT GT == GT)",fontsize=16,color="black",shape="box"];204 -> 235[label="",style="solid", color="black", weight=3]; 26.75/11.37 7870[label="compare2 LT LT True == LT",fontsize=16,color="black",shape="box"];7870 -> 7910[label="",style="solid", color="black", weight=3]; 26.75/11.37 7871[label="compare2 LT EQ False == LT",fontsize=16,color="black",shape="box"];7871 -> 7911[label="",style="solid", color="black", weight=3]; 26.75/11.37 7872[label="compare2 LT GT False == LT",fontsize=16,color="black",shape="box"];7872 -> 7912[label="",style="solid", color="black", weight=3]; 26.75/11.37 7873[label="compare2 EQ LT False == LT",fontsize=16,color="black",shape="box"];7873 -> 7913[label="",style="solid", color="black", weight=3]; 26.75/11.37 7874[label="compare2 EQ EQ True == LT",fontsize=16,color="black",shape="box"];7874 -> 7914[label="",style="solid", color="black", weight=3]; 26.75/11.37 7875[label="compare2 EQ GT False == LT",fontsize=16,color="black",shape="box"];7875 -> 7915[label="",style="solid", color="black", weight=3]; 26.75/11.37 7876[label="compare2 GT LT False == LT",fontsize=16,color="black",shape="box"];7876 -> 7916[label="",style="solid", color="black", weight=3]; 26.75/11.37 7877[label="compare2 GT EQ False == LT",fontsize=16,color="black",shape="box"];7877 -> 7917[label="",style="solid", color="black", weight=3]; 26.75/11.37 7878[label="compare2 GT GT True == LT",fontsize=16,color="black",shape="box"];7878 -> 7918[label="",style="solid", color="black", weight=3]; 26.75/11.37 7879[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7879 -> 7919[label="",style="solid", color="black", weight=3]; 26.75/11.37 7880[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7880 -> 7920[label="",style="solid", color="black", weight=3]; 26.75/11.37 7881[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7881 -> 7921[label="",style="solid", color="black", weight=3]; 26.75/11.37 7882[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7882 -> 7922[label="",style="solid", color="black", weight=3]; 26.75/11.37 7883[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7883 -> 7923[label="",style="solid", color="black", weight=3]; 26.75/11.37 7884[label="primCmpInt xux481 xux476 == GT",fontsize=16,color="burlywood",shape="box"];9444[label="xux481/Pos xux4810",fontsize=10,color="white",style="solid",shape="box"];7884 -> 9444[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9444 -> 7924[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9445[label="xux481/Neg xux4810",fontsize=10,color="white",style="solid",shape="box"];7884 -> 9445[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9445 -> 7925[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7885[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7885 -> 7926[label="",style="solid", color="black", weight=3]; 26.75/11.37 7886[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7886 -> 7927[label="",style="solid", color="black", weight=3]; 26.75/11.37 7887[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7887 -> 7928[label="",style="solid", color="black", weight=3]; 26.75/11.37 7888[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7888 -> 7929[label="",style="solid", color="black", weight=3]; 26.75/11.37 7889[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7889 -> 7930[label="",style="solid", color="black", weight=3]; 26.75/11.37 7890[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7890 -> 7931[label="",style="solid", color="black", weight=3]; 26.75/11.37 7891[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7891 -> 7932[label="",style="solid", color="black", weight=3]; 26.75/11.37 7892[label="compare3 xux481 xux476 == GT",fontsize=16,color="black",shape="box"];7892 -> 7933[label="",style="solid", color="black", weight=3]; 26.75/11.37 7893[label="FiniteMap.addToFM_C0 FiniteMap.addToFM0 xux494 xux495 xux496 xux497 xux498 xux499 xux500 True",fontsize=16,color="black",shape="box"];7893 -> 7934[label="",style="solid", color="black", weight=3]; 26.75/11.37 7894[label="FiniteMap.mkBalBranch6 xux494 xux495 xux497 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500)",fontsize=16,color="black",shape="box"];7894 -> 7935[label="",style="solid", color="black", weight=3]; 26.75/11.37 7909 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7909[label="FiniteMap.mkBalBranch6MkBalBranch5 xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux476 xux477 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) xux480 (primCmpInt (FiniteMap.mkBalBranch6Size_l xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482) + FiniteMap.mkBalBranch6Size_r xux476 xux477 xux480 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];7909 -> 8098[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8099[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8100[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8101[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8102[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8103[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7909 -> 8104[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6909[label="primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ xux6200))) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6909 -> 6939[label="",style="solid", color="black", weight=3]; 26.75/11.37 6910[label="primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) Zero)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos Zero) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6910 -> 6940[label="",style="solid", color="black", weight=3]; 26.75/11.37 6911[label="primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ xux6200))) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6911 -> 6941[label="",style="solid", color="black", weight=3]; 26.75/11.37 6912[label="primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) Zero)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg Zero) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6912 -> 6942[label="",style="solid", color="black", weight=3]; 26.75/11.37 6913[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394 (primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Pos xux13920)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6913 -> 6943[label="",style="solid", color="black", weight=3]; 26.75/11.37 6914[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394 (primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Neg xux13920)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];6914 -> 6944[label="",style="solid", color="black", weight=3]; 26.75/11.37 8165[label="FiniteMap.mkVBalBranch4 xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8165 -> 8223[label="",style="solid", color="black", weight=3]; 26.75/11.37 8166[label="FiniteMap.mkVBalBranch3 xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux13930 xux13931 xux13932 xux13933 xux13934)",fontsize=16,color="black",shape="triangle"];8166 -> 8224[label="",style="solid", color="black", weight=3]; 26.75/11.37 8167[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 xux497 xux494 xux495 xux497 xux558 (primCmpInt (primPlusInt (FiniteMap.sizeFM xux497) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 xux497)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="burlywood",shape="box"];9446[label="xux497/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8167 -> 9446[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9446 -> 8225[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9447[label="xux497/FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974",fontsize=10,color="white",style="solid",shape="box"];8167 -> 9447[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9447 -> 8226[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 218[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (compare3 LT LT == LT)",fontsize=16,color="black",shape="box"];218 -> 249[label="",style="solid", color="black", weight=3]; 26.75/11.37 219[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (LT < EQ)",fontsize=16,color="black",shape="box"];219 -> 250[label="",style="solid", color="black", weight=3]; 26.75/11.37 220[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (LT < GT)",fontsize=16,color="black",shape="box"];220 -> 251[label="",style="solid", color="black", weight=3]; 26.75/11.37 221[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ (GT == GT)",fontsize=16,color="black",shape="box"];221 -> 252[label="",style="solid", color="black", weight=3]; 26.75/11.37 222[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (compare3 EQ EQ == LT)",fontsize=16,color="black",shape="box"];222 -> 253[label="",style="solid", color="black", weight=3]; 26.75/11.37 223[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (EQ < GT)",fontsize=16,color="black",shape="box"];223 -> 254[label="",style="solid", color="black", weight=3]; 26.75/11.37 224[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT (GT == GT)",fontsize=16,color="black",shape="box"];224 -> 255[label="",style="solid", color="black", weight=3]; 26.75/11.37 225[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT (GT == GT)",fontsize=16,color="black",shape="box"];225 -> 256[label="",style="solid", color="black", weight=3]; 26.75/11.37 226[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (compare3 GT GT == LT)",fontsize=16,color="black",shape="box"];226 -> 257[label="",style="solid", color="black", weight=3]; 26.75/11.37 227[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (compare3 LT LT == GT)",fontsize=16,color="black",shape="box"];227 -> 258[label="",style="solid", color="black", weight=3]; 26.75/11.37 228[label="FiniteMap.splitLT xux33 LT",fontsize=16,color="burlywood",shape="triangle"];9448[label="xux33/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];228 -> 9448[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9448 -> 259[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9449[label="xux33/FiniteMap.Branch xux330 xux331 xux332 xux333 xux334",fontsize=10,color="white",style="solid",shape="box"];228 -> 9449[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9449 -> 260[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 229 -> 228[label="",style="dashed", color="red", weight=0]; 26.75/11.37 229[label="FiniteMap.splitLT xux33 LT",fontsize=16,color="magenta"];230[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ (GT == LT)",fontsize=16,color="black",shape="box"];230 -> 261[label="",style="solid", color="black", weight=3]; 26.75/11.37 231[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (compare3 EQ EQ == GT)",fontsize=16,color="black",shape="box"];231 -> 262[label="",style="solid", color="black", weight=3]; 26.75/11.37 232[label="FiniteMap.splitLT xux33 EQ",fontsize=16,color="burlywood",shape="triangle"];9450[label="xux33/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];232 -> 9450[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9450 -> 263[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9451[label="xux33/FiniteMap.Branch xux330 xux331 xux332 xux333 xux334",fontsize=10,color="white",style="solid",shape="box"];232 -> 9451[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9451 -> 264[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 233[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT (GT == LT)",fontsize=16,color="black",shape="box"];233 -> 265[label="",style="solid", color="black", weight=3]; 26.75/11.37 234[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT (GT == LT)",fontsize=16,color="black",shape="box"];234 -> 266[label="",style="solid", color="black", weight=3]; 26.75/11.37 235[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (compare3 GT GT == GT)",fontsize=16,color="black",shape="box"];235 -> 267[label="",style="solid", color="black", weight=3]; 26.75/11.37 7910 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7910[label="EQ == LT",fontsize=16,color="magenta"];7911[label="compare1 LT EQ (LT <= EQ) == LT",fontsize=16,color="black",shape="box"];7911 -> 7952[label="",style="solid", color="black", weight=3]; 26.75/11.37 7912[label="compare1 LT GT (LT <= GT) == LT",fontsize=16,color="black",shape="box"];7912 -> 7953[label="",style="solid", color="black", weight=3]; 26.75/11.37 7913[label="compare1 EQ LT (EQ <= LT) == LT",fontsize=16,color="black",shape="box"];7913 -> 7954[label="",style="solid", color="black", weight=3]; 26.75/11.37 7914 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7914[label="EQ == LT",fontsize=16,color="magenta"];7915[label="compare1 EQ GT (EQ <= GT) == LT",fontsize=16,color="black",shape="box"];7915 -> 7955[label="",style="solid", color="black", weight=3]; 26.75/11.37 7916[label="compare1 GT LT (GT <= LT) == LT",fontsize=16,color="black",shape="box"];7916 -> 7956[label="",style="solid", color="black", weight=3]; 26.75/11.37 7917[label="compare1 GT EQ (GT <= EQ) == LT",fontsize=16,color="black",shape="box"];7917 -> 7957[label="",style="solid", color="black", weight=3]; 26.75/11.37 7918 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7918[label="EQ == LT",fontsize=16,color="magenta"];7919[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7919 -> 7958[label="",style="solid", color="black", weight=3]; 26.75/11.37 7920[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7920 -> 7959[label="",style="solid", color="black", weight=3]; 26.75/11.37 7921[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7921 -> 7960[label="",style="solid", color="black", weight=3]; 26.75/11.37 7922[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7922 -> 7961[label="",style="solid", color="black", weight=3]; 26.75/11.37 7923[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7923 -> 7962[label="",style="solid", color="black", weight=3]; 26.75/11.37 7924[label="primCmpInt (Pos xux4810) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9452[label="xux4810/Succ xux48100",fontsize=10,color="white",style="solid",shape="box"];7924 -> 9452[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9452 -> 7963[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9453[label="xux4810/Zero",fontsize=10,color="white",style="solid",shape="box"];7924 -> 9453[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9453 -> 7964[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7925[label="primCmpInt (Neg xux4810) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9454[label="xux4810/Succ xux48100",fontsize=10,color="white",style="solid",shape="box"];7925 -> 9454[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9454 -> 7965[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9455[label="xux4810/Zero",fontsize=10,color="white",style="solid",shape="box"];7925 -> 9455[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9455 -> 7966[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7926[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7926 -> 7967[label="",style="solid", color="black", weight=3]; 26.75/11.37 7927[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7927 -> 7968[label="",style="solid", color="black", weight=3]; 26.75/11.37 7928[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="burlywood",shape="box"];9456[label="xux481/LT",fontsize=10,color="white",style="solid",shape="box"];7928 -> 9456[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9456 -> 7969[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9457[label="xux481/EQ",fontsize=10,color="white",style="solid",shape="box"];7928 -> 9457[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9457 -> 7970[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9458[label="xux481/GT",fontsize=10,color="white",style="solid",shape="box"];7928 -> 9458[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9458 -> 7971[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7929[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7929 -> 7972[label="",style="solid", color="black", weight=3]; 26.75/11.37 7930[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7930 -> 7973[label="",style="solid", color="black", weight=3]; 26.75/11.37 7931[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7931 -> 7974[label="",style="solid", color="black", weight=3]; 26.75/11.37 7932[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7932 -> 7975[label="",style="solid", color="black", weight=3]; 26.75/11.37 7933[label="compare2 xux481 xux476 (xux481 == xux476) == GT",fontsize=16,color="black",shape="box"];7933 -> 7976[label="",style="solid", color="black", weight=3]; 26.75/11.37 7934[label="FiniteMap.Branch xux499 (FiniteMap.addToFM0 xux495 xux500) xux496 xux497 xux498",fontsize=16,color="green",shape="box"];7934 -> 7977[label="",style="dashed", color="green", weight=3]; 26.75/11.37 7935[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 xux494 xux495 xux497 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) (FiniteMap.mkBalBranch6Size_l xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 + FiniteMap.mkBalBranch6Size_r xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7935 -> 7978[label="",style="solid", color="black", weight=3]; 26.75/11.37 8098[label="xux480",fontsize=16,color="green",shape="box"];8099[label="xux477",fontsize=16,color="green",shape="box"];8100[label="xux476",fontsize=16,color="green",shape="box"];8101[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux479 xux481 xux482",fontsize=16,color="burlywood",shape="triangle"];9459[label="xux479/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8101 -> 9459[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9459 -> 8112[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9460[label="xux479/FiniteMap.Branch xux4790 xux4791 xux4792 xux4793 xux4794",fontsize=10,color="white",style="solid",shape="box"];8101 -> 9460[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9460 -> 8113[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8102[label="xux480",fontsize=16,color="green",shape="box"];8103[label="xux480",fontsize=16,color="green",shape="box"];8104[label="xux480",fontsize=16,color="green",shape="box"];6939 -> 7065[label="",style="dashed", color="red", weight=0]; 26.75/11.37 6939[label="primCmpInt (Pos (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)) (Succ xux6200))) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="magenta"];6939 -> 7066[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6940[label="primCmpInt (Pos Zero) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos Zero) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6940 -> 7067[label="",style="solid", color="black", weight=3]; 26.75/11.37 6941 -> 7068[label="",style="dashed", color="red", weight=0]; 26.75/11.37 6941[label="primCmpInt (Neg (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)) (Succ xux6200))) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="magenta"];6941 -> 7069[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 6942[label="primCmpInt (Neg Zero) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg Zero) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];6942 -> 7070[label="",style="solid", color="black", weight=3]; 26.75/11.37 6943[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394 (primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux13920)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos xux13920) xux1393 xux1394) == LT)",fontsize=16,color="burlywood",shape="box"];9461[label="xux13920/Succ xux139200",fontsize=10,color="white",style="solid",shape="box"];6943 -> 9461[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9461 -> 7071[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9462[label="xux13920/Zero",fontsize=10,color="white",style="solid",shape="box"];6943 -> 9462[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9462 -> 7072[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 6944[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394 (primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux13920)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg xux13920) xux1393 xux1394) == LT)",fontsize=16,color="burlywood",shape="box"];9463[label="xux13920/Succ xux139200",fontsize=10,color="white",style="solid",shape="box"];6944 -> 9463[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9463 -> 7073[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9464[label="xux13920/Zero",fontsize=10,color="white",style="solid",shape="box"];6944 -> 9464[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9464 -> 7074[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8223[label="FiniteMap.addToFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux141 xux142",fontsize=16,color="black",shape="triangle"];8223 -> 8256[label="",style="solid", color="black", weight=3]; 26.75/11.37 8224 -> 4968[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8224[label="FiniteMap.mkVBalBranch3MkVBalBranch2 xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934 (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934 < FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934)",fontsize=16,color="magenta"];8224 -> 8257[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8224 -> 8258[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8224 -> 8259[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8224 -> 8260[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8224 -> 8261[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8224 -> 8262[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8225[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 (primCmpInt (primPlusInt (FiniteMap.sizeFM FiniteMap.EmptyFM) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 FiniteMap.EmptyFM)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8225 -> 8263[label="",style="solid", color="black", weight=3]; 26.75/11.37 8226[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974) xux558 (primCmpInt (primPlusInt (FiniteMap.sizeFM (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974)) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974))) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8226 -> 8264[label="",style="solid", color="black", weight=3]; 26.75/11.37 249[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT (LT == LT) == LT)",fontsize=16,color="black",shape="box"];249 -> 281[label="",style="solid", color="black", weight=3]; 26.75/11.37 250[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare LT EQ == LT)",fontsize=16,color="black",shape="box"];250 -> 282[label="",style="solid", color="black", weight=3]; 26.75/11.37 251[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare LT GT == LT)",fontsize=16,color="black",shape="box"];251 -> 283[label="",style="solid", color="black", weight=3]; 26.75/11.37 252[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];252 -> 284[label="",style="solid", color="black", weight=3]; 26.75/11.37 253[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ (EQ == EQ) == LT)",fontsize=16,color="black",shape="box"];253 -> 285[label="",style="solid", color="black", weight=3]; 26.75/11.37 254[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare EQ GT == LT)",fontsize=16,color="black",shape="box"];254 -> 286[label="",style="solid", color="black", weight=3]; 26.75/11.37 255[label="FiniteMap.splitGT2 LT xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];255 -> 287[label="",style="solid", color="black", weight=3]; 26.75/11.37 256[label="FiniteMap.splitGT2 EQ xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];256 -> 288[label="",style="solid", color="black", weight=3]; 26.75/11.37 257[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT (GT == GT) == LT)",fontsize=16,color="black",shape="box"];257 -> 289[label="",style="solid", color="black", weight=3]; 26.75/11.37 258[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT (LT == LT) == GT)",fontsize=16,color="black",shape="box"];258 -> 290[label="",style="solid", color="black", weight=3]; 26.75/11.37 259[label="FiniteMap.splitLT FiniteMap.EmptyFM LT",fontsize=16,color="black",shape="box"];259 -> 291[label="",style="solid", color="black", weight=3]; 26.75/11.37 260[label="FiniteMap.splitLT (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) LT",fontsize=16,color="black",shape="box"];260 -> 292[label="",style="solid", color="black", weight=3]; 26.75/11.37 261[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];261 -> 293[label="",style="solid", color="black", weight=3]; 26.75/11.37 262[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ (EQ == EQ) == GT)",fontsize=16,color="black",shape="box"];262 -> 294[label="",style="solid", color="black", weight=3]; 26.75/11.37 263[label="FiniteMap.splitLT FiniteMap.EmptyFM EQ",fontsize=16,color="black",shape="box"];263 -> 295[label="",style="solid", color="black", weight=3]; 26.75/11.37 264[label="FiniteMap.splitLT (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) EQ",fontsize=16,color="black",shape="box"];264 -> 296[label="",style="solid", color="black", weight=3]; 26.75/11.37 265[label="FiniteMap.splitLT2 LT xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];265 -> 297[label="",style="solid", color="black", weight=3]; 26.75/11.37 266[label="FiniteMap.splitLT2 EQ xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];266 -> 298[label="",style="solid", color="black", weight=3]; 26.75/11.37 267[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT (GT == GT) == GT)",fontsize=16,color="black",shape="box"];267 -> 299[label="",style="solid", color="black", weight=3]; 26.75/11.37 7240[label="EQ == LT",fontsize=16,color="black",shape="triangle"];7240 -> 7275[label="",style="solid", color="black", weight=3]; 26.75/11.37 7952[label="compare1 LT EQ True == LT",fontsize=16,color="black",shape="box"];7952 -> 8000[label="",style="solid", color="black", weight=3]; 26.75/11.37 7953[label="compare1 LT GT True == LT",fontsize=16,color="black",shape="box"];7953 -> 8001[label="",style="solid", color="black", weight=3]; 26.75/11.37 7954[label="compare1 EQ LT False == LT",fontsize=16,color="black",shape="box"];7954 -> 8002[label="",style="solid", color="black", weight=3]; 26.75/11.37 7955[label="compare1 EQ GT True == LT",fontsize=16,color="black",shape="box"];7955 -> 8003[label="",style="solid", color="black", weight=3]; 26.75/11.37 7956[label="compare1 GT LT False == LT",fontsize=16,color="black",shape="box"];7956 -> 8004[label="",style="solid", color="black", weight=3]; 26.75/11.37 7957[label="compare1 GT EQ False == LT",fontsize=16,color="black",shape="box"];7957 -> 8005[label="",style="solid", color="black", weight=3]; 26.75/11.37 7958[label="error []",fontsize=16,color="red",shape="box"];7959[label="error []",fontsize=16,color="red",shape="box"];7960[label="error []",fontsize=16,color="red",shape="box"];7961[label="error []",fontsize=16,color="red",shape="box"];7962[label="error []",fontsize=16,color="red",shape="box"];7963[label="primCmpInt (Pos (Succ xux48100)) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9465[label="xux476/Pos xux4760",fontsize=10,color="white",style="solid",shape="box"];7963 -> 9465[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9465 -> 8006[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9466[label="xux476/Neg xux4760",fontsize=10,color="white",style="solid",shape="box"];7963 -> 9466[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9466 -> 8007[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7964[label="primCmpInt (Pos Zero) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9467[label="xux476/Pos xux4760",fontsize=10,color="white",style="solid",shape="box"];7964 -> 9467[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9467 -> 8008[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9468[label="xux476/Neg xux4760",fontsize=10,color="white",style="solid",shape="box"];7964 -> 9468[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9468 -> 8009[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7965[label="primCmpInt (Neg (Succ xux48100)) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9469[label="xux476/Pos xux4760",fontsize=10,color="white",style="solid",shape="box"];7965 -> 9469[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9469 -> 8010[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9470[label="xux476/Neg xux4760",fontsize=10,color="white",style="solid",shape="box"];7965 -> 9470[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9470 -> 8011[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7966[label="primCmpInt (Neg Zero) xux476 == GT",fontsize=16,color="burlywood",shape="box"];9471[label="xux476/Pos xux4760",fontsize=10,color="white",style="solid",shape="box"];7966 -> 9471[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9471 -> 8012[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9472[label="xux476/Neg xux4760",fontsize=10,color="white",style="solid",shape="box"];7966 -> 9472[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9472 -> 8013[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7967[label="error []",fontsize=16,color="red",shape="box"];7968[label="error []",fontsize=16,color="red",shape="box"];7969[label="compare2 LT xux476 (LT == xux476) == GT",fontsize=16,color="burlywood",shape="box"];9473[label="xux476/LT",fontsize=10,color="white",style="solid",shape="box"];7969 -> 9473[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9473 -> 8014[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9474[label="xux476/EQ",fontsize=10,color="white",style="solid",shape="box"];7969 -> 9474[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9474 -> 8015[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9475[label="xux476/GT",fontsize=10,color="white",style="solid",shape="box"];7969 -> 9475[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9475 -> 8016[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7970[label="compare2 EQ xux476 (EQ == xux476) == GT",fontsize=16,color="burlywood",shape="box"];9476[label="xux476/LT",fontsize=10,color="white",style="solid",shape="box"];7970 -> 9476[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9476 -> 8017[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9477[label="xux476/EQ",fontsize=10,color="white",style="solid",shape="box"];7970 -> 9477[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9477 -> 8018[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9478[label="xux476/GT",fontsize=10,color="white",style="solid",shape="box"];7970 -> 9478[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9478 -> 8019[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7971[label="compare2 GT xux476 (GT == xux476) == GT",fontsize=16,color="burlywood",shape="box"];9479[label="xux476/LT",fontsize=10,color="white",style="solid",shape="box"];7971 -> 9479[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9479 -> 8020[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9480[label="xux476/EQ",fontsize=10,color="white",style="solid",shape="box"];7971 -> 9480[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9480 -> 8021[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9481[label="xux476/GT",fontsize=10,color="white",style="solid",shape="box"];7971 -> 9481[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9481 -> 8022[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7972[label="error []",fontsize=16,color="red",shape="box"];7973[label="error []",fontsize=16,color="red",shape="box"];7974[label="error []",fontsize=16,color="red",shape="box"];7975[label="error []",fontsize=16,color="red",shape="box"];7976[label="error []",fontsize=16,color="red",shape="box"];7977[label="FiniteMap.addToFM0 xux495 xux500",fontsize=16,color="black",shape="box"];7977 -> 8023[label="",style="solid", color="black", weight=3]; 26.75/11.37 7978[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 xux494 xux495 xux497 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) (compare (FiniteMap.mkBalBranch6Size_l xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 + FiniteMap.mkBalBranch6Size_r xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];7978 -> 8024[label="",style="solid", color="black", weight=3]; 26.75/11.37 8112[label="FiniteMap.addToFM_C FiniteMap.addToFM0 FiniteMap.EmptyFM xux481 xux482",fontsize=16,color="black",shape="box"];8112 -> 8168[label="",style="solid", color="black", weight=3]; 26.75/11.37 8113[label="FiniteMap.addToFM_C FiniteMap.addToFM0 (FiniteMap.Branch xux4790 xux4791 xux4792 xux4793 xux4794) xux481 xux482",fontsize=16,color="black",shape="box"];8113 -> 8169[label="",style="solid", color="black", weight=3]; 26.75/11.37 7066 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7066[label="primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];7066 -> 7077[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7066 -> 7078[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7065[label="primCmpInt (Pos xux447) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="burlywood",shape="triangle"];9482[label="xux447/Succ xux4470",fontsize=10,color="white",style="solid",shape="box"];7065 -> 9482[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9482 -> 7079[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9483[label="xux447/Zero",fontsize=10,color="white",style="solid",shape="box"];7065 -> 9483[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9483 -> 7080[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7067[label="primCmpInt (Pos Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="black",shape="box"];7067 -> 7081[label="",style="solid", color="black", weight=3]; 26.75/11.37 7069 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7069[label="primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];7069 -> 7082[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7069 -> 7083[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7068[label="primCmpInt (Neg xux448) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="burlywood",shape="triangle"];9484[label="xux448/Succ xux4480",fontsize=10,color="white",style="solid",shape="box"];7068 -> 9484[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9484 -> 7084[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9485[label="xux448/Zero",fontsize=10,color="white",style="solid",shape="box"];7068 -> 9485[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9485 -> 7085[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7070[label="primCmpInt (Neg Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="black",shape="box"];7070 -> 7119[label="",style="solid", color="black", weight=3]; 26.75/11.37 7071[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 (primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];7071 -> 7120[label="",style="solid", color="black", weight=3]; 26.75/11.37 7072[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 (primCmpInt (Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) Zero)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];7072 -> 7121[label="",style="solid", color="black", weight=3]; 26.75/11.37 7073[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 (primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];7073 -> 7122[label="",style="solid", color="black", weight=3]; 26.75/11.37 7074[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 (primCmpInt (Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) Zero)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394) == LT)",fontsize=16,color="black",shape="box"];7074 -> 7123[label="",style="solid", color="black", weight=3]; 26.75/11.37 8256 -> 8101[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8256[label="FiniteMap.addToFM_C FiniteMap.addToFM0 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) xux141 xux142",fontsize=16,color="magenta"];8256 -> 8293[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8256 -> 8294[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8256 -> 8295[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8257[label="xux13932",fontsize=16,color="green",shape="box"];8258[label="xux13934",fontsize=16,color="green",shape="box"];8259[label="xux13933",fontsize=16,color="green",shape="box"];8260[label="FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934 < FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934",fontsize=16,color="black",shape="box"];8260 -> 8296[label="",style="solid", color="black", weight=3]; 26.75/11.37 8261[label="xux13931",fontsize=16,color="green",shape="box"];8262[label="xux13930",fontsize=16,color="green",shape="box"];8263 -> 8469[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8263[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 (primCmpInt (primPlusInt (Pos Zero) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 FiniteMap.EmptyFM)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8263 -> 8470[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8264[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974) xux558 (primCmpInt (primPlusInt xux4972 (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 (FiniteMap.Branch xux4970 xux4971 xux4972 xux4973 xux4974))) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="burlywood",shape="box"];9486[label="xux4972/Pos xux49720",fontsize=10,color="white",style="solid",shape="box"];8264 -> 9486[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9486 -> 8298[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9487[label="xux4972/Neg xux49720",fontsize=10,color="white",style="solid",shape="box"];8264 -> 9487[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9487 -> 8299[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 281[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT True == LT)",fontsize=16,color="black",shape="box"];281 -> 315[label="",style="solid", color="black", weight=3]; 26.75/11.37 282[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare3 LT EQ == LT)",fontsize=16,color="black",shape="box"];282 -> 316[label="",style="solid", color="black", weight=3]; 26.75/11.37 283[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare3 LT GT == LT)",fontsize=16,color="black",shape="box"];283 -> 317[label="",style="solid", color="black", weight=3]; 26.75/11.37 284[label="FiniteMap.splitGT xux34 EQ",fontsize=16,color="burlywood",shape="triangle"];9488[label="xux34/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];284 -> 9488[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9488 -> 318[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9489[label="xux34/FiniteMap.Branch xux340 xux341 xux342 xux343 xux344",fontsize=10,color="white",style="solid",shape="box"];284 -> 9489[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9489 -> 319[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 285[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ True == LT)",fontsize=16,color="black",shape="box"];285 -> 320[label="",style="solid", color="black", weight=3]; 26.75/11.37 286[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare3 EQ GT == LT)",fontsize=16,color="black",shape="box"];286 -> 321[label="",style="solid", color="black", weight=3]; 26.75/11.37 287[label="FiniteMap.splitGT xux34 GT",fontsize=16,color="burlywood",shape="triangle"];9490[label="xux34/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];287 -> 9490[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9490 -> 322[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9491[label="xux34/FiniteMap.Branch xux340 xux341 xux342 xux343 xux344",fontsize=10,color="white",style="solid",shape="box"];287 -> 9491[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9491 -> 323[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 288 -> 287[label="",style="dashed", color="red", weight=0]; 26.75/11.37 288[label="FiniteMap.splitGT xux34 GT",fontsize=16,color="magenta"];289[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT True == LT)",fontsize=16,color="black",shape="box"];289 -> 324[label="",style="solid", color="black", weight=3]; 26.75/11.37 290[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (compare2 LT LT True == GT)",fontsize=16,color="black",shape="box"];290 -> 325[label="",style="solid", color="black", weight=3]; 26.75/11.37 291[label="FiniteMap.splitLT4 FiniteMap.EmptyFM LT",fontsize=16,color="black",shape="box"];291 -> 326[label="",style="solid", color="black", weight=3]; 26.75/11.37 292 -> 27[label="",style="dashed", color="red", weight=0]; 26.75/11.37 292[label="FiniteMap.splitLT3 (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) LT",fontsize=16,color="magenta"];292 -> 327[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 292 -> 328[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 292 -> 329[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 292 -> 330[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 292 -> 331[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 292 -> 332[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 293[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (EQ > LT)",fontsize=16,color="black",shape="box"];293 -> 333[label="",style="solid", color="black", weight=3]; 26.75/11.37 294[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (compare2 EQ EQ True == GT)",fontsize=16,color="black",shape="box"];294 -> 334[label="",style="solid", color="black", weight=3]; 26.75/11.37 295[label="FiniteMap.splitLT4 FiniteMap.EmptyFM EQ",fontsize=16,color="black",shape="box"];295 -> 335[label="",style="solid", color="black", weight=3]; 26.75/11.37 296 -> 27[label="",style="dashed", color="red", weight=0]; 26.75/11.37 296[label="FiniteMap.splitLT3 (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) EQ",fontsize=16,color="magenta"];296 -> 336[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 296 -> 337[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 296 -> 338[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 296 -> 339[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 296 -> 340[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 296 -> 341[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 297[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (GT > LT)",fontsize=16,color="black",shape="box"];297 -> 342[label="",style="solid", color="black", weight=3]; 26.75/11.37 298[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (GT > EQ)",fontsize=16,color="black",shape="box"];298 -> 343[label="",style="solid", color="black", weight=3]; 26.75/11.37 299[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (compare2 GT GT True == GT)",fontsize=16,color="black",shape="box"];299 -> 344[label="",style="solid", color="black", weight=3]; 26.75/11.37 7275[label="False",fontsize=16,color="green",shape="box"];8000 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8000[label="LT == LT",fontsize=16,color="magenta"];8001 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8001[label="LT == LT",fontsize=16,color="magenta"];8002[label="compare0 EQ LT otherwise == LT",fontsize=16,color="black",shape="box"];8002 -> 8066[label="",style="solid", color="black", weight=3]; 26.75/11.37 8003 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8003[label="LT == LT",fontsize=16,color="magenta"];8004[label="compare0 GT LT otherwise == LT",fontsize=16,color="black",shape="box"];8004 -> 8067[label="",style="solid", color="black", weight=3]; 26.75/11.37 8005[label="compare0 GT EQ otherwise == LT",fontsize=16,color="black",shape="box"];8005 -> 8068[label="",style="solid", color="black", weight=3]; 26.75/11.37 8006[label="primCmpInt (Pos (Succ xux48100)) (Pos xux4760) == GT",fontsize=16,color="black",shape="box"];8006 -> 8069[label="",style="solid", color="black", weight=3]; 26.75/11.37 8007[label="primCmpInt (Pos (Succ xux48100)) (Neg xux4760) == GT",fontsize=16,color="black",shape="box"];8007 -> 8070[label="",style="solid", color="black", weight=3]; 26.75/11.37 8008[label="primCmpInt (Pos Zero) (Pos xux4760) == GT",fontsize=16,color="burlywood",shape="box"];9492[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8008 -> 9492[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9492 -> 8071[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9493[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8008 -> 9493[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9493 -> 8072[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8009[label="primCmpInt (Pos Zero) (Neg xux4760) == GT",fontsize=16,color="burlywood",shape="box"];9494[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8009 -> 9494[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9494 -> 8073[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9495[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8009 -> 9495[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9495 -> 8074[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8010[label="primCmpInt (Neg (Succ xux48100)) (Pos xux4760) == GT",fontsize=16,color="black",shape="box"];8010 -> 8075[label="",style="solid", color="black", weight=3]; 26.75/11.37 8011[label="primCmpInt (Neg (Succ xux48100)) (Neg xux4760) == GT",fontsize=16,color="black",shape="box"];8011 -> 8076[label="",style="solid", color="black", weight=3]; 26.75/11.37 8012[label="primCmpInt (Neg Zero) (Pos xux4760) == GT",fontsize=16,color="burlywood",shape="box"];9496[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8012 -> 9496[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9496 -> 8077[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9497[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8012 -> 9497[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9497 -> 8078[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8013[label="primCmpInt (Neg Zero) (Neg xux4760) == GT",fontsize=16,color="burlywood",shape="box"];9498[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8013 -> 9498[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9498 -> 8079[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9499[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8013 -> 9499[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9499 -> 8080[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8014[label="compare2 LT LT (LT == LT) == GT",fontsize=16,color="black",shape="box"];8014 -> 8081[label="",style="solid", color="black", weight=3]; 26.75/11.37 8015[label="compare2 LT EQ (LT == EQ) == GT",fontsize=16,color="black",shape="box"];8015 -> 8082[label="",style="solid", color="black", weight=3]; 26.75/11.37 8016[label="compare2 LT GT (LT == GT) == GT",fontsize=16,color="black",shape="box"];8016 -> 8083[label="",style="solid", color="black", weight=3]; 26.75/11.37 8017[label="compare2 EQ LT (EQ == LT) == GT",fontsize=16,color="black",shape="box"];8017 -> 8084[label="",style="solid", color="black", weight=3]; 26.75/11.37 8018[label="compare2 EQ EQ (EQ == EQ) == GT",fontsize=16,color="black",shape="box"];8018 -> 8085[label="",style="solid", color="black", weight=3]; 26.75/11.37 8019[label="compare2 EQ GT (EQ == GT) == GT",fontsize=16,color="black",shape="box"];8019 -> 8086[label="",style="solid", color="black", weight=3]; 26.75/11.37 8020[label="compare2 GT LT (GT == LT) == GT",fontsize=16,color="black",shape="box"];8020 -> 8087[label="",style="solid", color="black", weight=3]; 26.75/11.37 8021[label="compare2 GT EQ (GT == EQ) == GT",fontsize=16,color="black",shape="box"];8021 -> 8088[label="",style="solid", color="black", weight=3]; 26.75/11.37 8022[label="compare2 GT GT (GT == GT) == GT",fontsize=16,color="black",shape="box"];8022 -> 8089[label="",style="solid", color="black", weight=3]; 26.75/11.37 8023[label="xux500",fontsize=16,color="green",shape="box"];8024 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8024[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 xux494 xux495 xux497 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) (primCmpInt (FiniteMap.mkBalBranch6Size_l xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497 + FiniteMap.mkBalBranch6Size_r xux494 xux495 (FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500) xux497) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8024 -> 8105[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8024 -> 8106[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8024 -> 8107[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8024 -> 8108[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8168[label="FiniteMap.addToFM_C4 FiniteMap.addToFM0 FiniteMap.EmptyFM xux481 xux482",fontsize=16,color="black",shape="box"];8168 -> 8227[label="",style="solid", color="black", weight=3]; 26.75/11.37 8169[label="FiniteMap.addToFM_C3 FiniteMap.addToFM0 (FiniteMap.Branch xux4790 xux4791 xux4792 xux4793 xux4794) xux481 xux482",fontsize=16,color="black",shape="box"];8169 -> 8228[label="",style="solid", color="black", weight=3]; 26.75/11.37 7077[label="Succ xux6200",fontsize=16,color="green",shape="box"];7078[label="primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)",fontsize=16,color="black",shape="triangle"];7078 -> 7161[label="",style="solid", color="black", weight=3]; 26.75/11.37 2328[label="primPlusNat xux220 xux12",fontsize=16,color="burlywood",shape="triangle"];9500[label="xux220/Succ xux2200",fontsize=10,color="white",style="solid",shape="box"];2328 -> 9500[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9500 -> 2433[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9501[label="xux220/Zero",fontsize=10,color="white",style="solid",shape="box"];2328 -> 9501[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9501 -> 2434[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7079[label="primCmpInt (Pos (Succ xux4470)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];7079 -> 7162[label="",style="solid", color="black", weight=3]; 26.75/11.37 7080[label="primCmpInt (Pos Zero) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Pos (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];7080 -> 7163[label="",style="solid", color="black", weight=3]; 26.75/11.37 7081[label="primCmpInt (Pos Zero) xux52 == LT",fontsize=16,color="burlywood",shape="triangle"];9502[label="xux52/Pos xux520",fontsize=10,color="white",style="solid",shape="box"];7081 -> 9502[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9502 -> 7164[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9503[label="xux52/Neg xux520",fontsize=10,color="white",style="solid",shape="box"];7081 -> 9503[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9503 -> 7165[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7082[label="Succ xux6200",fontsize=16,color="green",shape="box"];7083 -> 7078[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7083[label="primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux6200)",fontsize=16,color="magenta"];7083 -> 7166[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7084[label="primCmpInt (Neg (Succ xux4480)) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];7084 -> 7167[label="",style="solid", color="black", weight=3]; 26.75/11.37 7085[label="primCmpInt (Neg Zero) (FiniteMap.mkVBalBranch3Size_r xux60 xux61 (Neg (Succ xux6200)) xux63 xux64 xux50 xux51 xux52 xux53 xux54) == LT",fontsize=16,color="black",shape="box"];7085 -> 7168[label="",style="solid", color="black", weight=3]; 26.75/11.37 7119[label="primCmpInt (Neg Zero) xux52 == LT",fontsize=16,color="burlywood",shape="triangle"];9504[label="xux52/Pos xux520",fontsize=10,color="white",style="solid",shape="box"];7119 -> 9504[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9504 -> 7169[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9505[label="xux52/Neg xux520",fontsize=10,color="white",style="solid",shape="box"];7119 -> 9505[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9505 -> 7170[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7120 -> 7281[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7120[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 (primCmpInt (Pos (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT)",fontsize=16,color="magenta"];7120 -> 7282[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7121 -> 7177[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7121[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 (primCmpInt (Pos Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394) == LT)",fontsize=16,color="magenta"];7121 -> 7178[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7122 -> 7297[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7122[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 (primCmpInt (Neg (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT)",fontsize=16,color="magenta"];7122 -> 7298[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7123 -> 7186[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7123[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 (primCmpInt (Neg Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394) == LT)",fontsize=16,color="magenta"];7123 -> 7187[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8293[label="xux142",fontsize=16,color="green",shape="box"];8294[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];8295[label="xux141",fontsize=16,color="green",shape="box"];8296[label="compare (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) == LT",fontsize=16,color="black",shape="box"];8296 -> 8371[label="",style="solid", color="black", weight=3]; 26.75/11.37 8470 -> 8430[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8470[label="primCmpInt (primPlusInt (Pos Zero) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 FiniteMap.EmptyFM)) (Pos (Succ (Succ Zero))) == LT",fontsize=16,color="magenta"];8470 -> 8475[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8470 -> 8476[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8469[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 xux563",fontsize=16,color="burlywood",shape="triangle"];9506[label="xux563/False",fontsize=10,color="white",style="solid",shape="box"];8469 -> 9506[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9506 -> 8477[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9507[label="xux563/True",fontsize=10,color="white",style="solid",shape="box"];8469 -> 9507[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9507 -> 8478[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8298[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (primCmpInt (primPlusInt (Pos xux49720) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974))) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8298 -> 8374[label="",style="solid", color="black", weight=3]; 26.75/11.37 8299[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (primCmpInt (primPlusInt (Neg xux49720) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974))) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8299 -> 8375[label="",style="solid", color="black", weight=3]; 26.75/11.37 315[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT (EQ == LT)",fontsize=16,color="black",shape="box"];315 -> 364[label="",style="solid", color="black", weight=3]; 26.75/11.37 316[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ (LT == EQ) == LT)",fontsize=16,color="black",shape="box"];316 -> 365[label="",style="solid", color="black", weight=3]; 26.75/11.37 317[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT (LT == GT) == LT)",fontsize=16,color="black",shape="box"];317 -> 366[label="",style="solid", color="black", weight=3]; 26.75/11.37 318[label="FiniteMap.splitGT FiniteMap.EmptyFM EQ",fontsize=16,color="black",shape="box"];318 -> 367[label="",style="solid", color="black", weight=3]; 26.75/11.37 319[label="FiniteMap.splitGT (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) EQ",fontsize=16,color="black",shape="box"];319 -> 368[label="",style="solid", color="black", weight=3]; 26.75/11.37 320[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ (EQ == LT)",fontsize=16,color="black",shape="box"];320 -> 369[label="",style="solid", color="black", weight=3]; 26.75/11.37 321[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT (EQ == GT) == LT)",fontsize=16,color="black",shape="box"];321 -> 370[label="",style="solid", color="black", weight=3]; 26.75/11.37 322[label="FiniteMap.splitGT FiniteMap.EmptyFM GT",fontsize=16,color="black",shape="box"];322 -> 371[label="",style="solid", color="black", weight=3]; 26.75/11.37 323[label="FiniteMap.splitGT (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) GT",fontsize=16,color="black",shape="box"];323 -> 372[label="",style="solid", color="black", weight=3]; 26.75/11.37 324[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT (EQ == LT)",fontsize=16,color="black",shape="box"];324 -> 373[label="",style="solid", color="black", weight=3]; 26.75/11.37 325[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT (EQ == GT)",fontsize=16,color="black",shape="box"];325 -> 374[label="",style="solid", color="black", weight=3]; 26.75/11.37 326 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.37 326[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];327[label="xux332",fontsize=16,color="green",shape="box"];328[label="xux331",fontsize=16,color="green",shape="box"];329[label="LT",fontsize=16,color="green",shape="box"];330[label="xux334",fontsize=16,color="green",shape="box"];331[label="xux333",fontsize=16,color="green",shape="box"];332[label="xux330",fontsize=16,color="green",shape="box"];333[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare EQ LT == GT)",fontsize=16,color="black",shape="box"];333 -> 375[label="",style="solid", color="black", weight=3]; 26.75/11.37 334[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ (EQ == GT)",fontsize=16,color="black",shape="box"];334 -> 376[label="",style="solid", color="black", weight=3]; 26.75/11.37 335 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.37 335[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];336[label="xux332",fontsize=16,color="green",shape="box"];337[label="xux331",fontsize=16,color="green",shape="box"];338[label="EQ",fontsize=16,color="green",shape="box"];339[label="xux334",fontsize=16,color="green",shape="box"];340[label="xux333",fontsize=16,color="green",shape="box"];341[label="xux330",fontsize=16,color="green",shape="box"];342[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare GT LT == GT)",fontsize=16,color="black",shape="box"];342 -> 377[label="",style="solid", color="black", weight=3]; 26.75/11.37 343[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare GT EQ == GT)",fontsize=16,color="black",shape="box"];343 -> 378[label="",style="solid", color="black", weight=3]; 26.75/11.37 344[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT (EQ == GT)",fontsize=16,color="black",shape="box"];344 -> 379[label="",style="solid", color="black", weight=3]; 26.75/11.37 7245[label="LT == LT",fontsize=16,color="black",shape="triangle"];7245 -> 7279[label="",style="solid", color="black", weight=3]; 26.75/11.37 8066[label="compare0 EQ LT True == LT",fontsize=16,color="black",shape="box"];8066 -> 8114[label="",style="solid", color="black", weight=3]; 26.75/11.37 8067[label="compare0 GT LT True == LT",fontsize=16,color="black",shape="box"];8067 -> 8115[label="",style="solid", color="black", weight=3]; 26.75/11.37 8068[label="compare0 GT EQ True == LT",fontsize=16,color="black",shape="box"];8068 -> 8116[label="",style="solid", color="black", weight=3]; 26.75/11.37 8069[label="primCmpNat (Succ xux48100) xux4760 == GT",fontsize=16,color="burlywood",shape="triangle"];9508[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8069 -> 9508[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9508 -> 8117[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9509[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8069 -> 9509[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9509 -> 8118[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8070[label="GT == GT",fontsize=16,color="black",shape="triangle"];8070 -> 8119[label="",style="solid", color="black", weight=3]; 26.75/11.37 8071[label="primCmpInt (Pos Zero) (Pos (Succ xux47600)) == GT",fontsize=16,color="black",shape="box"];8071 -> 8120[label="",style="solid", color="black", weight=3]; 26.75/11.37 8072[label="primCmpInt (Pos Zero) (Pos Zero) == GT",fontsize=16,color="black",shape="box"];8072 -> 8121[label="",style="solid", color="black", weight=3]; 26.75/11.37 8073[label="primCmpInt (Pos Zero) (Neg (Succ xux47600)) == GT",fontsize=16,color="black",shape="box"];8073 -> 8122[label="",style="solid", color="black", weight=3]; 26.75/11.37 8074[label="primCmpInt (Pos Zero) (Neg Zero) == GT",fontsize=16,color="black",shape="box"];8074 -> 8123[label="",style="solid", color="black", weight=3]; 26.75/11.37 8075[label="LT == GT",fontsize=16,color="black",shape="triangle"];8075 -> 8124[label="",style="solid", color="black", weight=3]; 26.75/11.37 8076[label="primCmpNat xux4760 (Succ xux48100) == GT",fontsize=16,color="burlywood",shape="triangle"];9510[label="xux4760/Succ xux47600",fontsize=10,color="white",style="solid",shape="box"];8076 -> 9510[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9510 -> 8125[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9511[label="xux4760/Zero",fontsize=10,color="white",style="solid",shape="box"];8076 -> 9511[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9511 -> 8126[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8077[label="primCmpInt (Neg Zero) (Pos (Succ xux47600)) == GT",fontsize=16,color="black",shape="box"];8077 -> 8127[label="",style="solid", color="black", weight=3]; 26.75/11.37 8078[label="primCmpInt (Neg Zero) (Pos Zero) == GT",fontsize=16,color="black",shape="box"];8078 -> 8128[label="",style="solid", color="black", weight=3]; 26.75/11.37 8079[label="primCmpInt (Neg Zero) (Neg (Succ xux47600)) == GT",fontsize=16,color="black",shape="box"];8079 -> 8129[label="",style="solid", color="black", weight=3]; 26.75/11.37 8080[label="primCmpInt (Neg Zero) (Neg Zero) == GT",fontsize=16,color="black",shape="box"];8080 -> 8130[label="",style="solid", color="black", weight=3]; 26.75/11.37 8081[label="compare2 LT LT True == GT",fontsize=16,color="black",shape="box"];8081 -> 8131[label="",style="solid", color="black", weight=3]; 26.75/11.37 8082[label="compare2 LT EQ False == GT",fontsize=16,color="black",shape="box"];8082 -> 8132[label="",style="solid", color="black", weight=3]; 26.75/11.37 8083[label="compare2 LT GT False == GT",fontsize=16,color="black",shape="box"];8083 -> 8133[label="",style="solid", color="black", weight=3]; 26.75/11.37 8084[label="compare2 EQ LT False == GT",fontsize=16,color="black",shape="box"];8084 -> 8134[label="",style="solid", color="black", weight=3]; 26.75/11.37 8085[label="compare2 EQ EQ True == GT",fontsize=16,color="black",shape="box"];8085 -> 8135[label="",style="solid", color="black", weight=3]; 26.75/11.37 8086[label="compare2 EQ GT False == GT",fontsize=16,color="black",shape="box"];8086 -> 8136[label="",style="solid", color="black", weight=3]; 26.75/11.37 8087[label="compare2 GT LT False == GT",fontsize=16,color="black",shape="box"];8087 -> 8137[label="",style="solid", color="black", weight=3]; 26.75/11.37 8088[label="compare2 GT EQ False == GT",fontsize=16,color="black",shape="box"];8088 -> 8138[label="",style="solid", color="black", weight=3]; 26.75/11.37 8089[label="compare2 GT GT True == GT",fontsize=16,color="black",shape="box"];8089 -> 8139[label="",style="solid", color="black", weight=3]; 26.75/11.37 8105 -> 8101[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8105[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500",fontsize=16,color="magenta"];8105 -> 8140[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8105 -> 8141[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8105 -> 8142[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8106 -> 8101[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8106[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500",fontsize=16,color="magenta"];8106 -> 8143[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8106 -> 8144[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8106 -> 8145[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8107 -> 8101[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8107[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500",fontsize=16,color="magenta"];8107 -> 8146[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8107 -> 8147[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8107 -> 8148[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8108 -> 8101[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8108[label="FiniteMap.addToFM_C FiniteMap.addToFM0 xux498 xux499 xux500",fontsize=16,color="magenta"];8108 -> 8149[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8108 -> 8150[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8108 -> 8151[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8227[label="FiniteMap.unitFM xux481 xux482",fontsize=16,color="black",shape="box"];8227 -> 8265[label="",style="solid", color="black", weight=3]; 26.75/11.37 8228 -> 7317[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8228[label="FiniteMap.addToFM_C2 FiniteMap.addToFM0 xux4790 xux4791 xux4792 xux4793 xux4794 xux481 xux482 (xux481 < xux4790)",fontsize=16,color="magenta"];8228 -> 8266[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8228 -> 8267[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8228 -> 8268[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8228 -> 8269[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8228 -> 8270[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8228 -> 8271[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7161 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7161[label="primPlusNat (primMulNat (Succ (Succ (Succ Zero))) (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];7161 -> 7199[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7161 -> 7200[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 2433[label="primPlusNat (Succ xux2200) xux12",fontsize=16,color="burlywood",shape="box"];9512[label="xux12/Succ xux120",fontsize=10,color="white",style="solid",shape="box"];2433 -> 9512[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9512 -> 2518[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9513[label="xux12/Zero",fontsize=10,color="white",style="solid",shape="box"];2433 -> 9513[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9513 -> 2519[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 2434[label="primPlusNat Zero xux12",fontsize=16,color="burlywood",shape="box"];9514[label="xux12/Succ xux120",fontsize=10,color="white",style="solid",shape="box"];2434 -> 9514[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9514 -> 2520[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9515[label="xux12/Zero",fontsize=10,color="white",style="solid",shape="box"];2434 -> 9515[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9515 -> 2521[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7162[label="primCmpInt (Pos (Succ xux4470)) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="black",shape="box"];7162 -> 7201[label="",style="solid", color="black", weight=3]; 26.75/11.37 7163 -> 7081[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7163[label="primCmpInt (Pos Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="magenta"];7163 -> 7202[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7164[label="primCmpInt (Pos Zero) (Pos xux520) == LT",fontsize=16,color="burlywood",shape="box"];9516[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7164 -> 9516[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9516 -> 7203[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9517[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7164 -> 9517[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9517 -> 7204[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7165[label="primCmpInt (Pos Zero) (Neg xux520) == LT",fontsize=16,color="burlywood",shape="box"];9518[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7165 -> 9518[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9518 -> 7205[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9519[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7165 -> 9519[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9519 -> 7206[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7166[label="xux6200",fontsize=16,color="green",shape="box"];7167[label="primCmpInt (Neg (Succ xux4480)) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="black",shape="box"];7167 -> 7207[label="",style="solid", color="black", weight=3]; 26.75/11.37 7168 -> 7119[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7168[label="primCmpInt (Neg Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)) == LT",fontsize=16,color="magenta"];7168 -> 7208[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7169[label="primCmpInt (Neg Zero) (Pos xux520) == LT",fontsize=16,color="burlywood",shape="box"];9520[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7169 -> 9520[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9520 -> 7209[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9521[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7169 -> 9521[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9521 -> 7210[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7170[label="primCmpInt (Neg Zero) (Neg xux520) == LT",fontsize=16,color="burlywood",shape="box"];9522[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7170 -> 9522[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9522 -> 7211[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9523[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7170 -> 9523[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9523 -> 7212[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7282 -> 7286[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7282[label="primCmpInt (Pos (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="magenta"];7282 -> 7287[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7281[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux460",fontsize=16,color="burlywood",shape="triangle"];9524[label="xux460/False",fontsize=10,color="white",style="solid",shape="box"];7281 -> 9524[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9524 -> 7288[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9525[label="xux460/True",fontsize=10,color="white",style="solid",shape="box"];7281 -> 9525[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9525 -> 7289[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7178 -> 7081[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7178[label="primCmpInt (Pos Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394) == LT",fontsize=16,color="magenta"];7178 -> 7217[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7177[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux456",fontsize=16,color="burlywood",shape="triangle"];9526[label="xux456/False",fontsize=10,color="white",style="solid",shape="box"];7177 -> 9526[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9526 -> 7218[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9527[label="xux456/True",fontsize=10,color="white",style="solid",shape="box"];7177 -> 9527[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9527 -> 7219[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7298 -> 7302[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7298[label="primCmpInt (Neg (primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="magenta"];7298 -> 7303[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7297[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux463",fontsize=16,color="burlywood",shape="triangle"];9528[label="xux463/False",fontsize=10,color="white",style="solid",shape="box"];7297 -> 9528[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9528 -> 7304[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9529[label="xux463/True",fontsize=10,color="white",style="solid",shape="box"];7297 -> 9529[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9529 -> 7305[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7187 -> 7119[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7187[label="primCmpInt (Neg Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394) == LT",fontsize=16,color="magenta"];7187 -> 7224[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7186[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux459",fontsize=16,color="burlywood",shape="triangle"];9530[label="xux459/False",fontsize=10,color="white",style="solid",shape="box"];7186 -> 9530[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9530 -> 7225[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9531[label="xux459/True",fontsize=10,color="white",style="solid",shape="box"];7186 -> 9531[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9531 -> 7226[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8371[label="primCmpInt (FiniteMap.sIZE_RATIO * FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) == LT",fontsize=16,color="black",shape="box"];8371 -> 8418[label="",style="solid", color="black", weight=3]; 26.75/11.37 8475[label="primPlusInt (Pos Zero) (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux560 FiniteMap.EmptyFM)",fontsize=16,color="black",shape="box"];8475 -> 8483[label="",style="solid", color="black", weight=3]; 26.75/11.37 8476[label="Pos (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];8430[label="primCmpInt xux481 xux4790 == LT",fontsize=16,color="burlywood",shape="triangle"];9532[label="xux481/Pos xux4810",fontsize=10,color="white",style="solid",shape="box"];8430 -> 9532[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9532 -> 8455[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9533[label="xux481/Neg xux4810",fontsize=10,color="white",style="solid",shape="box"];8430 -> 9533[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9533 -> 8456[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8477[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 False",fontsize=16,color="black",shape="box"];8477 -> 8484[label="",style="solid", color="black", weight=3]; 26.75/11.37 8478[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 True",fontsize=16,color="black",shape="box"];8478 -> 8485[label="",style="solid", color="black", weight=3]; 26.75/11.37 8374 -> 8479[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8374[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (primCmpInt (primPlusInt (Pos xux49720) (FiniteMap.sizeFM xux560)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8374 -> 8480[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8375 -> 8494[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8375[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (primCmpInt (primPlusInt (Neg xux49720) (FiniteMap.sizeFM xux560)) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8375 -> 8495[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 364[label="FiniteMap.splitGT1 LT xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];364 -> 401[label="",style="solid", color="black", weight=3]; 26.75/11.37 365[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare2 LT EQ False == LT)",fontsize=16,color="black",shape="box"];365 -> 402[label="",style="solid", color="black", weight=3]; 26.75/11.37 366[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare2 LT GT False == LT)",fontsize=16,color="black",shape="box"];366 -> 403[label="",style="solid", color="black", weight=3]; 26.75/11.37 367[label="FiniteMap.splitGT4 FiniteMap.EmptyFM EQ",fontsize=16,color="black",shape="box"];367 -> 404[label="",style="solid", color="black", weight=3]; 26.75/11.37 368 -> 26[label="",style="dashed", color="red", weight=0]; 26.75/11.37 368[label="FiniteMap.splitGT3 (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) EQ",fontsize=16,color="magenta"];368 -> 405[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 368 -> 406[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 368 -> 407[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 368 -> 408[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 368 -> 409[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 368 -> 410[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 369[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];369 -> 411[label="",style="solid", color="black", weight=3]; 26.75/11.37 370[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare2 EQ GT False == LT)",fontsize=16,color="black",shape="box"];370 -> 412[label="",style="solid", color="black", weight=3]; 26.75/11.37 371[label="FiniteMap.splitGT4 FiniteMap.EmptyFM GT",fontsize=16,color="black",shape="box"];371 -> 413[label="",style="solid", color="black", weight=3]; 26.75/11.37 372 -> 26[label="",style="dashed", color="red", weight=0]; 26.75/11.37 372[label="FiniteMap.splitGT3 (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) GT",fontsize=16,color="magenta"];372 -> 414[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 372 -> 415[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 372 -> 416[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 372 -> 417[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 372 -> 418[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 372 -> 419[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 373[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];373 -> 420[label="",style="solid", color="black", weight=3]; 26.75/11.37 374[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 LT False",fontsize=16,color="black",shape="box"];374 -> 421[label="",style="solid", color="black", weight=3]; 26.75/11.37 375[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare3 EQ LT == GT)",fontsize=16,color="black",shape="box"];375 -> 422[label="",style="solid", color="black", weight=3]; 26.75/11.37 376[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 EQ False",fontsize=16,color="black",shape="box"];376 -> 423[label="",style="solid", color="black", weight=3]; 26.75/11.37 377[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare3 GT LT == GT)",fontsize=16,color="black",shape="box"];377 -> 424[label="",style="solid", color="black", weight=3]; 26.75/11.37 378[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare3 GT EQ == GT)",fontsize=16,color="black",shape="box"];378 -> 425[label="",style="solid", color="black", weight=3]; 26.75/11.37 379[label="FiniteMap.splitLT1 GT xux31 xux32 xux33 xux34 GT False",fontsize=16,color="black",shape="box"];379 -> 426[label="",style="solid", color="black", weight=3]; 26.75/11.37 7279[label="True",fontsize=16,color="green",shape="box"];8114 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8114[label="GT == LT",fontsize=16,color="magenta"];8115 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8115[label="GT == LT",fontsize=16,color="magenta"];8116 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8116[label="GT == LT",fontsize=16,color="magenta"];8117[label="primCmpNat (Succ xux48100) (Succ xux47600) == GT",fontsize=16,color="black",shape="box"];8117 -> 8170[label="",style="solid", color="black", weight=3]; 26.75/11.37 8118[label="primCmpNat (Succ xux48100) Zero == GT",fontsize=16,color="black",shape="box"];8118 -> 8171[label="",style="solid", color="black", weight=3]; 26.75/11.37 8119[label="True",fontsize=16,color="green",shape="box"];8120 -> 8076[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8120[label="primCmpNat Zero (Succ xux47600) == GT",fontsize=16,color="magenta"];8120 -> 8172[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8120 -> 8173[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8121[label="EQ == GT",fontsize=16,color="black",shape="triangle"];8121 -> 8174[label="",style="solid", color="black", weight=3]; 26.75/11.37 8122 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8122[label="GT == GT",fontsize=16,color="magenta"];8123 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8123[label="EQ == GT",fontsize=16,color="magenta"];8124[label="False",fontsize=16,color="green",shape="box"];8125[label="primCmpNat (Succ xux47600) (Succ xux48100) == GT",fontsize=16,color="black",shape="box"];8125 -> 8175[label="",style="solid", color="black", weight=3]; 26.75/11.37 8126[label="primCmpNat Zero (Succ xux48100) == GT",fontsize=16,color="black",shape="box"];8126 -> 8176[label="",style="solid", color="black", weight=3]; 26.75/11.37 8127 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8127[label="LT == GT",fontsize=16,color="magenta"];8128 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8128[label="EQ == GT",fontsize=16,color="magenta"];8129 -> 8069[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8129[label="primCmpNat (Succ xux47600) Zero == GT",fontsize=16,color="magenta"];8129 -> 8177[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8129 -> 8178[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8130 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8130[label="EQ == GT",fontsize=16,color="magenta"];8131 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8131[label="EQ == GT",fontsize=16,color="magenta"];8132[label="compare1 LT EQ (LT <= EQ) == GT",fontsize=16,color="black",shape="box"];8132 -> 8179[label="",style="solid", color="black", weight=3]; 26.75/11.37 8133[label="compare1 LT GT (LT <= GT) == GT",fontsize=16,color="black",shape="box"];8133 -> 8180[label="",style="solid", color="black", weight=3]; 26.75/11.37 8134[label="compare1 EQ LT (EQ <= LT) == GT",fontsize=16,color="black",shape="box"];8134 -> 8181[label="",style="solid", color="black", weight=3]; 26.75/11.37 8135 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8135[label="EQ == GT",fontsize=16,color="magenta"];8136[label="compare1 EQ GT (EQ <= GT) == GT",fontsize=16,color="black",shape="box"];8136 -> 8182[label="",style="solid", color="black", weight=3]; 26.75/11.37 8137[label="compare1 GT LT (GT <= LT) == GT",fontsize=16,color="black",shape="box"];8137 -> 8183[label="",style="solid", color="black", weight=3]; 26.75/11.37 8138[label="compare1 GT EQ (GT <= EQ) == GT",fontsize=16,color="black",shape="box"];8138 -> 8184[label="",style="solid", color="black", weight=3]; 26.75/11.37 8139 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8139[label="EQ == GT",fontsize=16,color="magenta"];8140[label="xux500",fontsize=16,color="green",shape="box"];8141[label="xux498",fontsize=16,color="green",shape="box"];8142[label="xux499",fontsize=16,color="green",shape="box"];8143[label="xux500",fontsize=16,color="green",shape="box"];8144[label="xux498",fontsize=16,color="green",shape="box"];8145[label="xux499",fontsize=16,color="green",shape="box"];8146[label="xux500",fontsize=16,color="green",shape="box"];8147[label="xux498",fontsize=16,color="green",shape="box"];8148[label="xux499",fontsize=16,color="green",shape="box"];8149[label="xux500",fontsize=16,color="green",shape="box"];8150[label="xux498",fontsize=16,color="green",shape="box"];8151[label="xux499",fontsize=16,color="green",shape="box"];8265[label="FiniteMap.Branch xux481 xux482 (Pos (Succ Zero)) FiniteMap.emptyFM FiniteMap.emptyFM",fontsize=16,color="green",shape="box"];8265 -> 8300[label="",style="dashed", color="green", weight=3]; 26.75/11.37 8265 -> 8301[label="",style="dashed", color="green", weight=3]; 26.75/11.37 8266[label="xux481 < xux4790",fontsize=16,color="blue",shape="box"];9534[label="< :: (Either a b) -> (Either a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9534[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9534 -> 8302[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9535[label="< :: Char -> Char -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9535[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9535 -> 8303[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9536[label="< :: Bool -> Bool -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9536[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9536 -> 8304[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9537[label="< :: (Maybe a) -> (Maybe a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9537[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9537 -> 8305[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9538[label="< :: Double -> Double -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9538[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9538 -> 8306[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9539[label="< :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9539[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9539 -> 8307[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9540[label="< :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9540[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9540 -> 8308[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9541[label="< :: ([] a) -> ([] a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9541[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9541 -> 8309[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9542[label="< :: Ordering -> Ordering -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9542[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9542 -> 8310[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9543[label="< :: () -> () -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9543[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9543 -> 8311[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9544[label="< :: Float -> Float -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9544[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9544 -> 8312[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9545[label="< :: (Ratio a) -> (Ratio a) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9545[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9545 -> 8313[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9546[label="< :: ((@3) a b c) -> ((@3) a b c) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9546[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9546 -> 8314[label="",style="solid", color="blue", weight=3]; 26.75/11.37 9547[label="< :: ((@2) a b) -> ((@2) a b) -> Bool",fontsize=10,color="white",style="solid",shape="box"];8266 -> 9547[label="",style="solid", color="blue", weight=9]; 26.75/11.37 9547 -> 8315[label="",style="solid", color="blue", weight=3]; 26.75/11.37 8267[label="xux4790",fontsize=16,color="green",shape="box"];8268[label="xux4793",fontsize=16,color="green",shape="box"];8269[label="xux4792",fontsize=16,color="green",shape="box"];8270[label="xux4791",fontsize=16,color="green",shape="box"];8271[label="xux4794",fontsize=16,color="green",shape="box"];7199[label="Succ xux6200",fontsize=16,color="green",shape="box"];7200[label="primMulNat (Succ (Succ (Succ Zero))) (Succ xux6200)",fontsize=16,color="black",shape="box"];7200 -> 7235[label="",style="solid", color="black", weight=3]; 26.75/11.37 2518[label="primPlusNat (Succ xux2200) (Succ xux120)",fontsize=16,color="black",shape="box"];2518 -> 2562[label="",style="solid", color="black", weight=3]; 26.75/11.37 2519[label="primPlusNat (Succ xux2200) Zero",fontsize=16,color="black",shape="box"];2519 -> 2563[label="",style="solid", color="black", weight=3]; 26.75/11.37 2520[label="primPlusNat Zero (Succ xux120)",fontsize=16,color="black",shape="box"];2520 -> 2564[label="",style="solid", color="black", weight=3]; 26.75/11.37 2521[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];2521 -> 2565[label="",style="solid", color="black", weight=3]; 26.75/11.37 7201[label="primCmpInt (Pos (Succ xux4470)) xux52 == LT",fontsize=16,color="burlywood",shape="triangle"];9548[label="xux52/Pos xux520",fontsize=10,color="white",style="solid",shape="box"];7201 -> 9548[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9548 -> 7236[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9549[label="xux52/Neg xux520",fontsize=10,color="white",style="solid",shape="box"];7201 -> 9549[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9549 -> 7237[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7202[label="FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)",fontsize=16,color="black",shape="triangle"];7202 -> 7238[label="",style="solid", color="black", weight=3]; 26.75/11.37 7203[label="primCmpInt (Pos Zero) (Pos (Succ xux5200)) == LT",fontsize=16,color="black",shape="box"];7203 -> 7239[label="",style="solid", color="black", weight=3]; 26.75/11.37 7204[label="primCmpInt (Pos Zero) (Pos Zero) == LT",fontsize=16,color="black",shape="box"];7204 -> 7240[label="",style="solid", color="black", weight=3]; 26.75/11.37 7205[label="primCmpInt (Pos Zero) (Neg (Succ xux5200)) == LT",fontsize=16,color="black",shape="box"];7205 -> 7241[label="",style="solid", color="black", weight=3]; 26.75/11.37 7206[label="primCmpInt (Pos Zero) (Neg Zero) == LT",fontsize=16,color="black",shape="box"];7206 -> 7242[label="",style="solid", color="black", weight=3]; 26.75/11.37 7207[label="primCmpInt (Neg (Succ xux4480)) xux52 == LT",fontsize=16,color="burlywood",shape="triangle"];9550[label="xux52/Pos xux520",fontsize=10,color="white",style="solid",shape="box"];7207 -> 9550[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9550 -> 7243[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9551[label="xux52/Neg xux520",fontsize=10,color="white",style="solid",shape="box"];7207 -> 9551[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9551 -> 7244[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7208 -> 7202[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7208[label="FiniteMap.sizeFM (FiniteMap.Branch xux50 xux51 xux52 xux53 xux54)",fontsize=16,color="magenta"];7209[label="primCmpInt (Neg Zero) (Pos (Succ xux5200)) == LT",fontsize=16,color="black",shape="box"];7209 -> 7245[label="",style="solid", color="black", weight=3]; 26.75/11.37 7210[label="primCmpInt (Neg Zero) (Pos Zero) == LT",fontsize=16,color="black",shape="box"];7210 -> 7246[label="",style="solid", color="black", weight=3]; 26.75/11.37 7211[label="primCmpInt (Neg Zero) (Neg (Succ xux5200)) == LT",fontsize=16,color="black",shape="box"];7211 -> 7247[label="",style="solid", color="black", weight=3]; 26.75/11.37 7212[label="primCmpInt (Neg Zero) (Neg Zero) == LT",fontsize=16,color="black",shape="box"];7212 -> 7248[label="",style="solid", color="black", weight=3]; 26.75/11.37 7287 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7287[label="primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200)",fontsize=16,color="magenta"];7287 -> 7290[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7287 -> 7291[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7286[label="primCmpInt (Pos xux461) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="burlywood",shape="triangle"];9552[label="xux461/Succ xux4610",fontsize=10,color="white",style="solid",shape="box"];7286 -> 9552[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9552 -> 7292[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9553[label="xux461/Zero",fontsize=10,color="white",style="solid",shape="box"];7286 -> 9553[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9553 -> 7293[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7288[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 False",fontsize=16,color="black",shape="box"];7288 -> 7306[label="",style="solid", color="black", weight=3]; 26.75/11.37 7289[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7289 -> 7307[label="",style="solid", color="black", weight=3]; 26.75/11.37 7217[label="FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394",fontsize=16,color="black",shape="box"];7217 -> 7252[label="",style="solid", color="black", weight=3]; 26.75/11.37 7218[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 False",fontsize=16,color="black",shape="box"];7218 -> 7253[label="",style="solid", color="black", weight=3]; 26.75/11.37 7219[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7219 -> 7254[label="",style="solid", color="black", weight=3]; 26.75/11.37 7303 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7303[label="primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)) (Succ xux139200)",fontsize=16,color="magenta"];7303 -> 7308[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7303 -> 7309[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7302[label="primCmpInt (Neg xux465) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="burlywood",shape="triangle"];9554[label="xux465/Succ xux4650",fontsize=10,color="white",style="solid",shape="box"];7302 -> 9554[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9554 -> 7310[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9555[label="xux465/Zero",fontsize=10,color="white",style="solid",shape="box"];7302 -> 9555[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9555 -> 7311[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7304[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 False",fontsize=16,color="black",shape="box"];7304 -> 7721[label="",style="solid", color="black", weight=3]; 26.75/11.37 7305[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7305 -> 7722[label="",style="solid", color="black", weight=3]; 26.75/11.37 7224[label="FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394",fontsize=16,color="black",shape="box"];7224 -> 7258[label="",style="solid", color="black", weight=3]; 26.75/11.37 7225[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 False",fontsize=16,color="black",shape="box"];7225 -> 7259[label="",style="solid", color="black", weight=3]; 26.75/11.37 7226[label="FiniteMap.mkVBalBranch3MkVBalBranch1 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7226 -> 7260[label="",style="solid", color="black", weight=3]; 26.75/11.37 8418[label="primCmpInt (primMulInt FiniteMap.sIZE_RATIO (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934)) (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) == LT",fontsize=16,color="black",shape="box"];8418 -> 8442[label="",style="solid", color="black", weight=3]; 26.75/11.37 8483[label="primPlusInt (Pos Zero) (FiniteMap.sizeFM xux560)",fontsize=16,color="burlywood",shape="box"];9556[label="xux560/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8483 -> 9556[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9556 -> 8498[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9557[label="xux560/FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604",fontsize=10,color="white",style="solid",shape="box"];8483 -> 9557[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9557 -> 8499[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8455[label="primCmpInt (Pos xux4810) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9558[label="xux4810/Succ xux48100",fontsize=10,color="white",style="solid",shape="box"];8455 -> 9558[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9558 -> 8486[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9559[label="xux4810/Zero",fontsize=10,color="white",style="solid",shape="box"];8455 -> 9559[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9559 -> 8487[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8456[label="primCmpInt (Neg xux4810) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9560[label="xux4810/Succ xux48100",fontsize=10,color="white",style="solid",shape="box"];8456 -> 9560[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9560 -> 8488[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9561[label="xux4810/Zero",fontsize=10,color="white",style="solid",shape="box"];8456 -> 9561[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9561 -> 8489[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8484 -> 8500[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8484[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM)",fontsize=16,color="magenta"];8484 -> 8501[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8485 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8485[label="FiniteMap.mkBranch (Pos (Succ Zero)) xux494 xux495 FiniteMap.EmptyFM xux558",fontsize=16,color="magenta"];8485 -> 9105[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8485 -> 9106[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8485 -> 9107[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8485 -> 9108[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8485 -> 9109[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8480 -> 8430[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8480[label="primCmpInt (primPlusInt (Pos xux49720) (FiniteMap.sizeFM xux560)) (Pos (Succ (Succ Zero))) == LT",fontsize=16,color="magenta"];8480 -> 8490[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8480 -> 8491[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8479[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux565",fontsize=16,color="burlywood",shape="triangle"];9562[label="xux565/False",fontsize=10,color="white",style="solid",shape="box"];8479 -> 9562[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9562 -> 8492[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9563[label="xux565/True",fontsize=10,color="white",style="solid",shape="box"];8479 -> 9563[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9563 -> 8493[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8495 -> 8430[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8495[label="primCmpInt (primPlusInt (Neg xux49720) (FiniteMap.sizeFM xux560)) (Pos (Succ (Succ Zero))) == LT",fontsize=16,color="magenta"];8495 -> 8503[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8495 -> 8504[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8494[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux566",fontsize=16,color="burlywood",shape="triangle"];9564[label="xux566/False",fontsize=10,color="white",style="solid",shape="box"];8494 -> 9564[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9564 -> 8505[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9565[label="xux566/True",fontsize=10,color="white",style="solid",shape="box"];8494 -> 9565[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9565 -> 8506[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 401[label="FiniteMap.splitGT0 LT xux31 xux32 xux33 xux34 LT otherwise",fontsize=16,color="black",shape="box"];401 -> 451[label="",style="solid", color="black", weight=3]; 26.75/11.37 402[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ (LT <= EQ) == LT)",fontsize=16,color="black",shape="box"];402 -> 452[label="",style="solid", color="black", weight=3]; 26.75/11.37 403[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT (LT <= GT) == LT)",fontsize=16,color="black",shape="box"];403 -> 453[label="",style="solid", color="black", weight=3]; 26.75/11.37 404 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.37 404[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];405[label="xux342",fontsize=16,color="green",shape="box"];406[label="xux341",fontsize=16,color="green",shape="box"];407[label="EQ",fontsize=16,color="green",shape="box"];408[label="xux344",fontsize=16,color="green",shape="box"];409[label="xux343",fontsize=16,color="green",shape="box"];410[label="xux340",fontsize=16,color="green",shape="box"];411[label="FiniteMap.splitGT0 EQ xux31 xux32 xux33 xux34 EQ otherwise",fontsize=16,color="black",shape="box"];411 -> 454[label="",style="solid", color="black", weight=3]; 26.75/11.37 412[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT (EQ <= GT) == LT)",fontsize=16,color="black",shape="box"];412 -> 455[label="",style="solid", color="black", weight=3]; 26.75/11.37 413 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.37 413[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];414[label="xux342",fontsize=16,color="green",shape="box"];415[label="xux341",fontsize=16,color="green",shape="box"];416[label="GT",fontsize=16,color="green",shape="box"];417[label="xux344",fontsize=16,color="green",shape="box"];418[label="xux343",fontsize=16,color="green",shape="box"];419[label="xux340",fontsize=16,color="green",shape="box"];420[label="FiniteMap.splitGT0 GT xux31 xux32 xux33 xux34 GT otherwise",fontsize=16,color="black",shape="box"];420 -> 456[label="",style="solid", color="black", weight=3]; 26.75/11.37 421[label="FiniteMap.splitLT0 LT xux31 xux32 xux33 xux34 LT otherwise",fontsize=16,color="black",shape="box"];421 -> 457[label="",style="solid", color="black", weight=3]; 26.75/11.37 422[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT (EQ == LT) == GT)",fontsize=16,color="black",shape="box"];422 -> 458[label="",style="solid", color="black", weight=3]; 26.75/11.37 423[label="FiniteMap.splitLT0 EQ xux31 xux32 xux33 xux34 EQ otherwise",fontsize=16,color="black",shape="box"];423 -> 459[label="",style="solid", color="black", weight=3]; 26.75/11.37 424[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT (GT == LT) == GT)",fontsize=16,color="black",shape="box"];424 -> 460[label="",style="solid", color="black", weight=3]; 26.75/11.37 425[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ (GT == EQ) == GT)",fontsize=16,color="black",shape="box"];425 -> 461[label="",style="solid", color="black", weight=3]; 26.75/11.37 426[label="FiniteMap.splitLT0 GT xux31 xux32 xux33 xux34 GT otherwise",fontsize=16,color="black",shape="box"];426 -> 462[label="",style="solid", color="black", weight=3]; 26.75/11.37 7241[label="GT == LT",fontsize=16,color="black",shape="triangle"];7241 -> 7276[label="",style="solid", color="black", weight=3]; 26.75/11.37 8170[label="primCmpNat xux48100 xux47600 == GT",fontsize=16,color="burlywood",shape="triangle"];9566[label="xux48100/Succ xux481000",fontsize=10,color="white",style="solid",shape="box"];8170 -> 9566[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9566 -> 8229[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9567[label="xux48100/Zero",fontsize=10,color="white",style="solid",shape="box"];8170 -> 9567[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9567 -> 8230[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8171 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8171[label="GT == GT",fontsize=16,color="magenta"];8172[label="xux47600",fontsize=16,color="green",shape="box"];8173[label="Zero",fontsize=16,color="green",shape="box"];8174[label="False",fontsize=16,color="green",shape="box"];8175 -> 8170[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8175[label="primCmpNat xux47600 xux48100 == GT",fontsize=16,color="magenta"];8175 -> 8231[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8175 -> 8232[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8176 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8176[label="LT == GT",fontsize=16,color="magenta"];8177[label="xux47600",fontsize=16,color="green",shape="box"];8178[label="Zero",fontsize=16,color="green",shape="box"];8179[label="compare1 LT EQ True == GT",fontsize=16,color="black",shape="box"];8179 -> 8233[label="",style="solid", color="black", weight=3]; 26.75/11.37 8180[label="compare1 LT GT True == GT",fontsize=16,color="black",shape="box"];8180 -> 8234[label="",style="solid", color="black", weight=3]; 26.75/11.37 8181[label="compare1 EQ LT False == GT",fontsize=16,color="black",shape="box"];8181 -> 8235[label="",style="solid", color="black", weight=3]; 26.75/11.37 8182[label="compare1 EQ GT True == GT",fontsize=16,color="black",shape="box"];8182 -> 8236[label="",style="solid", color="black", weight=3]; 26.75/11.37 8183[label="compare1 GT LT False == GT",fontsize=16,color="black",shape="box"];8183 -> 8237[label="",style="solid", color="black", weight=3]; 26.75/11.37 8184[label="compare1 GT EQ False == GT",fontsize=16,color="black",shape="box"];8184 -> 8238[label="",style="solid", color="black", weight=3]; 26.75/11.37 8300[label="FiniteMap.emptyFM",fontsize=16,color="black",shape="triangle"];8300 -> 8376[label="",style="solid", color="black", weight=3]; 26.75/11.37 8301 -> 8300[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8301[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];8302[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8302 -> 8377[label="",style="solid", color="black", weight=3]; 26.75/11.37 8303[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8303 -> 8378[label="",style="solid", color="black", weight=3]; 26.75/11.37 8304[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8304 -> 8379[label="",style="solid", color="black", weight=3]; 26.75/11.37 8305[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8305 -> 8380[label="",style="solid", color="black", weight=3]; 26.75/11.37 8306[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8306 -> 8381[label="",style="solid", color="black", weight=3]; 26.75/11.37 8307[label="xux481 < xux4790",fontsize=16,color="black",shape="triangle"];8307 -> 8382[label="",style="solid", color="black", weight=3]; 26.75/11.37 8308[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8308 -> 8383[label="",style="solid", color="black", weight=3]; 26.75/11.37 8309[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8309 -> 8384[label="",style="solid", color="black", weight=3]; 26.75/11.37 8310 -> 7318[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8310[label="xux481 < xux4790",fontsize=16,color="magenta"];8310 -> 8385[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8310 -> 8386[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8311[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8311 -> 8387[label="",style="solid", color="black", weight=3]; 26.75/11.37 8312[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8312 -> 8388[label="",style="solid", color="black", weight=3]; 26.75/11.37 8313[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8313 -> 8389[label="",style="solid", color="black", weight=3]; 26.75/11.37 8314[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8314 -> 8390[label="",style="solid", color="black", weight=3]; 26.75/11.37 8315[label="xux481 < xux4790",fontsize=16,color="black",shape="box"];8315 -> 8391[label="",style="solid", color="black", weight=3]; 26.75/11.37 7235 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7235[label="primPlusNat (primMulNat (Succ (Succ Zero)) (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];7235 -> 7270[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7235 -> 7271[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 2562[label="Succ (Succ (primPlusNat xux2200 xux120))",fontsize=16,color="green",shape="box"];2562 -> 2652[label="",style="dashed", color="green", weight=3]; 26.75/11.37 2563[label="Succ xux2200",fontsize=16,color="green",shape="box"];2564[label="Succ xux120",fontsize=16,color="green",shape="box"];2565[label="Zero",fontsize=16,color="green",shape="box"];7236[label="primCmpInt (Pos (Succ xux4470)) (Pos xux520) == LT",fontsize=16,color="black",shape="box"];7236 -> 7272[label="",style="solid", color="black", weight=3]; 26.75/11.37 7237[label="primCmpInt (Pos (Succ xux4470)) (Neg xux520) == LT",fontsize=16,color="black",shape="box"];7237 -> 7273[label="",style="solid", color="black", weight=3]; 26.75/11.37 7238[label="xux52",fontsize=16,color="green",shape="box"];7239[label="primCmpNat Zero (Succ xux5200) == LT",fontsize=16,color="black",shape="box"];7239 -> 7274[label="",style="solid", color="black", weight=3]; 26.75/11.37 7242 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7242[label="EQ == LT",fontsize=16,color="magenta"];7243[label="primCmpInt (Neg (Succ xux4480)) (Pos xux520) == LT",fontsize=16,color="black",shape="box"];7243 -> 7277[label="",style="solid", color="black", weight=3]; 26.75/11.37 7244[label="primCmpInt (Neg (Succ xux4480)) (Neg xux520) == LT",fontsize=16,color="black",shape="box"];7244 -> 7278[label="",style="solid", color="black", weight=3]; 26.75/11.37 7246 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7246[label="EQ == LT",fontsize=16,color="magenta"];7247[label="primCmpNat (Succ xux5200) Zero == LT",fontsize=16,color="black",shape="box"];7247 -> 7280[label="",style="solid", color="black", weight=3]; 26.75/11.37 7248 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7248[label="EQ == LT",fontsize=16,color="magenta"];7290[label="Succ xux139200",fontsize=16,color="green",shape="box"];7291 -> 7078[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7291[label="primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)",fontsize=16,color="magenta"];7291 -> 7312[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7292[label="primCmpInt (Pos (Succ xux4610)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="black",shape="box"];7292 -> 7313[label="",style="solid", color="black", weight=3]; 26.75/11.37 7293[label="primCmpInt (Pos Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="black",shape="box"];7293 -> 7314[label="",style="solid", color="black", weight=3]; 26.75/11.37 7306[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 otherwise",fontsize=16,color="black",shape="box"];7306 -> 7723[label="",style="solid", color="black", weight=3]; 26.75/11.37 7307[label="FiniteMap.mkBalBranch xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7307 -> 7724[label="",style="solid", color="black", weight=3]; 26.75/11.37 7252[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="black",shape="triangle"];7252 -> 7294[label="",style="solid", color="black", weight=3]; 26.75/11.37 7253[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 otherwise",fontsize=16,color="black",shape="box"];7253 -> 7295[label="",style="solid", color="black", weight=3]; 26.75/11.37 7254[label="FiniteMap.mkBalBranch xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7254 -> 7296[label="",style="solid", color="black", weight=3]; 26.75/11.37 7308[label="Succ xux139200",fontsize=16,color="green",shape="box"];7309 -> 7078[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7309[label="primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux139200)",fontsize=16,color="magenta"];7309 -> 7725[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7310[label="primCmpInt (Neg (Succ xux4650)) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="black",shape="box"];7310 -> 7726[label="",style="solid", color="black", weight=3]; 26.75/11.37 7311[label="primCmpInt (Neg Zero) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) == LT",fontsize=16,color="black",shape="box"];7311 -> 7727[label="",style="solid", color="black", weight=3]; 26.75/11.37 7721[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 otherwise",fontsize=16,color="black",shape="box"];7721 -> 7734[label="",style="solid", color="black", weight=3]; 26.75/11.37 7722[label="FiniteMap.mkBalBranch xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7722 -> 7735[label="",style="solid", color="black", weight=3]; 26.75/11.37 7258 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7258[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];7259[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 otherwise",fontsize=16,color="black",shape="box"];7259 -> 7315[label="",style="solid", color="black", weight=3]; 26.75/11.37 7260[label="FiniteMap.mkBalBranch xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7260 -> 7316[label="",style="solid", color="black", weight=3]; 26.75/11.37 8442 -> 8430[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8442[label="primCmpInt (primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934)) (FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934) == LT",fontsize=16,color="magenta"];8442 -> 8467[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8442 -> 8468[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8498[label="primPlusInt (Pos Zero) (FiniteMap.sizeFM FiniteMap.EmptyFM)",fontsize=16,color="black",shape="box"];8498 -> 8507[label="",style="solid", color="black", weight=3]; 26.75/11.37 8499[label="primPlusInt (Pos Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604))",fontsize=16,color="black",shape="box"];8499 -> 8508[label="",style="solid", color="black", weight=3]; 26.75/11.37 8486[label="primCmpInt (Pos (Succ xux48100)) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9568[label="xux4790/Pos xux47900",fontsize=10,color="white",style="solid",shape="box"];8486 -> 9568[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9568 -> 8509[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9569[label="xux4790/Neg xux47900",fontsize=10,color="white",style="solid",shape="box"];8486 -> 9569[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9569 -> 8510[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8487[label="primCmpInt (Pos Zero) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9570[label="xux4790/Pos xux47900",fontsize=10,color="white",style="solid",shape="box"];8487 -> 9570[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9570 -> 8511[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9571[label="xux4790/Neg xux47900",fontsize=10,color="white",style="solid",shape="box"];8487 -> 9571[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9571 -> 8512[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8488[label="primCmpInt (Neg (Succ xux48100)) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9572[label="xux4790/Pos xux47900",fontsize=10,color="white",style="solid",shape="box"];8488 -> 9572[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9572 -> 8513[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9573[label="xux4790/Neg xux47900",fontsize=10,color="white",style="solid",shape="box"];8488 -> 9573[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9573 -> 8514[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8489[label="primCmpInt (Neg Zero) xux4790 == LT",fontsize=16,color="burlywood",shape="box"];9574[label="xux4790/Pos xux47900",fontsize=10,color="white",style="solid",shape="box"];8489 -> 9574[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9574 -> 8515[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9575[label="xux4790/Neg xux47900",fontsize=10,color="white",style="solid",shape="box"];8489 -> 9575[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9575 -> 8516[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8501 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8501[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8501 -> 8517[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8501 -> 8518[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8500[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 xux567",fontsize=16,color="burlywood",shape="triangle"];9576[label="xux567/False",fontsize=10,color="white",style="solid",shape="box"];8500 -> 9576[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9576 -> 8519[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9577[label="xux567/True",fontsize=10,color="white",style="solid",shape="box"];8500 -> 9577[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9577 -> 8520[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9105[label="xux495",fontsize=16,color="green",shape="box"];9106[label="xux558",fontsize=16,color="green",shape="box"];9107[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];9108[label="Zero",fontsize=16,color="green",shape="box"];9109[label="xux494",fontsize=16,color="green",shape="box"];9104[label="FiniteMap.mkBranch (Pos (Succ xux632)) xux633 xux634 xux635 xux636",fontsize=16,color="black",shape="triangle"];9104 -> 9255[label="",style="solid", color="black", weight=3]; 26.75/11.37 8490[label="primPlusInt (Pos xux49720) (FiniteMap.sizeFM xux560)",fontsize=16,color="burlywood",shape="box"];9578[label="xux560/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8490 -> 9578[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9578 -> 8521[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9579[label="xux560/FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604",fontsize=10,color="white",style="solid",shape="box"];8490 -> 9579[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9579 -> 8522[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8491[label="Pos (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];8492[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8492 -> 8523[label="",style="solid", color="black", weight=3]; 26.75/11.37 8493[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8493 -> 8524[label="",style="solid", color="black", weight=3]; 26.75/11.37 8503[label="primPlusInt (Neg xux49720) (FiniteMap.sizeFM xux560)",fontsize=16,color="burlywood",shape="box"];9580[label="xux560/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8503 -> 9580[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9580 -> 8547[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9581[label="xux560/FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604",fontsize=10,color="white",style="solid",shape="box"];8503 -> 9581[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9581 -> 8548[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8504[label="Pos (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];8505[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8505 -> 8549[label="",style="solid", color="black", weight=3]; 26.75/11.37 8506[label="FiniteMap.mkBalBranch6MkBalBranch5 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8506 -> 8550[label="",style="solid", color="black", weight=3]; 26.75/11.37 451[label="FiniteMap.splitGT0 LT xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];451 -> 481[label="",style="solid", color="black", weight=3]; 26.75/11.37 452[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (compare1 LT EQ True == LT)",fontsize=16,color="black",shape="box"];452 -> 482[label="",style="solid", color="black", weight=3]; 26.75/11.37 453[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (compare1 LT GT True == LT)",fontsize=16,color="black",shape="box"];453 -> 483[label="",style="solid", color="black", weight=3]; 26.75/11.37 454[label="FiniteMap.splitGT0 EQ xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];454 -> 484[label="",style="solid", color="black", weight=3]; 26.75/11.37 455[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (compare1 EQ GT True == LT)",fontsize=16,color="black",shape="box"];455 -> 485[label="",style="solid", color="black", weight=3]; 26.75/11.37 456[label="FiniteMap.splitGT0 GT xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];456 -> 486[label="",style="solid", color="black", weight=3]; 26.75/11.37 457[label="FiniteMap.splitLT0 LT xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];457 -> 487[label="",style="solid", color="black", weight=3]; 26.75/11.37 458[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare2 EQ LT False == GT)",fontsize=16,color="black",shape="box"];458 -> 488[label="",style="solid", color="black", weight=3]; 26.75/11.37 459[label="FiniteMap.splitLT0 EQ xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];459 -> 489[label="",style="solid", color="black", weight=3]; 26.75/11.37 460[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare2 GT LT False == GT)",fontsize=16,color="black",shape="box"];460 -> 490[label="",style="solid", color="black", weight=3]; 26.75/11.37 461[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare2 GT EQ False == GT)",fontsize=16,color="black",shape="box"];461 -> 491[label="",style="solid", color="black", weight=3]; 26.75/11.37 462[label="FiniteMap.splitLT0 GT xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];462 -> 492[label="",style="solid", color="black", weight=3]; 26.75/11.37 7276[label="False",fontsize=16,color="green",shape="box"];8229[label="primCmpNat (Succ xux481000) xux47600 == GT",fontsize=16,color="burlywood",shape="box"];9582[label="xux47600/Succ xux476000",fontsize=10,color="white",style="solid",shape="box"];8229 -> 9582[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9582 -> 8272[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9583[label="xux47600/Zero",fontsize=10,color="white",style="solid",shape="box"];8229 -> 9583[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9583 -> 8273[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8230[label="primCmpNat Zero xux47600 == GT",fontsize=16,color="burlywood",shape="box"];9584[label="xux47600/Succ xux476000",fontsize=10,color="white",style="solid",shape="box"];8230 -> 9584[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9584 -> 8274[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9585[label="xux47600/Zero",fontsize=10,color="white",style="solid",shape="box"];8230 -> 9585[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9585 -> 8275[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8231[label="xux47600",fontsize=16,color="green",shape="box"];8232[label="xux48100",fontsize=16,color="green",shape="box"];8233 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8233[label="LT == GT",fontsize=16,color="magenta"];8234 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8234[label="LT == GT",fontsize=16,color="magenta"];8235[label="compare0 EQ LT otherwise == GT",fontsize=16,color="black",shape="box"];8235 -> 8276[label="",style="solid", color="black", weight=3]; 26.75/11.37 8236 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8236[label="LT == GT",fontsize=16,color="magenta"];8237[label="compare0 GT LT otherwise == GT",fontsize=16,color="black",shape="box"];8237 -> 8277[label="",style="solid", color="black", weight=3]; 26.75/11.37 8238[label="compare0 GT EQ otherwise == GT",fontsize=16,color="black",shape="box"];8238 -> 8278[label="",style="solid", color="black", weight=3]; 26.75/11.37 8376[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];8377[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8377 -> 8425[label="",style="solid", color="black", weight=3]; 26.75/11.37 8378[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8378 -> 8426[label="",style="solid", color="black", weight=3]; 26.75/11.37 8379[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8379 -> 8427[label="",style="solid", color="black", weight=3]; 26.75/11.37 8380[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8380 -> 8428[label="",style="solid", color="black", weight=3]; 26.75/11.37 8381[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8381 -> 8429[label="",style="solid", color="black", weight=3]; 26.75/11.37 8382[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8382 -> 8430[label="",style="solid", color="black", weight=3]; 26.75/11.37 8383[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8383 -> 8431[label="",style="solid", color="black", weight=3]; 26.75/11.37 8384[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8384 -> 8432[label="",style="solid", color="black", weight=3]; 26.75/11.37 8385[label="xux481",fontsize=16,color="green",shape="box"];8386[label="xux4790",fontsize=16,color="green",shape="box"];8387[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8387 -> 8433[label="",style="solid", color="black", weight=3]; 26.75/11.37 8388[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8388 -> 8434[label="",style="solid", color="black", weight=3]; 26.75/11.37 8389[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8389 -> 8435[label="",style="solid", color="black", weight=3]; 26.75/11.37 8390[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8390 -> 8436[label="",style="solid", color="black", weight=3]; 26.75/11.37 8391[label="compare xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8391 -> 8437[label="",style="solid", color="black", weight=3]; 26.75/11.37 7270[label="Succ xux6200",fontsize=16,color="green",shape="box"];7271[label="primMulNat (Succ (Succ Zero)) (Succ xux6200)",fontsize=16,color="black",shape="box"];7271 -> 7744[label="",style="solid", color="black", weight=3]; 26.75/11.37 2652 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 2652[label="primPlusNat xux2200 xux120",fontsize=16,color="magenta"];2652 -> 2715[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 2652 -> 2716[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7272[label="primCmpNat (Succ xux4470) xux520 == LT",fontsize=16,color="burlywood",shape="box"];9586[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7272 -> 9586[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9586 -> 7745[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9587[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7272 -> 9587[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9587 -> 7746[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7273 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7273[label="GT == LT",fontsize=16,color="magenta"];7274 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7274[label="LT == LT",fontsize=16,color="magenta"];7277 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7277[label="LT == LT",fontsize=16,color="magenta"];7278[label="primCmpNat xux520 (Succ xux4480) == LT",fontsize=16,color="burlywood",shape="box"];9588[label="xux520/Succ xux5200",fontsize=10,color="white",style="solid",shape="box"];7278 -> 9588[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9588 -> 7747[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9589[label="xux520/Zero",fontsize=10,color="white",style="solid",shape="box"];7278 -> 9589[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9589 -> 7748[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7280 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7280[label="GT == LT",fontsize=16,color="magenta"];7312[label="xux139200",fontsize=16,color="green",shape="box"];7313 -> 7201[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7313[label="primCmpInt (Pos (Succ xux4610)) (FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)) == LT",fontsize=16,color="magenta"];7313 -> 7749[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7313 -> 7750[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7314 -> 7081[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7314[label="primCmpInt (Pos Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)) == LT",fontsize=16,color="magenta"];7314 -> 7751[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7723[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7723 -> 7752[label="",style="solid", color="black", weight=3]; 26.75/11.37 7724[label="FiniteMap.mkBalBranch6 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7724 -> 7753[label="",style="solid", color="black", weight=3]; 26.75/11.37 7294[label="xux1352",fontsize=16,color="green",shape="box"];7295[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Pos Zero) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7295 -> 7754[label="",style="solid", color="black", weight=3]; 26.75/11.37 7296[label="FiniteMap.mkBalBranch6 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7296 -> 7755[label="",style="solid", color="black", weight=3]; 26.75/11.37 7725[label="xux139200",fontsize=16,color="green",shape="box"];7726 -> 7207[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7726[label="primCmpInt (Neg (Succ xux4650)) (FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)) == LT",fontsize=16,color="magenta"];7726 -> 7756[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7726 -> 7757[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7727 -> 7119[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7727[label="primCmpInt (Neg Zero) (FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)) == LT",fontsize=16,color="magenta"];7727 -> 7758[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7734[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7734 -> 7810[label="",style="solid", color="black", weight=3]; 26.75/11.37 7735[label="FiniteMap.mkBalBranch6 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7735 -> 7811[label="",style="solid", color="black", weight=3]; 26.75/11.37 7315[label="FiniteMap.mkVBalBranch3MkVBalBranch0 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 xux141 xux142 xux1350 xux1351 xux1352 xux1353 xux1354 xux1390 xux1391 (Neg Zero) xux1393 xux1394 True",fontsize=16,color="black",shape="box"];7315 -> 7759[label="",style="solid", color="black", weight=3]; 26.75/11.37 7316[label="FiniteMap.mkBalBranch6 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394))",fontsize=16,color="black",shape="box"];7316 -> 7760[label="",style="solid", color="black", weight=3]; 26.75/11.37 8467 -> 8581[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8467[label="primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934)",fontsize=16,color="magenta"];8467 -> 8582[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8468[label="FiniteMap.mkVBalBranch3Size_r xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934",fontsize=16,color="black",shape="box"];8468 -> 8526[label="",style="solid", color="black", weight=3]; 26.75/11.37 8507[label="primPlusInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];8507 -> 8551[label="",style="solid", color="black", weight=3]; 26.75/11.37 8508[label="primPlusInt (Pos Zero) xux5602",fontsize=16,color="burlywood",shape="box"];9590[label="xux5602/Pos xux56020",fontsize=10,color="white",style="solid",shape="box"];8508 -> 9590[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9590 -> 8552[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9591[label="xux5602/Neg xux56020",fontsize=10,color="white",style="solid",shape="box"];8508 -> 9591[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9591 -> 8553[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8509[label="primCmpInt (Pos (Succ xux48100)) (Pos xux47900) == LT",fontsize=16,color="black",shape="box"];8509 -> 8554[label="",style="solid", color="black", weight=3]; 26.75/11.37 8510[label="primCmpInt (Pos (Succ xux48100)) (Neg xux47900) == LT",fontsize=16,color="black",shape="box"];8510 -> 8555[label="",style="solid", color="black", weight=3]; 26.75/11.37 8511[label="primCmpInt (Pos Zero) (Pos xux47900) == LT",fontsize=16,color="burlywood",shape="box"];9592[label="xux47900/Succ xux479000",fontsize=10,color="white",style="solid",shape="box"];8511 -> 9592[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9592 -> 8556[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9593[label="xux47900/Zero",fontsize=10,color="white",style="solid",shape="box"];8511 -> 9593[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9593 -> 8557[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8512[label="primCmpInt (Pos Zero) (Neg xux47900) == LT",fontsize=16,color="burlywood",shape="box"];9594[label="xux47900/Succ xux479000",fontsize=10,color="white",style="solid",shape="box"];8512 -> 9594[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9594 -> 8558[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9595[label="xux47900/Zero",fontsize=10,color="white",style="solid",shape="box"];8512 -> 9595[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9595 -> 8559[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8513[label="primCmpInt (Neg (Succ xux48100)) (Pos xux47900) == LT",fontsize=16,color="black",shape="box"];8513 -> 8560[label="",style="solid", color="black", weight=3]; 26.75/11.37 8514[label="primCmpInt (Neg (Succ xux48100)) (Neg xux47900) == LT",fontsize=16,color="black",shape="box"];8514 -> 8561[label="",style="solid", color="black", weight=3]; 26.75/11.37 8515[label="primCmpInt (Neg Zero) (Pos xux47900) == LT",fontsize=16,color="burlywood",shape="box"];9596[label="xux47900/Succ xux479000",fontsize=10,color="white",style="solid",shape="box"];8515 -> 9596[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9596 -> 8562[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9597[label="xux47900/Zero",fontsize=10,color="white",style="solid",shape="box"];8515 -> 9597[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9597 -> 8563[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8516[label="primCmpInt (Neg Zero) (Neg xux47900) == LT",fontsize=16,color="burlywood",shape="box"];9598[label="xux47900/Succ xux479000",fontsize=10,color="white",style="solid",shape="box"];8516 -> 9598[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9598 -> 8564[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9599[label="xux47900/Zero",fontsize=10,color="white",style="solid",shape="box"];8516 -> 9599[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9599 -> 8565[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8517 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8517[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8517 -> 8684[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8518[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="black",shape="triangle"];8518 -> 8567[label="",style="solid", color="black", weight=3]; 26.75/11.37 8519[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 False",fontsize=16,color="black",shape="box"];8519 -> 8568[label="",style="solid", color="black", weight=3]; 26.75/11.37 8520[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 True",fontsize=16,color="black",shape="box"];8520 -> 8569[label="",style="solid", color="black", weight=3]; 26.75/11.37 9255[label="FiniteMap.mkBranchResult xux633 xux634 xux635 xux636",fontsize=16,color="black",shape="box"];9255 -> 9315[label="",style="solid", color="black", weight=3]; 26.75/11.37 8521[label="primPlusInt (Pos xux49720) (FiniteMap.sizeFM FiniteMap.EmptyFM)",fontsize=16,color="black",shape="box"];8521 -> 8570[label="",style="solid", color="black", weight=3]; 26.75/11.37 8522[label="primPlusInt (Pos xux49720) (FiniteMap.sizeFM (FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604))",fontsize=16,color="black",shape="box"];8522 -> 8571[label="",style="solid", color="black", weight=3]; 26.75/11.37 8523 -> 8572[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8523[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974))",fontsize=16,color="magenta"];8523 -> 8573[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8524 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8524[label="FiniteMap.mkBranch (Pos (Succ Zero)) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558",fontsize=16,color="magenta"];8524 -> 9110[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8524 -> 9111[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8524 -> 9112[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8524 -> 9113[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8524 -> 9114[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8547[label="primPlusInt (Neg xux49720) (FiniteMap.sizeFM FiniteMap.EmptyFM)",fontsize=16,color="black",shape="box"];8547 -> 8576[label="",style="solid", color="black", weight=3]; 26.75/11.37 8548[label="primPlusInt (Neg xux49720) (FiniteMap.sizeFM (FiniteMap.Branch xux5600 xux5601 xux5602 xux5603 xux5604))",fontsize=16,color="black",shape="box"];8548 -> 8577[label="",style="solid", color="black", weight=3]; 26.75/11.37 8549 -> 8578[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8549[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974))",fontsize=16,color="magenta"];8549 -> 8579[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8550 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8550[label="FiniteMap.mkBranch (Pos (Succ Zero)) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558",fontsize=16,color="magenta"];8550 -> 9115[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8550 -> 9116[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8550 -> 9117[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8550 -> 9118[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8550 -> 9119[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 481[label="xux34",fontsize=16,color="green",shape="box"];482[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT (LT == LT)",fontsize=16,color="black",shape="box"];482 -> 640[label="",style="solid", color="black", weight=3]; 26.75/11.37 483[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT (LT == LT)",fontsize=16,color="black",shape="box"];483 -> 641[label="",style="solid", color="black", weight=3]; 26.75/11.37 484[label="xux34",fontsize=16,color="green",shape="box"];485[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ (LT == LT)",fontsize=16,color="black",shape="box"];485 -> 642[label="",style="solid", color="black", weight=3]; 26.75/11.37 486[label="xux34",fontsize=16,color="green",shape="box"];487[label="xux33",fontsize=16,color="green",shape="box"];488[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT (EQ <= LT) == GT)",fontsize=16,color="black",shape="box"];488 -> 643[label="",style="solid", color="black", weight=3]; 26.75/11.37 489[label="xux33",fontsize=16,color="green",shape="box"];490[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT (GT <= LT) == GT)",fontsize=16,color="black",shape="box"];490 -> 644[label="",style="solid", color="black", weight=3]; 26.75/11.37 491[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ (GT <= EQ) == GT)",fontsize=16,color="black",shape="box"];491 -> 645[label="",style="solid", color="black", weight=3]; 26.75/11.37 492[label="xux33",fontsize=16,color="green",shape="box"];8272[label="primCmpNat (Succ xux481000) (Succ xux476000) == GT",fontsize=16,color="black",shape="box"];8272 -> 8316[label="",style="solid", color="black", weight=3]; 26.75/11.37 8273[label="primCmpNat (Succ xux481000) Zero == GT",fontsize=16,color="black",shape="box"];8273 -> 8317[label="",style="solid", color="black", weight=3]; 26.75/11.37 8274[label="primCmpNat Zero (Succ xux476000) == GT",fontsize=16,color="black",shape="box"];8274 -> 8318[label="",style="solid", color="black", weight=3]; 26.75/11.37 8275[label="primCmpNat Zero Zero == GT",fontsize=16,color="black",shape="box"];8275 -> 8319[label="",style="solid", color="black", weight=3]; 26.75/11.37 8276[label="compare0 EQ LT True == GT",fontsize=16,color="black",shape="box"];8276 -> 8320[label="",style="solid", color="black", weight=3]; 26.75/11.37 8277[label="compare0 GT LT True == GT",fontsize=16,color="black",shape="box"];8277 -> 8321[label="",style="solid", color="black", weight=3]; 26.75/11.37 8278[label="compare0 GT EQ True == GT",fontsize=16,color="black",shape="box"];8278 -> 8322[label="",style="solid", color="black", weight=3]; 26.75/11.37 8425[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8425 -> 8450[label="",style="solid", color="black", weight=3]; 26.75/11.37 8426[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8426 -> 8451[label="",style="solid", color="black", weight=3]; 26.75/11.37 8427[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8427 -> 8452[label="",style="solid", color="black", weight=3]; 26.75/11.37 8428[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8428 -> 8453[label="",style="solid", color="black", weight=3]; 26.75/11.37 8429[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8429 -> 8454[label="",style="solid", color="black", weight=3]; 26.75/11.37 8431[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8431 -> 8457[label="",style="solid", color="black", weight=3]; 26.75/11.37 8432[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8432 -> 8458[label="",style="solid", color="black", weight=3]; 26.75/11.37 8433[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8433 -> 8459[label="",style="solid", color="black", weight=3]; 26.75/11.37 8434[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8434 -> 8460[label="",style="solid", color="black", weight=3]; 26.75/11.37 8435[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8435 -> 8461[label="",style="solid", color="black", weight=3]; 26.75/11.37 8436[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8436 -> 8462[label="",style="solid", color="black", weight=3]; 26.75/11.37 8437[label="compare3 xux481 xux4790 == LT",fontsize=16,color="black",shape="box"];8437 -> 8463[label="",style="solid", color="black", weight=3]; 26.75/11.37 7744 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7744[label="primPlusNat (primMulNat (Succ Zero) (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];7744 -> 7849[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7744 -> 7850[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 2715[label="xux120",fontsize=16,color="green",shape="box"];2716[label="xux2200",fontsize=16,color="green",shape="box"];7745[label="primCmpNat (Succ xux4470) (Succ xux5200) == LT",fontsize=16,color="black",shape="box"];7745 -> 7851[label="",style="solid", color="black", weight=3]; 26.75/11.37 7746[label="primCmpNat (Succ xux4470) Zero == LT",fontsize=16,color="black",shape="box"];7746 -> 7852[label="",style="solid", color="black", weight=3]; 26.75/11.37 7747[label="primCmpNat (Succ xux5200) (Succ xux4480) == LT",fontsize=16,color="black",shape="box"];7747 -> 7853[label="",style="solid", color="black", weight=3]; 26.75/11.37 7748[label="primCmpNat Zero (Succ xux4480) == LT",fontsize=16,color="black",shape="box"];7748 -> 7854[label="",style="solid", color="black", weight=3]; 26.75/11.37 7749[label="xux4610",fontsize=16,color="green",shape="box"];7750 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7750[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];7751 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7751[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];7752 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7752[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];7752 -> 9120[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7752 -> 9121[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7752 -> 9122[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7752 -> 9123[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7752 -> 9124[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7753[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7753 -> 7895[label="",style="solid", color="black", weight=3]; 26.75/11.37 7754 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7754[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="magenta"];7754 -> 9125[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7754 -> 9126[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7754 -> 9127[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7754 -> 9128[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7754 -> 9129[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7755[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7755 -> 7936[label="",style="solid", color="black", weight=3]; 26.75/11.37 7756[label="xux4650",fontsize=16,color="green",shape="box"];7757 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7757[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];7758 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7758[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];7810 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7810[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];7810 -> 9130[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7810 -> 9131[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7810 -> 9132[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7810 -> 9133[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7810 -> 9134[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7811[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7811 -> 7979[label="",style="solid", color="black", weight=3]; 26.75/11.37 7759 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7759[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))))) xux141 xux142 (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354) (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="magenta"];7759 -> 9135[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7759 -> 9136[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7759 -> 9137[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7759 -> 9138[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7759 -> 9139[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7760[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 < Pos (Succ (Succ Zero)))",fontsize=16,color="black",shape="box"];7760 -> 8025[label="",style="solid", color="black", weight=3]; 26.75/11.37 8582[label="FiniteMap.mkVBalBranch3Size_l xux1350 xux1351 xux1352 xux1353 xux1354 xux13930 xux13931 xux13932 xux13933 xux13934",fontsize=16,color="black",shape="box"];8582 -> 8584[label="",style="solid", color="black", weight=3]; 26.75/11.37 8581[label="primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux572",fontsize=16,color="burlywood",shape="triangle"];9600[label="xux572/Pos xux5720",fontsize=10,color="white",style="solid",shape="box"];8581 -> 9600[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9600 -> 8585[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9601[label="xux572/Neg xux5720",fontsize=10,color="white",style="solid",shape="box"];8581 -> 9601[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9601 -> 8586[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8526 -> 7252[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8526[label="FiniteMap.sizeFM (FiniteMap.Branch xux13930 xux13931 xux13932 xux13933 xux13934)",fontsize=16,color="magenta"];8526 -> 8587[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8526 -> 8588[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8526 -> 8589[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8526 -> 8590[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8526 -> 8591[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8551[label="Pos (primPlusNat Zero Zero)",fontsize=16,color="green",shape="box"];8551 -> 8592[label="",style="dashed", color="green", weight=3]; 26.75/11.37 8552[label="primPlusInt (Pos Zero) (Pos xux56020)",fontsize=16,color="black",shape="box"];8552 -> 8593[label="",style="solid", color="black", weight=3]; 26.75/11.37 8553[label="primPlusInt (Pos Zero) (Neg xux56020)",fontsize=16,color="black",shape="box"];8553 -> 8594[label="",style="solid", color="black", weight=3]; 26.75/11.37 8554 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8554[label="primCmpNat (Succ xux48100) xux47900 == LT",fontsize=16,color="magenta"];8554 -> 8595[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8554 -> 8596[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8555 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8555[label="GT == LT",fontsize=16,color="magenta"];8556[label="primCmpInt (Pos Zero) (Pos (Succ xux479000)) == LT",fontsize=16,color="black",shape="box"];8556 -> 8597[label="",style="solid", color="black", weight=3]; 26.75/11.37 8557[label="primCmpInt (Pos Zero) (Pos Zero) == LT",fontsize=16,color="black",shape="box"];8557 -> 8598[label="",style="solid", color="black", weight=3]; 26.75/11.37 8558[label="primCmpInt (Pos Zero) (Neg (Succ xux479000)) == LT",fontsize=16,color="black",shape="box"];8558 -> 8599[label="",style="solid", color="black", weight=3]; 26.75/11.37 8559[label="primCmpInt (Pos Zero) (Neg Zero) == LT",fontsize=16,color="black",shape="box"];8559 -> 8600[label="",style="solid", color="black", weight=3]; 26.75/11.37 8560 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8560[label="LT == LT",fontsize=16,color="magenta"];8561 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8561[label="primCmpNat xux47900 (Succ xux48100) == LT",fontsize=16,color="magenta"];8561 -> 8601[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8561 -> 8602[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8562[label="primCmpInt (Neg Zero) (Pos (Succ xux479000)) == LT",fontsize=16,color="black",shape="box"];8562 -> 8603[label="",style="solid", color="black", weight=3]; 26.75/11.37 8563[label="primCmpInt (Neg Zero) (Pos Zero) == LT",fontsize=16,color="black",shape="box"];8563 -> 8604[label="",style="solid", color="black", weight=3]; 26.75/11.37 8564[label="primCmpInt (Neg Zero) (Neg (Succ xux479000)) == LT",fontsize=16,color="black",shape="box"];8564 -> 8605[label="",style="solid", color="black", weight=3]; 26.75/11.37 8565[label="primCmpInt (Neg Zero) (Neg Zero) == LT",fontsize=16,color="black",shape="box"];8565 -> 8606[label="",style="solid", color="black", weight=3]; 26.75/11.37 8684[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="black",shape="triangle"];8684 -> 8688[label="",style="solid", color="black", weight=3]; 26.75/11.37 8683[label="FiniteMap.sIZE_RATIO * xux577",fontsize=16,color="black",shape="triangle"];8683 -> 8689[label="",style="solid", color="black", weight=3]; 26.75/11.37 8567[label="FiniteMap.sizeFM xux559",fontsize=16,color="burlywood",shape="triangle"];9602[label="xux559/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8567 -> 9602[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9602 -> 8608[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9603[label="xux559/FiniteMap.Branch xux5590 xux5591 xux5592 xux5593 xux5594",fontsize=10,color="white",style="solid",shape="box"];8567 -> 9603[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9603 -> 8609[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8568 -> 8610[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8568[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 (FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM)",fontsize=16,color="magenta"];8568 -> 8611[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8569[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM xux558 xux558",fontsize=16,color="burlywood",shape="box"];9604[label="xux558/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8569 -> 9604[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9604 -> 8612[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9605[label="xux558/FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584",fontsize=10,color="white",style="solid",shape="box"];8569 -> 9605[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9605 -> 8613[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9315[label="FiniteMap.Branch xux633 xux634 (FiniteMap.mkBranchUnbox xux635 xux633 xux636 (Pos (Succ Zero) + FiniteMap.mkBranchLeft_size xux635 xux633 xux636 + FiniteMap.mkBranchRight_size xux635 xux633 xux636)) xux635 xux636",fontsize=16,color="green",shape="box"];9315 -> 9326[label="",style="dashed", color="green", weight=3]; 26.75/11.37 8570[label="primPlusInt (Pos xux49720) (Pos Zero)",fontsize=16,color="black",shape="box"];8570 -> 8615[label="",style="solid", color="black", weight=3]; 26.75/11.37 8571[label="primPlusInt (Pos xux49720) xux5602",fontsize=16,color="burlywood",shape="triangle"];9606[label="xux5602/Pos xux56020",fontsize=10,color="white",style="solid",shape="box"];8571 -> 9606[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9606 -> 8616[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9607[label="xux5602/Neg xux56020",fontsize=10,color="white",style="solid",shape="box"];8571 -> 9607[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9607 -> 8617[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8573 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8573[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8573 -> 8618[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8573 -> 8619[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8572[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux570",fontsize=16,color="burlywood",shape="triangle"];9608[label="xux570/False",fontsize=10,color="white",style="solid",shape="box"];8572 -> 9608[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9608 -> 8620[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9609[label="xux570/True",fontsize=10,color="white",style="solid",shape="box"];8572 -> 9609[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9609 -> 8621[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9110[label="xux495",fontsize=16,color="green",shape="box"];9111[label="xux558",fontsize=16,color="green",shape="box"];9112[label="FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9113[label="Zero",fontsize=16,color="green",shape="box"];9114[label="xux494",fontsize=16,color="green",shape="box"];8576[label="primPlusInt (Neg xux49720) (Pos Zero)",fontsize=16,color="black",shape="box"];8576 -> 8623[label="",style="solid", color="black", weight=3]; 26.75/11.37 8577[label="primPlusInt (Neg xux49720) xux5602",fontsize=16,color="burlywood",shape="triangle"];9610[label="xux5602/Pos xux56020",fontsize=10,color="white",style="solid",shape="box"];8577 -> 9610[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9610 -> 8624[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9611[label="xux5602/Neg xux56020",fontsize=10,color="white",style="solid",shape="box"];8577 -> 9611[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9611 -> 8625[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8579 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8579[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8579 -> 8626[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8579 -> 8627[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8578[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux571",fontsize=16,color="burlywood",shape="triangle"];9612[label="xux571/False",fontsize=10,color="white",style="solid",shape="box"];8578 -> 9612[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9612 -> 8628[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9613[label="xux571/True",fontsize=10,color="white",style="solid",shape="box"];8578 -> 9613[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9613 -> 8629[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9115[label="xux495",fontsize=16,color="green",shape="box"];9116[label="xux558",fontsize=16,color="green",shape="box"];9117[label="FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9118[label="Zero",fontsize=16,color="green",shape="box"];9119[label="xux494",fontsize=16,color="green",shape="box"];640[label="FiniteMap.splitGT1 EQ xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];640 -> 667[label="",style="solid", color="black", weight=3]; 26.75/11.37 641[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 LT True",fontsize=16,color="black",shape="box"];641 -> 668[label="",style="solid", color="black", weight=3]; 26.75/11.37 642[label="FiniteMap.splitGT1 GT xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];642 -> 669[label="",style="solid", color="black", weight=3]; 26.75/11.37 643[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare1 EQ LT False == GT)",fontsize=16,color="black",shape="box"];643 -> 670[label="",style="solid", color="black", weight=3]; 26.75/11.37 644[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare1 GT LT False == GT)",fontsize=16,color="black",shape="box"];644 -> 671[label="",style="solid", color="black", weight=3]; 26.75/11.37 645[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare1 GT EQ False == GT)",fontsize=16,color="black",shape="box"];645 -> 672[label="",style="solid", color="black", weight=3]; 26.75/11.37 8316 -> 8170[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8316[label="primCmpNat xux481000 xux476000 == GT",fontsize=16,color="magenta"];8316 -> 8392[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8316 -> 8393[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8317 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8317[label="GT == GT",fontsize=16,color="magenta"];8318 -> 8075[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8318[label="LT == GT",fontsize=16,color="magenta"];8319 -> 8121[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8319[label="EQ == GT",fontsize=16,color="magenta"];8320 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8320[label="GT == GT",fontsize=16,color="magenta"];8321 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8321[label="GT == GT",fontsize=16,color="magenta"];8322 -> 8070[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8322[label="GT == GT",fontsize=16,color="magenta"];8450[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8450 -> 8527[label="",style="solid", color="black", weight=3]; 26.75/11.37 8451[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8451 -> 8528[label="",style="solid", color="black", weight=3]; 26.75/11.37 8452[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8452 -> 8529[label="",style="solid", color="black", weight=3]; 26.75/11.37 8453[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8453 -> 8530[label="",style="solid", color="black", weight=3]; 26.75/11.37 8454[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8454 -> 8531[label="",style="solid", color="black", weight=3]; 26.75/11.37 8457[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8457 -> 8532[label="",style="solid", color="black", weight=3]; 26.75/11.37 8458[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8458 -> 8533[label="",style="solid", color="black", weight=3]; 26.75/11.37 8459[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8459 -> 8534[label="",style="solid", color="black", weight=3]; 26.75/11.37 8460[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8460 -> 8535[label="",style="solid", color="black", weight=3]; 26.75/11.37 8461[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8461 -> 8536[label="",style="solid", color="black", weight=3]; 26.75/11.37 8462[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8462 -> 8537[label="",style="solid", color="black", weight=3]; 26.75/11.37 8463[label="compare2 xux481 xux4790 (xux481 == xux4790) == LT",fontsize=16,color="black",shape="box"];8463 -> 8538[label="",style="solid", color="black", weight=3]; 26.75/11.37 7849[label="Succ xux6200",fontsize=16,color="green",shape="box"];7850[label="primMulNat (Succ Zero) (Succ xux6200)",fontsize=16,color="black",shape="triangle"];7850 -> 8152[label="",style="solid", color="black", weight=3]; 26.75/11.37 7851[label="primCmpNat xux4470 xux5200 == LT",fontsize=16,color="burlywood",shape="triangle"];9614[label="xux4470/Succ xux44700",fontsize=10,color="white",style="solid",shape="box"];7851 -> 9614[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9614 -> 8153[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9615[label="xux4470/Zero",fontsize=10,color="white",style="solid",shape="box"];7851 -> 9615[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9615 -> 8154[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 7852 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7852[label="GT == LT",fontsize=16,color="magenta"];7853 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7853[label="primCmpNat xux5200 xux4480 == LT",fontsize=16,color="magenta"];7853 -> 8155[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7853 -> 8156[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 7854 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 7854[label="LT == LT",fontsize=16,color="magenta"];9120[label="xux142",fontsize=16,color="green",shape="box"];9121[label="FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394",fontsize=16,color="green",shape="box"];9122[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];9123[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))",fontsize=16,color="green",shape="box"];9124[label="xux141",fontsize=16,color="green",shape="box"];7895[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) (compare (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];7895 -> 8158[label="",style="solid", color="black", weight=3]; 26.75/11.37 9125[label="xux142",fontsize=16,color="green",shape="box"];9126[label="FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394",fontsize=16,color="green",shape="box"];9127[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];9128[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))",fontsize=16,color="green",shape="box"];9129[label="xux141",fontsize=16,color="green",shape="box"];7936[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) (compare (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];7936 -> 8160[label="",style="solid", color="black", weight=3]; 26.75/11.37 9130[label="xux142",fontsize=16,color="green",shape="box"];9131[label="FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394",fontsize=16,color="green",shape="box"];9132[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];9133[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))",fontsize=16,color="green",shape="box"];9134[label="xux141",fontsize=16,color="green",shape="box"];7979[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) (compare (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];7979 -> 8162[label="",style="solid", color="black", weight=3]; 26.75/11.37 9135[label="xux142",fontsize=16,color="green",shape="box"];9136[label="FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394",fontsize=16,color="green",shape="box"];9137[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];9138[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))",fontsize=16,color="green",shape="box"];9139[label="xux141",fontsize=16,color="green",shape="box"];8025[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) (compare (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="black",shape="box"];8025 -> 8164[label="",style="solid", color="black", weight=3]; 26.75/11.37 8584 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8584[label="FiniteMap.sizeFM (FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354)",fontsize=16,color="magenta"];8584 -> 8631[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8585[label="primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Pos xux5720)",fontsize=16,color="black",shape="box"];8585 -> 8632[label="",style="solid", color="black", weight=3]; 26.75/11.37 8586[label="primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) (Neg xux5720)",fontsize=16,color="black",shape="box"];8586 -> 8633[label="",style="solid", color="black", weight=3]; 26.75/11.37 8587[label="xux13930",fontsize=16,color="green",shape="box"];8588[label="xux13933",fontsize=16,color="green",shape="box"];8589[label="xux13934",fontsize=16,color="green",shape="box"];8590[label="xux13931",fontsize=16,color="green",shape="box"];8591[label="xux13932",fontsize=16,color="green",shape="box"];8592 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8592[label="primPlusNat Zero Zero",fontsize=16,color="magenta"];8592 -> 8634[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8592 -> 8635[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8593[label="Pos (primPlusNat Zero xux56020)",fontsize=16,color="green",shape="box"];8593 -> 8636[label="",style="dashed", color="green", weight=3]; 26.75/11.37 8594[label="primMinusNat Zero xux56020",fontsize=16,color="burlywood",shape="triangle"];9616[label="xux56020/Succ xux560200",fontsize=10,color="white",style="solid",shape="box"];8594 -> 9616[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9616 -> 8637[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 9617[label="xux56020/Zero",fontsize=10,color="white",style="solid",shape="box"];8594 -> 9617[label="",style="solid", color="burlywood", weight=9]; 26.75/11.37 9617 -> 8638[label="",style="solid", color="burlywood", weight=3]; 26.75/11.37 8595[label="xux47900",fontsize=16,color="green",shape="box"];8596[label="Succ xux48100",fontsize=16,color="green",shape="box"];8597 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8597[label="primCmpNat Zero (Succ xux479000) == LT",fontsize=16,color="magenta"];8597 -> 8639[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8597 -> 8640[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8598 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8598[label="EQ == LT",fontsize=16,color="magenta"];8599 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8599[label="GT == LT",fontsize=16,color="magenta"];8600 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8600[label="EQ == LT",fontsize=16,color="magenta"];8601[label="Succ xux48100",fontsize=16,color="green",shape="box"];8602[label="xux47900",fontsize=16,color="green",shape="box"];8603 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8603[label="LT == LT",fontsize=16,color="magenta"];8604 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8604[label="EQ == LT",fontsize=16,color="magenta"];8605 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8605[label="primCmpNat (Succ xux479000) Zero == LT",fontsize=16,color="magenta"];8605 -> 8641[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8605 -> 8642[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8606 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8606[label="EQ == LT",fontsize=16,color="magenta"];8688 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8688[label="FiniteMap.sizeFM FiniteMap.EmptyFM",fontsize=16,color="magenta"];8688 -> 8702[label="",style="dashed", color="magenta", weight=3]; 26.75/11.37 8689[label="primMulInt FiniteMap.sIZE_RATIO xux577",fontsize=16,color="black",shape="box"];8689 -> 8703[label="",style="solid", color="black", weight=3]; 26.75/11.37 8608[label="FiniteMap.sizeFM FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8608 -> 8644[label="",style="solid", color="black", weight=3]; 26.75/11.37 8609[label="FiniteMap.sizeFM (FiniteMap.Branch xux5590 xux5591 xux5592 xux5593 xux5594)",fontsize=16,color="black",shape="box"];8609 -> 8645[label="",style="solid", color="black", weight=3]; 26.75/11.37 8611 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.37 8611[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8611 -> 8646[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8611 -> 8647[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8610[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 xux573",fontsize=16,color="burlywood",shape="triangle"];9618[label="xux573/False",fontsize=10,color="white",style="solid",shape="box"];8610 -> 9618[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9618 -> 8648[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9619[label="xux573/True",fontsize=10,color="white",style="solid",shape="box"];8610 -> 9619[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9619 -> 8649[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8612[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM FiniteMap.EmptyFM FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8612 -> 8657[label="",style="solid", color="black", weight=3]; 26.75/11.38 8613[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8613 -> 8658[label="",style="solid", color="black", weight=3]; 26.75/11.38 9326[label="FiniteMap.mkBranchUnbox xux635 xux633 xux636 (Pos (Succ Zero) + FiniteMap.mkBranchLeft_size xux635 xux633 xux636 + FiniteMap.mkBranchRight_size xux635 xux633 xux636)",fontsize=16,color="black",shape="box"];9326 -> 9347[label="",style="solid", color="black", weight=3]; 26.75/11.38 8615[label="Pos (primPlusNat xux49720 Zero)",fontsize=16,color="green",shape="box"];8615 -> 8660[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8616[label="primPlusInt (Pos xux49720) (Pos xux56020)",fontsize=16,color="black",shape="box"];8616 -> 8661[label="",style="solid", color="black", weight=3]; 26.75/11.38 8617[label="primPlusInt (Pos xux49720) (Neg xux56020)",fontsize=16,color="black",shape="box"];8617 -> 8662[label="",style="solid", color="black", weight=3]; 26.75/11.38 8618 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8618[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8618 -> 8685[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8619[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="triangle"];8619 -> 8664[label="",style="solid", color="black", weight=3]; 26.75/11.38 8620[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8620 -> 8665[label="",style="solid", color="black", weight=3]; 26.75/11.38 8621[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8621 -> 8666[label="",style="solid", color="black", weight=3]; 26.75/11.38 8623 -> 8594[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8623[label="primMinusNat Zero xux49720",fontsize=16,color="magenta"];8623 -> 8668[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8624[label="primPlusInt (Neg xux49720) (Pos xux56020)",fontsize=16,color="black",shape="box"];8624 -> 8669[label="",style="solid", color="black", weight=3]; 26.75/11.38 8625[label="primPlusInt (Neg xux49720) (Neg xux56020)",fontsize=16,color="black",shape="box"];8625 -> 8670[label="",style="solid", color="black", weight=3]; 26.75/11.38 8626 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8626[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8626 -> 8686[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8627[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="triangle"];8627 -> 8672[label="",style="solid", color="black", weight=3]; 26.75/11.38 8628[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8628 -> 8673[label="",style="solid", color="black", weight=3]; 26.75/11.38 8629[label="FiniteMap.mkBalBranch6MkBalBranch4 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8629 -> 8674[label="",style="solid", color="black", weight=3]; 26.75/11.38 667 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 667[label="FiniteMap.mkVBalBranch EQ xux31 (FiniteMap.splitGT xux33 LT) xux34",fontsize=16,color="magenta"];667 -> 690[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 667 -> 691[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 667 -> 692[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 667 -> 693[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 668 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 668[label="FiniteMap.mkVBalBranch GT xux31 (FiniteMap.splitGT xux33 LT) xux34",fontsize=16,color="magenta"];668 -> 694[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 668 -> 695[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 668 -> 696[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 668 -> 697[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 669 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 669[label="FiniteMap.mkVBalBranch GT xux31 (FiniteMap.splitGT xux33 EQ) xux34",fontsize=16,color="magenta"];669 -> 698[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 669 -> 699[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 669 -> 700[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 669 -> 701[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 670[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT otherwise == GT)",fontsize=16,color="black",shape="box"];670 -> 702[label="",style="solid", color="black", weight=3]; 26.75/11.38 671[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT otherwise == GT)",fontsize=16,color="black",shape="box"];671 -> 703[label="",style="solid", color="black", weight=3]; 26.75/11.38 672[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ otherwise == GT)",fontsize=16,color="black",shape="box"];672 -> 704[label="",style="solid", color="black", weight=3]; 26.75/11.38 8392[label="xux481000",fontsize=16,color="green",shape="box"];8393[label="xux476000",fontsize=16,color="green",shape="box"];8527[label="error []",fontsize=16,color="red",shape="box"];8528[label="error []",fontsize=16,color="red",shape="box"];8529[label="error []",fontsize=16,color="red",shape="box"];8530[label="error []",fontsize=16,color="red",shape="box"];8531[label="error []",fontsize=16,color="red",shape="box"];8532[label="error []",fontsize=16,color="red",shape="box"];8533[label="error []",fontsize=16,color="red",shape="box"];8534[label="error []",fontsize=16,color="red",shape="box"];8535[label="error []",fontsize=16,color="red",shape="box"];8536[label="error []",fontsize=16,color="red",shape="box"];8537[label="error []",fontsize=16,color="red",shape="box"];8538[label="error []",fontsize=16,color="red",shape="box"];8152 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8152[label="primPlusNat (primMulNat Zero (Succ xux6200)) (Succ xux6200)",fontsize=16,color="magenta"];8152 -> 8185[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8152 -> 8186[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8153[label="primCmpNat (Succ xux44700) xux5200 == LT",fontsize=16,color="burlywood",shape="box"];9620[label="xux5200/Succ xux52000",fontsize=10,color="white",style="solid",shape="box"];8153 -> 9620[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9620 -> 8187[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9621[label="xux5200/Zero",fontsize=10,color="white",style="solid",shape="box"];8153 -> 9621[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9621 -> 8188[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8154[label="primCmpNat Zero xux5200 == LT",fontsize=16,color="burlywood",shape="box"];9622[label="xux5200/Succ xux52000",fontsize=10,color="white",style="solid",shape="box"];8154 -> 9622[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9622 -> 8189[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9623[label="xux5200/Zero",fontsize=10,color="white",style="solid",shape="box"];8154 -> 9623[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9623 -> 8190[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8155[label="xux4480",fontsize=16,color="green",shape="box"];8156[label="xux5200",fontsize=16,color="green",shape="box"];8158 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8158[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) (primCmpInt (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8158 -> 8192[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8193[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8194[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8195[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8196[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8197[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8158 -> 8198[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8160[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) (primCmpInt (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8160 -> 8200[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8201[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8202[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8203[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8204[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8205[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8160 -> 8206[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8162[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) (primCmpInt (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8162 -> 8208[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8209[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8210[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8211[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8212[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8213[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8162 -> 8214[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8090[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8164[label="FiniteMap.mkBalBranch6MkBalBranch5 xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 xux1350 xux1351 xux1353 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) (primCmpInt (FiniteMap.mkBalBranch6Size_l xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353 + FiniteMap.mkBalBranch6Size_r xux1350 xux1351 (FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)) xux1353) (Pos (Succ (Succ Zero))) == LT)",fontsize=16,color="magenta"];8164 -> 8216[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8217[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8218[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8219[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8220[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8221[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8164 -> 8222[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8631[label="FiniteMap.Branch xux1350 xux1351 xux1352 xux1353 xux1354",fontsize=16,color="green",shape="box"];8632[label="Pos (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux5720)",fontsize=16,color="green",shape="box"];8632 -> 8676[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8633[label="Neg (primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux5720)",fontsize=16,color="green",shape="box"];8633 -> 8677[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8634[label="Zero",fontsize=16,color="green",shape="box"];8635[label="Zero",fontsize=16,color="green",shape="box"];8636 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8636[label="primPlusNat Zero xux56020",fontsize=16,color="magenta"];8636 -> 8678[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8636 -> 8679[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8637[label="primMinusNat Zero (Succ xux560200)",fontsize=16,color="black",shape="box"];8637 -> 8680[label="",style="solid", color="black", weight=3]; 26.75/11.38 8638[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];8638 -> 8681[label="",style="solid", color="black", weight=3]; 26.75/11.38 8639[label="Succ xux479000",fontsize=16,color="green",shape="box"];8640[label="Zero",fontsize=16,color="green",shape="box"];8641[label="Zero",fontsize=16,color="green",shape="box"];8642[label="Succ xux479000",fontsize=16,color="green",shape="box"];8702[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];8703 -> 8581[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8703[label="primMulInt (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux577",fontsize=16,color="magenta"];8703 -> 8713[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8644[label="Pos Zero",fontsize=16,color="green",shape="box"];8645[label="xux5592",fontsize=16,color="green",shape="box"];8646 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8646[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8646 -> 8687[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8647 -> 8684[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8647[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8648[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 False",fontsize=16,color="black",shape="box"];8648 -> 8690[label="",style="solid", color="black", weight=3]; 26.75/11.38 8649[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 True",fontsize=16,color="black",shape="box"];8649 -> 8691[label="",style="solid", color="black", weight=3]; 26.75/11.38 8657[label="error []",fontsize=16,color="red",shape="box"];8658[label="FiniteMap.mkBalBranch6MkBalBranch02 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8658 -> 8692[label="",style="solid", color="black", weight=3]; 26.75/11.38 9347[label="Pos (Succ Zero) + FiniteMap.mkBranchLeft_size xux635 xux633 xux636 + FiniteMap.mkBranchRight_size xux635 xux633 xux636",fontsize=16,color="black",shape="box"];9347 -> 9348[label="",style="solid", color="black", weight=3]; 26.75/11.38 8660 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8660[label="primPlusNat xux49720 Zero",fontsize=16,color="magenta"];8660 -> 8694[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8660 -> 8695[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8661[label="Pos (primPlusNat xux49720 xux56020)",fontsize=16,color="green",shape="box"];8661 -> 8696[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8662[label="primMinusNat xux49720 xux56020",fontsize=16,color="burlywood",shape="triangle"];9624[label="xux49720/Succ xux497200",fontsize=10,color="white",style="solid",shape="box"];8662 -> 9624[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9624 -> 8697[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9625[label="xux49720/Zero",fontsize=10,color="white",style="solid",shape="box"];8662 -> 9625[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9625 -> 8698[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8685[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="triangle"];8685 -> 8699[label="",style="solid", color="black", weight=3]; 26.75/11.38 8664 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8664[label="FiniteMap.sizeFM xux559",fontsize=16,color="magenta"];8665 -> 8700[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8665[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974))",fontsize=16,color="magenta"];8665 -> 8701[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8666[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux558",fontsize=16,color="burlywood",shape="box"];9626[label="xux558/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8666 -> 9626[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9626 -> 8704[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9627[label="xux558/FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584",fontsize=10,color="white",style="solid",shape="box"];8666 -> 9627[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9627 -> 8705[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8668[label="xux49720",fontsize=16,color="green",shape="box"];8669 -> 8662[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8669[label="primMinusNat xux56020 xux49720",fontsize=16,color="magenta"];8669 -> 8707[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8669 -> 8708[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8670[label="Neg (primPlusNat xux49720 xux56020)",fontsize=16,color="green",shape="box"];8670 -> 8709[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8686[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="triangle"];8686 -> 8710[label="",style="solid", color="black", weight=3]; 26.75/11.38 8672 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8672[label="FiniteMap.sizeFM xux559",fontsize=16,color="magenta"];8673 -> 8711[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8673[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974))",fontsize=16,color="magenta"];8673 -> 8712[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8674[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux558",fontsize=16,color="burlywood",shape="box"];9628[label="xux558/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8674 -> 9628[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9628 -> 8714[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9629[label="xux558/FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584",fontsize=10,color="white",style="solid",shape="box"];8674 -> 9629[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9629 -> 8715[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 690[label="xux31",fontsize=16,color="green",shape="box"];691[label="xux34",fontsize=16,color="green",shape="box"];692[label="EQ",fontsize=16,color="green",shape="box"];693[label="FiniteMap.splitGT xux33 LT",fontsize=16,color="burlywood",shape="triangle"];9630[label="xux33/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];693 -> 9630[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9630 -> 724[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9631[label="xux33/FiniteMap.Branch xux330 xux331 xux332 xux333 xux334",fontsize=10,color="white",style="solid",shape="box"];693 -> 9631[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9631 -> 725[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 694[label="xux31",fontsize=16,color="green",shape="box"];695[label="xux34",fontsize=16,color="green",shape="box"];696[label="GT",fontsize=16,color="green",shape="box"];697 -> 693[label="",style="dashed", color="red", weight=0]; 26.75/11.38 697[label="FiniteMap.splitGT xux33 LT",fontsize=16,color="magenta"];698[label="xux31",fontsize=16,color="green",shape="box"];699[label="xux34",fontsize=16,color="green",shape="box"];700[label="GT",fontsize=16,color="green",shape="box"];701 -> 284[label="",style="dashed", color="red", weight=0]; 26.75/11.38 701[label="FiniteMap.splitGT xux33 EQ",fontsize=16,color="magenta"];701 -> 726[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 702[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (compare0 EQ LT True == GT)",fontsize=16,color="black",shape="box"];702 -> 727[label="",style="solid", color="black", weight=3]; 26.75/11.38 703[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (compare0 GT LT True == GT)",fontsize=16,color="black",shape="box"];703 -> 728[label="",style="solid", color="black", weight=3]; 26.75/11.38 704[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (compare0 GT EQ True == GT)",fontsize=16,color="black",shape="box"];704 -> 729[label="",style="solid", color="black", weight=3]; 26.75/11.38 8185[label="Succ xux6200",fontsize=16,color="green",shape="box"];8186[label="primMulNat Zero (Succ xux6200)",fontsize=16,color="black",shape="box"];8186 -> 8239[label="",style="solid", color="black", weight=3]; 26.75/11.38 8187[label="primCmpNat (Succ xux44700) (Succ xux52000) == LT",fontsize=16,color="black",shape="box"];8187 -> 8240[label="",style="solid", color="black", weight=3]; 26.75/11.38 8188[label="primCmpNat (Succ xux44700) Zero == LT",fontsize=16,color="black",shape="box"];8188 -> 8241[label="",style="solid", color="black", weight=3]; 26.75/11.38 8189[label="primCmpNat Zero (Succ xux52000) == LT",fontsize=16,color="black",shape="box"];8189 -> 8242[label="",style="solid", color="black", weight=3]; 26.75/11.38 8190[label="primCmpNat Zero Zero == LT",fontsize=16,color="black",shape="box"];8190 -> 8243[label="",style="solid", color="black", weight=3]; 26.75/11.38 8192[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="burlywood",shape="triangle"];9632[label="xux1354/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8192 -> 9632[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9632 -> 8245[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9633[label="xux1354/FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544",fontsize=10,color="white",style="solid",shape="box"];8192 -> 9633[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9633 -> 8246[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8193[label="xux1351",fontsize=16,color="green",shape="box"];8194[label="xux1350",fontsize=16,color="green",shape="box"];8195[label="xux1353",fontsize=16,color="green",shape="box"];8196 -> 8192[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8196[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8197 -> 8192[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8197[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8198 -> 8192[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8198[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8200[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="burlywood",shape="triangle"];9634[label="xux1354/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8200 -> 9634[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9634 -> 8248[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9635[label="xux1354/FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544",fontsize=10,color="white",style="solid",shape="box"];8200 -> 9635[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9635 -> 8249[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8201[label="xux1351",fontsize=16,color="green",shape="box"];8202[label="xux1350",fontsize=16,color="green",shape="box"];8203[label="xux1353",fontsize=16,color="green",shape="box"];8204 -> 8200[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8204[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8205 -> 8200[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8205[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8206 -> 8200[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8206[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8208[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="burlywood",shape="triangle"];9636[label="xux1354/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8208 -> 9636[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9636 -> 8251[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9637[label="xux1354/FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544",fontsize=10,color="white",style="solid",shape="box"];8208 -> 9637[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9637 -> 8252[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8209[label="xux1351",fontsize=16,color="green",shape="box"];8210[label="xux1350",fontsize=16,color="green",shape="box"];8211[label="xux1353",fontsize=16,color="green",shape="box"];8212 -> 8208[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8212[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8213 -> 8208[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8213[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8214 -> 8208[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8214[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8216[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="burlywood",shape="triangle"];9638[label="xux1354/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8216 -> 9638[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9638 -> 8254[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9639[label="xux1354/FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544",fontsize=10,color="white",style="solid",shape="box"];8216 -> 9639[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9639 -> 8255[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8217[label="xux1351",fontsize=16,color="green",shape="box"];8218[label="xux1350",fontsize=16,color="green",shape="box"];8219[label="xux1353",fontsize=16,color="green",shape="box"];8220 -> 8216[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8220[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8221 -> 8216[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8221[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8222 -> 8216[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8222[label="FiniteMap.mkVBalBranch xux141 xux142 xux1354 (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8676[label="primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux5720",fontsize=16,color="burlywood",shape="triangle"];9640[label="xux5720/Succ xux57200",fontsize=10,color="white",style="solid",shape="box"];8676 -> 9640[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9640 -> 8717[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9641[label="xux5720/Zero",fontsize=10,color="white",style="solid",shape="box"];8676 -> 9641[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9641 -> 8718[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8677 -> 8676[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8677[label="primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) xux5720",fontsize=16,color="magenta"];8677 -> 8719[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8678[label="xux56020",fontsize=16,color="green",shape="box"];8679[label="Zero",fontsize=16,color="green",shape="box"];8680[label="Neg (Succ xux560200)",fontsize=16,color="green",shape="box"];8681[label="Pos Zero",fontsize=16,color="green",shape="box"];8713[label="xux577",fontsize=16,color="green",shape="box"];8687 -> 8518[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8687[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 FiniteMap.EmptyFM",fontsize=16,color="magenta"];8690[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 otherwise",fontsize=16,color="black",shape="box"];8690 -> 8720[label="",style="solid", color="black", weight=3]; 26.75/11.38 8691[label="FiniteMap.mkBalBranch6MkBalBranch1 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM xux558 FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8691 -> 8721[label="",style="solid", color="black", weight=3]; 26.75/11.38 8692 -> 8722[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8692[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 (FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584)",fontsize=16,color="magenta"];8692 -> 8723[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9348 -> 9350[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9348[label="primPlusInt (Pos (Succ Zero) + FiniteMap.mkBranchLeft_size xux635 xux633 xux636) (FiniteMap.mkBranchRight_size xux635 xux633 xux636)",fontsize=16,color="magenta"];9348 -> 9351[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8694[label="Zero",fontsize=16,color="green",shape="box"];8695[label="xux49720",fontsize=16,color="green",shape="box"];8696 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8696[label="primPlusNat xux49720 xux56020",fontsize=16,color="magenta"];8696 -> 8730[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8696 -> 8731[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8697[label="primMinusNat (Succ xux497200) xux56020",fontsize=16,color="burlywood",shape="box"];9642[label="xux56020/Succ xux560200",fontsize=10,color="white",style="solid",shape="box"];8697 -> 9642[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9642 -> 8732[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9643[label="xux56020/Zero",fontsize=10,color="white",style="solid",shape="box"];8697 -> 9643[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9643 -> 8733[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8698[label="primMinusNat Zero xux56020",fontsize=16,color="burlywood",shape="box"];9644[label="xux56020/Succ xux560200",fontsize=10,color="white",style="solid",shape="box"];8698 -> 9644[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9644 -> 8734[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9645[label="xux56020/Zero",fontsize=10,color="white",style="solid",shape="box"];8698 -> 9645[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9645 -> 8735[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8699 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8699[label="FiniteMap.sizeFM (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8699 -> 8736[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8701 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8701[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8701 -> 8737[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8701 -> 8738[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8700[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux578",fontsize=16,color="burlywood",shape="triangle"];9646[label="xux578/False",fontsize=10,color="white",style="solid",shape="box"];8700 -> 9646[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9646 -> 8739[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9647[label="xux578/True",fontsize=10,color="white",style="solid",shape="box"];8700 -> 9647[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9647 -> 8740[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8704[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) FiniteMap.EmptyFM FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8704 -> 8741[label="",style="solid", color="black", weight=3]; 26.75/11.38 8705[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8705 -> 8742[label="",style="solid", color="black", weight=3]; 26.75/11.38 8707[label="xux56020",fontsize=16,color="green",shape="box"];8708[label="xux49720",fontsize=16,color="green",shape="box"];8709 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8709[label="primPlusNat xux49720 xux56020",fontsize=16,color="magenta"];8709 -> 8744[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8709 -> 8745[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8710 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8710[label="FiniteMap.sizeFM (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8710 -> 8746[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8712 -> 7799[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8712[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) > FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8712 -> 8747[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8712 -> 8748[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8711[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux582",fontsize=16,color="burlywood",shape="triangle"];9648[label="xux582/False",fontsize=10,color="white",style="solid",shape="box"];8711 -> 9648[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9648 -> 8749[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9649[label="xux582/True",fontsize=10,color="white",style="solid",shape="box"];8711 -> 9649[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9649 -> 8750[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8714[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) FiniteMap.EmptyFM FiniteMap.EmptyFM",fontsize=16,color="black",shape="box"];8714 -> 8751[label="",style="solid", color="black", weight=3]; 26.75/11.38 8715[label="FiniteMap.mkBalBranch6MkBalBranch0 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8715 -> 8752[label="",style="solid", color="black", weight=3]; 26.75/11.38 724[label="FiniteMap.splitGT FiniteMap.EmptyFM LT",fontsize=16,color="black",shape="box"];724 -> 749[label="",style="solid", color="black", weight=3]; 26.75/11.38 725[label="FiniteMap.splitGT (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) LT",fontsize=16,color="black",shape="box"];725 -> 750[label="",style="solid", color="black", weight=3]; 26.75/11.38 726[label="xux33",fontsize=16,color="green",shape="box"];727[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ (GT == GT)",fontsize=16,color="black",shape="box"];727 -> 751[label="",style="solid", color="black", weight=3]; 26.75/11.38 728[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT (GT == GT)",fontsize=16,color="black",shape="box"];728 -> 752[label="",style="solid", color="black", weight=3]; 26.75/11.38 729[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT (GT == GT)",fontsize=16,color="black",shape="box"];729 -> 753[label="",style="solid", color="black", weight=3]; 26.75/11.38 8239[label="Zero",fontsize=16,color="green",shape="box"];8240 -> 7851[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8240[label="primCmpNat xux44700 xux52000 == LT",fontsize=16,color="magenta"];8240 -> 8279[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8240 -> 8280[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8241 -> 7241[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8241[label="GT == LT",fontsize=16,color="magenta"];8242 -> 7245[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8242[label="LT == LT",fontsize=16,color="magenta"];8243 -> 7240[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8243[label="EQ == LT",fontsize=16,color="magenta"];8245[label="FiniteMap.mkVBalBranch xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8245 -> 8282[label="",style="solid", color="black", weight=3]; 26.75/11.38 8246[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8246 -> 8283[label="",style="solid", color="black", weight=3]; 26.75/11.38 8248[label="FiniteMap.mkVBalBranch xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8248 -> 8285[label="",style="solid", color="black", weight=3]; 26.75/11.38 8249[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8249 -> 8286[label="",style="solid", color="black", weight=3]; 26.75/11.38 8251[label="FiniteMap.mkVBalBranch xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8251 -> 8288[label="",style="solid", color="black", weight=3]; 26.75/11.38 8252[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8252 -> 8289[label="",style="solid", color="black", weight=3]; 26.75/11.38 8254[label="FiniteMap.mkVBalBranch xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8254 -> 8291[label="",style="solid", color="black", weight=3]; 26.75/11.38 8255[label="FiniteMap.mkVBalBranch xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8255 -> 8292[label="",style="solid", color="black", weight=3]; 26.75/11.38 8717[label="primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) (Succ xux57200)",fontsize=16,color="black",shape="box"];8717 -> 8754[label="",style="solid", color="black", weight=3]; 26.75/11.38 8718[label="primMulNat (Succ (Succ (Succ (Succ (Succ Zero))))) Zero",fontsize=16,color="black",shape="box"];8718 -> 8755[label="",style="solid", color="black", weight=3]; 26.75/11.38 8719[label="xux5720",fontsize=16,color="green",shape="box"];8720[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 FiniteMap.EmptyFM xux494 xux495 FiniteMap.EmptyFM xux558 True",fontsize=16,color="black",shape="box"];8720 -> 8756[label="",style="solid", color="black", weight=3]; 26.75/11.38 8721[label="error []",fontsize=16,color="red",shape="box"];8723 -> 8307[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8723[label="FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8723 -> 8757[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8723 -> 8758[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8722[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 xux586",fontsize=16,color="burlywood",shape="triangle"];9650[label="xux586/False",fontsize=10,color="white",style="solid",shape="box"];8722 -> 9650[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9650 -> 8759[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9651[label="xux586/True",fontsize=10,color="white",style="solid",shape="box"];8722 -> 9651[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9651 -> 8760[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9351[label="Pos (Succ Zero) + FiniteMap.mkBranchLeft_size xux635 xux633 xux636",fontsize=16,color="black",shape="box"];9351 -> 9353[label="",style="solid", color="black", weight=3]; 26.75/11.38 9350[label="primPlusInt xux637 (FiniteMap.mkBranchRight_size xux635 xux633 xux636)",fontsize=16,color="burlywood",shape="triangle"];9652[label="xux637/Pos xux6370",fontsize=10,color="white",style="solid",shape="box"];9350 -> 9652[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9652 -> 9354[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9653[label="xux637/Neg xux6370",fontsize=10,color="white",style="solid",shape="box"];9350 -> 9653[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9653 -> 9355[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8730[label="xux56020",fontsize=16,color="green",shape="box"];8731[label="xux49720",fontsize=16,color="green",shape="box"];8732[label="primMinusNat (Succ xux497200) (Succ xux560200)",fontsize=16,color="black",shape="box"];8732 -> 8776[label="",style="solid", color="black", weight=3]; 26.75/11.38 8733[label="primMinusNat (Succ xux497200) Zero",fontsize=16,color="black",shape="box"];8733 -> 8777[label="",style="solid", color="black", weight=3]; 26.75/11.38 8734[label="primMinusNat Zero (Succ xux560200)",fontsize=16,color="black",shape="box"];8734 -> 8778[label="",style="solid", color="black", weight=3]; 26.75/11.38 8735[label="primMinusNat Zero Zero",fontsize=16,color="black",shape="box"];8735 -> 8779[label="",style="solid", color="black", weight=3]; 26.75/11.38 8736[label="FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];8737 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8737[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8737 -> 8780[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8738 -> 8685[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8738[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8739[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8739 -> 8781[label="",style="solid", color="black", weight=3]; 26.75/11.38 8740[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8740 -> 8782[label="",style="solid", color="black", weight=3]; 26.75/11.38 8741[label="error []",fontsize=16,color="red",shape="box"];8742[label="FiniteMap.mkBalBranch6MkBalBranch02 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8742 -> 8783[label="",style="solid", color="black", weight=3]; 26.75/11.38 8744[label="xux56020",fontsize=16,color="green",shape="box"];8745[label="xux49720",fontsize=16,color="green",shape="box"];8746[label="FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];8747 -> 8683[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8747[label="FiniteMap.sIZE_RATIO * FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8747 -> 8785[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8748 -> 8686[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8748[label="FiniteMap.mkBalBranch6Size_l xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8749[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 False",fontsize=16,color="black",shape="box"];8749 -> 8786[label="",style="solid", color="black", weight=3]; 26.75/11.38 8750[label="FiniteMap.mkBalBranch6MkBalBranch3 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8750 -> 8787[label="",style="solid", color="black", weight=3]; 26.75/11.38 8751[label="error []",fontsize=16,color="red",shape="box"];8752[label="FiniteMap.mkBalBranch6MkBalBranch02 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8752 -> 8788[label="",style="solid", color="black", weight=3]; 26.75/11.38 749[label="FiniteMap.splitGT4 FiniteMap.EmptyFM LT",fontsize=16,color="black",shape="box"];749 -> 773[label="",style="solid", color="black", weight=3]; 26.75/11.38 750 -> 26[label="",style="dashed", color="red", weight=0]; 26.75/11.38 750[label="FiniteMap.splitGT3 (FiniteMap.Branch xux330 xux331 xux332 xux333 xux334) LT",fontsize=16,color="magenta"];750 -> 774[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 750 -> 775[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 750 -> 776[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 750 -> 777[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 750 -> 778[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 750 -> 779[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 751[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 EQ True",fontsize=16,color="black",shape="box"];751 -> 780[label="",style="solid", color="black", weight=3]; 26.75/11.38 752[label="FiniteMap.splitLT1 LT xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];752 -> 781[label="",style="solid", color="black", weight=3]; 26.75/11.38 753[label="FiniteMap.splitLT1 EQ xux31 xux32 xux33 xux34 GT True",fontsize=16,color="black",shape="box"];753 -> 782[label="",style="solid", color="black", weight=3]; 26.75/11.38 8279[label="xux52000",fontsize=16,color="green",shape="box"];8280[label="xux44700",fontsize=16,color="green",shape="box"];8282[label="FiniteMap.mkVBalBranch5 xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8282 -> 8324[label="",style="solid", color="black", weight=3]; 26.75/11.38 8283 -> 8166[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8283[label="FiniteMap.mkVBalBranch3 xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8283 -> 8325[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8326[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8327[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8328[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8329[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8330[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8331[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8332[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8333[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8283 -> 8334[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8285[label="FiniteMap.mkVBalBranch5 xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8285 -> 8336[label="",style="solid", color="black", weight=3]; 26.75/11.38 8286 -> 8166[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8286[label="FiniteMap.mkVBalBranch3 xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8286 -> 8337[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8338[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8339[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8340[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8341[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8342[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8343[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8344[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8345[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8286 -> 8346[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8288[label="FiniteMap.mkVBalBranch5 xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8288 -> 8348[label="",style="solid", color="black", weight=3]; 26.75/11.38 8289 -> 8166[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8289[label="FiniteMap.mkVBalBranch3 xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394)",fontsize=16,color="magenta"];8289 -> 8349[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8350[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8351[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8352[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8353[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8354[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8355[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8356[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8357[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8289 -> 8358[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8291[label="FiniteMap.mkVBalBranch5 xux141 xux142 FiniteMap.EmptyFM (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="black",shape="box"];8291 -> 8360[label="",style="solid", color="black", weight=3]; 26.75/11.38 8292 -> 8166[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8292[label="FiniteMap.mkVBalBranch3 xux141 xux142 (FiniteMap.Branch xux13540 xux13541 xux13542 xux13543 xux13544) (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394)",fontsize=16,color="magenta"];8292 -> 8361[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8362[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8363[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8364[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8365[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8366[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8367[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8368[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8369[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8292 -> 8370[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8754 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8754[label="primPlusNat (primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux57200)) (Succ xux57200)",fontsize=16,color="magenta"];8754 -> 8790[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8754 -> 8791[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8755[label="Zero",fontsize=16,color="green",shape="box"];8756 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8756[label="FiniteMap.mkBranch (Pos (Succ (Succ Zero))) xux494 xux495 FiniteMap.EmptyFM xux558",fontsize=16,color="magenta"];8756 -> 9160[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8756 -> 9161[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8756 -> 9162[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8756 -> 9163[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8756 -> 9164[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8757 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8757[label="FiniteMap.sizeFM xux5583",fontsize=16,color="magenta"];8757 -> 8793[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8758 -> 8794[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8758[label="Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8758 -> 8795[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8759[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 False",fontsize=16,color="black",shape="box"];8759 -> 8796[label="",style="solid", color="black", weight=3]; 26.75/11.38 8760[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8760 -> 8797[label="",style="solid", color="black", weight=3]; 26.75/11.38 9353 -> 8571[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9353[label="primPlusInt (Pos (Succ Zero)) (FiniteMap.mkBranchLeft_size xux635 xux633 xux636)",fontsize=16,color="magenta"];9353 -> 9356[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9353 -> 9357[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9354[label="primPlusInt (Pos xux6370) (FiniteMap.mkBranchRight_size xux635 xux633 xux636)",fontsize=16,color="black",shape="box"];9354 -> 9358[label="",style="solid", color="black", weight=3]; 26.75/11.38 9355[label="primPlusInt (Neg xux6370) (FiniteMap.mkBranchRight_size xux635 xux633 xux636)",fontsize=16,color="black",shape="box"];9355 -> 9359[label="",style="solid", color="black", weight=3]; 26.75/11.38 8776 -> 8662[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8776[label="primMinusNat xux497200 xux560200",fontsize=16,color="magenta"];8776 -> 8803[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8776 -> 8804[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8777[label="Pos (Succ xux497200)",fontsize=16,color="green",shape="box"];8778[label="Neg (Succ xux560200)",fontsize=16,color="green",shape="box"];8779[label="Pos Zero",fontsize=16,color="green",shape="box"];8780 -> 8619[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8780[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8781[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 otherwise",fontsize=16,color="black",shape="box"];8781 -> 8805[label="",style="solid", color="black", weight=3]; 26.75/11.38 8782[label="FiniteMap.mkBalBranch6MkBalBranch1 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="box"];8782 -> 8806[label="",style="solid", color="black", weight=3]; 26.75/11.38 8783 -> 8807[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8783[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 (FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584)",fontsize=16,color="magenta"];8783 -> 8808[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8785 -> 8627[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8785[label="FiniteMap.mkBalBranch6Size_r xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="magenta"];8786[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 otherwise",fontsize=16,color="black",shape="box"];8786 -> 8815[label="",style="solid", color="black", weight=3]; 26.75/11.38 8787[label="FiniteMap.mkBalBranch6MkBalBranch1 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="box"];8787 -> 8816[label="",style="solid", color="black", weight=3]; 26.75/11.38 8788 -> 8817[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8788[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 (FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584)",fontsize=16,color="magenta"];8788 -> 8818[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 773 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.38 773[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];774[label="xux332",fontsize=16,color="green",shape="box"];775[label="xux331",fontsize=16,color="green",shape="box"];776[label="LT",fontsize=16,color="green",shape="box"];777[label="xux334",fontsize=16,color="green",shape="box"];778[label="xux333",fontsize=16,color="green",shape="box"];779[label="xux330",fontsize=16,color="green",shape="box"];780 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 780[label="FiniteMap.mkVBalBranch LT xux31 xux33 (FiniteMap.splitLT xux34 EQ)",fontsize=16,color="magenta"];780 -> 802[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 780 -> 803[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 780 -> 804[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 780 -> 805[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 781 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 781[label="FiniteMap.mkVBalBranch LT xux31 xux33 (FiniteMap.splitLT xux34 GT)",fontsize=16,color="magenta"];781 -> 806[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 781 -> 807[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 781 -> 808[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 781 -> 809[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 782 -> 12[label="",style="dashed", color="red", weight=0]; 26.75/11.38 782[label="FiniteMap.mkVBalBranch EQ xux31 xux33 (FiniteMap.splitLT xux34 GT)",fontsize=16,color="magenta"];782 -> 810[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 782 -> 811[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 782 -> 812[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 782 -> 813[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8324 -> 8223[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8324[label="FiniteMap.addToFM (FiniteMap.Branch xux1390 xux1391 (Pos (Succ xux139200)) xux1393 xux1394) xux141 xux142",fontsize=16,color="magenta"];8324 -> 8395[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8324 -> 8396[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8324 -> 8397[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8324 -> 8398[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8324 -> 8399[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8325[label="Pos (Succ xux139200)",fontsize=16,color="green",shape="box"];8326[label="xux1394",fontsize=16,color="green",shape="box"];8327[label="xux13540",fontsize=16,color="green",shape="box"];8328[label="xux13543",fontsize=16,color="green",shape="box"];8329[label="xux13544",fontsize=16,color="green",shape="box"];8330[label="xux1391",fontsize=16,color="green",shape="box"];8331[label="xux13541",fontsize=16,color="green",shape="box"];8332[label="xux13542",fontsize=16,color="green",shape="box"];8333[label="xux1390",fontsize=16,color="green",shape="box"];8334[label="xux1393",fontsize=16,color="green",shape="box"];8336 -> 8223[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8336[label="FiniteMap.addToFM (FiniteMap.Branch xux1390 xux1391 (Pos Zero) xux1393 xux1394) xux141 xux142",fontsize=16,color="magenta"];8336 -> 8401[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8336 -> 8402[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8336 -> 8403[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8336 -> 8404[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8336 -> 8405[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8337[label="Pos Zero",fontsize=16,color="green",shape="box"];8338[label="xux1394",fontsize=16,color="green",shape="box"];8339[label="xux13540",fontsize=16,color="green",shape="box"];8340[label="xux13543",fontsize=16,color="green",shape="box"];8341[label="xux13544",fontsize=16,color="green",shape="box"];8342[label="xux1391",fontsize=16,color="green",shape="box"];8343[label="xux13541",fontsize=16,color="green",shape="box"];8344[label="xux13542",fontsize=16,color="green",shape="box"];8345[label="xux1390",fontsize=16,color="green",shape="box"];8346[label="xux1393",fontsize=16,color="green",shape="box"];8348 -> 8223[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8348[label="FiniteMap.addToFM (FiniteMap.Branch xux1390 xux1391 (Neg (Succ xux139200)) xux1393 xux1394) xux141 xux142",fontsize=16,color="magenta"];8348 -> 8407[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8348 -> 8408[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8348 -> 8409[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8348 -> 8410[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8348 -> 8411[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8349[label="Neg (Succ xux139200)",fontsize=16,color="green",shape="box"];8350[label="xux1394",fontsize=16,color="green",shape="box"];8351[label="xux13540",fontsize=16,color="green",shape="box"];8352[label="xux13543",fontsize=16,color="green",shape="box"];8353[label="xux13544",fontsize=16,color="green",shape="box"];8354[label="xux1391",fontsize=16,color="green",shape="box"];8355[label="xux13541",fontsize=16,color="green",shape="box"];8356[label="xux13542",fontsize=16,color="green",shape="box"];8357[label="xux1390",fontsize=16,color="green",shape="box"];8358[label="xux1393",fontsize=16,color="green",shape="box"];8360 -> 8223[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8360[label="FiniteMap.addToFM (FiniteMap.Branch xux1390 xux1391 (Neg Zero) xux1393 xux1394) xux141 xux142",fontsize=16,color="magenta"];8360 -> 8413[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8360 -> 8414[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8360 -> 8415[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8360 -> 8416[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8360 -> 8417[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8361[label="Neg Zero",fontsize=16,color="green",shape="box"];8362[label="xux1394",fontsize=16,color="green",shape="box"];8363[label="xux13540",fontsize=16,color="green",shape="box"];8364[label="xux13543",fontsize=16,color="green",shape="box"];8365[label="xux13544",fontsize=16,color="green",shape="box"];8366[label="xux1391",fontsize=16,color="green",shape="box"];8367[label="xux13541",fontsize=16,color="green",shape="box"];8368[label="xux13542",fontsize=16,color="green",shape="box"];8369[label="xux1390",fontsize=16,color="green",shape="box"];8370[label="xux1393",fontsize=16,color="green",shape="box"];8790[label="Succ xux57200",fontsize=16,color="green",shape="box"];8791 -> 7078[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8791[label="primMulNat (Succ (Succ (Succ (Succ Zero)))) (Succ xux57200)",fontsize=16,color="magenta"];8791 -> 8825[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9160[label="xux495",fontsize=16,color="green",shape="box"];9161[label="xux558",fontsize=16,color="green",shape="box"];9162[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];9163[label="Succ Zero",fontsize=16,color="green",shape="box"];9164[label="xux494",fontsize=16,color="green",shape="box"];8793[label="xux5583",fontsize=16,color="green",shape="box"];8795 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8795[label="FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8795 -> 8826[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8794[label="Pos (Succ (Succ Zero)) * xux592",fontsize=16,color="black",shape="triangle"];8794 -> 8827[label="",style="solid", color="black", weight=3]; 26.75/11.38 8796[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 otherwise",fontsize=16,color="black",shape="box"];8796 -> 8828[label="",style="solid", color="black", weight=3]; 26.75/11.38 8797[label="FiniteMap.mkBalBranch6Single_L xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8797 -> 8829[label="",style="solid", color="black", weight=3]; 26.75/11.38 9356[label="FiniteMap.mkBranchLeft_size xux635 xux633 xux636",fontsize=16,color="black",shape="box"];9356 -> 9360[label="",style="solid", color="black", weight=3]; 26.75/11.38 9357[label="Succ Zero",fontsize=16,color="green",shape="box"];9358 -> 8571[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9358[label="primPlusInt (Pos xux6370) (FiniteMap.sizeFM xux636)",fontsize=16,color="magenta"];9358 -> 9361[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9358 -> 9362[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9359 -> 8577[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9359[label="primPlusInt (Neg xux6370) (FiniteMap.sizeFM xux636)",fontsize=16,color="magenta"];9359 -> 9363[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9359 -> 9364[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8803[label="xux497200",fontsize=16,color="green",shape="box"];8804[label="xux560200",fontsize=16,color="green",shape="box"];8805[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8805 -> 8833[label="",style="solid", color="black", weight=3]; 26.75/11.38 8806[label="FiniteMap.mkBalBranch6MkBalBranch12 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="box"];8806 -> 8834[label="",style="solid", color="black", weight=3]; 26.75/11.38 8808 -> 8307[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8808[label="FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8808 -> 8835[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8808 -> 8836[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8807[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 xux593",fontsize=16,color="burlywood",shape="triangle"];9654[label="xux593/False",fontsize=10,color="white",style="solid",shape="box"];8807 -> 9654[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9654 -> 8837[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9655[label="xux593/True",fontsize=10,color="white",style="solid",shape="box"];8807 -> 9655[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9655 -> 8838[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8815[label="FiniteMap.mkBalBranch6MkBalBranch2 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 True",fontsize=16,color="black",shape="box"];8815 -> 8843[label="",style="solid", color="black", weight=3]; 26.75/11.38 8816[label="FiniteMap.mkBalBranch6MkBalBranch12 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974)",fontsize=16,color="black",shape="box"];8816 -> 8844[label="",style="solid", color="black", weight=3]; 26.75/11.38 8818 -> 8307[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8818[label="FiniteMap.sizeFM xux5583 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8818 -> 8845[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8818 -> 8846[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8817[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 xux598",fontsize=16,color="burlywood",shape="triangle"];9656[label="xux598/False",fontsize=10,color="white",style="solid",shape="box"];8817 -> 9656[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9656 -> 8847[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9657[label="xux598/True",fontsize=10,color="white",style="solid",shape="box"];8817 -> 9657[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9657 -> 8848[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 802[label="xux31",fontsize=16,color="green",shape="box"];803 -> 232[label="",style="dashed", color="red", weight=0]; 26.75/11.38 803[label="FiniteMap.splitLT xux34 EQ",fontsize=16,color="magenta"];803 -> 835[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 804[label="LT",fontsize=16,color="green",shape="box"];805[label="xux33",fontsize=16,color="green",shape="box"];806[label="xux31",fontsize=16,color="green",shape="box"];807[label="FiniteMap.splitLT xux34 GT",fontsize=16,color="burlywood",shape="triangle"];9658[label="xux34/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];807 -> 9658[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9658 -> 836[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9659[label="xux34/FiniteMap.Branch xux340 xux341 xux342 xux343 xux344",fontsize=10,color="white",style="solid",shape="box"];807 -> 9659[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9659 -> 837[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 808[label="LT",fontsize=16,color="green",shape="box"];809[label="xux33",fontsize=16,color="green",shape="box"];810[label="xux31",fontsize=16,color="green",shape="box"];811 -> 807[label="",style="dashed", color="red", weight=0]; 26.75/11.38 811[label="FiniteMap.splitLT xux34 GT",fontsize=16,color="magenta"];812[label="EQ",fontsize=16,color="green",shape="box"];813[label="xux33",fontsize=16,color="green",shape="box"];8395[label="xux1390",fontsize=16,color="green",shape="box"];8396[label="xux1393",fontsize=16,color="green",shape="box"];8397[label="xux1394",fontsize=16,color="green",shape="box"];8398[label="xux1391",fontsize=16,color="green",shape="box"];8399[label="Pos (Succ xux139200)",fontsize=16,color="green",shape="box"];8401[label="xux1390",fontsize=16,color="green",shape="box"];8402[label="xux1393",fontsize=16,color="green",shape="box"];8403[label="xux1394",fontsize=16,color="green",shape="box"];8404[label="xux1391",fontsize=16,color="green",shape="box"];8405[label="Pos Zero",fontsize=16,color="green",shape="box"];8407[label="xux1390",fontsize=16,color="green",shape="box"];8408[label="xux1393",fontsize=16,color="green",shape="box"];8409[label="xux1394",fontsize=16,color="green",shape="box"];8410[label="xux1391",fontsize=16,color="green",shape="box"];8411[label="Neg (Succ xux139200)",fontsize=16,color="green",shape="box"];8413[label="xux1390",fontsize=16,color="green",shape="box"];8414[label="xux1393",fontsize=16,color="green",shape="box"];8415[label="xux1394",fontsize=16,color="green",shape="box"];8416[label="xux1391",fontsize=16,color="green",shape="box"];8417[label="Neg Zero",fontsize=16,color="green",shape="box"];8825[label="xux57200",fontsize=16,color="green",shape="box"];8826[label="xux5584",fontsize=16,color="green",shape="box"];8827[label="primMulInt (Pos (Succ (Succ Zero))) xux592",fontsize=16,color="burlywood",shape="box"];9660[label="xux592/Pos xux5920",fontsize=10,color="white",style="solid",shape="box"];8827 -> 9660[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9660 -> 8868[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9661[label="xux592/Neg xux5920",fontsize=10,color="white",style="solid",shape="box"];8827 -> 9661[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9661 -> 8869[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8828[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8828 -> 8870[label="",style="solid", color="black", weight=3]; 26.75/11.38 8829 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8829[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ Zero)))) xux5580 xux5581 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 FiniteMap.EmptyFM xux5583) xux5584",fontsize=16,color="magenta"];8829 -> 9165[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8829 -> 9166[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8829 -> 9167[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8829 -> 9168[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8829 -> 9169[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9360 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9360[label="FiniteMap.sizeFM xux635",fontsize=16,color="magenta"];9360 -> 9365[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9361 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9361[label="FiniteMap.sizeFM xux636",fontsize=16,color="magenta"];9361 -> 9366[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9362[label="xux6370",fontsize=16,color="green",shape="box"];9363 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9363[label="FiniteMap.sizeFM xux636",fontsize=16,color="magenta"];9363 -> 9367[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9364[label="xux6370",fontsize=16,color="green",shape="box"];8833 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8833[label="FiniteMap.mkBranch (Pos (Succ (Succ Zero))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558",fontsize=16,color="magenta"];8833 -> 9170[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8833 -> 9171[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8833 -> 9172[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8833 -> 9173[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8833 -> 9174[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8834 -> 8873[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8834[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 (FiniteMap.sizeFM xux4974 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973)",fontsize=16,color="magenta"];8834 -> 8874[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8835 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8835[label="FiniteMap.sizeFM xux5583",fontsize=16,color="magenta"];8835 -> 8875[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8836 -> 8794[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8836[label="Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8836 -> 8876[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8837[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 False",fontsize=16,color="black",shape="box"];8837 -> 8877[label="",style="solid", color="black", weight=3]; 26.75/11.38 8838[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8838 -> 8878[label="",style="solid", color="black", weight=3]; 26.75/11.38 8843 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8843[label="FiniteMap.mkBranch (Pos (Succ (Succ Zero))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558",fontsize=16,color="magenta"];8843 -> 9175[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8843 -> 9176[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8843 -> 9177[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8843 -> 9178[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8843 -> 9179[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8844 -> 8885[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8844[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 (FiniteMap.sizeFM xux4974 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973)",fontsize=16,color="magenta"];8844 -> 8886[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8845 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8845[label="FiniteMap.sizeFM xux5583",fontsize=16,color="magenta"];8845 -> 8887[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8846 -> 8794[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8846[label="Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8846 -> 8888[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8847[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 False",fontsize=16,color="black",shape="box"];8847 -> 8889[label="",style="solid", color="black", weight=3]; 26.75/11.38 8848[label="FiniteMap.mkBalBranch6MkBalBranch01 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8848 -> 8890[label="",style="solid", color="black", weight=3]; 26.75/11.38 835[label="xux34",fontsize=16,color="green",shape="box"];836[label="FiniteMap.splitLT FiniteMap.EmptyFM GT",fontsize=16,color="black",shape="box"];836 -> 863[label="",style="solid", color="black", weight=3]; 26.75/11.38 837[label="FiniteMap.splitLT (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) GT",fontsize=16,color="black",shape="box"];837 -> 864[label="",style="solid", color="black", weight=3]; 26.75/11.38 8868[label="primMulInt (Pos (Succ (Succ Zero))) (Pos xux5920)",fontsize=16,color="black",shape="box"];8868 -> 8900[label="",style="solid", color="black", weight=3]; 26.75/11.38 8869[label="primMulInt (Pos (Succ (Succ Zero))) (Neg xux5920)",fontsize=16,color="black",shape="box"];8869 -> 8901[label="",style="solid", color="black", weight=3]; 26.75/11.38 8870[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="burlywood",shape="box"];9662[label="xux5583/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8870 -> 9662[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9662 -> 8902[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9663[label="xux5583/FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834",fontsize=10,color="white",style="solid",shape="box"];8870 -> 9663[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9663 -> 8903[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9165[label="xux5581",fontsize=16,color="green",shape="box"];9166[label="xux5584",fontsize=16,color="green",shape="box"];9167 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9167[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 FiniteMap.EmptyFM xux5583",fontsize=16,color="magenta"];9167 -> 9256[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9167 -> 9257[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9167 -> 9258[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9167 -> 9259[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9167 -> 9260[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9168[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];9169[label="xux5580",fontsize=16,color="green",shape="box"];9365[label="xux635",fontsize=16,color="green",shape="box"];9366[label="xux636",fontsize=16,color="green",shape="box"];9367[label="xux636",fontsize=16,color="green",shape="box"];9170[label="xux495",fontsize=16,color="green",shape="box"];9171[label="xux558",fontsize=16,color="green",shape="box"];9172[label="FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9173[label="Succ Zero",fontsize=16,color="green",shape="box"];9174[label="xux494",fontsize=16,color="green",shape="box"];8874 -> 8307[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8874[label="FiniteMap.sizeFM xux4974 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8874 -> 8905[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8874 -> 8906[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8873[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 xux603",fontsize=16,color="burlywood",shape="triangle"];9664[label="xux603/False",fontsize=10,color="white",style="solid",shape="box"];8873 -> 9664[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9664 -> 8907[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9665[label="xux603/True",fontsize=10,color="white",style="solid",shape="box"];8873 -> 9665[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9665 -> 8908[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8875[label="xux5583",fontsize=16,color="green",shape="box"];8876 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8876[label="FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8876 -> 8909[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8877[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 otherwise",fontsize=16,color="black",shape="box"];8877 -> 8910[label="",style="solid", color="black", weight=3]; 26.75/11.38 8878[label="FiniteMap.mkBalBranch6Single_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8878 -> 8911[label="",style="solid", color="black", weight=3]; 26.75/11.38 9175[label="xux495",fontsize=16,color="green",shape="box"];9176[label="xux558",fontsize=16,color="green",shape="box"];9177[label="FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9178[label="Succ Zero",fontsize=16,color="green",shape="box"];9179[label="xux494",fontsize=16,color="green",shape="box"];8886 -> 8307[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8886[label="FiniteMap.sizeFM xux4974 < Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8886 -> 8915[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8886 -> 8916[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8885[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 xux607",fontsize=16,color="burlywood",shape="triangle"];9666[label="xux607/False",fontsize=10,color="white",style="solid",shape="box"];8885 -> 9666[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9666 -> 8917[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9667[label="xux607/True",fontsize=10,color="white",style="solid",shape="box"];8885 -> 9667[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9667 -> 8918[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8887[label="xux5583",fontsize=16,color="green",shape="box"];8888 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8888[label="FiniteMap.sizeFM xux5584",fontsize=16,color="magenta"];8888 -> 8935[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8889[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 otherwise",fontsize=16,color="black",shape="box"];8889 -> 8936[label="",style="solid", color="black", weight=3]; 26.75/11.38 8890[label="FiniteMap.mkBalBranch6Single_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="black",shape="box"];8890 -> 8937[label="",style="solid", color="black", weight=3]; 26.75/11.38 863[label="FiniteMap.splitLT4 FiniteMap.EmptyFM GT",fontsize=16,color="black",shape="box"];863 -> 938[label="",style="solid", color="black", weight=3]; 26.75/11.38 864 -> 27[label="",style="dashed", color="red", weight=0]; 26.75/11.38 864[label="FiniteMap.splitLT3 (FiniteMap.Branch xux340 xux341 xux342 xux343 xux344) GT",fontsize=16,color="magenta"];864 -> 939[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 864 -> 940[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 864 -> 941[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 864 -> 942[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 864 -> 943[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 864 -> 944[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8900[label="Pos (primMulNat (Succ (Succ Zero)) xux5920)",fontsize=16,color="green",shape="box"];8900 -> 8946[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8901[label="Neg (primMulNat (Succ (Succ Zero)) xux5920)",fontsize=16,color="green",shape="box"];8901 -> 8947[label="",style="dashed", color="green", weight=3]; 26.75/11.38 8902[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 FiniteMap.EmptyFM xux5584)",fontsize=16,color="black",shape="box"];8902 -> 8948[label="",style="solid", color="black", weight=3]; 26.75/11.38 8903[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 FiniteMap.EmptyFM FiniteMap.EmptyFM (FiniteMap.Branch xux5580 xux5581 xux5582 (FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834) xux5584)",fontsize=16,color="black",shape="box"];8903 -> 8949[label="",style="solid", color="black", weight=3]; 26.75/11.38 9256[label="xux495",fontsize=16,color="green",shape="box"];9257[label="xux5583",fontsize=16,color="green",shape="box"];9258[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];9259[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];9260[label="xux494",fontsize=16,color="green",shape="box"];8905 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8905[label="FiniteMap.sizeFM xux4974",fontsize=16,color="magenta"];8905 -> 8952[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8906 -> 8794[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8906[label="Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8906 -> 8953[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8907[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 False",fontsize=16,color="black",shape="box"];8907 -> 8954[label="",style="solid", color="black", weight=3]; 26.75/11.38 8908[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 True",fontsize=16,color="black",shape="box"];8908 -> 8955[label="",style="solid", color="black", weight=3]; 26.75/11.38 8909[label="xux5584",fontsize=16,color="green",shape="box"];8910[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8910 -> 8956[label="",style="solid", color="black", weight=3]; 26.75/11.38 8911 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8911[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ Zero)))) xux5580 xux5581 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux5583) xux5584",fontsize=16,color="magenta"];8911 -> 9180[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8911 -> 9181[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8911 -> 9182[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8911 -> 9183[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8911 -> 9184[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8915 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8915[label="FiniteMap.sizeFM xux4974",fontsize=16,color="magenta"];8915 -> 8958[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8916 -> 8794[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8916[label="Pos (Succ (Succ Zero)) * FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8916 -> 8959[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8917[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 False",fontsize=16,color="black",shape="box"];8917 -> 8960[label="",style="solid", color="black", weight=3]; 26.75/11.38 8918[label="FiniteMap.mkBalBranch6MkBalBranch11 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 True",fontsize=16,color="black",shape="box"];8918 -> 8961[label="",style="solid", color="black", weight=3]; 26.75/11.38 8935[label="xux5584",fontsize=16,color="green",shape="box"];8936[label="FiniteMap.mkBalBranch6MkBalBranch00 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584) xux5580 xux5581 xux5582 xux5583 xux5584 True",fontsize=16,color="black",shape="box"];8936 -> 8972[label="",style="solid", color="black", weight=3]; 26.75/11.38 8937 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8937[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ Zero)))) xux5580 xux5581 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux5583) xux5584",fontsize=16,color="magenta"];8937 -> 9185[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8937 -> 9186[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8937 -> 9187[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8937 -> 9188[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8937 -> 9189[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 938 -> 79[label="",style="dashed", color="red", weight=0]; 26.75/11.38 938[label="FiniteMap.emptyFM",fontsize=16,color="magenta"];939[label="xux342",fontsize=16,color="green",shape="box"];940[label="xux341",fontsize=16,color="green",shape="box"];941[label="GT",fontsize=16,color="green",shape="box"];942[label="xux344",fontsize=16,color="green",shape="box"];943[label="xux343",fontsize=16,color="green",shape="box"];944[label="xux340",fontsize=16,color="green",shape="box"];8946[label="primMulNat (Succ (Succ Zero)) xux5920",fontsize=16,color="burlywood",shape="triangle"];9668[label="xux5920/Succ xux59200",fontsize=10,color="white",style="solid",shape="box"];8946 -> 9668[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9668 -> 8977[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9669[label="xux5920/Zero",fontsize=10,color="white",style="solid",shape="box"];8946 -> 9669[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9669 -> 8978[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 8947 -> 8946[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8947[label="primMulNat (Succ (Succ Zero)) xux5920",fontsize=16,color="magenta"];8947 -> 8979[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8948[label="error []",fontsize=16,color="red",shape="box"];8949 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8949[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux55830 xux55831 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 FiniteMap.EmptyFM xux55833) (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584)",fontsize=16,color="magenta"];8949 -> 9190[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8949 -> 9191[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8949 -> 9192[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8949 -> 9193[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8949 -> 9194[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8952[label="xux4974",fontsize=16,color="green",shape="box"];8953 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8953[label="FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8953 -> 8983[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8954[label="FiniteMap.mkBalBranch6MkBalBranch10 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 otherwise",fontsize=16,color="black",shape="box"];8954 -> 8984[label="",style="solid", color="black", weight=3]; 26.75/11.38 8955[label="FiniteMap.mkBalBranch6Single_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558",fontsize=16,color="black",shape="box"];8955 -> 8985[label="",style="solid", color="black", weight=3]; 26.75/11.38 8956[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="burlywood",shape="box"];9670[label="xux5583/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8956 -> 9670[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9670 -> 8986[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9671[label="xux5583/FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834",fontsize=10,color="white",style="solid",shape="box"];8956 -> 9671[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9671 -> 8987[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9180[label="xux5581",fontsize=16,color="green",shape="box"];9181[label="xux5584",fontsize=16,color="green",shape="box"];9182 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9182[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux5583",fontsize=16,color="magenta"];9182 -> 9261[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9182 -> 9262[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9182 -> 9263[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9182 -> 9264[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9182 -> 9265[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9183[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];9184[label="xux5580",fontsize=16,color="green",shape="box"];8958[label="xux4974",fontsize=16,color="green",shape="box"];8959 -> 8567[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8959[label="FiniteMap.sizeFM xux4973",fontsize=16,color="magenta"];8959 -> 8989[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8960[label="FiniteMap.mkBalBranch6MkBalBranch10 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 otherwise",fontsize=16,color="black",shape="box"];8960 -> 8990[label="",style="solid", color="black", weight=3]; 26.75/11.38 8961[label="FiniteMap.mkBalBranch6Single_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558",fontsize=16,color="black",shape="box"];8961 -> 8991[label="",style="solid", color="black", weight=3]; 26.75/11.38 8972[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 xux5583 xux5584)",fontsize=16,color="burlywood",shape="box"];9672[label="xux5583/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];8972 -> 9672[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9672 -> 8997[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9673[label="xux5583/FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834",fontsize=10,color="white",style="solid",shape="box"];8972 -> 9673[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9673 -> 8998[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9185[label="xux5581",fontsize=16,color="green",shape="box"];9186[label="xux5584",fontsize=16,color="green",shape="box"];9187 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9187[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ Zero))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux5583",fontsize=16,color="magenta"];9187 -> 9266[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9187 -> 9267[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9187 -> 9268[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9187 -> 9269[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9187 -> 9270[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9188[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];9189[label="xux5580",fontsize=16,color="green",shape="box"];8977[label="primMulNat (Succ (Succ Zero)) (Succ xux59200)",fontsize=16,color="black",shape="box"];8977 -> 9000[label="",style="solid", color="black", weight=3]; 26.75/11.38 8978[label="primMulNat (Succ (Succ Zero)) Zero",fontsize=16,color="black",shape="box"];8978 -> 9001[label="",style="solid", color="black", weight=3]; 26.75/11.38 8979[label="xux5920",fontsize=16,color="green",shape="box"];9190[label="xux55831",fontsize=16,color="green",shape="box"];9191 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9191[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584",fontsize=16,color="magenta"];9191 -> 9271[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9191 -> 9272[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9191 -> 9273[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9191 -> 9274[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9191 -> 9275[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9192 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9192[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 FiniteMap.EmptyFM xux55833",fontsize=16,color="magenta"];9192 -> 9276[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9192 -> 9277[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9192 -> 9278[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9192 -> 9279[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9192 -> 9280[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9193[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];9194[label="xux55830",fontsize=16,color="green",shape="box"];8983[label="xux4973",fontsize=16,color="green",shape="box"];8984[label="FiniteMap.mkBalBranch6MkBalBranch10 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Pos xux49720) xux4973 xux4974 True",fontsize=16,color="black",shape="box"];8984 -> 9036[label="",style="solid", color="black", weight=3]; 26.75/11.38 8985 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8985[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))) xux4970 xux4971 xux4973 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) xux494 xux495 xux4974 xux558)",fontsize=16,color="magenta"];8985 -> 9200[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8985 -> 9201[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8985 -> 9202[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8985 -> 9203[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8985 -> 9204[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8986[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 FiniteMap.EmptyFM xux5584)",fontsize=16,color="black",shape="box"];8986 -> 9055[label="",style="solid", color="black", weight=3]; 26.75/11.38 8987[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 (FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834) xux5584)",fontsize=16,color="black",shape="box"];8987 -> 9056[label="",style="solid", color="black", weight=3]; 26.75/11.38 9261[label="xux495",fontsize=16,color="green",shape="box"];9262[label="xux5583",fontsize=16,color="green",shape="box"];9263[label="FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9264[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];9265[label="xux494",fontsize=16,color="green",shape="box"];8989[label="xux4973",fontsize=16,color="green",shape="box"];8990[label="FiniteMap.mkBalBranch6MkBalBranch10 xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558 xux4970 xux4971 (Neg xux49720) xux4973 xux4974 True",fontsize=16,color="black",shape="box"];8990 -> 9059[label="",style="solid", color="black", weight=3]; 26.75/11.38 8991 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 8991[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))) xux4970 xux4971 xux4973 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) xux494 xux495 xux4974 xux558)",fontsize=16,color="magenta"];8991 -> 9205[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8991 -> 9206[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8991 -> 9207[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8991 -> 9208[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8991 -> 9209[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 8997[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 FiniteMap.EmptyFM xux5584)",fontsize=16,color="black",shape="box"];8997 -> 9060[label="",style="solid", color="black", weight=3]; 26.75/11.38 8998[label="FiniteMap.mkBalBranch6Double_L xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux5580 xux5581 xux5582 (FiniteMap.Branch xux55830 xux55831 xux55832 xux55833 xux55834) xux5584)",fontsize=16,color="black",shape="box"];8998 -> 9061[label="",style="solid", color="black", weight=3]; 26.75/11.38 9266[label="xux495",fontsize=16,color="green",shape="box"];9267[label="xux5583",fontsize=16,color="green",shape="box"];9268[label="FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9269[label="Succ (Succ (Succ Zero))",fontsize=16,color="green",shape="box"];9270[label="xux494",fontsize=16,color="green",shape="box"];9000 -> 2328[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9000[label="primPlusNat (primMulNat (Succ Zero) (Succ xux59200)) (Succ xux59200)",fontsize=16,color="magenta"];9000 -> 9064[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9000 -> 9065[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9001[label="Zero",fontsize=16,color="green",shape="box"];9271[label="xux5581",fontsize=16,color="green",shape="box"];9272[label="xux5584",fontsize=16,color="green",shape="box"];9273[label="xux55834",fontsize=16,color="green",shape="box"];9274[label="Succ (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="green",shape="box"];9275[label="xux5580",fontsize=16,color="green",shape="box"];9276[label="xux495",fontsize=16,color="green",shape="box"];9277[label="xux55833",fontsize=16,color="green",shape="box"];9278[label="FiniteMap.EmptyFM",fontsize=16,color="green",shape="box"];9279[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];9280[label="xux494",fontsize=16,color="green",shape="box"];9036[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux558",fontsize=16,color="burlywood",shape="box"];9674[label="xux4974/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];9036 -> 9674[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9674 -> 9069[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9675[label="xux4974/FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744",fontsize=10,color="white",style="solid",shape="box"];9036 -> 9675[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9675 -> 9070[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9200[label="xux4971",fontsize=16,color="green",shape="box"];9201 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9201[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) xux494 xux495 xux4974 xux558",fontsize=16,color="magenta"];9201 -> 9281[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9201 -> 9282[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9201 -> 9283[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9201 -> 9284[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9201 -> 9285[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9202[label="xux4973",fontsize=16,color="green",shape="box"];9203[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="green",shape="box"];9204[label="xux4970",fontsize=16,color="green",shape="box"];9055[label="error []",fontsize=16,color="red",shape="box"];9056 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9056[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux55830 xux55831 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux55833) (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584)",fontsize=16,color="magenta"];9056 -> 9225[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9056 -> 9226[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9056 -> 9227[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9056 -> 9228[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9056 -> 9229[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9059[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux558",fontsize=16,color="burlywood",shape="box"];9676[label="xux4974/FiniteMap.EmptyFM",fontsize=10,color="white",style="solid",shape="box"];9059 -> 9676[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9676 -> 9086[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9677[label="xux4974/FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744",fontsize=10,color="white",style="solid",shape="box"];9059 -> 9677[label="",style="solid", color="burlywood", weight=9]; 26.75/11.38 9677 -> 9087[label="",style="solid", color="burlywood", weight=3]; 26.75/11.38 9205[label="xux4971",fontsize=16,color="green",shape="box"];9206 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9206[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))) xux494 xux495 xux4974 xux558",fontsize=16,color="magenta"];9206 -> 9286[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9206 -> 9287[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9206 -> 9288[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9206 -> 9289[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9206 -> 9290[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9207[label="xux4973",fontsize=16,color="green",shape="box"];9208[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))",fontsize=16,color="green",shape="box"];9209[label="xux4970",fontsize=16,color="green",shape="box"];9060[label="error []",fontsize=16,color="red",shape="box"];9061 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9061[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ Zero)))))) xux55830 xux55831 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux55833) (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584)",fontsize=16,color="magenta"];9061 -> 9235[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9061 -> 9236[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9061 -> 9237[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9061 -> 9238[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9061 -> 9239[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9064[label="Succ xux59200",fontsize=16,color="green",shape="box"];9065 -> 7850[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9065[label="primMulNat (Succ Zero) (Succ xux59200)",fontsize=16,color="magenta"];9065 -> 9097[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9069[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 FiniteMap.EmptyFM) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 FiniteMap.EmptyFM) xux558",fontsize=16,color="black",shape="box"];9069 -> 9291[label="",style="solid", color="black", weight=3]; 26.75/11.38 9070[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 (FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744)) (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 (FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744)) xux558",fontsize=16,color="black",shape="box"];9070 -> 9292[label="",style="solid", color="black", weight=3]; 26.75/11.38 9281[label="xux495",fontsize=16,color="green",shape="box"];9282[label="xux558",fontsize=16,color="green",shape="box"];9283[label="xux4974",fontsize=16,color="green",shape="box"];9284[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="green",shape="box"];9285[label="xux494",fontsize=16,color="green",shape="box"];9225[label="xux55831",fontsize=16,color="green",shape="box"];9226 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9226[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584",fontsize=16,color="magenta"];9226 -> 9293[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9226 -> 9294[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9226 -> 9295[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9226 -> 9296[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9226 -> 9297[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9227 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9227[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974) xux55833",fontsize=16,color="magenta"];9227 -> 9298[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9227 -> 9299[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9227 -> 9300[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9227 -> 9301[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9227 -> 9302[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9228[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];9229[label="xux55830",fontsize=16,color="green",shape="box"];9086[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 FiniteMap.EmptyFM) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 FiniteMap.EmptyFM) xux558",fontsize=16,color="black",shape="box"];9086 -> 9303[label="",style="solid", color="black", weight=3]; 26.75/11.38 9087[label="FiniteMap.mkBalBranch6Double_R xux494 xux495 xux559 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 (FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744)) (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 (FiniteMap.Branch xux49740 xux49741 xux49742 xux49743 xux49744)) xux558",fontsize=16,color="black",shape="box"];9087 -> 9304[label="",style="solid", color="black", weight=3]; 26.75/11.38 9286[label="xux495",fontsize=16,color="green",shape="box"];9287[label="xux558",fontsize=16,color="green",shape="box"];9288[label="xux4974",fontsize=16,color="green",shape="box"];9289[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))",fontsize=16,color="green",shape="box"];9290[label="xux494",fontsize=16,color="green",shape="box"];9235[label="xux55831",fontsize=16,color="green",shape="box"];9236 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9236[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))) xux5580 xux5581 xux55834 xux5584",fontsize=16,color="magenta"];9236 -> 9305[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9236 -> 9306[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9236 -> 9307[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9236 -> 9308[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9236 -> 9309[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9237 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9237[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))) xux494 xux495 (FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974) xux55833",fontsize=16,color="magenta"];9237 -> 9310[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9237 -> 9311[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9237 -> 9312[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9237 -> 9313[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9237 -> 9314[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9238[label="Succ (Succ (Succ (Succ Zero)))",fontsize=16,color="green",shape="box"];9239[label="xux55830",fontsize=16,color="green",shape="box"];9097[label="xux59200",fontsize=16,color="green",shape="box"];9291[label="error []",fontsize=16,color="red",shape="box"];9292 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9292[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) xux49740 xux49741 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) xux4970 xux4971 xux4973 xux49743) (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) xux494 xux495 xux49744 xux558)",fontsize=16,color="magenta"];9292 -> 9316[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9292 -> 9317[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9292 -> 9318[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9292 -> 9319[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9292 -> 9320[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9293[label="xux5581",fontsize=16,color="green",shape="box"];9294[label="xux5584",fontsize=16,color="green",shape="box"];9295[label="xux55834",fontsize=16,color="green",shape="box"];9296[label="Succ (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="green",shape="box"];9297[label="xux5580",fontsize=16,color="green",shape="box"];9298[label="xux495",fontsize=16,color="green",shape="box"];9299[label="xux55833",fontsize=16,color="green",shape="box"];9300[label="FiniteMap.Branch xux4970 xux4971 (Pos xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9301[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];9302[label="xux494",fontsize=16,color="green",shape="box"];9303[label="error []",fontsize=16,color="red",shape="box"];9304 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9304[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))) xux49740 xux49741 (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) xux4970 xux4971 xux4973 xux49743) (FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) xux494 xux495 xux49744 xux558)",fontsize=16,color="magenta"];9304 -> 9321[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9304 -> 9322[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9304 -> 9323[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9304 -> 9324[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9304 -> 9325[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9305[label="xux5581",fontsize=16,color="green",shape="box"];9306[label="xux5584",fontsize=16,color="green",shape="box"];9307[label="xux55834",fontsize=16,color="green",shape="box"];9308[label="Succ (Succ (Succ (Succ (Succ (Succ Zero)))))",fontsize=16,color="green",shape="box"];9309[label="xux5580",fontsize=16,color="green",shape="box"];9310[label="xux495",fontsize=16,color="green",shape="box"];9311[label="xux55833",fontsize=16,color="green",shape="box"];9312[label="FiniteMap.Branch xux4970 xux4971 (Neg xux49720) xux4973 xux4974",fontsize=16,color="green",shape="box"];9313[label="Succ (Succ (Succ (Succ (Succ Zero))))",fontsize=16,color="green",shape="box"];9314[label="xux494",fontsize=16,color="green",shape="box"];9316[label="xux49741",fontsize=16,color="green",shape="box"];9317 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9317[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) xux494 xux495 xux49744 xux558",fontsize=16,color="magenta"];9317 -> 9327[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9317 -> 9328[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9317 -> 9329[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9317 -> 9330[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9317 -> 9331[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9318 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9318[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) xux4970 xux4971 xux4973 xux49743",fontsize=16,color="magenta"];9318 -> 9332[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9318 -> 9333[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9318 -> 9334[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9318 -> 9335[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9318 -> 9336[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9319[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];9320[label="xux49740",fontsize=16,color="green",shape="box"];9321[label="xux49741",fontsize=16,color="green",shape="box"];9322 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9322[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))))) xux494 xux495 xux49744 xux558",fontsize=16,color="magenta"];9322 -> 9337[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9322 -> 9338[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9322 -> 9339[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9322 -> 9340[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9322 -> 9341[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9323 -> 9104[label="",style="dashed", color="red", weight=0]; 26.75/11.38 9323[label="FiniteMap.mkBranch (Pos (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))))) xux4970 xux4971 xux4973 xux49743",fontsize=16,color="magenta"];9323 -> 9342[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9323 -> 9343[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9323 -> 9344[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9323 -> 9345[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9323 -> 9346[label="",style="dashed", color="magenta", weight=3]; 26.75/11.38 9324[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))",fontsize=16,color="green",shape="box"];9325[label="xux49740",fontsize=16,color="green",shape="box"];9327[label="xux495",fontsize=16,color="green",shape="box"];9328[label="xux558",fontsize=16,color="green",shape="box"];9329[label="xux49744",fontsize=16,color="green",shape="box"];9330[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))",fontsize=16,color="green",shape="box"];9331[label="xux494",fontsize=16,color="green",shape="box"];9332[label="xux4971",fontsize=16,color="green",shape="box"];9333[label="xux49743",fontsize=16,color="green",shape="box"];9334[label="xux4973",fontsize=16,color="green",shape="box"];9335[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))",fontsize=16,color="green",shape="box"];9336[label="xux4970",fontsize=16,color="green",shape="box"];9337[label="xux495",fontsize=16,color="green",shape="box"];9338[label="xux558",fontsize=16,color="green",shape="box"];9339[label="xux49744",fontsize=16,color="green",shape="box"];9340[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero))))))))))",fontsize=16,color="green",shape="box"];9341[label="xux494",fontsize=16,color="green",shape="box"];9342[label="xux4971",fontsize=16,color="green",shape="box"];9343[label="xux49743",fontsize=16,color="green",shape="box"];9344[label="xux4973",fontsize=16,color="green",shape="box"];9345[label="Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ (Succ Zero)))))))))",fontsize=16,color="green",shape="box"];9346[label="xux4970",fontsize=16,color="green",shape="box"];} 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (14) 26.75/11.38 Complex Obligation (AND) 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (15) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 new_splitGT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitGT(xux33, h) 26.75/11.38 new_splitGT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitGT1(xux34, h) 26.75/11.38 new_splitGT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 new_splitGT3(GT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitGT0(xux33, h) 26.75/11.38 new_splitGT0(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 new_splitGT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), EQ, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 new_splitGT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 26.75/11.38 R is empty. 26.75/11.38 Q is empty. 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (16) DependencyGraphProof (EQUIVALENT) 26.75/11.38 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (17) 26.75/11.38 Complex Obligation (AND) 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (18) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_splitGT0(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 new_splitGT3(GT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitGT0(xux33, h) 26.75/11.38 new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), EQ, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 26.75/11.38 R is empty. 26.75/11.38 Q is empty. 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (19) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_splitGT3(GT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitGT0(xux33, h) 26.75/11.38 The graph contains the following edges 4 >= 1, 7 >= 2 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), EQ, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 The graph contains the following edges 5 > 1, 5 > 2, 5 > 3, 5 > 4, 5 > 5, 6 >= 6, 7 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT0(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (20) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (21) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_splitGT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 new_splitGT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitGT(xux33, h) 26.75/11.38 new_splitGT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 26.75/11.38 R is empty. 26.75/11.38 Q is empty. 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (22) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_splitGT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitGT(xux33, h) 26.75/11.38 The graph contains the following edges 4 >= 1, 7 >= 2 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 The graph contains the following edges 4 > 1, 4 > 2, 4 > 3, 4 > 4, 4 > 5, 6 >= 6, 7 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitGT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (23) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (24) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_splitGT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitGT1(xux34, h) 26.75/11.38 new_splitGT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 26.75/11.38 R is empty. 26.75/11.38 Q is empty. 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (25) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_splitGT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitGT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 The graph contains the following edges 5 > 1, 5 > 2, 5 > 3, 5 > 4, 5 > 5, 6 >= 6, 7 >= 7 26.75/11.38 26.75/11.38 26.75/11.38 *new_splitGT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitGT1(xux34, h) 26.75/11.38 The graph contains the following edges 5 >= 1, 7 >= 2 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (26) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (27) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Zero), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs15(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)), h, ba) 26.75/11.38 new_mkVBalBranch(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, h, ba) -> new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, xux141, xux142, new_esEs1(new_primMulInt(new_sizeFM(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), h, ba)), new_sizeFM0(xux13930, xux13931, xux13932, xux13933, xux13934, h, ba)), h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch1(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Zero), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs12(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba), h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs14(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba), h, ba) 26.75/11.38 new_mkVBalBranch0(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Zero), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch1(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1392, Branch(xux13930, xux13931, xux13932, xux13933, xux13934), xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, xux141, xux142, new_esEs1(new_primMulInt(new_sizeFM(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), h, ba)), new_sizeFM0(xux13930, xux13931, xux13932, xux13933, xux13934, h, ba)), h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch0(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch2(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch2(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Zero), xux1393, xux1394, h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Zero), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs13(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)), h, ba) 26.75/11.38 new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Zero), xux1393, xux1394, h, ba) 26.75/11.38 26.75/11.38 The TRS R consists of the following rules: 26.75/11.38 26.75/11.38 new_esEs16(xux4470, Neg(xux520)) -> new_esEs3 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_primPlusNat0(Succ(xux2200), Zero) -> Succ(xux2200) 26.75/11.38 new_primPlusNat0(Zero, Succ(xux120)) -> Succ(xux120) 26.75/11.38 new_primPlusNat0(Zero, Zero) -> Zero 26.75/11.38 new_esEs2(Succ(xux44700), Succ(xux52000)) -> new_esEs2(xux44700, xux52000) 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Neg(xux47900)) -> new_esEs2(xux47900, Succ(xux48100)) 26.75/11.38 new_esEs17(xux4480, Neg(Zero)) -> new_esEs5 26.75/11.38 new_esEs3 -> False 26.75/11.38 new_esEs16(xux4470, Pos(Zero)) -> new_esEs3 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(xux479000))) -> new_esEs2(Zero, Succ(xux479000)) 26.75/11.38 new_sizeFM(Branch(xux5590, xux5591, xux5592, xux5593, xux5594), bb, bc) -> xux5592 26.75/11.38 new_esEs13(Neg(Succ(xux5200))) -> new_esEs3 26.75/11.38 new_primMulNat1(Zero) -> Zero 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Neg(xux47900)) -> new_esEs3 26.75/11.38 new_esEs15(Neg(Zero)) -> new_esEs4 26.75/11.38 new_esEs2(Succ(xux44700), Zero) -> new_esEs3 26.75/11.38 new_esEs4 -> False 26.75/11.38 new_esEs14(Succ(xux4650), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_esEs17(xux4650, new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)) 26.75/11.38 new_esEs15(Pos(Succ(xux5200))) -> new_esEs5 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Pos(xux47900)) -> new_esEs5 26.75/11.38 new_primPlusNat0(Succ(xux2200), Succ(xux120)) -> Succ(Succ(new_primPlusNat0(xux2200, xux120))) 26.75/11.38 new_primMulNat(xux6200) -> new_primPlusNat0(new_primPlusNat0(new_primPlusNat0(new_primMulNat0(xux6200), Succ(xux6200)), Succ(xux6200)), Succ(xux6200)) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba) -> xux1352 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(xux479000))) -> new_esEs5 26.75/11.38 new_primMulNat1(Succ(xux57200)) -> new_primPlusNat0(new_primMulNat(xux57200), Succ(xux57200)) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_esEs16(xux4470, Pos(Succ(xux5200))) -> new_esEs2(xux4470, xux5200) 26.75/11.38 new_primMulInt(Neg(xux5720)) -> Neg(new_primMulNat1(xux5720)) 26.75/11.38 new_esEs12(Zero, xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_esEs13(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)) 26.75/11.38 new_esEs15(Neg(Succ(xux5200))) -> new_esEs3 26.75/11.38 new_esEs12(Succ(xux4610), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_esEs16(xux4610, new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)) 26.75/11.38 new_esEs15(Pos(Zero)) -> new_esEs4 26.75/11.38 new_esEs13(Pos(Zero)) -> new_esEs4 26.75/11.38 new_primMulInt(Pos(xux5720)) -> Pos(new_primMulNat1(xux5720)) 26.75/11.38 new_esEs13(Neg(Zero)) -> new_esEs4 26.75/11.38 new_primMulNat0(xux6200) -> new_primPlusNat0(Zero, Succ(xux6200)) 26.75/11.38 new_esEs17(xux4480, Pos(xux520)) -> new_esEs5 26.75/11.38 new_esEs13(Pos(Succ(xux5200))) -> new_esEs5 26.75/11.38 new_esEs17(xux4480, Neg(Succ(xux5200))) -> new_esEs2(xux5200, xux4480) 26.75/11.38 new_esEs2(Zero, Succ(xux52000)) -> new_esEs5 26.75/11.38 new_esEs5 -> True 26.75/11.38 new_esEs14(Zero, xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_esEs15(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(xux479000))) -> new_esEs3 26.75/11.38 new_esEs1(Neg(Zero), Neg(Succ(xux479000))) -> new_esEs2(Succ(xux479000), Zero) 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Pos(xux47900)) -> new_esEs2(Succ(xux48100), xux47900) 26.75/11.38 new_sizeFM(EmptyFM, bb, bc) -> Pos(Zero) 26.75/11.38 new_esEs2(Zero, Zero) -> new_esEs4 26.75/11.38 26.75/11.38 The set Q consists of the following terms: 26.75/11.38 26.75/11.38 new_esEs1(Neg(Succ(x0)), Neg(x1)) 26.75/11.38 new_primMulInt(Neg(x0)) 26.75/11.38 new_primPlusNat0(Zero, Succ(x0)) 26.75/11.38 new_sizeFM(Branch(x0, x1, x2, x3, x4), x5, x6) 26.75/11.38 new_primMulInt(Pos(x0)) 26.75/11.38 new_primPlusNat0(Succ(x0), Succ(x1)) 26.75/11.38 new_esEs1(Pos(Succ(x0)), Pos(x1)) 26.75/11.38 new_esEs2(Succ(x0), Zero) 26.75/11.38 new_esEs16(x0, Neg(x1)) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(x0))) 26.75/11.38 new_esEs17(x0, Neg(Succ(x1))) 26.75/11.38 new_esEs14(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) 26.75/11.38 new_esEs14(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.38 new_esEs15(Neg(Zero)) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs13(Neg(Succ(x0))) 26.75/11.38 new_esEs13(Pos(Succ(x0))) 26.75/11.38 new_esEs2(Zero, Succ(x0)) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) 26.75/11.38 new_esEs3 26.75/11.38 new_esEs13(Pos(Zero)) 26.75/11.38 new_esEs17(x0, Pos(x1)) 26.75/11.38 new_esEs13(Neg(Zero)) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Zero)) 26.75/11.38 new_esEs5 26.75/11.38 new_esEs12(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) 26.75/11.38 new_sizeFM(EmptyFM, x0, x1) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) 26.75/11.38 new_primMulNat0(x0) 26.75/11.38 new_esEs15(Neg(Succ(x0))) 26.75/11.38 new_esEs15(Pos(Zero)) 26.75/11.38 new_esEs16(x0, Pos(Succ(x1))) 26.75/11.38 new_esEs2(Zero, Zero) 26.75/11.38 new_esEs17(x0, Neg(Zero)) 26.75/11.38 new_esEs12(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.38 new_primMulNat1(Succ(x0)) 26.75/11.38 new_esEs16(x0, Pos(Zero)) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Succ(x0))) 26.75/11.38 new_esEs2(Succ(x0), Succ(x1)) 26.75/11.38 new_esEs15(Pos(Succ(x0))) 26.75/11.38 new_esEs4 26.75/11.38 new_primMulNat1(Zero) 26.75/11.38 new_sizeFM0(x0, x1, x2, x3, x4, x5, x6) 26.75/11.38 new_primPlusNat0(Zero, Zero) 26.75/11.38 new_esEs1(Pos(Succ(x0)), Neg(x1)) 26.75/11.38 new_esEs1(Neg(Succ(x0)), Pos(x1)) 26.75/11.38 new_primMulNat(x0) 26.75/11.38 new_primPlusNat0(Succ(x0), Zero) 26.75/11.38 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (28) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_mkVBalBranch3(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, h, ba) -> new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, xux141, xux142, new_esEs1(new_primMulInt(new_sizeFM(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), h, ba)), new_sizeFM0(xux13930, xux13931, xux13932, xux13933, xux13934, h, ba)), h, ba) 26.75/11.38 The graph contains the following edges 3 >= 1, 4 >= 2, 5 >= 3, 6 >= 4, 7 >= 5, 8 >= 6, 9 >= 7, 10 >= 8, 11 >= 9, 12 >= 10, 1 >= 11, 2 >= 12, 13 >= 14, 14 >= 15 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1392, Branch(xux13930, xux13931, xux13932, xux13933, xux13934), xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, xux141, xux142, new_esEs1(new_primMulInt(new_sizeFM(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), h, ba)), new_sizeFM0(xux13930, xux13931, xux13932, xux13933, xux13934, h, ba)), h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 9 > 6, 9 > 7, 9 > 8, 9 > 9, 9 > 10, 11 >= 11, 12 >= 12, 14 >= 14, 15 >= 15 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 11 >= 1, 12 >= 2, 5 >= 3, 6 >= 4, 7 >= 5, 8 >= 6, 9 >= 7, 10 >= 8, 14 >= 9, 15 >= 10 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs12(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba), h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 7 >= 7, 8 > 8, 9 >= 9, 10 >= 10, 11 >= 11, 12 >= 12, 14 >= 14, 15 >= 15 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Zero), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 10 >= 1, 11 >= 2, 5 > 3, 5 > 4, 5 > 5, 5 > 6, 5 > 7, 6 >= 8, 7 >= 9, 8 >= 11, 9 >= 12, 13 >= 13, 14 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch2(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 10 >= 1, 11 >= 2, 5 >= 3, 6 >= 4, 7 >= 5, 8 >= 6, 9 >= 7, 13 >= 8, 14 >= 9 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs14(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba), h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 7 >= 7, 8 > 8, 9 >= 9, 10 >= 10, 11 >= 11, 12 >= 12, 14 >= 14, 15 >= 15 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch1(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4, 3 > 5, 3 > 6, 3 > 7, 4 >= 8, 5 >= 9, 7 >= 11, 8 >= 12, 9 >= 13, 10 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4, 3 > 5, 3 > 6, 3 > 7, 4 >= 8, 5 >= 9, 7 >= 11, 8 >= 12, 9 >= 13, 10 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Zero), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs13(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)), h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 7 >= 7, 9 >= 8, 10 >= 9, 11 >= 10, 12 >= 11, 14 >= 13, 15 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch2(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Zero), xux1393, xux1394, xux141, xux142, False, h, ba) -> new_mkVBalBranch3MkVBalBranch12(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs15(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, h, ba)), h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 7 >= 7, 9 >= 8, 10 >= 9, 11 >= 10, 12 >= 11, 14 >= 13, 15 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch1(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 11 >= 1, 12 >= 2, 5 > 3, 5 > 4, 5 > 5, 5 > 6, 5 > 7, 6 >= 8, 7 >= 9, 9 >= 11, 10 >= 12, 14 >= 13, 15 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 11 >= 1, 12 >= 2, 5 > 3, 5 > 4, 5 > 5, 5 > 6, 5 > 7, 6 >= 8, 7 >= 9, 9 >= 11, 10 >= 12, 14 >= 13, 15 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch11(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch1(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 11 >= 1, 12 >= 2, 5 >= 3, 6 >= 4, 7 >= 5, 8 >= 6, 9 >= 7, 10 >= 8, 14 >= 9, 15 >= 10 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch0(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 10 >= 1, 11 >= 2, 5 >= 3, 6 >= 4, 7 >= 5, 8 >= 6, 9 >= 7, 13 >= 8, 14 >= 9 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch0(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Zero), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4, 3 > 5, 3 > 6, 3 > 7, 4 >= 8, 5 >= 9, 6 >= 11, 7 >= 12, 8 >= 13, 9 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch2(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Zero), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4, 3 > 5, 3 > 6, 3 > 7, 4 >= 8, 5 >= 9, 6 >= 11, 7 >= 12, 8 >= 13, 9 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 *new_mkVBalBranch3MkVBalBranch10(xux1350, xux1351, xux1352, xux1353, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, h, ba) -> new_mkVBalBranch3(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Zero), xux1393, xux1394, h, ba) 26.75/11.38 The graph contains the following edges 10 >= 1, 11 >= 2, 5 > 3, 5 > 4, 5 > 5, 5 > 6, 5 > 7, 6 >= 8, 7 >= 9, 8 >= 11, 9 >= 12, 13 >= 13, 14 >= 14 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (29) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (30) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_addToFM_C1(xux494, xux495, xux496, xux497, xux498, xux499, xux500, True, h, ba) -> new_addToFM_C(xux498, xux499, xux500, h, ba) 26.75/11.38 new_addToFM_C2(xux476, xux477, xux478, xux479, xux480, xux481, xux482, False, bb, bc) -> new_addToFM_C1(xux476, xux477, xux478, xux479, xux480, xux481, xux482, new_gt(xux481, xux476, bb), bb, bc) 26.75/11.38 new_addToFM_C2(xux476, xux477, xux478, Branch(xux4790, xux4791, xux4792, xux4793, xux4794), xux480, xux481, xux482, True, bb, bc) -> new_addToFM_C2(xux4790, xux4791, xux4792, xux4793, xux4794, xux481, xux482, new_lt(xux481, xux4790, bb), bb, bc) 26.75/11.38 new_addToFM_C(Branch(xux4790, xux4791, xux4792, xux4793, xux4794), xux481, xux482, bb, bc) -> new_addToFM_C2(xux4790, xux4791, xux4792, xux4793, xux4794, xux481, xux482, new_lt(xux481, xux4790, bb), bb, bc) 26.75/11.38 26.75/11.38 The TRS R consists of the following rules: 26.75/11.38 26.75/11.38 new_lt0(LT, LT) -> new_esEs4 26.75/11.38 new_lt1(xux481, xux4790) -> new_esEs1(xux481, xux4790) 26.75/11.38 new_lt(xux481, xux4790, ty_Ordering) -> new_lt0(xux481, xux4790) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_gt0(Pos(Zero), Pos(Succ(xux47600))) -> new_esEs11(Zero, xux47600) 26.75/11.38 new_gt0(Neg(Succ(xux48100)), Neg(xux4760)) -> new_esEs11(xux4760, xux48100) 26.75/11.38 new_esEs6(Zero, Zero) -> new_esEs9 26.75/11.38 new_lt(xux481, xux4790, ty_Int) -> new_lt1(xux481, xux4790) 26.75/11.38 new_esEs7 -> True 26.75/11.38 new_lt(xux481, xux4790, app(ty_Ratio, bh)) -> error([]) 26.75/11.38 new_esEs2(Succ(xux44700), Succ(xux52000)) -> new_esEs2(xux44700, xux52000) 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Neg(xux47900)) -> new_esEs2(xux47900, Succ(xux48100)) 26.75/11.38 new_lt0(EQ, LT) -> new_esEs3 26.75/11.38 new_lt0(GT, LT) -> new_esEs3 26.75/11.38 new_lt(xux481, xux4790, app(app(app(ty_@3, ca), cb), cc)) -> error([]) 26.75/11.38 new_gt0(Pos(Zero), Neg(Zero)) -> new_esEs9 26.75/11.38 new_gt0(Neg(Zero), Pos(Zero)) -> new_esEs9 26.75/11.38 new_esEs3 -> False 26.75/11.38 new_esEs10(xux48100, Zero) -> new_esEs7 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(xux479000))) -> new_esEs2(Zero, Succ(xux479000)) 26.75/11.38 new_esEs6(Succ(xux481000), Succ(xux476000)) -> new_esEs6(xux481000, xux476000) 26.75/11.38 new_gt(xux481, xux476, app(app(app(ty_@3, ca), cb), cc)) -> error([]) 26.75/11.38 new_gt(LT, EQ, ty_Ordering) -> new_esEs8 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Neg(xux47900)) -> new_esEs3 26.75/11.38 new_gt(GT, LT, ty_Ordering) -> new_esEs7 26.75/11.38 new_esEs2(Succ(xux44700), Zero) -> new_esEs3 26.75/11.38 new_lt0(LT, GT) -> new_esEs5 26.75/11.38 new_esEs4 -> False 26.75/11.38 new_lt0(GT, EQ) -> new_esEs3 26.75/11.38 new_lt0(LT, EQ) -> new_esEs5 26.75/11.38 new_gt(GT, EQ, ty_Ordering) -> new_esEs7 26.75/11.38 new_lt(xux481, xux4790, ty_Char) -> error([]) 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Pos(xux47900)) -> new_esEs5 26.75/11.38 new_gt0(Pos(Succ(xux48100)), Neg(xux4760)) -> new_esEs7 26.75/11.38 new_esEs8 -> False 26.75/11.38 new_lt0(GT, GT) -> new_esEs4 26.75/11.38 new_gt0(Pos(Succ(xux48100)), Pos(xux4760)) -> new_esEs10(xux48100, xux4760) 26.75/11.38 new_lt(xux481, xux4790, ty_Float) -> error([]) 26.75/11.38 new_gt0(Neg(Zero), Neg(Succ(xux47600))) -> new_esEs10(xux47600, Zero) 26.75/11.38 new_gt(xux481, xux476, app(app(ty_Either, bd), be)) -> error([]) 26.75/11.38 new_gt(xux481, xux476, ty_Integer) -> error([]) 26.75/11.38 new_lt(xux481, xux4790, app(ty_Maybe, bf)) -> error([]) 26.75/11.38 new_esEs10(xux48100, Succ(xux47600)) -> new_esEs6(xux48100, xux47600) 26.75/11.38 new_lt(xux481, xux4790, ty_Bool) -> error([]) 26.75/11.38 new_gt(xux481, xux476, app(ty_[], bg)) -> error([]) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_gt(GT, GT, ty_Ordering) -> new_esEs9 26.75/11.38 new_lt(xux481, xux4790, ty_Double) -> error([]) 26.75/11.38 new_lt(xux481, xux4790, app(app(ty_@2, cd), ce)) -> error([]) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(xux479000))) -> new_esEs5 26.75/11.38 new_gt0(Neg(Succ(xux48100)), Pos(xux4760)) -> new_esEs8 26.75/11.38 new_esEs1(Neg(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_gt(EQ, EQ, ty_Ordering) -> new_esEs9 26.75/11.38 new_lt(xux481, xux4790, ty_@0) -> error([]) 26.75/11.38 new_esEs11(Zero, xux48100) -> new_esEs8 26.75/11.38 new_gt(xux481, xux476, app(app(ty_@2, cd), ce)) -> error([]) 26.75/11.38 new_esEs9 -> False 26.75/11.38 new_gt(xux481, xux476, ty_Double) -> error([]) 26.75/11.38 new_gt(xux481, xux476, ty_Bool) -> error([]) 26.75/11.38 new_gt0(Pos(Zero), Pos(Zero)) -> new_esEs9 26.75/11.38 new_lt(xux481, xux4790, app(ty_[], bg)) -> error([]) 26.75/11.38 new_gt(EQ, GT, ty_Ordering) -> new_esEs8 26.75/11.38 new_esEs6(Zero, Succ(xux476000)) -> new_esEs8 26.75/11.38 new_gt(xux481, xux476, ty_@0) -> error([]) 26.75/11.38 new_lt(xux481, xux4790, app(app(ty_Either, bd), be)) -> error([]) 26.75/11.38 new_gt0(Neg(Zero), Pos(Succ(xux47600))) -> new_esEs8 26.75/11.38 new_lt0(EQ, EQ) -> new_esEs4 26.75/11.38 new_gt(xux481, xux476, ty_Char) -> error([]) 26.75/11.38 new_gt0(Pos(Zero), Neg(Succ(xux47600))) -> new_esEs7 26.75/11.38 new_gt(LT, GT, ty_Ordering) -> new_esEs8 26.75/11.38 new_gt(xux481, xux476, ty_Float) -> error([]) 26.75/11.38 new_esEs6(Succ(xux481000), Zero) -> new_esEs7 26.75/11.38 new_gt(xux481, xux476, app(ty_Maybe, bf)) -> error([]) 26.75/11.38 new_gt(EQ, LT, ty_Ordering) -> new_esEs7 26.75/11.38 new_lt0(EQ, GT) -> new_esEs5 26.75/11.38 new_lt(xux481, xux4790, ty_Integer) -> error([]) 26.75/11.38 new_gt(xux481, xux476, ty_Int) -> new_gt0(xux481, xux476) 26.75/11.38 new_esEs11(Succ(xux47600), xux48100) -> new_esEs6(xux47600, xux48100) 26.75/11.38 new_esEs2(Zero, Succ(xux52000)) -> new_esEs5 26.75/11.38 new_esEs5 -> True 26.75/11.38 new_gt0(Neg(Zero), Neg(Zero)) -> new_esEs9 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(xux479000))) -> new_esEs3 26.75/11.38 new_esEs1(Neg(Zero), Neg(Succ(xux479000))) -> new_esEs2(Succ(xux479000), Zero) 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Pos(xux47900)) -> new_esEs2(Succ(xux48100), xux47900) 26.75/11.38 new_gt(LT, LT, ty_Ordering) -> new_esEs9 26.75/11.38 new_gt(xux481, xux476, app(ty_Ratio, bh)) -> error([]) 26.75/11.38 new_esEs2(Zero, Zero) -> new_esEs4 26.75/11.38 26.75/11.38 The set Q consists of the following terms: 26.75/11.38 26.75/11.38 new_lt(x0, x1, ty_@0) 26.75/11.38 new_esEs1(Neg(Succ(x0)), Neg(x1)) 26.75/11.38 new_esEs9 26.75/11.38 new_esEs11(Succ(x0), x1) 26.75/11.38 new_lt(x0, x1, app(ty_[], x2)) 26.75/11.38 new_lt(x0, x1, ty_Char) 26.75/11.38 new_esEs6(Zero, Zero) 26.75/11.38 new_gt(x0, x1, app(app(ty_Either, x2), x3)) 26.75/11.38 new_gt(x0, x1, app(ty_Ratio, x2)) 26.75/11.38 new_esEs10(x0, Succ(x1)) 26.75/11.38 new_lt0(EQ, EQ) 26.75/11.38 new_lt0(LT, LT) 26.75/11.38 new_lt(x0, x1, ty_Double) 26.75/11.38 new_gt0(Neg(Zero), Neg(Succ(x0))) 26.75/11.38 new_esEs6(Zero, Succ(x0)) 26.75/11.38 new_gt(x0, x1, app(ty_Maybe, x2)) 26.75/11.38 new_gt(GT, LT, ty_Ordering) 26.75/11.38 new_gt(LT, GT, ty_Ordering) 26.75/11.38 new_esEs1(Pos(Succ(x0)), Pos(x1)) 26.75/11.38 new_esEs2(Succ(x0), Zero) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(x0))) 26.75/11.38 new_gt(x0, x1, ty_Int) 26.75/11.38 new_gt0(Pos(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs11(Zero, x0) 26.75/11.38 new_gt(x0, x1, ty_Bool) 26.75/11.38 new_lt0(GT, EQ) 26.75/11.38 new_lt0(EQ, GT) 26.75/11.38 new_lt(x0, x1, ty_Ordering) 26.75/11.38 new_gt0(Neg(Zero), Pos(Succ(x0))) 26.75/11.38 new_gt0(Pos(Zero), Neg(Succ(x0))) 26.75/11.38 new_gt(LT, LT, ty_Ordering) 26.75/11.38 new_gt0(Pos(Zero), Pos(Zero)) 26.75/11.38 new_esEs6(Succ(x0), Zero) 26.75/11.38 new_gt0(Neg(Succ(x0)), Neg(x1)) 26.75/11.38 new_lt1(x0, x1) 26.75/11.38 new_lt(x0, x1, ty_Int) 26.75/11.38 new_gt(x0, x1, ty_@0) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs8 26.75/11.38 new_lt(x0, x1, app(ty_Ratio, x2)) 26.75/11.38 new_gt(GT, EQ, ty_Ordering) 26.75/11.38 new_gt(EQ, GT, ty_Ordering) 26.75/11.38 new_esEs6(Succ(x0), Succ(x1)) 26.75/11.38 new_gt0(Pos(Succ(x0)), Neg(x1)) 26.75/11.38 new_gt0(Neg(Succ(x0)), Pos(x1)) 26.75/11.38 new_esEs2(Zero, Succ(x0)) 26.75/11.38 new_lt0(EQ, LT) 26.75/11.38 new_lt0(LT, EQ) 26.75/11.38 new_gt(x0, x1, app(ty_[], x2)) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) 26.75/11.38 new_esEs3 26.75/11.38 new_gt0(Pos(Succ(x0)), Pos(x1)) 26.75/11.38 new_gt(x0, x1, app(app(ty_@2, x2), x3)) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Zero)) 26.75/11.38 new_esEs5 26.75/11.38 new_gt(x0, x1, ty_Integer) 26.75/11.38 new_lt0(GT, LT) 26.75/11.38 new_gt(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 26.75/11.38 new_lt0(LT, GT) 26.75/11.38 new_lt(x0, x1, app(ty_Maybe, x2)) 26.75/11.38 new_lt(x0, x1, app(app(ty_Either, x2), x3)) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) 26.75/11.38 new_esEs10(x0, Zero) 26.75/11.38 new_gt(x0, x1, ty_Float) 26.75/11.38 new_esEs2(Zero, Zero) 26.75/11.38 new_gt0(Pos(Zero), Neg(Zero)) 26.75/11.38 new_gt0(Neg(Zero), Pos(Zero)) 26.75/11.38 new_gt(LT, EQ, ty_Ordering) 26.75/11.38 new_gt(EQ, LT, ty_Ordering) 26.75/11.38 new_lt(x0, x1, ty_Bool) 26.75/11.38 new_lt(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 26.75/11.38 new_lt(x0, x1, ty_Integer) 26.75/11.38 new_gt(GT, GT, ty_Ordering) 26.75/11.38 new_gt(EQ, EQ, ty_Ordering) 26.75/11.38 new_lt(x0, x1, ty_Float) 26.75/11.38 new_esEs7 26.75/11.38 new_lt0(GT, GT) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Succ(x0))) 26.75/11.38 new_gt(x0, x1, ty_Char) 26.75/11.38 new_gt0(Neg(Zero), Neg(Zero)) 26.75/11.38 new_esEs2(Succ(x0), Succ(x1)) 26.75/11.38 new_esEs4 26.75/11.38 new_esEs1(Pos(Succ(x0)), Neg(x1)) 26.75/11.38 new_esEs1(Neg(Succ(x0)), Pos(x1)) 26.75/11.38 new_gt(x0, x1, ty_Double) 26.75/11.38 new_lt(x0, x1, app(app(ty_@2, x2), x3)) 26.75/11.38 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (31) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_addToFM_C(Branch(xux4790, xux4791, xux4792, xux4793, xux4794), xux481, xux482, bb, bc) -> new_addToFM_C2(xux4790, xux4791, xux4792, xux4793, xux4794, xux481, xux482, new_lt(xux481, xux4790, bb), bb, bc) 26.75/11.38 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 6, 3 >= 7, 4 >= 9, 5 >= 10 26.75/11.38 26.75/11.38 26.75/11.38 *new_addToFM_C2(xux476, xux477, xux478, xux479, xux480, xux481, xux482, False, bb, bc) -> new_addToFM_C1(xux476, xux477, xux478, xux479, xux480, xux481, xux482, new_gt(xux481, xux476, bb), bb, bc) 26.75/11.38 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 7 >= 7, 9 >= 9, 10 >= 10 26.75/11.38 26.75/11.38 26.75/11.38 *new_addToFM_C1(xux494, xux495, xux496, xux497, xux498, xux499, xux500, True, h, ba) -> new_addToFM_C(xux498, xux499, xux500, h, ba) 26.75/11.38 The graph contains the following edges 5 >= 1, 6 >= 2, 7 >= 3, 9 >= 4, 10 >= 5 26.75/11.38 26.75/11.38 26.75/11.38 *new_addToFM_C2(xux476, xux477, xux478, Branch(xux4790, xux4791, xux4792, xux4793, xux4794), xux480, xux481, xux482, True, bb, bc) -> new_addToFM_C2(xux4790, xux4791, xux4792, xux4793, xux4794, xux481, xux482, new_lt(xux481, xux4790, bb), bb, bc) 26.75/11.38 The graph contains the following edges 4 > 1, 4 > 2, 4 > 3, 4 > 4, 4 > 5, 6 >= 6, 7 >= 7, 9 >= 9, 10 >= 10 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (32) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (33) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_esEs0(Succ(xux481000), Succ(xux476000)) -> new_esEs0(xux481000, xux476000) 26.75/11.38 26.75/11.38 R is empty. 26.75/11.38 Q is empty. 26.75/11.38 We have to consider all minimal (P,Q,R)-chains. 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (34) QDPSizeChangeProof (EQUIVALENT) 26.75/11.38 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. 26.75/11.38 26.75/11.38 From the DPs we obtained the following set of size-change graphs: 26.75/11.38 *new_esEs0(Succ(xux481000), Succ(xux476000)) -> new_esEs0(xux481000, xux476000) 26.75/11.38 The graph contains the following edges 1 > 1, 2 > 2 26.75/11.38 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (35) 26.75/11.38 YES 26.75/11.38 26.75/11.38 ---------------------------------------- 26.75/11.38 26.75/11.38 (36) 26.75/11.38 Obligation: 26.75/11.38 Q DP problem: 26.75/11.38 The TRS P consists of the following rules: 26.75/11.38 26.75/11.38 new_plusFM(Branch(xux30, xux31, xux32, xux33, xux34), Branch(xux40, xux41, xux42, xux43, xux44), h) -> new_plusFM(new_splitLT30(xux30, xux31, xux32, xux33, xux34, xux40, h), xux43, h) 26.75/11.38 new_plusFM(Branch(xux30, xux31, xux32, xux33, xux34), Branch(xux40, xux41, xux42, xux43, xux44), h) -> new_plusFM(new_splitGT30(xux30, xux31, xux32, xux33, xux34, xux40, h), xux44, h) 26.75/11.38 26.75/11.38 The TRS R consists of the following rules: 26.75/11.38 26.75/11.38 new_lt1(xux481, xux4790) -> new_esEs1(xux481, xux4790) 26.75/11.38 new_esEs16(xux4470, Neg(xux520)) -> new_esEs3 26.75/11.38 new_gt0(Neg(Succ(xux48100)), Neg(xux4760)) -> new_esEs11(xux4760, xux48100) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_esEs6(Zero, Zero) -> new_esEs9 26.75/11.38 new_splitLT30(LT, xux31, xux32, xux33, xux34, GT, h) -> new_mkVBalBranch4(LT, xux31, xux33, new_splitLT5(xux34, h), h) 26.75/11.38 new_primPlusNat0(Zero, Zero) -> Zero 26.75/11.38 new_esEs2(Succ(xux44700), Succ(xux52000)) -> new_esEs2(xux44700, xux52000) 26.75/11.38 new_gt0(Pos(Zero), Neg(Zero)) -> new_esEs9 26.75/11.38 new_gt0(Neg(Zero), Pos(Zero)) -> new_esEs9 26.75/11.38 new_mkBalBranch6MkBalBranch52(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch41(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_gt0(new_mkBalBranch6Size_r1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd), new_sr(new_mkBalBranch6Size_l1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd))), bc, bd) 26.75/11.38 new_primPlusInt0(xux49720, Neg(xux56020)) -> new_primMinusNat1(xux49720, xux56020) 26.75/11.38 new_splitLT30(LT, xux31, xux32, xux33, xux34, EQ, h) -> new_mkVBalBranch4(LT, xux31, xux33, new_splitLT4(xux34, h), h) 26.75/11.38 new_splitLT30(GT, xux31, xux32, xux33, xux34, GT, h) -> xux33 26.75/11.38 new_primPlusInt4(xux49720, Branch(xux5600, xux5601, xux5602, xux5603, xux5604), bc, bd) -> new_primPlusInt1(xux49720, xux5602) 26.75/11.38 new_mkBalBranch6MkBalBranch110(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, Branch(xux49740, xux49741, xux49742, xux49743, xux49744), xux558, False, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))), xux49740, xux49741, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))), xux4970, xux4971, xux4973, xux49743, bc, bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))))), xux494, xux495, xux49744, xux558, bc, bd), bc, bd) 26.75/11.38 new_splitLT30(EQ, xux31, xux32, xux33, xux34, EQ, h) -> xux33 26.75/11.38 new_splitGT30(EQ, xux31, xux32, xux33, xux34, LT, h) -> new_mkVBalBranch4(EQ, xux31, new_splitGT5(xux33, h), xux34, h) 26.75/11.38 new_esEs2(Succ(xux44700), Zero) -> new_esEs3 26.75/11.38 new_mkBalBranch6MkBalBranch110(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))), xux4970, xux4971, xux4973, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))), xux494, xux495, xux4974, xux558, bc, bd), bc, bd) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkVBalBranch3MkVBalBranch14(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs12(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_lt0(GT, EQ) -> new_esEs3 26.75/11.38 new_primPlusInt2(EmptyFM, bc, bd) -> Pos(new_primPlusNat0(Zero, Zero)) 26.75/11.38 new_primMulNat2(Succ(xux59200)) -> new_primPlusNat0(new_primMulNat0(xux59200), Succ(xux59200)) 26.75/11.38 new_mkBalBranch6MkBalBranch3(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBranch(Succ(Zero), xux494, xux495, Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), xux558, bc, bd) 26.75/11.38 new_gt0(Pos(Succ(xux48100)), Neg(xux4760)) -> new_esEs7 26.75/11.38 new_esEs8 -> False 26.75/11.38 new_mkBalBranch6MkBalBranch50(xux494, xux495, xux559, xux558, True, bc, bd) -> new_mkBranch(Zero, xux494, xux495, EmptyFM, xux558, bc, bd) 26.75/11.38 new_lt(xux481, xux4790, ty_Float) -> error([]) 26.75/11.38 new_gt(xux481, xux476, app(app(ty_Either, ca), cb)) -> error([]) 26.75/11.38 new_gt(xux481, xux476, ty_Integer) -> error([]) 26.75/11.38 new_lt(xux481, xux4790, ty_Bool) -> error([]) 26.75/11.38 new_splitLT4(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT30(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.38 new_lt(xux481, xux4790, ty_Double) -> error([]) 26.75/11.38 new_mkBalBranch6MkBalBranch01(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, EmptyFM, xux5584, False, bc, bd) -> error([]) 26.75/11.38 new_primPlusInt3(xux49720, Branch(xux5600, xux5601, xux5602, xux5603, xux5604), bc, bd) -> new_primPlusInt0(xux49720, xux5602) 26.75/11.38 new_splitGT2(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(xux479000))) -> new_esEs5 26.75/11.38 new_splitGT30(LT, xux31, xux32, xux33, xux34, GT, h) -> new_splitGT2(xux34, h) 26.75/11.38 new_gt0(Neg(Succ(xux48100)), Pos(xux4760)) -> new_esEs8 26.75/11.38 new_primPlusInt1(xux49720, Pos(xux56020)) -> new_primMinusNat1(xux56020, xux49720) 26.75/11.38 new_splitGT4(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT30(xux340, xux341, xux342, xux343, xux344, EQ, h) 26.75/11.38 new_mkVBalBranch9(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, be, bf) -> new_mkVBalBranch30(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Zero), xux1393, xux1394, be, bf) 26.75/11.38 new_esEs16(xux4470, Pos(Succ(xux5200))) -> new_esEs2(xux4470, xux5200) 26.75/11.38 new_mkBalBranch6MkBalBranch01(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, xux5583, xux5584, True, bc, bd) -> new_mkBranch(Succ(Succ(Zero)), xux5580, xux5581, new_mkBranch(Succ(Succ(Succ(Zero))), xux494, xux495, Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), xux5583, bc, bd), xux5584, bc, bd) 26.75/11.38 new_gt(xux481, xux476, ty_Double) -> error([]) 26.75/11.38 new_primMulInt(Neg(xux5720)) -> Neg(new_primMulNat1(xux5720)) 26.75/11.38 new_gt(EQ, GT, ty_Ordering) -> new_esEs8 26.75/11.38 new_esEs12(Succ(xux4610), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_esEs16(xux4610, new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)) 26.75/11.38 new_mkBalBranch6MkBalBranch010(xux494, xux495, xux559, xux5580, xux5581, xux5582, EmptyFM, xux5584, False, bc, bd) -> error([]) 26.75/11.38 new_primPlusInt4(xux49720, EmptyFM, bc, bd) -> new_primMinusNat0(xux49720) 26.75/11.38 new_gt(xux481, xux476, ty_@0) -> error([]) 26.75/11.38 new_mkBalBranch6MkBalBranch4(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, EmptyFM, True, bc, bd) -> error([]) 26.75/11.38 new_esEs13(Pos(Zero)) -> new_esEs4 26.75/11.38 new_mkBalBranch6MkBalBranch51(xux494, xux495, xux559, Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), xux558, xux561, xux560, bc, bd) -> new_mkBalBranch6MkBalBranch5(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_esEs1(new_primPlusInt3(xux49720, xux560, bc, bd), Pos(Succ(Succ(Zero)))), bc, bd) 26.75/11.38 new_esEs13(Pos(Succ(xux5200))) -> new_esEs5 26.75/11.38 new_primPlusInt3(xux49720, EmptyFM, bc, bd) -> Pos(new_primPlusNat0(xux49720, Zero)) 26.75/11.38 new_gt(xux481, xux476, app(ty_Maybe, cc)) -> error([]) 26.75/11.38 new_mkVBalBranch4(xux40, xux41, EmptyFM, xux5, h) -> new_addToFM0(xux5, xux40, xux41, h) 26.75/11.38 new_mkBalBranch6Size_r1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd) -> new_sizeFM(xux559, bc, bd) 26.75/11.38 new_mkBalBranch6Size_l0(xux494, xux495, xux559, bc, bd) -> new_sizeFM(EmptyFM, bc, bd) 26.75/11.38 new_addToFM_C20(xux476, xux477, xux478, xux479, xux480, xux481, xux482, False, bg, bh) -> new_addToFM_C10(xux476, xux477, xux478, xux479, xux480, xux481, xux482, new_gt(xux481, xux476, bg), bg, bh) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Succ(xux479000))) -> new_esEs2(Succ(xux479000), Zero) 26.75/11.38 new_splitLT5(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitLT30(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 new_splitGT30(LT, xux31, xux32, xux33, xux34, LT, h) -> xux34 26.75/11.38 new_gt(xux481, xux476, app(ty_Ratio, ce)) -> error([]) 26.75/11.38 new_lt0(LT, LT) -> new_esEs4 26.75/11.38 new_gt0(Pos(Zero), Pos(Succ(xux47600))) -> new_esEs11(Zero, xux47600) 26.75/11.38 new_addToFM_C0(EmptyFM, xux481, xux482, bg, bh) -> Branch(xux481, xux482, Pos(Succ(Zero)), new_emptyFM0(bg, bh), new_emptyFM0(bg, bh)) 26.75/11.38 new_addToFM_C20(xux476, xux477, xux478, xux479, xux480, xux481, xux482, True, bg, bh) -> new_mkBalBranch6MkBalBranch51(xux476, xux477, xux480, new_addToFM_C0(xux479, xux481, xux482, bg, bh), xux480, xux480, xux480, bg, bh) 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Neg(xux47900)) -> new_esEs2(xux47900, Succ(xux48100)) 26.75/11.38 new_mkBalBranch6Size_r(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd) -> new_sizeFM(xux559, bc, bd) 26.75/11.38 new_addToFM(xux1350, xux1351, xux1352, xux1353, xux1354, xux141, xux142, be, bf) -> new_addToFM_C0(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), xux141, xux142, be, bf) 26.75/11.38 new_lt0(GT, LT) -> new_esEs3 26.75/11.38 new_splitGT30(GT, xux31, xux32, xux33, xux34, EQ, h) -> new_mkVBalBranch4(GT, xux31, new_splitGT4(xux33, h), xux34, h) 26.75/11.38 new_mkBalBranch6MkBalBranch30(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBalBranch6MkBalBranch110(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_lt1(new_sizeFM(xux4974, bc, bd), new_sr0(new_sizeFM(xux4973, bc, bd))), bc, bd) 26.75/11.38 new_esEs10(xux48100, Zero) -> new_esEs7 26.75/11.38 new_mkVBalBranch3MkVBalBranch15(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, be, bf) -> new_mkBalBranch6MkBalBranch51(xux1350, xux1351, new_mkVBalBranch9(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), xux1353, new_mkVBalBranch9(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), new_mkVBalBranch9(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), new_mkVBalBranch9(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_splitGT5(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_mkBalBranch6MkBalBranch011(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, xux5583, xux5584, True, bc, bd) -> new_mkBranch(Succ(Succ(Zero)), xux5580, xux5581, new_mkBranch(Succ(Succ(Succ(Zero))), xux494, xux495, Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), xux5583, bc, bd), xux5584, bc, bd) 26.75/11.38 new_primMinusNat0(Succ(xux560200)) -> Neg(Succ(xux560200)) 26.75/11.38 new_mkBalBranch6MkBalBranch011(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, EmptyFM, xux5584, False, bc, bd) -> error([]) 26.75/11.38 new_esEs4 -> False 26.75/11.38 new_lt0(LT, EQ) -> new_esEs5 26.75/11.38 new_mkBalBranch6MkBalBranch51(xux494, xux495, xux559, EmptyFM, xux558, xux561, xux560, bc, bd) -> new_mkBalBranch6MkBalBranch50(xux494, xux495, xux559, xux558, new_esEs1(new_primPlusInt2(xux560, bc, bd), Pos(Succ(Succ(Zero)))), bc, bd) 26.75/11.38 new_splitGT30(LT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitGT4(xux34, h) 26.75/11.38 new_esEs1(Neg(Succ(xux48100)), Pos(xux47900)) -> new_esEs5 26.75/11.38 new_primMulNat2(Zero) -> Zero 26.75/11.38 new_primMulNat(xux6200) -> new_primPlusNat0(new_primPlusNat0(new_primPlusNat0(new_primMulNat0(xux6200), Succ(xux6200)), Succ(xux6200)), Succ(xux6200)) 26.75/11.38 new_gt(xux481, xux476, app(ty_[], cd)) -> error([]) 26.75/11.38 new_splitLT30(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_mkVBalBranch4(EQ, xux31, xux33, new_splitLT5(xux34, h), h) 26.75/11.38 new_gt(GT, GT, ty_Ordering) -> new_esEs9 26.75/11.38 new_sr0(Pos(xux5920)) -> Pos(new_primMulNat2(xux5920)) 26.75/11.38 new_primMinusNat1(Zero, Zero) -> Pos(Zero) 26.75/11.38 new_mkBalBranch6MkBalBranch5(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBranch(Zero, xux494, xux495, Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), xux558, bc, bd) 26.75/11.38 new_mkBalBranch6MkBalBranch01(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, Branch(xux55830, xux55831, xux55832, xux55833, xux55834), xux5584, False, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), xux55830, xux55831, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), xux494, xux495, Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), xux55833, bc, bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), xux5580, xux5581, xux55834, xux5584, bc, bd), bc, bd) 26.75/11.38 new_esEs1(Neg(Zero), Neg(Zero)) -> new_esEs4 26.75/11.38 new_gt(EQ, EQ, ty_Ordering) -> new_esEs9 26.75/11.38 new_esEs11(Zero, xux48100) -> new_esEs8 26.75/11.38 new_esEs12(Zero, xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_esEs13(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)) 26.75/11.38 new_gt(xux481, xux476, ty_Bool) -> error([]) 26.75/11.38 new_mkBalBranch6MkBalBranch40(xux494, xux495, xux559, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch31(xux494, xux495, xux559, xux558, new_gt0(new_mkBalBranch6Size_l0(xux494, xux495, xux559, bc, bd), new_sr(new_mkBalBranch6Size_r0(xux494, xux495, xux559, bc, bd))), bc, bd) 26.75/11.38 new_sr(xux577) -> new_primMulInt(xux577) 26.75/11.38 new_splitLT2(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT30(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1392, xux1393, xux1394, xux141, xux142, True, be, bf) -> new_mkBalBranch6MkBalBranch51(xux1390, xux1391, xux1394, new_mkVBalBranch7(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, xux1393, be, bf), xux1394, xux1394, xux1394, be, bf) 26.75/11.38 new_primMinusNat1(Succ(xux497200), Zero) -> Pos(Succ(xux497200)) 26.75/11.38 new_mkBalBranch6Size_l(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd) -> new_sizeFM(Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), bc, bd) 26.75/11.38 new_mkBranch(xux632, xux633, xux634, xux635, xux636, ba, bb) -> Branch(xux633, xux634, new_primPlusInt(new_primPlusInt0(Succ(Zero), new_sizeFM(xux635, ba, bb)), xux635, xux633, xux636, ba, bb), xux635, xux636) 26.75/11.38 new_splitGT5(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitGT30(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.38 new_primPlusInt(Pos(xux6370), xux635, xux633, xux636, ba, bb) -> new_primPlusInt0(xux6370, new_sizeFM(xux636, ba, bb)) 26.75/11.38 new_esEs13(Neg(Zero)) -> new_esEs4 26.75/11.38 new_mkBalBranch6MkBalBranch010(xux494, xux495, xux559, xux5580, xux5581, xux5582, xux5583, xux5584, True, bc, bd) -> new_mkBranch(Succ(Succ(Zero)), xux5580, xux5581, new_mkBranch(Succ(Succ(Succ(Zero))), xux494, xux495, EmptyFM, xux5583, bc, bd), xux5584, bc, bd) 26.75/11.38 new_gt(xux481, xux476, ty_Char) -> error([]) 26.75/11.38 new_splitGT30(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitGT2(xux34, h) 26.75/11.38 new_mkBalBranch6MkBalBranch51(xux494, xux495, xux559, Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), xux558, xux561, xux560, bc, bd) -> new_mkBalBranch6MkBalBranch52(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_esEs1(new_primPlusInt4(xux49720, xux560, bc, bd), Pos(Succ(Succ(Zero)))), bc, bd) 26.75/11.38 new_splitLT2(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_splitGT4(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_mkBalBranch6MkBalBranch31(xux494, xux495, xux559, xux558, True, bc, bd) -> error([]) 26.75/11.38 new_gt(xux481, xux476, ty_Int) -> new_gt0(xux481, xux476) 26.75/11.38 new_esEs14(Zero, xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_esEs15(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)) 26.75/11.38 new_sizeFM(EmptyFM, bc, bd) -> Pos(Zero) 26.75/11.38 new_primPlusInt2(Branch(xux5600, xux5601, Neg(xux56020), xux5603, xux5604), bc, bd) -> new_primMinusNat0(xux56020) 26.75/11.38 new_mkVBalBranch4(xux40, xux41, Branch(xux60, xux61, xux62, xux63, xux64), EmptyFM, h) -> new_addToFM0(Branch(xux60, xux61, xux62, xux63, xux64), xux40, xux41, h) 26.75/11.38 new_esEs2(Zero, Zero) -> new_esEs4 26.75/11.38 new_splitGT30(GT, xux31, xux32, xux33, xux34, GT, h) -> xux34 26.75/11.38 new_lt(xux481, xux4790, ty_Ordering) -> new_lt0(xux481, xux4790) 26.75/11.38 new_esEs18(Neg(Zero), xux60, xux61, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs15(xux52) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkVBalBranch3MkVBalBranch13(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, new_esEs14(new_primPlusNat0(new_primMulNat(xux139200), Succ(xux139200)), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_addToFM_C10(xux494, xux495, xux496, xux497, xux498, xux499, xux500, False, bc, bd) -> Branch(xux499, xux500, xux496, xux497, xux498) 26.75/11.38 new_primPlusInt1(xux49720, Neg(xux56020)) -> Neg(new_primPlusNat0(xux49720, xux56020)) 26.75/11.38 new_esEs7 -> True 26.75/11.38 new_splitLT30(EQ, xux31, xux32, xux33, xux34, LT, h) -> new_splitLT2(xux33, h) 26.75/11.38 new_splitLT30(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitLT2(xux33, h) 26.75/11.38 new_esEs17(xux4480, Neg(Zero)) -> new_esEs5 26.75/11.38 new_lt(xux481, xux4790, app(app(app(ty_@3, cf), cg), da)) -> error([]) 26.75/11.38 new_mkBalBranch6MkBalBranch52(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBranch(Zero, xux494, xux495, Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), xux558, bc, bd) 26.75/11.38 new_mkVBalBranch3MkVBalBranch16(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), xux141, xux142, Branch(xux1350, xux1351, xux1352, xux1353, xux1354), Branch(xux1390, xux1391, Neg(Zero), xux1393, xux1394), be, bf) 26.75/11.38 new_primPlusInt2(Branch(xux5600, xux5601, Pos(xux56020), xux5603, xux5604), bc, bd) -> Pos(new_primPlusNat0(Zero, xux56020)) 26.75/11.38 new_mkBalBranch6MkBalBranch40(xux494, xux495, xux559, Branch(xux5580, xux5581, xux5582, xux5583, xux5584), True, bc, bd) -> new_mkBalBranch6MkBalBranch010(xux494, xux495, xux559, xux5580, xux5581, xux5582, xux5583, xux5584, new_lt1(new_sizeFM(xux5583, bc, bd), new_sr0(new_sizeFM(xux5584, bc, bd))), bc, bd) 26.75/11.38 new_sr0(Neg(xux5920)) -> Neg(new_primMulNat2(xux5920)) 26.75/11.38 new_sizeFM(Branch(xux5590, xux5591, xux5592, xux5593, xux5594), bc, bd) -> xux5592 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(xux479000))) -> new_esEs2(Zero, Succ(xux479000)) 26.75/11.38 new_mkBalBranch6MkBalBranch11(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))), xux4970, xux4971, xux4973, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))), xux494, xux495, xux4974, xux558, bc, bd), bc, bd) 26.75/11.38 new_splitGT2(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitGT30(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.38 new_mkVBalBranch8(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux1393, xux1394, be, bf) -> new_mkVBalBranch30(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Zero), xux1393, xux1394, be, bf) 26.75/11.38 new_gt(LT, EQ, ty_Ordering) -> new_esEs8 26.75/11.38 new_splitGT30(EQ, xux31, xux32, xux33, xux34, EQ, h) -> xux34 26.75/11.38 new_splitLT30(LT, xux31, xux32, xux33, xux34, LT, h) -> xux33 26.75/11.38 new_mkBalBranch6MkBalBranch11(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, Branch(xux49740, xux49741, xux49742, xux49743, xux49744), xux558, False, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))), xux49740, xux49741, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))), xux4970, xux4971, xux4973, xux49743, bc, bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero))))))))))), xux494, xux495, xux49744, xux558, bc, bd), bc, bd) 26.75/11.38 new_esEs14(Succ(xux4650), xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_esEs17(xux4650, new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)) 26.75/11.38 new_mkVBalBranch8(xux141, xux142, EmptyFM, xux1390, xux1391, xux1393, xux1394, be, bf) -> new_addToFM(xux1390, xux1391, Neg(Zero), xux1393, xux1394, xux141, xux142, be, bf) 26.75/11.38 new_primPlusInt(Neg(xux6370), xux635, xux633, xux636, ba, bb) -> new_primPlusInt1(xux6370, new_sizeFM(xux636, ba, bb)) 26.75/11.38 new_addToFM_C3(EmptyFM, xux40, xux41, h) -> Branch(xux40, xux41, Pos(Succ(Zero)), new_emptyFM(h), new_emptyFM(h)) 26.75/11.38 new_gt(GT, EQ, ty_Ordering) -> new_esEs7 26.75/11.38 new_mkBalBranch6MkBalBranch110(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, EmptyFM, xux558, False, bc, bd) -> error([]) 26.75/11.38 new_lt(xux481, xux4790, ty_Char) -> error([]) 26.75/11.38 new_mkVBalBranch6(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_mkVBalBranch30(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, be, bf) 26.75/11.38 new_primPlusNat0(Succ(xux2200), Succ(xux120)) -> Succ(Succ(new_primPlusNat0(xux2200, xux120))) 26.75/11.38 new_mkBalBranch6MkBalBranch31(xux494, xux495, xux559, xux558, False, bc, bd) -> new_mkBranch(Succ(Zero), xux494, xux495, EmptyFM, xux558, bc, bd) 26.75/11.38 new_splitGT30(GT, xux31, xux32, xux33, xux34, LT, h) -> new_mkVBalBranch4(GT, xux31, new_splitGT5(xux33, h), xux34, h) 26.75/11.38 new_gt0(Pos(Succ(xux48100)), Pos(xux4760)) -> new_esEs10(xux48100, xux4760) 26.75/11.38 new_mkBalBranch6MkBalBranch011(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, Branch(xux55830, xux55831, xux55832, xux55833, xux55834), xux5584, False, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), xux55830, xux55831, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), xux494, xux495, Branch(xux4970, xux4971, Pos(xux49720), xux4973, xux4974), xux55833, bc, bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), xux5580, xux5581, xux55834, xux5584, bc, bd), bc, bd) 26.75/11.38 new_mkBalBranch6MkBalBranch41(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch30(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_gt0(new_mkBalBranch6Size_l1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd), new_sr(new_mkBalBranch6Size_r1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd))), bc, bd) 26.75/11.38 new_mkBalBranch6MkBalBranch40(xux494, xux495, xux559, EmptyFM, True, bc, bd) -> error([]) 26.75/11.38 new_mkBalBranch6Size_r0(xux494, xux495, xux559, bc, bd) -> new_sizeFM(xux559, bc, bd) 26.75/11.38 new_lt(xux481, xux4790, app(app(ty_@2, db), dc)) -> error([]) 26.75/11.38 new_mkBalBranch6MkBalBranch30(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBranch(Succ(Zero), xux494, xux495, Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), xux558, bc, bd) 26.75/11.38 new_esEs18(Neg(Succ(xux6200)), xux60, xux61, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs20(new_primPlusNat0(new_primMulNat(xux6200), Succ(xux6200)), xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) 26.75/11.38 new_lt(xux481, xux4790, ty_@0) -> error([]) 26.75/11.38 new_primMinusNat1(Succ(xux497200), Succ(xux560200)) -> new_primMinusNat1(xux497200, xux560200) 26.75/11.38 new_esEs18(Pos(Zero), xux60, xux61, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs13(xux52) 26.75/11.38 new_esEs9 -> False 26.75/11.38 new_emptyFM0(bg, bh) -> EmptyFM 26.75/11.38 new_gt0(Pos(Zero), Pos(Zero)) -> new_esEs9 26.75/11.38 new_esEs15(Neg(Succ(xux5200))) -> new_esEs3 26.75/11.38 new_mkVBalBranch3MkVBalBranch15(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), xux141, xux142, Branch(xux1350, xux1351, xux1352, xux1353, xux1354), Branch(xux1390, xux1391, Pos(Zero), xux1393, xux1394), be, bf) 26.75/11.38 new_gt0(Neg(Zero), Pos(Succ(xux47600))) -> new_esEs8 26.75/11.38 new_mkVBalBranch3MkVBalBranch14(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, be, bf) -> new_mkBalBranch6MkBalBranch51(xux1350, xux1351, new_mkVBalBranch6(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), xux1353, new_mkVBalBranch6(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), new_mkVBalBranch6(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), new_mkVBalBranch6(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_esEs17(xux4480, Pos(xux520)) -> new_esEs5 26.75/11.38 new_mkVBalBranch4(xux40, xux41, Branch(xux60, xux61, xux62, xux63, xux64), Branch(xux50, xux51, xux52, xux53, xux54), h) -> new_mkVBalBranch3MkVBalBranch20(xux60, xux61, xux62, xux63, xux64, xux50, xux51, xux52, xux53, xux54, xux40, xux41, new_esEs18(xux62, xux60, xux61, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h), ty_Ordering, h) 26.75/11.38 new_gt(xux481, xux476, ty_Float) -> error([]) 26.75/11.38 new_esEs6(Succ(xux481000), Zero) -> new_esEs7 26.75/11.38 new_esEs20(Zero, xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs15(new_sizeFM1(xux50, xux51, xux52, xux53, xux54, h)) 26.75/11.38 new_gt(EQ, LT, ty_Ordering) -> new_esEs7 26.75/11.38 new_lt0(EQ, GT) -> new_esEs5 26.75/11.38 new_esEs17(xux4480, Neg(Succ(xux5200))) -> new_esEs2(xux5200, xux4480) 26.75/11.38 new_esEs18(Pos(Succ(xux6200)), xux60, xux61, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs19(new_primPlusNat0(new_primMulNat(xux6200), Succ(xux6200)), xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) 26.75/11.38 new_esEs2(Zero, Succ(xux52000)) -> new_esEs5 26.75/11.38 new_esEs5 -> True 26.75/11.38 new_mkBalBranch6MkBalBranch3(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, True, bc, bd) -> new_mkBalBranch6MkBalBranch11(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_lt1(new_sizeFM(xux4974, bc, bd), new_sr0(new_sizeFM(xux4973, bc, bd))), bc, bd) 26.75/11.38 new_gt0(Neg(Zero), Neg(Zero)) -> new_esEs9 26.75/11.38 new_gt(LT, LT, ty_Ordering) -> new_esEs9 26.75/11.38 new_mkVBalBranch3MkVBalBranch13(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, True, be, bf) -> new_mkBalBranch6MkBalBranch51(xux1350, xux1351, new_mkVBalBranch5(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), xux1353, new_mkVBalBranch5(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), new_mkVBalBranch5(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), new_mkVBalBranch5(xux141, xux142, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_addToFM_C10(xux494, xux495, xux496, xux497, xux498, xux499, xux500, True, bc, bd) -> new_mkBalBranch6MkBalBranch51(xux494, xux495, new_addToFM_C0(xux498, xux499, xux500, bc, bd), xux497, new_addToFM_C0(xux498, xux499, xux500, bc, bd), new_addToFM_C0(xux498, xux499, xux500, bc, bd), new_addToFM_C0(xux498, xux499, xux500, bc, bd), bc, bd) 26.75/11.38 new_lt(xux481, xux4790, ty_Int) -> new_lt1(xux481, xux4790) 26.75/11.38 new_primPlusNat0(Succ(xux2200), Zero) -> Succ(xux2200) 26.75/11.38 new_primPlusNat0(Zero, Succ(xux120)) -> Succ(xux120) 26.75/11.38 new_lt(xux481, xux4790, app(ty_Ratio, ce)) -> error([]) 26.75/11.38 new_mkVBalBranch5(xux141, xux142, Branch(xux13540, xux13541, xux13542, xux13543, xux13544), xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_mkVBalBranch30(xux141, xux142, xux13540, xux13541, xux13542, xux13543, xux13544, xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, be, bf) 26.75/11.38 new_lt0(EQ, LT) -> new_esEs3 26.75/11.38 new_primMinusNat0(Zero) -> Pos(Zero) 26.75/11.38 new_mkBalBranch6MkBalBranch4(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, Branch(xux5580, xux5581, xux5582, xux5583, xux5584), True, bc, bd) -> new_mkBalBranch6MkBalBranch011(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, xux5583, xux5584, new_lt1(new_sizeFM(xux5583, bc, bd), new_sr0(new_sizeFM(xux5584, bc, bd))), bc, bd) 26.75/11.38 new_splitLT4(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_esEs3 -> False 26.75/11.38 new_mkVBalBranch6(xux141, xux142, EmptyFM, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_addToFM(xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394, xux141, xux142, be, bf) 26.75/11.38 new_esEs16(xux4470, Pos(Zero)) -> new_esEs3 26.75/11.38 new_esEs13(Neg(Succ(xux5200))) -> new_esEs3 26.75/11.38 new_esEs6(Succ(xux481000), Succ(xux476000)) -> new_esEs6(xux481000, xux476000) 26.75/11.38 new_gt(xux481, xux476, app(app(app(ty_@3, cf), cg), da)) -> error([]) 26.75/11.38 new_mkVBalBranch9(xux141, xux142, EmptyFM, xux1390, xux1391, xux1393, xux1394, be, bf) -> new_addToFM(xux1390, xux1391, Pos(Zero), xux1393, xux1394, xux141, xux142, be, bf) 26.75/11.38 new_primMulNat1(Zero) -> Zero 26.75/11.38 new_mkBalBranch6MkBalBranch11(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, EmptyFM, xux558, False, bc, bd) -> error([]) 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Neg(xux47900)) -> new_esEs3 26.75/11.38 new_gt(GT, LT, ty_Ordering) -> new_esEs7 26.75/11.38 new_esEs15(Neg(Zero)) -> new_esEs4 26.75/11.38 new_lt0(LT, GT) -> new_esEs5 26.75/11.38 new_mkBalBranch6MkBalBranch41(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, Branch(xux5580, xux5581, xux5582, xux5583, xux5584), True, bc, bd) -> new_mkBalBranch6MkBalBranch01(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux5580, xux5581, xux5582, xux5583, xux5584, new_lt1(new_sizeFM(xux5583, bc, bd), new_sr0(new_sizeFM(xux5584, bc, bd))), bc, bd) 26.75/11.38 new_mkVBalBranch7(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, EmptyFM, be, bf) -> new_addToFM(xux1350, xux1351, xux1352, xux1353, xux1354, xux141, xux142, be, bf) 26.75/11.38 new_splitLT30(GT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitLT4(xux33, h) 26.75/11.38 new_splitLT5(EmptyFM, h) -> new_emptyFM(h) 26.75/11.38 new_mkBalBranch6Size_l1(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd) -> new_sizeFM(Branch(xux4970, xux4971, Neg(xux49720), xux4973, xux4974), bc, bd) 26.75/11.38 new_mkBalBranch6MkBalBranch5(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch4(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_gt0(new_mkBalBranch6Size_r(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd), new_sr(new_mkBalBranch6Size_l(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd))), bc, bd) 26.75/11.38 new_primPlusInt0(xux49720, Pos(xux56020)) -> Pos(new_primPlusNat0(xux49720, xux56020)) 26.75/11.38 new_mkBalBranch6MkBalBranch41(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, EmptyFM, True, bc, bd) -> error([]) 26.75/11.38 new_esEs15(Pos(Succ(xux5200))) -> new_esEs5 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Neg(Zero), xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkVBalBranch3MkVBalBranch16(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs15(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)), be, bf) 26.75/11.38 new_addToFM_C3(Branch(xux50, xux51, xux52, xux53, xux54), xux40, xux41, h) -> new_addToFM_C20(xux50, xux51, xux52, xux53, xux54, xux40, xux41, new_lt0(xux40, xux50), ty_Ordering, h) 26.75/11.38 new_mkVBalBranch3MkVBalBranch16(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, True, be, bf) -> new_mkBalBranch6MkBalBranch51(xux1350, xux1351, new_mkVBalBranch8(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), xux1353, new_mkVBalBranch8(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), new_mkVBalBranch8(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), new_mkVBalBranch8(xux141, xux142, xux1354, xux1390, xux1391, xux1393, xux1394, be, bf), be, bf) 26.75/11.38 new_mkVBalBranch7(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, Branch(xux13930, xux13931, xux13932, xux13933, xux13934), be, bf) -> new_mkVBalBranch30(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, be, bf) 26.75/11.38 new_lt0(GT, GT) -> new_esEs4 26.75/11.38 new_gt0(Neg(Zero), Neg(Succ(xux47600))) -> new_esEs10(xux47600, Zero) 26.75/11.38 new_lt(xux481, xux4790, app(ty_Maybe, cc)) -> error([]) 26.75/11.38 new_esEs10(xux48100, Succ(xux47600)) -> new_esEs6(xux48100, xux47600) 26.75/11.38 new_primMinusNat1(Zero, Succ(xux560200)) -> Neg(Succ(xux560200)) 26.75/11.38 new_addToFM_C0(Branch(xux4790, xux4791, xux4792, xux4793, xux4794), xux481, xux482, bg, bh) -> new_addToFM_C20(xux4790, xux4791, xux4792, xux4793, xux4794, xux481, xux482, new_lt(xux481, xux4790, bg), bg, bh) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) -> new_esEs4 26.75/11.38 new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf) -> xux1352 26.75/11.38 new_mkBalBranch6MkBalBranch4(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch3(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, xux558, new_gt0(new_mkBalBranch6Size_l(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd), new_sr(new_mkBalBranch6Size_r(xux494, xux495, xux559, xux4970, xux4971, xux49720, xux4973, xux4974, bc, bd))), bc, bd) 26.75/11.38 new_sizeFM1(xux50, xux51, xux52, xux53, xux54, h) -> xux52 26.75/11.38 new_mkVBalBranch3MkVBalBranch13(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), xux141, xux142, Branch(xux1350, xux1351, xux1352, xux1353, xux1354), Branch(xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394), be, bf) 26.75/11.38 new_primMulNat1(Succ(xux57200)) -> new_primPlusNat0(new_primMulNat(xux57200), Succ(xux57200)) 26.75/11.38 new_gt(xux481, xux476, app(app(ty_@2, db), dc)) -> error([]) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, Pos(Zero), xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkVBalBranch3MkVBalBranch15(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux1393, xux1394, xux141, xux142, new_esEs13(new_sizeFM0(xux1350, xux1351, xux1352, xux1353, xux1354, be, bf)), be, bf) 26.75/11.38 new_mkVBalBranch3MkVBalBranch14(xux1350, xux1351, xux1352, xux1353, xux1354, xux1390, xux1391, xux139200, xux1393, xux1394, xux141, xux142, False, be, bf) -> new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))))))))), xux141, xux142, Branch(xux1350, xux1351, xux1352, xux1353, xux1354), Branch(xux1390, xux1391, Pos(Succ(xux139200)), xux1393, xux1394), be, bf) 26.75/11.38 new_lt(xux481, xux4790, app(ty_[], cd)) -> error([]) 26.75/11.38 new_esEs20(Succ(xux4480), xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs17(xux4480, xux52) 26.75/11.38 new_esEs6(Zero, Succ(xux476000)) -> new_esEs8 26.75/11.38 new_emptyFM(h) -> EmptyFM 26.75/11.38 new_mkVBalBranch5(xux141, xux142, EmptyFM, xux1390, xux1391, xux139200, xux1393, xux1394, be, bf) -> new_addToFM(xux1390, xux1391, Neg(Succ(xux139200)), xux1393, xux1394, xux141, xux142, be, bf) 26.75/11.38 new_esEs15(Pos(Zero)) -> new_esEs4 26.75/11.38 new_lt(xux481, xux4790, app(app(ty_Either, ca), cb)) -> error([]) 26.75/11.38 new_lt0(EQ, EQ) -> new_esEs4 26.75/11.38 new_primMulInt(Pos(xux5720)) -> Pos(new_primMulNat1(xux5720)) 26.75/11.38 new_primMulNat0(xux6200) -> new_primPlusNat0(Zero, Succ(xux6200)) 26.75/11.38 new_gt0(Pos(Zero), Neg(Succ(xux47600))) -> new_esEs7 26.75/11.38 new_gt(LT, GT, ty_Ordering) -> new_esEs8 26.75/11.38 new_lt(xux481, xux4790, ty_Integer) -> error([]) 26.75/11.38 new_esEs11(Succ(xux47600), xux48100) -> new_esEs6(xux47600, xux48100) 26.75/11.38 new_esEs19(Zero, xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs13(new_sizeFM1(xux50, xux51, xux52, xux53, xux54, h)) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(xux479000))) -> new_esEs3 26.75/11.38 new_addToFM0(xux5, xux40, xux41, h) -> new_addToFM_C3(xux5, xux40, xux41, h) 26.75/11.38 new_esEs1(Pos(Succ(xux48100)), Pos(xux47900)) -> new_esEs2(Succ(xux48100), xux47900) 26.75/11.38 new_mkBalBranch6MkBalBranch50(xux494, xux495, xux559, xux558, False, bc, bd) -> new_mkBalBranch6MkBalBranch40(xux494, xux495, xux559, xux558, new_gt0(new_mkBalBranch6Size_r0(xux494, xux495, xux559, bc, bd), new_sr(new_mkBalBranch6Size_l0(xux494, xux495, xux559, bc, bd))), bc, bd) 26.75/11.38 new_esEs19(Succ(xux4470), xux60, xux61, xux6200, xux63, xux64, xux50, xux51, xux52, xux53, xux54, h) -> new_esEs16(xux4470, xux52) 26.75/11.38 new_mkVBalBranch30(xux141, xux142, xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, be, bf) -> new_mkVBalBranch3MkVBalBranch20(xux1350, xux1351, xux1352, xux1353, xux1354, xux13930, xux13931, xux13932, xux13933, xux13934, xux141, xux142, new_esEs1(new_primMulInt(new_sizeFM(Branch(xux1350, xux1351, xux1352, xux1353, xux1354), be, bf)), new_sizeFM0(xux13930, xux13931, xux13932, xux13933, xux13934, be, bf)), be, bf) 26.75/11.38 new_mkBalBranch6MkBalBranch010(xux494, xux495, xux559, xux5580, xux5581, xux5582, Branch(xux55830, xux55831, xux55832, xux55833, xux55834), xux5584, False, bc, bd) -> new_mkBranch(Succ(Succ(Succ(Succ(Zero)))), xux55830, xux55831, new_mkBranch(Succ(Succ(Succ(Succ(Succ(Zero))))), xux494, xux495, EmptyFM, xux55833, bc, bd), new_mkBranch(Succ(Succ(Succ(Succ(Succ(Succ(Zero)))))), xux5580, xux5581, xux55834, xux5584, bc, bd), bc, bd) 26.75/11.38 26.75/11.38 The set Q consists of the following terms: 26.75/11.38 26.75/11.38 new_primPlusNat0(Zero, Succ(x0)) 26.75/11.38 new_mkVBalBranch5(x0, x1, Branch(x2, x3, x4, x5, x6), x7, x8, x9, x10, x11, x12, x13) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, Neg(Succ(x7)), x8, x9, x10, x11, False, x12, x13) 26.75/11.38 new_lt0(EQ, EQ) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, Pos(Succ(x7)), x8, x9, x10, x11, False, x12, x13) 26.75/11.38 new_lt(x0, x1, ty_Double) 26.75/11.38 new_primPlusInt0(x0, Neg(x1)) 26.75/11.38 new_addToFM_C3(Branch(x0, x1, x2, x3, x4), x5, x6, x7) 26.75/11.38 new_splitLT30(LT, x0, x1, x2, x3, GT, x4) 26.75/11.38 new_splitLT30(GT, x0, x1, x2, x3, LT, x4) 26.75/11.38 new_addToFM_C3(EmptyFM, x0, x1, x2) 26.75/11.38 new_gt(GT, LT, ty_Ordering) 26.75/11.38 new_gt(LT, GT, ty_Ordering) 26.75/11.38 new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, False, x7, x8) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Succ(x0))) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Succ(x0))) 26.75/11.38 new_gt(x0, x1, ty_Int) 26.75/11.38 new_primPlusInt1(x0, Pos(x1)) 26.75/11.38 new_gt(x0, x1, app(ty_Ratio, x2)) 26.75/11.38 new_esEs11(Zero, x0) 26.75/11.38 new_splitGT30(EQ, x0, x1, x2, x3, EQ, x4) 26.75/11.38 new_lt(x0, x1, ty_Ordering) 26.75/11.38 new_emptyFM(x0) 26.75/11.38 new_primMulNat2(Zero) 26.75/11.38 new_esEs17(x0, Neg(Succ(x1))) 26.75/11.38 new_addToFM_C0(Branch(x0, x1, x2, x3, x4), x5, x6, x7, x8) 26.75/11.38 new_mkBalBranch6MkBalBranch41(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.38 new_lt1(x0, x1) 26.75/11.38 new_lt(x0, x1, app(ty_Ratio, x2)) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Succ(x0))) 26.75/11.38 new_primPlusInt1(x0, Neg(x1)) 26.75/11.38 new_esEs13(Neg(Succ(x0))) 26.75/11.38 new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, x4, x5, x6, x7, Branch(x8, x9, x10, x11, x12), True, x13, x14) 26.75/11.38 new_gt0(Pos(Succ(x0)), Neg(x1)) 26.75/11.38 new_gt0(Neg(Succ(x0)), Pos(x1)) 26.75/11.38 new_esEs1(Pos(Zero), Neg(Zero)) 26.75/11.38 new_esEs1(Neg(Zero), Pos(Zero)) 26.75/11.38 new_esEs3 26.75/11.38 new_mkBalBranch6MkBalBranch31(x0, x1, x2, x3, False, x4, x5) 26.75/11.38 new_esEs18(Pos(Succ(x0)), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) 26.75/11.38 new_splitGT5(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.38 new_esEs5 26.75/11.38 new_mkVBalBranch3MkVBalBranch16(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, True, x11, x12) 26.75/11.38 new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, Branch(x7, x8, x9, x10, x11), x12, False, x13, x14) 26.75/11.38 new_primPlusInt2(Branch(x0, x1, Pos(x2), x3, x4), x5, x6) 26.75/11.38 new_esEs16(x0, Pos(Succ(x1))) 26.75/11.38 new_gt0(Pos(Zero), Neg(Zero)) 26.75/11.38 new_gt0(Neg(Zero), Pos(Zero)) 26.75/11.38 new_gt(LT, EQ, ty_Ordering) 26.75/11.38 new_gt(EQ, LT, ty_Ordering) 26.75/11.38 new_gt(GT, GT, ty_Ordering) 26.75/11.38 new_mkBalBranch6MkBalBranch50(x0, x1, x2, x3, True, x4, x5) 26.75/11.38 new_splitLT4(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.38 new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, False, x7, x8) 26.75/11.38 new_mkVBalBranch3MkVBalBranch14(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13) 26.75/11.38 new_primMulNat2(Succ(x0)) 26.75/11.38 new_sizeFM1(x0, x1, x2, x3, x4, x5) 26.75/11.38 new_mkBalBranch6Size_r1(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.38 new_gt(x0, x1, ty_Char) 26.75/11.38 new_splitGT30(LT, x0, x1, x2, x3, LT, x4) 26.75/11.38 new_mkVBalBranch6(x0, x1, Branch(x2, x3, x4, x5, x6), x7, x8, x9, x10, x11, x12, x13) 26.75/11.38 new_mkBalBranch6MkBalBranch3(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.38 new_esEs15(Pos(Succ(x0))) 26.75/11.38 new_mkBalBranch6MkBalBranch51(x0, x1, x2, Branch(x3, x4, Neg(x5), x6, x7), x8, x9, x10, x11, x12) 26.75/11.38 new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13) 26.75/11.38 new_primPlusNat0(Zero, Zero) 26.75/11.38 new_gt(x0, x1, ty_Double) 26.75/11.38 new_esEs1(Neg(Succ(x0)), Neg(x1)) 26.75/11.38 new_mkBalBranch6MkBalBranch110(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.38 new_esEs9 26.75/11.38 new_esEs11(Succ(x0), x1) 26.75/11.38 new_mkBalBranch6MkBalBranch40(x0, x1, x2, Branch(x3, x4, x5, x6, x7), True, x8, x9) 26.75/11.38 new_mkBalBranch6MkBalBranch010(x0, x1, x2, x3, x4, x5, x6, x7, True, x8, x9) 26.75/11.38 new_lt0(LT, LT) 26.75/11.38 new_mkVBalBranch30(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13) 26.75/11.38 new_mkVBalBranch4(x0, x1, Branch(x2, x3, x4, x5, x6), EmptyFM, x7) 26.75/11.38 new_esEs12(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) 26.75/11.38 new_mkBalBranch6MkBalBranch50(x0, x1, x2, x3, False, x4, x5) 26.75/11.38 new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.38 new_mkBalBranch6MkBalBranch52(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.38 new_mkVBalBranch5(x0, x1, EmptyFM, x2, x3, x4, x5, x6, x7, x8) 26.75/11.38 new_mkVBalBranch4(x0, x1, Branch(x2, x3, x4, x5, x6), Branch(x7, x8, x9, x10, x11), x12) 26.75/11.38 new_esEs1(Pos(Succ(x0)), Pos(x1)) 26.75/11.38 new_esEs20(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.38 new_esEs2(Succ(x0), Zero) 26.75/11.38 new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, EmptyFM, x7, False, x8, x9) 26.75/11.38 new_mkVBalBranch9(x0, x1, Branch(x2, x3, x4, x5, x6), x7, x8, x9, x10, x11, x12) 26.75/11.38 new_gt(x0, x1, app(app(ty_Either, x2), x3)) 26.75/11.38 new_gt0(Pos(Zero), Pos(Succ(x0))) 26.75/11.38 new_lt0(GT, EQ) 26.75/11.38 new_lt0(EQ, GT) 26.75/11.38 new_addToFM0(x0, x1, x2, x3) 26.75/11.38 new_mkBalBranch6MkBalBranch010(x0, x1, x2, x3, x4, x5, EmptyFM, x6, False, x7, x8) 26.75/11.38 new_addToFM_C0(EmptyFM, x0, x1, x2, x3) 26.75/11.38 new_gt0(Pos(Zero), Pos(Zero)) 26.75/11.38 new_esEs6(Succ(x0), Zero) 26.75/11.38 new_gt0(Neg(Succ(x0)), Neg(x1)) 26.75/11.38 new_mkBalBranch6MkBalBranch011(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, Branch(x11, x12, x13, x14, x15), x16, False, x17, x18) 26.75/11.38 new_esEs15(Neg(Zero)) 26.75/11.38 new_sizeFM(Branch(x0, x1, x2, x3, x4), x5, x6) 26.75/11.38 new_esEs8 26.75/11.38 new_splitLT30(LT, x0, x1, x2, x3, LT, x4) 26.75/11.38 new_gt(EQ, GT, ty_Ordering) 26.75/11.38 new_gt(GT, EQ, ty_Ordering) 26.75/11.38 new_esEs6(Succ(x0), Succ(x1)) 26.75/11.38 new_esEs18(Neg(Succ(x0)), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) 26.75/11.38 new_lt0(LT, EQ) 26.75/11.38 new_mkBalBranch6MkBalBranch31(x0, x1, x2, x3, True, x4, x5) 26.75/11.38 new_lt0(EQ, LT) 26.75/11.38 new_primMinusNat1(Zero, Zero) 26.75/11.38 new_mkBalBranch6Size_r(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.38 new_primMinusNat1(Zero, Succ(x0)) 26.75/11.38 new_esEs14(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.38 new_splitLT30(GT, x0, x1, x2, x3, GT, x4) 26.75/11.38 new_mkBalBranch6MkBalBranch41(x0, x1, x2, x3, x4, x5, x6, x7, EmptyFM, True, x8, x9) 26.75/11.38 new_lt0(GT, LT) 26.75/11.38 new_lt0(LT, GT) 26.75/11.38 new_esEs1(Pos(Zero), Pos(Zero)) 26.75/11.38 new_addToFM(x0, x1, x2, x3, x4, x5, x6, x7, x8) 26.75/11.38 new_gt(x0, x1, ty_Float) 26.75/11.38 new_splitLT30(LT, x0, x1, x2, x3, EQ, x4) 26.75/11.38 new_splitLT30(EQ, x0, x1, x2, x3, LT, x4) 26.75/11.38 new_mkVBalBranch3MkVBalBranch13(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, False, x12, x13) 26.75/11.38 new_mkBalBranch6Size_r0(x0, x1, x2, x3, x4) 26.75/11.38 new_lt(x0, x1, app(ty_Maybe, x2)) 26.75/11.38 new_lt(x0, x1, ty_Integer) 26.75/11.38 new_gt(EQ, EQ, ty_Ordering) 26.75/11.38 new_sizeFM0(x0, x1, x2, x3, x4, x5, x6) 26.75/11.38 new_mkBalBranch6MkBalBranch3(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.38 new_splitGT4(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.38 new_esEs16(x0, Pos(Zero)) 26.75/11.38 new_primPlusInt0(x0, Pos(x1)) 26.75/11.38 new_lt0(GT, GT) 26.75/11.38 new_esEs20(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) 26.75/11.38 new_esEs2(Succ(x0), Succ(x1)) 26.75/11.38 new_gt(x0, x1, app(app(ty_@2, x2), x3)) 26.75/11.38 new_primMulNat(x0) 26.75/11.38 new_sr0(Neg(x0)) 26.75/11.38 new_lt(x0, x1, ty_@0) 26.75/11.38 new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, x4, x5, x6, x7, EmptyFM, True, x8, x9) 26.75/11.38 new_primMulInt(Neg(x0)) 26.75/11.38 new_mkBalBranch6Size_l(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.38 new_esEs6(Zero, Zero) 26.75/11.38 new_splitGT2(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.38 new_splitGT4(EmptyFM, x0) 26.75/11.38 new_splitGT30(GT, x0, x1, x2, x3, GT, x4) 26.75/11.38 new_sizeFM(EmptyFM, x0, x1) 26.75/11.38 new_sr(x0) 26.75/11.38 new_primMulInt(Pos(x0)) 26.75/11.38 new_gt(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 26.75/11.38 new_esEs6(Zero, Succ(x0)) 26.75/11.38 new_splitGT30(EQ, x0, x1, x2, x3, LT, x4) 26.75/11.38 new_splitGT30(LT, x0, x1, x2, x3, EQ, x4) 26.75/11.39 new_primPlusNat0(Succ(x0), Succ(x1)) 26.75/11.39 new_primPlusInt3(x0, Branch(x1, x2, x3, x4, x5), x6, x7) 26.75/11.39 new_esEs16(x0, Neg(x1)) 26.75/11.39 new_splitGT5(EmptyFM, x0) 26.75/11.39 new_gt(x0, x1, ty_Bool) 26.75/11.39 new_addToFM_C20(x0, x1, x2, x3, x4, x5, x6, True, x7, x8) 26.75/11.39 new_mkBalBranch6MkBalBranch51(x0, x1, x2, EmptyFM, x3, x4, x5, x6, x7) 26.75/11.39 new_mkBalBranch6MkBalBranch40(x0, x1, x2, x3, False, x4, x5) 26.75/11.39 new_sr0(Pos(x0)) 26.75/11.39 new_primPlusInt(Neg(x0), x1, x2, x3, x4, x5) 26.75/11.39 new_splitLT5(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.39 new_primPlusInt3(x0, EmptyFM, x1, x2) 26.75/11.39 new_gt(x0, x1, ty_@0) 26.75/11.39 new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, True, x13, x14) 26.75/11.39 new_mkVBalBranch9(x0, x1, EmptyFM, x2, x3, x4, x5, x6, x7) 26.75/11.39 new_mkBalBranch6MkBalBranch40(x0, x1, x2, EmptyFM, True, x3, x4) 26.75/11.39 new_mkBalBranch6MkBalBranch11(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.39 new_esEs2(Zero, Succ(x0)) 26.75/11.39 new_mkVBalBranch7(x0, x1, x2, x3, x4, x5, x6, Branch(x7, x8, x9, x10, x11), x12, x13) 26.75/11.39 new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, EmptyFM, x11, False, x12, x13) 26.75/11.39 new_esEs13(Pos(Zero)) 26.75/11.39 new_esEs18(Neg(Zero), x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.39 new_primPlusInt(Pos(x0), x1, x2, x3, x4, x5) 26.75/11.39 new_splitLT30(EQ, x0, x1, x2, x3, GT, x4) 26.75/11.39 new_splitLT30(GT, x0, x1, x2, x3, EQ, x4) 26.75/11.39 new_esEs13(Neg(Zero)) 26.75/11.39 new_esEs18(Pos(Zero), x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.39 new_mkBalBranch6MkBalBranch011(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, EmptyFM, x11, False, x12, x13) 26.75/11.39 new_mkVBalBranch3MkVBalBranch15(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, False, x11, x12) 26.75/11.39 new_mkBalBranch6MkBalBranch01(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, Branch(x11, x12, x13, x14, x15), x16, False, x17, x18) 26.75/11.39 new_splitLT4(EmptyFM, x0) 26.75/11.39 new_lt(x0, x1, app(ty_[], x2)) 26.75/11.39 new_splitGT30(LT, x0, x1, x2, x3, GT, x4) 26.75/11.39 new_splitGT30(GT, x0, x1, x2, x3, LT, x4) 26.75/11.39 new_mkBalBranch6MkBalBranch4(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.39 new_esEs2(Zero, Zero) 26.75/11.39 new_esEs17(x0, Neg(Zero)) 26.75/11.39 new_primMulNat1(Succ(x0)) 26.75/11.39 new_esEs12(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.39 new_mkVBalBranch3MkVBalBranch13(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13) 26.75/11.39 new_lt(x0, x1, ty_Bool) 26.75/11.39 new_splitGT2(EmptyFM, x0) 26.75/11.39 new_primMinusNat0(Succ(x0)) 26.75/11.39 new_gt(x0, x1, app(ty_[], x2)) 26.75/11.39 new_mkBalBranch6MkBalBranch110(x0, x1, x2, x3, x4, x5, x6, Branch(x7, x8, x9, x10, x11), x12, False, x13, x14) 26.75/11.39 new_primPlusInt4(x0, Branch(x1, x2, x3, x4, x5), x6, x7) 26.75/11.39 new_mkBalBranch6MkBalBranch30(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.39 new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, Neg(Zero), x7, x8, x9, x10, False, x11, x12) 26.75/11.39 new_splitLT30(EQ, x0, x1, x2, x3, EQ, x4) 26.75/11.39 new_mkVBalBranch7(x0, x1, x2, x3, x4, x5, x6, EmptyFM, x7, x8) 26.75/11.39 new_lt(x0, x1, ty_Char) 26.75/11.39 new_esEs10(x0, Succ(x1)) 26.75/11.39 new_mkBalBranch6MkBalBranch41(x0, x1, x2, x3, x4, x5, x6, x7, Branch(x8, x9, x10, x11, x12), True, x13, x14) 26.75/11.39 new_gt0(Neg(Zero), Neg(Succ(x0))) 26.75/11.39 new_mkVBalBranch3MkVBalBranch14(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, True, x12, x13) 26.75/11.39 new_mkBalBranch6MkBalBranch30(x0, x1, x2, x3, x4, x5, x6, x7, x8, True, x9, x10) 26.75/11.39 new_mkVBalBranch6(x0, x1, EmptyFM, x2, x3, x4, x5, x6, x7, x8) 26.75/11.39 new_mkBalBranch6MkBalBranch011(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, True, x13, x14) 26.75/11.39 new_mkBalBranch6MkBalBranch010(x0, x1, x2, x3, x4, x5, Branch(x6, x7, x8, x9, x10), x11, False, x12, x13) 26.75/11.39 new_mkBalBranch6MkBalBranch110(x0, x1, x2, x3, x4, x5, x6, EmptyFM, x7, False, x8, x9) 26.75/11.39 new_primMinusNat1(Succ(x0), Zero) 26.75/11.39 new_esEs19(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) 26.75/11.39 new_mkBalBranch6MkBalBranch5(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.39 new_gt0(Neg(Zero), Pos(Succ(x0))) 26.75/11.39 new_gt0(Pos(Zero), Neg(Succ(x0))) 26.75/11.39 new_gt(LT, LT, ty_Ordering) 26.75/11.39 new_mkVBalBranch4(x0, x1, EmptyFM, x2, x3) 26.75/11.39 new_lt(x0, x1, app(app(ty_Either, x2), x3)) 26.75/11.39 new_mkBalBranch6Size_l0(x0, x1, x2, x3, x4) 26.75/11.39 new_lt(x0, x1, ty_Int) 26.75/11.39 new_esEs19(Zero, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10) 26.75/11.39 new_primPlusInt2(Branch(x0, x1, Neg(x2), x3, x4), x5, x6) 26.75/11.39 new_mkBalBranch6Size_l1(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9) 26.75/11.39 new_esEs14(Succ(x0), x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12) 26.75/11.39 new_mkVBalBranch3MkVBalBranch15(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, True, x11, x12) 26.75/11.39 new_esEs13(Pos(Succ(x0))) 26.75/11.39 new_splitLT5(EmptyFM, x0) 26.75/11.39 new_mkVBalBranch3MkVBalBranch20(x0, x1, x2, x3, x4, x5, x6, Pos(Zero), x7, x8, x9, x10, False, x11, x12) 26.75/11.39 new_splitLT2(Branch(x0, x1, x2, x3, x4), x5) 26.75/11.39 new_primPlusInt4(x0, EmptyFM, x1, x2) 26.75/11.39 new_esEs17(x0, Pos(x1)) 26.75/11.39 new_gt0(Pos(Succ(x0)), Pos(x1)) 26.75/11.39 new_esEs1(Neg(Zero), Neg(Zero)) 26.75/11.39 new_gt(x0, x1, ty_Integer) 26.75/11.39 new_primMulNat0(x0) 26.75/11.39 new_esEs15(Neg(Succ(x0))) 26.75/11.39 new_esEs15(Pos(Zero)) 26.75/11.39 new_esEs10(x0, Zero) 26.75/11.39 new_primMinusNat1(Succ(x0), Succ(x1)) 26.75/11.39 new_primPlusInt2(EmptyFM, x0, x1) 26.75/11.39 new_emptyFM0(x0, x1) 26.75/11.39 new_mkBalBranch6MkBalBranch51(x0, x1, x2, Branch(x3, x4, Pos(x5), x6, x7), x8, x9, x10, x11, x12) 26.75/11.39 new_mkVBalBranch8(x0, x1, EmptyFM, x2, x3, x4, x5, x6, x7) 26.75/11.39 new_mkVBalBranch8(x0, x1, Branch(x2, x3, x4, x5, x6), x7, x8, x9, x10, x11, x12) 26.75/11.39 new_lt(x0, x1, ty_Float) 26.75/11.39 new_primMinusNat0(Zero) 26.75/11.39 new_lt(x0, x1, app(app(ty_@2, x2), x3)) 26.75/11.39 new_esEs7 26.75/11.39 new_addToFM_C10(x0, x1, x2, x3, x4, x5, x6, True, x7, x8) 26.75/11.39 new_esEs1(Neg(Zero), Neg(Succ(x0))) 26.75/11.39 new_mkBranch(x0, x1, x2, x3, x4, x5, x6) 26.75/11.39 new_mkBalBranch6MkBalBranch52(x0, x1, x2, x3, x4, x5, x6, x7, x8, False, x9, x10) 26.75/11.39 new_gt(x0, x1, app(ty_Maybe, x2)) 26.75/11.39 new_splitGT30(GT, x0, x1, x2, x3, EQ, x4) 26.75/11.39 new_splitGT30(EQ, x0, x1, x2, x3, GT, x4) 26.75/11.39 new_gt0(Neg(Zero), Neg(Zero)) 26.75/11.39 new_lt(x0, x1, app(app(app(ty_@3, x2), x3), x4)) 26.75/11.39 new_mkVBalBranch3MkVBalBranch16(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, False, x11, x12) 26.75/11.39 new_esEs4 26.75/11.39 new_primMulNat1(Zero) 26.75/11.39 new_esEs1(Neg(Succ(x0)), Pos(x1)) 26.75/11.39 new_esEs1(Pos(Succ(x0)), Neg(x1)) 26.75/11.39 new_splitLT2(EmptyFM, x0) 26.75/11.39 new_primPlusNat0(Succ(x0), Zero) 26.75/11.39 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (37) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_plusFM(Branch(xux30, xux31, xux32, xux33, xux34), Branch(xux40, xux41, xux42, xux43, xux44), h) -> new_plusFM(new_splitLT30(xux30, xux31, xux32, xux33, xux34, xux40, h), xux43, h) 26.75/11.39 The graph contains the following edges 2 > 2, 3 >= 3 26.75/11.39 26.75/11.39 26.75/11.39 *new_plusFM(Branch(xux30, xux31, xux32, xux33, xux34), Branch(xux40, xux41, xux42, xux43, xux44), h) -> new_plusFM(new_splitGT30(xux30, xux31, xux32, xux33, xux34, xux40, h), xux44, h) 26.75/11.39 The graph contains the following edges 2 > 2, 3 >= 3 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (38) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (39) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_esEs(Succ(xux44700), Succ(xux52000)) -> new_esEs(xux44700, xux52000) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (40) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_esEs(Succ(xux44700), Succ(xux52000)) -> new_esEs(xux44700, xux52000) 26.75/11.39 The graph contains the following edges 1 > 1, 2 > 2 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (41) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (42) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_splitLT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 new_splitLT3(GT, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, EQ, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 new_splitLT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 new_splitLT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitLT1(xux34, h) 26.75/11.39 new_splitLT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitLT(xux33, h) 26.75/11.39 new_splitLT3(LT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitLT0(xux34, h) 26.75/11.39 new_splitLT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 new_splitLT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 new_splitLT0(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (43) DependencyGraphProof (EQUIVALENT) 26.75/11.39 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (44) 26.75/11.39 Complex Obligation (AND) 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (45) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_splitLT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 new_splitLT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitLT1(xux34, h) 26.75/11.39 new_splitLT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (46) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_splitLT3(EQ, xux31, xux32, xux33, xux34, GT, h) -> new_splitLT1(xux34, h) 26.75/11.39 The graph contains the following edges 5 >= 1, 7 >= 2 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT3(LT, xux31, xux32, xux33, Branch(xux340, xux341, xux342, xux343, xux344), GT, h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 The graph contains the following edges 5 > 1, 5 > 2, 5 > 3, 5 > 4, 5 > 5, 6 >= 6, 7 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT1(Branch(xux340, xux341, xux342, xux343, xux344), h) -> new_splitLT3(xux340, xux341, xux342, xux343, xux344, GT, h) 26.75/11.39 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (47) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (48) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_splitLT3(LT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitLT0(xux34, h) 26.75/11.39 new_splitLT0(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 new_splitLT3(GT, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, EQ, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (49) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_splitLT0(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT3(GT, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, EQ, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, EQ, h) 26.75/11.39 The graph contains the following edges 4 > 1, 4 > 2, 4 > 3, 4 > 4, 4 > 5, 6 >= 6, 7 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT3(LT, xux31, xux32, xux33, xux34, EQ, h) -> new_splitLT0(xux34, h) 26.75/11.39 The graph contains the following edges 5 >= 1, 7 >= 2 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (50) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (51) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_splitLT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitLT(xux33, h) 26.75/11.39 new_splitLT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 new_splitLT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (52) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_splitLT(Branch(xux330, xux331, xux332, xux333, xux334), h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT3(EQ, xux31, xux32, Branch(xux330, xux331, xux332, xux333, xux334), xux34, LT, h) -> new_splitLT3(xux330, xux331, xux332, xux333, xux334, LT, h) 26.75/11.39 The graph contains the following edges 4 > 1, 4 > 2, 4 > 3, 4 > 4, 4 > 5, 6 >= 6, 7 >= 7 26.75/11.39 26.75/11.39 26.75/11.39 *new_splitLT3(GT, xux31, xux32, xux33, xux34, LT, h) -> new_splitLT(xux33, h) 26.75/11.39 The graph contains the following edges 4 >= 1, 7 >= 2 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (53) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (54) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_primMinusNat(Succ(xux497200), Succ(xux560200)) -> new_primMinusNat(xux497200, xux560200) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (55) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_primMinusNat(Succ(xux497200), Succ(xux560200)) -> new_primMinusNat(xux497200, xux560200) 26.75/11.39 The graph contains the following edges 1 > 1, 2 > 2 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (56) 26.75/11.39 YES 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (57) 26.75/11.39 Obligation: 26.75/11.39 Q DP problem: 26.75/11.39 The TRS P consists of the following rules: 26.75/11.39 26.75/11.39 new_primPlusNat(Succ(xux2200), Succ(xux120)) -> new_primPlusNat(xux2200, xux120) 26.75/11.39 26.75/11.39 R is empty. 26.75/11.39 Q is empty. 26.75/11.39 We have to consider all minimal (P,Q,R)-chains. 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (58) QDPSizeChangeProof (EQUIVALENT) 26.75/11.39 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. 26.75/11.39 26.75/11.39 From the DPs we obtained the following set of size-change graphs: 26.75/11.39 *new_primPlusNat(Succ(xux2200), Succ(xux120)) -> new_primPlusNat(xux2200, xux120) 26.75/11.39 The graph contains the following edges 1 > 1, 2 > 2 26.75/11.39 26.75/11.39 26.75/11.39 ---------------------------------------- 26.75/11.39 26.75/11.39 (59) 26.75/11.39 YES 26.81/11.43 EOF