ENTRY_0: #succs=[compute_2, main_5]

EXIT_1: #succs=[]

compute_2: #succs=[compute_3]
    [28] x: finch.int64 = x
    [29] y: finch.int64 = y
    [0] temp: finch.int64 = x 	# x = ('x', 28)
    [1] temp: finch.int64 = add(temp, y) 	# temp = ('x', 28), y = ('y', 29)
    [2] return temp

compute_3: #succs=[EXIT_1]

compute_4: #succs=[compute_3]

main_5: #succs=[main_7, main_8]
    [3] a: finch.int64 = 10
    [4] b: finch.int64 = a
    [5] c: finch.int64 = b 	# b = ('a', 3)
    [6] d: finch.int64 = 5

main_6: #succs=[EXIT_1]

main_7: #succs=[main_9]
    [30] assert(gt(c, 5)) 	# c = ('b', 4)
    [7] a: finch.int64 = add(a, d)
    [8] b: finch.int64 = a

main_8: #succs=[main_9]
    [31] assert(not_(gt(c, 5))) 	# c = ('b', 4)

main_9: #succs=[main_10, main_11]
    [9] result: finch.int64 = 0
    j_3: finch.int64 = 0

main_10: #succs=[main_12, main_13]
    [37] assert(lt(j_3, 5))
    [34] i: finch.int64 = j_3
    [10] temp: finch.int64 = i
    [11] result: finch.int64 = add(result, temp) 	# temp = ('i', 34)

main_11: #succs=[main_15, main_16]
    [38] assert(not_(lt(j_3, 5)))

main_12: #succs=[main_14]
    [35] assert(eq(mod(i, 2), 0))
    [32] assert(eq(mod(i, 2), 0))
    [12] result: finch.int64 = mul(result, 2)

main_13: #succs=[main_14]
    [36] assert(not_(eq(mod(i, 2), 0)))
    [33] assert(not_(eq(mod(i, 2), 0)))

main_14: #succs=[main_10, main_11]
    j_3: finch.int64 = add(j_3, 1)

main_15: #succs=[main_17]
    [39] assert(gt(result, 20))
    [13] c: finch.int64 = result
    [14] result: finch.int64 = add(c, b)

main_16: #succs=[main_17]
    [40] assert(not_(gt(result, 20)))
    [15] c: finch.int64 = b
    [16] result: finch.int64 = mul(c, 3)

main_17: #succs=[main_18, main_19]
    j_4: finch.int64 = 0

main_18: #succs=[main_20, main_21]
    [47] assert(lt(j_4, 3))
    [44] i: finch.int64 = j_4
    [17] a: finch.int64 = i
    j_5: finch.int64 = 0

main_19: #succs=[main_22, main_23]
    [48] assert(not_(lt(j_4, 3)))
    [20] d: finch.int64 = result

main_20: #succs=[main_20, main_21]
    [45] assert(lt(j_5, 2))
    [42] assert(lt(j_5, 2))
    [41] j: finch.int64 = j_5
    [18] b: finch.int64 = j
    [19] result: finch.int64 = add(result, add(a, b)) 	# b = ('j', 41)
    j_5: finch.int64 = add(j_5, 1)

main_21: #succs=[main_18, main_19]
    [46] assert(not_(lt(j_5, 2)))
    [43] assert(not_(lt(j_5, 2)))
    j_4: finch.int64 = add(j_4, 1)

main_22: #succs=[main_25, main_26]
    [51] assert(lt(d, 100))
    [21] c: finch.int64 = d

main_23: #succs=[main_24]
    [52] assert(not_(lt(d, 100)))
    [24] result: finch.int64 = d

main_24: #succs=[main_6]
    [25] a: finch.int64 = result
    [26] b: finch.int64 = a
    [27] return b 	# b = ('a', 25)

main_25: #succs=[main_27]
    [49] assert(gt(c, 50)) 	# c = ('d', 20)
    [22] result: finch.int64 = mul(c, 2) 	# c = ('d', 20)

main_26: #succs=[main_27]
    [50] assert(not_(gt(c, 50))) 	# c = ('d', 20)
    [23] result: finch.int64 = c 	# c = ('d', 20)

main_27: #succs=[main_24]

main_28: #succs=[main_6]
