
void __start()
__start: scope:[__start]  from
  [0] phi()
  to:__start::__init1
__start::__init1: scope:[__start]  from __start
  [1] conio_reverse_value = 0
  [2] conio_display_cursor = 1
  [3] conio_scroll_enable = 1
  to:__start::@1
__start::@1: scope:[__start]  from __start::__init1
  [4] phi()
  [5] call main
  to:__start::@return
__start::@return: scope:[__start]  from __start::@1
  [6] return 
  to:@return

__stackcall void cputc(volatile char c)
cputc: scope:[cputc]  from printf_number_buffer::@3
  [7] cputc::c = stackidx(char,cputc::OFFSET_STACK_C)
  [8] if(cputc::c=='
'at) goto cputc::@1
  to:cputc::@3
cputc::@3: scope:[cputc]  from cputc
  [9] if(cputc::c=='
'at) goto cputc::@2
  to:cputc::@8
cputc::@8: scope:[cputc]  from cputc::@3
  [10] if(cputc::c==$9b) goto cputc::@2
  to:cputc::convertToScreenCode1
cputc::convertToScreenCode1: scope:[cputc]  from cputc::@8
  [11] cputc::convertToScreenCode1_return#0 = rawmap[*cputc::convertToScreenCode1_v#0]
  to:cputc::@6
cputc::@6: scope:[cputc]  from cputc::convertToScreenCode1
  [12] phi()
  [13] call putchar
  to:cputc::@7
cputc::@7: scope:[cputc]  from cputc::@6
  [14] *COLCRS = ++ *COLCRS
  [15] if(*COLCRS==$28) goto cputc::@5
  to:cputc::@4
cputc::@4: scope:[cputc]  from cputc::@7
  [16] phi()
  [17] call setcursor
  to:cputc::@return
cputc::@return: scope:[cputc]  from cputc::@1 cputc::@2 cputc::@4 cputc::@5
  [18] return 
  to:@return
cputc::@5: scope:[cputc]  from cputc::@7
  [19] *COLCRS = 0
  [20] call newline
  to:cputc::@return
cputc::@2: scope:[cputc]  from cputc::@3 cputc::@8
  [21] *COLCRS = 0
  [22] call newline
  to:cputc::@return
cputc::@1: scope:[cputc]  from cputc
  [23] *COLCRS = 0
  [24] call setcursor
  to:cputc::@return

void main()
main: scope:[main]  from __start::@1
  [25] phi()
  [26] call cursor
  to:main::@5
main::@5: scope:[main]  from main
  [27] phi()
  [28] call bgcolor
  to:main::@6
main::@6: scope:[main]  from main::@5
  [29] phi()
  [30] call bordercolor
  to:main::@7
main::@7: scope:[main]  from main::@6
  [31] phi()
  [32] call textcolor
  to:main::@8
main::@8: scope:[main]  from main::@7
  [33] phi()
  [34] call cputsxy
  to:main::@9
main::@9: scope:[main]  from main::@8
  [35] phi()
  [36] call gotoxy
  to:main::@10
main::@10: scope:[main]  from main::@9
  [37] phi()
  [38] call revers
  to:main::@11
main::@11: scope:[main]  from main::@10
  [39] phi()
  [40] call printf_str
  to:main::@12
main::@12: scope:[main]  from main::@11
  [41] phi()
  [42] call printf_string
  to:main::@13
main::@13: scope:[main]  from main::@12
  [43] phi()
  [44] call printf_str
  to:main::@14
main::@14: scope:[main]  from main::@13
  [45] phi()
  [46] call waitkey
  to:main::@15
main::@15: scope:[main]  from main::@14
  [47] phi()
  [48] call clrscr
  to:main::@16
main::@16: scope:[main]  from main::@15
  [49] phi()
  [50] call revers
  to:main::@1
main::@1: scope:[main]  from main::@16 main::@19
  [51] main::i#2 = phi( main::@16/0, main::@19/main::i#1 )
  [52] call printf_str
  to:main::@17
main::@17: scope:[main]  from main::@1
  [53] printf_sint::value#1 = main::i#2
  [54] call printf_sint
  to:main::@18
main::@18: scope:[main]  from main::@17
  [55] phi()
  [56] call printf_str
  to:main::@19
main::@19: scope:[main]  from main::@18
  [57] main::i#1 = ++ main::i#2
  [58] if(main::i#1!=$33) goto main::@1
  to:main::@2
main::@2: scope:[main]  from main::@19
  [59] phi()
  [60] call waitkey
  to:main::@20
main::@20: scope:[main]  from main::@2
  [61] phi()
  [62] call scroll
  to:main::@3
main::@3: scope:[main]  from main::@20 main::@23
  [63] main::i1#2 = phi( main::@20/$33, main::@23/main::i1#1 )
  [64] call printf_str
  to:main::@21
main::@21: scope:[main]  from main::@3
  [65] printf_sint::value#2 = main::i1#2
  [66] call printf_sint
  to:main::@22
main::@22: scope:[main]  from main::@21
  [67] phi()
  [68] call printf_str
  to:main::@23
main::@23: scope:[main]  from main::@22
  [69] main::i1#1 = ++ main::i1#2
  [70] if(main::i1#1!=$c9) goto main::@3
  to:main::@4
main::@4: scope:[main]  from main::@23
  [71] phi()
  [72] call waitkey
  to:main::@return
main::@return: scope:[main]  from main::@4
  [73] return 
  to:@return

void putchar(char code)
putchar: scope:[putchar]  from cputc::@6
  [74] *(*OLDADR) = *OLDCHR
  [75] call cursorLocation
  [76] cursorLocation::return#0 = cursorLocation::return#1
  to:putchar::@1
putchar::@1: scope:[putchar]  from putchar
  [77] putchar::loc#0 = cursorLocation::return#0
  [78] putchar::newChar#0 = cputc::convertToScreenCode1_return#0 | conio_reverse_value
  [79] *putchar::loc#0 = putchar::newChar#0
  [80] *OLDCHR = putchar::newChar#0
  [81] call setcursor
  to:putchar::@return
putchar::@return: scope:[putchar]  from putchar::@1
  [82] return 
  to:@return

void setcursor()
setcursor: scope:[setcursor]  from cputc::@1 cputc::@4 gotoxy newline::@1 putchar::@1
  [83] *(*OLDADR) = *OLDCHR
  [84] call cursorLocation
  [85] cursorLocation::return#3 = cursorLocation::return#1
  to:setcursor::@4
setcursor::@4: scope:[setcursor]  from setcursor
  [86] setcursor::loc#0 = cursorLocation::return#3
  [87] setcursor::c#0 = *setcursor::loc#0
  [88] *OLDCHR = setcursor::c#0
  [89] *OLDADR = setcursor::loc#0
  [90] if(conio_display_cursor==0) goto setcursor::@1
  to:setcursor::@3
setcursor::@3: scope:[setcursor]  from setcursor::@4
  [91] *CRSINH = 0
  [92] setcursor::c#1 = setcursor::c#0 ^ $80
  to:setcursor::@2
setcursor::@2: scope:[setcursor]  from setcursor::@1 setcursor::@3
  [93] setcursor::c#3 = phi( setcursor::@1/setcursor::c#0, setcursor::@3/setcursor::c#1 )
  [94] *(*OLDADR) = setcursor::c#3
  to:setcursor::@return
setcursor::@return: scope:[setcursor]  from setcursor::@2
  [95] return 
  to:@return
setcursor::@1: scope:[setcursor]  from setcursor::@4
  [96] *CRSINH = 1
  to:setcursor::@2

void newline()
newline: scope:[newline]  from cputc::@2 cputc::@5
  [97] *ROWCRS = ++ *ROWCRS
  [98] if(*ROWCRS!=$18) goto newline::@1
  to:newline::@2
newline::@2: scope:[newline]  from newline
  [99] if(conio_scroll_enable==1) goto newline::@4
  to:newline::@3
newline::@3: scope:[newline]  from newline::@2
  [100] phi()
  [101] call gotoxy
  to:newline::@1
newline::@1: scope:[newline]  from newline newline::@3 newline::@8
  [102] phi()
  [103] call setcursor
  to:newline::@return
newline::@return: scope:[newline]  from newline::@1
  [104] return 
  to:@return
newline::@4: scope:[newline]  from newline::@2
  [105] if(conio_display_cursor!=1) goto newline::@5
  to:newline::@6
newline::@6: scope:[newline]  from newline::@4
  [106] *(*OLDADR) = *(*OLDADR) ^ $80
  to:newline::@5
newline::@5: scope:[newline]  from newline::@4 newline::@6
  [107] newline::start#0 = *SAVMSC
  [108] memcpy::source#0 = newline::start#0 + $28
  [109] memcpy::destination#0 = (void *)newline::start#0
  [110] call memcpy
  to:newline::@7
newline::@7: scope:[newline]  from newline::@5
  [111] memset::str#1 = newline::start#0 + (unsigned int)$28*$17
  [112] memset::str#8 = (void *)memset::str#1
  [113] call memset
  to:newline::@8
newline::@8: scope:[newline]  from newline::@7
  [114] *ROWCRS = $18-1
  to:newline::@1

char cursor(char onoff)
cursor: scope:[cursor]  from main
  [115] conio_display_cursor = cursor::onoff#0
  to:cursor::@return
cursor::@return: scope:[cursor]  from cursor
  [116] return 
  to:@return

char bgcolor(char color)
bgcolor: scope:[bgcolor]  from main::@5
  [117] *COLOR2 = DARK_ORANGE
  to:bgcolor::@return
bgcolor::@return: scope:[bgcolor]  from bgcolor
  [118] return 
  to:@return

char bordercolor(char color)
bordercolor: scope:[bordercolor]  from main::@6
  [119] *COLOR4 = MEDIUM_BLUE
  to:bordercolor::@return
bordercolor::@return: scope:[bordercolor]  from bordercolor
  [120] return 
  to:@return

char textcolor(char color)
textcolor: scope:[textcolor]  from main::@7
  [121] *COLOR1 = WHITE
  to:textcolor::@return
textcolor::@return: scope:[textcolor]  from textcolor
  [122] return 
  to:@return

void cputsxy(char x , char y , const char *s)
cputsxy: scope:[cputsxy]  from main::@8
  [123] phi()
  [124] call gotoxy
  to:cputsxy::@1
cputsxy::@1: scope:[cputsxy]  from cputsxy
  [125] phi()
  [126] call cputs
  to:cputsxy::@return
cputsxy::@return: scope:[cputsxy]  from cputsxy::@1
  [127] return 
  to:@return

void gotoxy(char x , char y)
gotoxy: scope:[gotoxy]  from clrscr::@1 cputsxy main::@9 newline::@3
  [128] gotoxy::y#4 = phi( clrscr::@1/0, cputsxy/cputsxy::y#0, main::@9/3, newline::@3/0 )
  [128] gotoxy::x#4 = phi( clrscr::@1/0, cputsxy/cputsxy::x#0, main::@9/0, newline::@3/0 )
  [129] *COLCRS = gotoxy::x#4
  [130] *ROWCRS = gotoxy::y#4
  [131] call setcursor
  to:gotoxy::@return
gotoxy::@return: scope:[gotoxy]  from gotoxy
  [132] return 
  to:@return

char revers(char onoff)
revers: scope:[revers]  from main::@10 main::@16
  [133] revers::onoff#2 = phi( main::@10/1, main::@16/0 )
  [134] if(revers::onoff#2==0) goto revers::@1
  to:revers::@2
revers::@2: scope:[revers]  from revers
  [135] conio_reverse_value = $80
  to:revers::@return
revers::@return: scope:[revers]  from revers::@1 revers::@2
  [136] return 
  to:@return
revers::@1: scope:[revers]  from revers
  [137] conio_reverse_value = 0
  to:revers::@return

void printf_str(void (*putc)(char) , const char *s)
printf_str: scope:[printf_str]  from main::@1 main::@11 main::@13 main::@18 main::@22 main::@3 printf_number_buffer::@2 printf_string::@1
  [138] printf_str::putc#10 = phi( main::@1/&cputc, main::@11/&cputc, main::@13/&cputc, main::@18/&cputc, main::@22/&cputc, main::@3/&cputc, printf_number_buffer::@2/printf_number_buffer::putc#0, printf_string::@1/printf_string::putc#0 )
  [138] printf_str::s#10 = phi( main::@1/main::s3, main::@11/main::s1, main::@13/main::s2, main::@18/main::s4, main::@22/main::s4, main::@3/main::s5, printf_number_buffer::@2/printf_number_buffer::buffer_digits#0, printf_string::@1/main::name )
  to:printf_str::@1
printf_str::@1: scope:[printf_str]  from printf_str printf_str::@2
  [139] printf_str::s#9 = phi( printf_str/printf_str::s#10, printf_str::@2/printf_str::s#0 )
  [140] printf_str::c#1 = *printf_str::s#9
  [141] printf_str::s#0 = ++ printf_str::s#9
  [142] if(0!=printf_str::c#1) goto printf_str::@2
  to:printf_str::@return
printf_str::@return: scope:[printf_str]  from printf_str::@1
  [143] return 
  to:@return
printf_str::@2: scope:[printf_str]  from printf_str::@1
  [144] stackpush(char) = printf_str::c#1
  [145] callexecute *printf_str::putc#10 
  sideeffect stackpullbytes(1)
  to:printf_str::@1

void printf_string(void (*putc)(char) , char *str , char format_min_length , char format_justify_left)
printf_string: scope:[printf_string]  from main::@12
  [147] phi()
  to:printf_string::@1
printf_string::@1: scope:[printf_string]  from printf_string
  [148] phi()
  [149] call printf_str
  to:printf_string::@return
printf_string::@return: scope:[printf_string]  from printf_string::@1
  [150] return 
  to:@return

void waitkey()
waitkey: scope:[waitkey]  from main::@14 main::@2 main::@4
  [151] phi()
  to:waitkey::@1
waitkey::@1: scope:[waitkey]  from waitkey waitkey::@2
  [152] phi()
  [153] call kbhit
  [154] kbhit::return#3 = kbhit::return#2
  to:waitkey::@2
waitkey::@2: scope:[waitkey]  from waitkey::@1
  [155] waitkey::$1 = kbhit::return#3
  [156] if(0==waitkey::$1) goto waitkey::@1
  to:waitkey::clrkb1
waitkey::clrkb1: scope:[waitkey]  from waitkey::@2
  [157] *CH = $ff
  to:waitkey::@return
waitkey::@return: scope:[waitkey]  from waitkey::clrkb1
  [158] return 
  to:@return

void clrscr()
clrscr: scope:[clrscr]  from main::@15
  [159] memset::str#7 = (void *)*SAVMSC
  [160] call memset
  to:clrscr::@1
clrscr::@1: scope:[clrscr]  from clrscr
  [161] *OLDCHR = 0
  [162] call gotoxy
  to:clrscr::@return
clrscr::@return: scope:[clrscr]  from clrscr::@1
  [163] return 
  to:@return

void printf_sint(void (*putc)(char) , int value , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_sint: scope:[printf_sint]  from main::@17 main::@21
  [164] printf_sint::value#3 = phi( main::@17/printf_sint::value#1, main::@21/printf_sint::value#2 )
  [165] *((char *)&printf_buffer) = 0
  [166] if(printf_sint::value#3<0) goto printf_sint::@1
  to:printf_sint::@2
printf_sint::@1: scope:[printf_sint]  from printf_sint
  [167] printf_sint::value#0 = - printf_sint::value#3
  [168] *((char *)&printf_buffer) = '-'at
  to:printf_sint::@2
printf_sint::@2: scope:[printf_sint]  from printf_sint printf_sint::@1
  [169] printf_sint::value#5 = phi( printf_sint::@1/printf_sint::value#0, printf_sint/printf_sint::value#3 )
  [170] utoa::value#1 = (unsigned int)printf_sint::value#5
  [171] call utoa
  to:printf_sint::@3
printf_sint::@3: scope:[printf_sint]  from printf_sint::@2
  [172] printf_number_buffer::buffer_sign#0 = *((char *)&printf_buffer)
  [173] call printf_number_buffer
  to:printf_sint::@return
printf_sint::@return: scope:[printf_sint]  from printf_sint::@3
  [174] return 
  to:@return

char scroll(char onoff)
scroll: scope:[scroll]  from main::@20
  [175] conio_scroll_enable = scroll::onoff#0
  to:scroll::@return
scroll::@return: scope:[scroll]  from scroll
  [176] return 
  to:@return

char * cursorLocation()
cursorLocation: scope:[cursorLocation]  from putchar setcursor
  [177] cursorLocation::$3 = (unsigned int)*ROWCRS
  [178] cursorLocation::$4 = cursorLocation::$3 << 2
  [179] cursorLocation::$5 = cursorLocation::$4 + cursorLocation::$3
  [180] cursorLocation::$0 = cursorLocation::$5 << 3
  [181] cursorLocation::$1 = *SAVMSC + cursorLocation::$0
  [182] cursorLocation::return#1 = cursorLocation::$1 + *COLCRS
  to:cursorLocation::@return
cursorLocation::@return: scope:[cursorLocation]  from cursorLocation
  [183] return 
  to:@return

void * memcpy(void *destination , void *source , unsigned int num)
memcpy: scope:[memcpy]  from newline::@5
  [184] memcpy::src_end#0 = (char *)(void *)memcpy::source#0 + memcpy::num#0
  [185] memcpy::src#4 = (char *)(void *)memcpy::source#0
  [186] memcpy::dst#4 = (char *)memcpy::destination#0
  to:memcpy::@1
memcpy::@1: scope:[memcpy]  from memcpy memcpy::@2
  [187] memcpy::dst#2 = phi( memcpy/memcpy::dst#4, memcpy::@2/memcpy::dst#1 )
  [187] memcpy::src#2 = phi( memcpy/memcpy::src#4, memcpy::@2/memcpy::src#1 )
  [188] if(memcpy::src#2!=memcpy::src_end#0) goto memcpy::@2
  to:memcpy::@return
memcpy::@return: scope:[memcpy]  from memcpy::@1
  [189] return 
  to:@return
memcpy::@2: scope:[memcpy]  from memcpy::@1
  [190] *memcpy::dst#2 = *memcpy::src#2
  [191] memcpy::dst#1 = ++ memcpy::dst#2
  [192] memcpy::src#1 = ++ memcpy::src#2
  to:memcpy::@1

void * memset(void *str , char c , unsigned int num)
memset: scope:[memset]  from clrscr newline::@7
  [193] memset::str#3 = phi( clrscr/memset::str#7, newline::@7/memset::str#8 )
  [193] memset::num#2 = phi( clrscr/(unsigned int)$28*$18, newline::@7/$28 )
  [194] if(memset::num#2<=0) goto memset::@return
  to:memset::@1
memset::@1: scope:[memset]  from memset
  [195] memset::end#0 = (char *)memset::str#3 + memset::num#2
  [196] memset::dst#4 = (char *)memset::str#3
  to:memset::@2
memset::@2: scope:[memset]  from memset::@1 memset::@3
  [197] memset::dst#2 = phi( memset::@1/memset::dst#4, memset::@3/memset::dst#1 )
  [198] if(memset::dst#2!=memset::end#0) goto memset::@3
  to:memset::@return
memset::@return: scope:[memset]  from memset memset::@2
  [199] return 
  to:@return
memset::@3: scope:[memset]  from memset::@2
  [200] *memset::dst#2 = 0
  [201] memset::dst#1 = ++ memset::dst#2
  to:memset::@2

void cputs(const char *s)
cputs: scope:[cputs]  from cputsxy::@1
  [202] phi()
  to:cputs::@1
cputs::@1: scope:[cputs]  from cputs cputs::@2
  [203] cputs::s#2 = phi( cputs/main::s, cputs::@2/cputs::s#0 )
  [204] cputs::c#1 = *cputs::s#2
  [205] cputs::s#0 = ++ cputs::s#2
  [206] if(0!=cputs::c#1) goto cputs::@2
  to:cputs::@return
cputs::@return: scope:[cputs]  from cputs::@1
  [207] return 
  to:@return
cputs::@2: scope:[cputs]  from cputs::@1
  [208] stackpush(char) = cputs::c#1
  [209] callexecute cputc 
  sideeffect stackpullbytes(1)
  to:cputs::@1

char kbhit()
kbhit: scope:[kbhit]  from waitkey::@1
  [211] if(*CH==$ff) goto kbhit::@1
  to:kbhit::@return
kbhit::@1: scope:[kbhit]  from kbhit
  [212] phi()
  to:kbhit::@return
kbhit::@return: scope:[kbhit]  from kbhit kbhit::@1
  [213] kbhit::return#2 = phi( kbhit::@1/0, kbhit/1 )
  [214] return 
  to:@return

void utoa(unsigned int value , char *buffer , char radix)
utoa: scope:[utoa]  from printf_sint::@2
  [215] phi()
  to:utoa::@1
utoa::@1: scope:[utoa]  from utoa utoa::@4
  [216] utoa::buffer#11 = phi( utoa::@4/utoa::buffer#14, utoa/(char *)&printf_buffer+OFFSET_STRUCT_PRINTF_BUFFER_NUMBER_DIGITS )
  [216] utoa::started#2 = phi( utoa::@4/utoa::started#4, utoa/0 )
  [216] utoa::value#2 = phi( utoa::@4/utoa::value#6, utoa/utoa::value#1 )
  [216] utoa::digit#2 = phi( utoa::@4/utoa::digit#1, utoa/0 )
  [217] if(utoa::digit#2<5-1) goto utoa::@2
  to:utoa::@3
utoa::@3: scope:[utoa]  from utoa::@1
  [218] utoa::$11 = (char)utoa::value#2
  [219] *utoa::buffer#11 = DIGITS[utoa::$11]
  [220] utoa::buffer#3 = ++ utoa::buffer#11
  [221] *utoa::buffer#3 = 0
  to:utoa::@return
utoa::@return: scope:[utoa]  from utoa::@3
  [222] return 
  to:@return
utoa::@2: scope:[utoa]  from utoa::@1
  [223] utoa::$10 = utoa::digit#2 << 1
  [224] utoa::digit_value#0 = RADIX_DECIMAL_VALUES[utoa::$10]
  [225] if(0!=utoa::started#2) goto utoa::@5
  to:utoa::@7
utoa::@7: scope:[utoa]  from utoa::@2
  [226] if(utoa::value#2>=utoa::digit_value#0) goto utoa::@5
  to:utoa::@4
utoa::@4: scope:[utoa]  from utoa::@6 utoa::@7
  [227] utoa::buffer#14 = phi( utoa::@7/utoa::buffer#11, utoa::@6/utoa::buffer#4 )
  [227] utoa::started#4 = phi( utoa::@7/utoa::started#2, utoa::@6/1 )
  [227] utoa::value#6 = phi( utoa::@7/utoa::value#2, utoa::@6/utoa::value#0 )
  [228] utoa::digit#1 = ++ utoa::digit#2
  to:utoa::@1
utoa::@5: scope:[utoa]  from utoa::@2 utoa::@7
  [229] utoa_append::buffer#0 = utoa::buffer#11
  [230] utoa_append::value#0 = utoa::value#2
  [231] utoa_append::sub#0 = utoa::digit_value#0
  [232] call utoa_append
  [233] utoa_append::return#0 = utoa_append::value#2
  to:utoa::@6
utoa::@6: scope:[utoa]  from utoa::@5
  [234] utoa::value#0 = utoa_append::return#0
  [235] utoa::buffer#4 = ++ utoa::buffer#11
  to:utoa::@4

void printf_number_buffer(void (*putc)(char) , char buffer_sign , char *buffer_digits , char format_min_length , char format_justify_left , char format_sign_always , char format_zero_padding , char format_upper_case , char format_radix)
printf_number_buffer: scope:[printf_number_buffer]  from printf_sint::@3
  [236] phi()
  to:printf_number_buffer::@1
printf_number_buffer::@1: scope:[printf_number_buffer]  from printf_number_buffer
  [237] if(0==printf_number_buffer::buffer_sign#0) goto printf_number_buffer::@2
  to:printf_number_buffer::@3
printf_number_buffer::@3: scope:[printf_number_buffer]  from printf_number_buffer::@1
  [238] stackpush(char) = printf_number_buffer::buffer_sign#0
  [239] callexecute cputc 
  sideeffect stackpullbytes(1)
  to:printf_number_buffer::@2
printf_number_buffer::@2: scope:[printf_number_buffer]  from printf_number_buffer::@1 printf_number_buffer::@3
  [241] phi()
  [242] call printf_str
  to:printf_number_buffer::@return
printf_number_buffer::@return: scope:[printf_number_buffer]  from printf_number_buffer::@2
  [243] return 
  to:@return

unsigned int utoa_append(char *buffer , unsigned int value , unsigned int sub)
utoa_append: scope:[utoa_append]  from utoa::@5
  [244] phi()
  to:utoa_append::@1
utoa_append::@1: scope:[utoa_append]  from utoa_append utoa_append::@2
  [245] utoa_append::digit#2 = phi( utoa_append/0, utoa_append::@2/utoa_append::digit#1 )
  [245] utoa_append::value#2 = phi( utoa_append/utoa_append::value#0, utoa_append::@2/utoa_append::value#1 )
  [246] if(utoa_append::value#2>=utoa_append::sub#0) goto utoa_append::@2
  to:utoa_append::@3
utoa_append::@3: scope:[utoa_append]  from utoa_append::@1
  [247] *utoa_append::buffer#0 = DIGITS[utoa_append::digit#2]
  to:utoa_append::@return
utoa_append::@return: scope:[utoa_append]  from utoa_append::@3
  [248] return 
  to:@return
utoa_append::@2: scope:[utoa_append]  from utoa_append::@1
  [249] utoa_append::digit#1 = ++ utoa_append::digit#2
  [250] utoa_append::value#1 = utoa_append::value#2 - utoa_append::sub#0
  to:utoa_append::@1
