@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::i#2 ← phi( main/(byte) 0 main::@1/(byte) main::i#1 )
  [6] *((const byte*) main::SCREEN#0 + (byte) main::i#2) ← (byte) main::i#2
  [7] (byte) main::$31 ← (byte) main::i#2 << (byte) 1
  [8] *((const byte*) main::SCREEN#0+(byte)(number) 1*(number) $28 + (byte) main::i#2) ← (byte) main::$31
  [9] (byte~) main::$5 ← (byte) main::$31 + (byte) main::i#2
  [10] *((const byte*) main::SCREEN#0+(byte)(number) 2*(number) $28 + (byte) main::i#2) ← (byte~) main::$5
  [11] (byte) main::$33 ← (byte) main::i#2 << (byte) 2
  [12] *((const byte*) main::SCREEN#0+(byte)(number) 3*(number) $28 + (byte) main::i#2) ← (byte) main::$33
  [13] (byte~) main::$9 ← (byte) main::$33 + (byte) main::i#2
  [14] *((const byte*) main::SCREEN#0+(byte)(number) 4*(number) $28 + (byte) main::i#2) ← (byte~) main::$9
  [15] (byte) main::$36 ← (byte) main::$31 + (byte) main::i#2
  [16] (byte~) main::$11 ← (byte) main::$36 << (byte) 1
  [17] *((const byte*) main::SCREEN#0+(byte)(number) 5*(number) $28 + (byte) main::i#2) ← (byte~) main::$11
  [18] (byte) main::$39 ← (byte) main::$31 + (byte) main::i#2
  [19] (byte) main::$40 ← (byte) main::$39 << (byte) 1
  [20] (byte~) main::$13 ← (byte) main::$40 + (byte) main::i#2
  [21] *((const byte*) main::SCREEN#0+(byte)(number) 6*(number) $28 + (byte) main::i#2) ← (byte~) main::$13
  [22] (byte) main::$42 ← (byte) main::i#2 << (byte) 3
  [23] *((const byte*) main::SCREEN#0+(word)(number) 7*(number) $28 + (byte) main::i#2) ← (byte) main::$42
  [24] (byte~) main::$17 ← (byte) main::$42 + (byte) main::i#2
  [25] *((const byte*) main::SCREEN#0+(word)(number) 8*(number) $28 + (byte) main::i#2) ← (byte~) main::$17
  [26] (byte) main::$45 ← (byte) main::$33 + (byte) main::i#2
  [27] (byte~) main::$19 ← (byte) main::$45 << (byte) 1
  [28] *((const byte*) main::SCREEN#0+(word)(number) 9*(number) $28 + (byte) main::i#2) ← (byte~) main::$19
  [29] (byte) main::$48 ← (byte) main::$33 + (byte) main::i#2
  [30] (byte) main::$49 ← (byte) main::$48 << (byte) 1
  [31] (byte~) main::$21 ← (byte) main::$49 + (byte) main::i#2
  [32] *((const byte*) main::SCREEN#0+(word)(number) $a*(number) $28 + (byte) main::i#2) ← (byte~) main::$21
  [33] (byte) main::$52 ← (byte) main::$31 + (byte) main::i#2
  [34] (byte~) main::$23 ← (byte) main::$52 << (byte) 2
  [35] *((const byte*) main::SCREEN#0+(word)(number) $b*(number) $28 + (byte) main::i#2) ← (byte~) main::$23
  [36] (byte) main::$55 ← (byte) main::$31 + (byte) main::i#2
  [37] (byte) main::$56 ← (byte) main::$55 << (byte) 2
  [38] (byte~) main::$25 ← (byte) main::$56 + (byte) main::i#2
  [39] *((const byte*) main::SCREEN#0+(word)(number) $c*(number) $28 + (byte) main::i#2) ← (byte~) main::$25
  [40] (byte) main::$59 ← (byte) main::$31 + (byte) main::i#2
  [41] (byte) main::$60 ← (byte) main::$59 << (byte) 1
  [42] (byte) main::$61 ← (byte) main::$60 + (byte) main::i#2
  [43] (byte~) main::$27 ← (byte) main::$61 << (byte) 1
  [44] *((const byte*) main::SCREEN#0+(word)(number) $d*(number) $28 + (byte) main::i#2) ← (byte~) main::$27
  [45] (byte) main::$64 ← (byte) main::$31 + (byte) main::i#2
  [46] (byte) main::$65 ← (byte) main::$64 << (byte) 1
  [47] (byte) main::$66 ← (byte) main::$65 + (byte) main::i#2
  [48] (byte) main::$67 ← (byte) main::$66 << (byte) 1
  [49] (byte~) main::$29 ← (byte) main::$67 + (byte) main::i#2
  [50] *((const byte*) main::SCREEN#0+(word)(number) $e*(number) $28 + (byte) main::i#2) ← (byte~) main::$29
  [51] (byte) main::i#1 ← ++ (byte) main::i#2
  [52] if((byte) main::i#1!=(byte) $12) goto main::@1
  to:main::@return
main::@return: scope:[main]  from main::@1
  [53] return 
  to:@return
