@begin: scope:[]  from
  [0] phi()
  to:@1
@1: scope:[]  from @begin
  [1] phi()
  [2] call main 
  to:@end
@end: scope:[]  from @1
  [3] phi()
main: scope:[main]  from @1
  [4] phi()
  to:main::@1
main::@1: scope:[main]  from main main::@1
  [5] (byte*) main::s#2 ← phi( main/(const byte*) SCREEN#0 main::@1/(byte*) main::s#1 )
  [6] *((byte*) main::s#2) ← (byte) ' '
  [7] (byte*) main::s#1 ← ++ (byte*) main::s#2
  [8] if((byte*) main::s#1<(const byte*) SCREEN#0+(word) $3e8) goto main::@1
  to:main::@2
main::@2: scope:[main]  from main::@1
  [9] phi()
  [10] call testUnaryOperator 
  to:main::@3
main::@3: scope:[main]  from main::@2
  [11] phi()
  [12] call testBinaryOperator 
  to:main::@return
main::@return: scope:[main]  from main::@3
  [13] return 
  to:@return
testBinaryOperator: scope:[testBinaryOperator]  from main::@3
  [14] phi()
  [15] call assertType 
  to:testBinaryOperator::@1
testBinaryOperator::@1: scope:[testBinaryOperator]  from testBinaryOperator
  [16] phi()
  [17] call assertType 
  to:testBinaryOperator::@2
testBinaryOperator::@2: scope:[testBinaryOperator]  from testBinaryOperator::@1
  [18] phi()
  [19] call assertType 
  to:testBinaryOperator::@3
testBinaryOperator::@3: scope:[testBinaryOperator]  from testBinaryOperator::@2
  [20] phi()
  [21] call assertType 
  to:testBinaryOperator::@4
testBinaryOperator::@4: scope:[testBinaryOperator]  from testBinaryOperator::@3
  [22] phi()
  [23] call assertType 
  to:testBinaryOperator::@5
testBinaryOperator::@5: scope:[testBinaryOperator]  from testBinaryOperator::@4
  [24] phi()
  [25] call assertType 
  to:testBinaryOperator::@6
testBinaryOperator::@6: scope:[testBinaryOperator]  from testBinaryOperator::@5
  [26] (byte) idx#19 ← ++ (byte) idx#108
  [27] call assertType 
  to:testBinaryOperator::@7
testBinaryOperator::@7: scope:[testBinaryOperator]  from testBinaryOperator::@6
  [28] phi()
  [29] call assertType 
  to:testBinaryOperator::@8
testBinaryOperator::@8: scope:[testBinaryOperator]  from testBinaryOperator::@7
  [30] phi()
  [31] call assertType 
  to:testBinaryOperator::@9
testBinaryOperator::@9: scope:[testBinaryOperator]  from testBinaryOperator::@8
  [32] phi()
  [33] call assertType 
  to:testBinaryOperator::@10
testBinaryOperator::@10: scope:[testBinaryOperator]  from testBinaryOperator::@9
  [34] phi()
  [35] call assertType 
  to:testBinaryOperator::@11
testBinaryOperator::@11: scope:[testBinaryOperator]  from testBinaryOperator::@10
  [36] phi()
  [37] call assertType 
  to:testBinaryOperator::@12
testBinaryOperator::@12: scope:[testBinaryOperator]  from testBinaryOperator::@11
  [38] (byte) idx#26 ← ++ (byte) idx#108
  [39] call assertType 
  to:testBinaryOperator::@13
testBinaryOperator::@13: scope:[testBinaryOperator]  from testBinaryOperator::@12
  [40] phi()
  [41] call assertType 
  to:testBinaryOperator::@14
testBinaryOperator::@14: scope:[testBinaryOperator]  from testBinaryOperator::@13
  [42] phi()
  [43] call assertType 
  to:testBinaryOperator::@15
testBinaryOperator::@15: scope:[testBinaryOperator]  from testBinaryOperator::@14
  [44] phi()
  [45] call assertType 
  to:testBinaryOperator::@16
testBinaryOperator::@16: scope:[testBinaryOperator]  from testBinaryOperator::@15
  [46] phi()
  [47] call assertType 
  to:testBinaryOperator::@17
testBinaryOperator::@17: scope:[testBinaryOperator]  from testBinaryOperator::@16
  [48] phi()
  [49] call assertType 
  to:testBinaryOperator::@18
testBinaryOperator::@18: scope:[testBinaryOperator]  from testBinaryOperator::@17
  [50] phi()
  [51] call assertType 
  to:testBinaryOperator::@19
testBinaryOperator::@19: scope:[testBinaryOperator]  from testBinaryOperator::@18
  [52] phi()
  [53] call assertType 
  to:testBinaryOperator::@20
testBinaryOperator::@20: scope:[testBinaryOperator]  from testBinaryOperator::@19
  [54] phi()
  [55] call assertType 
  to:testBinaryOperator::@21
testBinaryOperator::@21: scope:[testBinaryOperator]  from testBinaryOperator::@20
  [56] phi()
  [57] call assertType 
  to:testBinaryOperator::@22
testBinaryOperator::@22: scope:[testBinaryOperator]  from testBinaryOperator::@21
  [58] phi()
  [59] call assertType 
  to:testBinaryOperator::@23
testBinaryOperator::@23: scope:[testBinaryOperator]  from testBinaryOperator::@22
  [60] phi()
  [61] call assertType 
  to:testBinaryOperator::@24
testBinaryOperator::@24: scope:[testBinaryOperator]  from testBinaryOperator::@23
  [62] (byte) idx#40 ← ++ (byte) idx#108
  [63] call assertType 
  to:testBinaryOperator::@25
testBinaryOperator::@25: scope:[testBinaryOperator]  from testBinaryOperator::@24
  [64] phi()
  [65] call assertType 
  to:testBinaryOperator::@26
testBinaryOperator::@26: scope:[testBinaryOperator]  from testBinaryOperator::@25
  [66] phi()
  [67] call assertType 
  to:testBinaryOperator::@27
testBinaryOperator::@27: scope:[testBinaryOperator]  from testBinaryOperator::@26
  [68] phi()
  [69] call assertType 
  to:testBinaryOperator::@28
testBinaryOperator::@28: scope:[testBinaryOperator]  from testBinaryOperator::@27
  [70] phi()
  [71] call assertType 
  to:testBinaryOperator::@29
testBinaryOperator::@29: scope:[testBinaryOperator]  from testBinaryOperator::@28
  [72] phi()
  [73] call assertType 
  to:testBinaryOperator::@30
testBinaryOperator::@30: scope:[testBinaryOperator]  from testBinaryOperator::@29
  [74] (byte) idx#47 ← ++ (byte) idx#108
  [75] call assertType 
  to:testBinaryOperator::@31
testBinaryOperator::@31: scope:[testBinaryOperator]  from testBinaryOperator::@30
  [76] phi()
  [77] call assertType 
  to:testBinaryOperator::@32
testBinaryOperator::@32: scope:[testBinaryOperator]  from testBinaryOperator::@31
  [78] phi()
  [79] call assertType 
  to:testBinaryOperator::@33
testBinaryOperator::@33: scope:[testBinaryOperator]  from testBinaryOperator::@32
  [80] phi()
  [81] call assertType 
  to:testBinaryOperator::@34
testBinaryOperator::@34: scope:[testBinaryOperator]  from testBinaryOperator::@33
  [82] phi()
  [83] call assertType 
  to:testBinaryOperator::@35
testBinaryOperator::@35: scope:[testBinaryOperator]  from testBinaryOperator::@34
  [84] phi()
  [85] call assertType 
  to:testBinaryOperator::@return
testBinaryOperator::@return: scope:[testBinaryOperator]  from testBinaryOperator::@35
  [86] return 
  to:@return
assertType: scope:[assertType]  from testBinaryOperator testBinaryOperator::@1 testBinaryOperator::@10 testBinaryOperator::@11 testBinaryOperator::@12 testBinaryOperator::@13 testBinaryOperator::@14 testBinaryOperator::@15 testBinaryOperator::@16 testBinaryOperator::@17 testBinaryOperator::@18 testBinaryOperator::@19 testBinaryOperator::@2 testBinaryOperator::@20 testBinaryOperator::@21 testBinaryOperator::@22 testBinaryOperator::@23 testBinaryOperator::@24 testBinaryOperator::@25 testBinaryOperator::@26 testBinaryOperator::@27 testBinaryOperator::@28 testBinaryOperator::@29 testBinaryOperator::@3 testBinaryOperator::@30 testBinaryOperator::@31 testBinaryOperator::@32 testBinaryOperator::@33 testBinaryOperator::@34 testBinaryOperator::@35 testBinaryOperator::@4 testBinaryOperator::@5 testBinaryOperator::@6 testBinaryOperator::@7 testBinaryOperator::@8 testBinaryOperator::@9 testUnaryOperator testUnaryOperator::@1 testUnaryOperator::@2 testUnaryOperator::@3 testUnaryOperator::@4 testUnaryOperator::@5
  [87] (byte) idx#105 ← phi( testBinaryOperator/(byte) $28 testBinaryOperator::@1/(byte) idx#108 testBinaryOperator::@10/(byte) idx#108 testBinaryOperator::@11/(byte) idx#108 testBinaryOperator::@12/(byte) idx#26 testBinaryOperator::@13/(byte) idx#108 testBinaryOperator::@14/(byte) idx#108 testBinaryOperator::@15/(byte) idx#108 testBinaryOperator::@16/(byte) idx#108 testBinaryOperator::@17/(byte) idx#108 testBinaryOperator::@18/(byte) $50 testBinaryOperator::@19/(byte) idx#108 testBinaryOperator::@2/(byte) idx#108 testBinaryOperator::@20/(byte) idx#108 testBinaryOperator::@21/(byte) idx#108 testBinaryOperator::@22/(byte) idx#108 testBinaryOperator::@23/(byte) idx#108 testBinaryOperator::@24/(byte) idx#40 testBinaryOperator::@25/(byte) idx#108 testBinaryOperator::@26/(byte) idx#108 testBinaryOperator::@27/(byte) idx#108 testBinaryOperator::@28/(byte) idx#108 testBinaryOperator::@29/(byte) idx#108 testBinaryOperator::@3/(byte) idx#108 testBinaryOperator::@30/(byte) idx#47 testBinaryOperator::@31/(byte) idx#108 testBinaryOperator::@32/(byte) idx#108 testBinaryOperator::@33/(byte) idx#108 testBinaryOperator::@34/(byte) idx#108 testBinaryOperator::@35/(byte) idx#108 testBinaryOperator::@4/(byte) idx#108 testBinaryOperator::@5/(byte) idx#108 testBinaryOperator::@6/(byte) idx#19 testBinaryOperator::@7/(byte) idx#108 testBinaryOperator::@8/(byte) idx#108 testBinaryOperator::@9/(byte) idx#108 testUnaryOperator/(byte) 0 testUnaryOperator::@1/(byte) idx#108 testUnaryOperator::@2/(byte) idx#108 testUnaryOperator::@3/(byte) idx#108 testUnaryOperator::@4/(byte) idx#108 testUnaryOperator::@5/(byte) idx#108 )
  [87] (byte) assertType::t2#42 ← phi( testBinaryOperator/(const byte) TYPEID_BYTE testBinaryOperator::@1/(const byte) TYPEID_BYTE testBinaryOperator::@10/(const byte) TYPEID_DWORD testBinaryOperator::@11/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@12/(const byte) TYPEID_WORD testBinaryOperator::@13/(const byte) TYPEID_WORD testBinaryOperator::@14/(const byte) TYPEID_WORD testBinaryOperator::@15/(const byte) TYPEID_WORD testBinaryOperator::@16/(const byte) TYPEID_DWORD testBinaryOperator::@17/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@18/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@19/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@2/(const byte) TYPEID_WORD testBinaryOperator::@20/(const byte) TYPEID_WORD testBinaryOperator::@21/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@22/(const byte) TYPEID_DWORD testBinaryOperator::@23/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@24/(const byte) TYPEID_DWORD testBinaryOperator::@25/(const byte) TYPEID_DWORD testBinaryOperator::@26/(const byte) TYPEID_DWORD testBinaryOperator::@27/(const byte) TYPEID_DWORD testBinaryOperator::@28/(const byte) TYPEID_DWORD testBinaryOperator::@29/(const byte) TYPEID_DWORD testBinaryOperator::@3/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@30/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@31/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@32/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@33/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@34/(const byte) TYPEID_DWORD testBinaryOperator::@35/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@4/(const byte) TYPEID_DWORD testBinaryOperator::@5/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@6/(const byte) TYPEID_BYTE testBinaryOperator::@7/(const byte) TYPEID_SIGNED_BYTE testBinaryOperator::@8/(const byte) TYPEID_WORD testBinaryOperator::@9/(const byte) TYPEID_SIGNED_WORD testUnaryOperator/(const byte) TYPEID_BYTE testUnaryOperator::@1/(const byte) TYPEID_SIGNED_BYTE testUnaryOperator::@2/(const byte) TYPEID_WORD testUnaryOperator::@3/(const byte) TYPEID_SIGNED_WORD testUnaryOperator::@4/(const byte) TYPEID_DWORD testUnaryOperator::@5/(const byte) TYPEID_SIGNED_DWORD )
  [87] (byte) assertType::t1#42 ← phi( testBinaryOperator/(const byte) TYPEID_BYTE testBinaryOperator::@1/(const byte) TYPEID_BYTE testBinaryOperator::@10/(const byte) TYPEID_DWORD testBinaryOperator::@11/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@12/(const byte) TYPEID_WORD testBinaryOperator::@13/(const byte) TYPEID_WORD testBinaryOperator::@14/(const byte) TYPEID_WORD testBinaryOperator::@15/(const byte) TYPEID_WORD testBinaryOperator::@16/(const byte) TYPEID_DWORD testBinaryOperator::@17/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@18/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@19/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@2/(const byte) TYPEID_WORD testBinaryOperator::@20/(const byte) TYPEID_WORD testBinaryOperator::@21/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@22/(const byte) TYPEID_DWORD testBinaryOperator::@23/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@24/(const byte) TYPEID_DWORD testBinaryOperator::@25/(const byte) TYPEID_DWORD testBinaryOperator::@26/(const byte) TYPEID_DWORD testBinaryOperator::@27/(const byte) TYPEID_DWORD testBinaryOperator::@28/(const byte) TYPEID_DWORD testBinaryOperator::@29/(const byte) TYPEID_DWORD testBinaryOperator::@3/(const byte) TYPEID_SIGNED_WORD testBinaryOperator::@30/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@31/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@32/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@33/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@34/(const byte) TYPEID_DWORD testBinaryOperator::@35/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@4/(const byte) TYPEID_DWORD testBinaryOperator::@5/(const byte) TYPEID_SIGNED_DWORD testBinaryOperator::@6/(const byte) TYPEID_BYTE testBinaryOperator::@7/(const byte) TYPEID_SIGNED_BYTE testBinaryOperator::@8/(const byte) TYPEID_WORD testBinaryOperator::@9/(const byte) TYPEID_SIGNED_WORD testUnaryOperator/(const byte) TYPEID_BYTE testUnaryOperator::@1/(const byte) TYPEID_SIGNED_BYTE testUnaryOperator::@2/(const byte) TYPEID_WORD testUnaryOperator::@3/(const byte) TYPEID_SIGNED_WORD testUnaryOperator::@4/(const byte) TYPEID_DWORD testUnaryOperator::@5/(const byte) TYPEID_SIGNED_DWORD )
  [88] if((byte) assertType::t1#42==(byte) assertType::t2#42) goto assertType::@1
  to:assertType::@3
assertType::@3: scope:[assertType]  from assertType
  [89] *((const byte*) COLS#0 + (byte) idx#105) ← (const byte) RED#0
  to:assertType::@2
assertType::@2: scope:[assertType]  from assertType::@1 assertType::@3
  [90] *((const byte*) SCREEN#0 + (byte) idx#105) ← (byte) assertType::t1#42
  [91] (byte) idx#108 ← ++ (byte) idx#105
  to:assertType::@return
assertType::@return: scope:[assertType]  from assertType::@2
  [92] return 
  to:@return
assertType::@1: scope:[assertType]  from assertType
  [93] *((const byte*) COLS#0 + (byte) idx#105) ← (const byte) GREEN#0
  to:assertType::@2
testUnaryOperator: scope:[testUnaryOperator]  from main::@2
  [94] phi()
  [95] call assertType 
  to:testUnaryOperator::@1
testUnaryOperator::@1: scope:[testUnaryOperator]  from testUnaryOperator
  [96] phi()
  [97] call assertType 
  to:testUnaryOperator::@2
testUnaryOperator::@2: scope:[testUnaryOperator]  from testUnaryOperator::@1
  [98] phi()
  [99] call assertType 
  to:testUnaryOperator::@3
testUnaryOperator::@3: scope:[testUnaryOperator]  from testUnaryOperator::@2
  [100] phi()
  [101] call assertType 
  to:testUnaryOperator::@4
testUnaryOperator::@4: scope:[testUnaryOperator]  from testUnaryOperator::@3
  [102] phi()
  [103] call assertType 
  to:testUnaryOperator::@5
testUnaryOperator::@5: scope:[testUnaryOperator]  from testUnaryOperator::@4
  [104] phi()
  [105] call assertType 
  to:testUnaryOperator::@return
testUnaryOperator::@return: scope:[testUnaryOperator]  from testUnaryOperator::@5
  [106] return 
  to:@return
