:$RUNTIME_BEGIN$; :read_float; in r2, 0; ret; add r0, r0, r0; :read_int; in r2, 0; ret; add r0, r0, r0; :print_char; out r2, 0; ret; add r0, r0, r0; :print_int; mov r3, -2147483648; and r4, r2, r3; beq r4, print_int_unsigned; addi r5, r0, 45; out r5, 0; cmpeq r4, r2, r3; beq r4, print_int_unsigned; sub r2, r0, r2; addi r5, r0, 50; out r5, 0; mov r2, 147483648; :print_int_unsigned; addi r13, r0, 1000; cmplt r4, r2, r13; beq r4, print_int_label_above3; addi r12, r0, 100; :print_int_label_under3; cmplt r4, r2, r12; beq r4, print_int_label_logis2; addi r11, r0, 10; :print_int_label_under2; cmplt r4, r2, r11; beq r4, print_int_label_logis1; add r0, r0, r0; :print_int_label_under1; jmp print_int_label_logis0; add r0, r0, r0; :print_int_label_above3; mul r16, r13, r13; cmplt r4, r2, r16; beq r4, print_int_label_above6; addi r11, r0, 10; :print_int_label_under6; mul r15, r13, r12; cmplt r4, r2, r15; beq r4, print_int_label_logis5; mul r14, r13, r11; :print_int_label_under5; cmplt r4, r2, r14; beq r4, print_int_label_logis4; add r0, r0, r0; :print_int_label_under4; jmp print_int_label_logis3; add r0, r0, r0; :print_int_label_above6; mul r18, r16, r12; cmplt r4, r2, r18; beq r4, print_int_label_above8; mul r17, r16, r11; :print_int_label_under8; mul r15, r13, r12; cmplt r4, r2, r17; beq r4, print_int_label_logis7; mul r14, r13, r11; :print_int_label_under7; jmp print_int_label_logis6; add r0, r0, r0; :print_int_label_above8; mul r14, r13, r11; mul r19, r18, r11; cmplt r4, r2, r19; beq r4, print_int_label_logis9; mul r15, r14, r11; :print_int_label_under9; jmp print_int_label_logis8; add r0, r0, r0; :print_int_label_logis9; div r3, r2, r19; addi r5, r3, 48; out r5, 0; mul r3, r3, r19; sub r2, r2, r3; :print_int_label_logis8; div r3, r2, r18; addi r5, r3, 48; out r5, 0; mul r3, r3, r18; sub r2, r2, r3; :print_int_label_logis7; div r3, r2, r17; addi r5, r3, 48; out r5, 0; mul r3, r3, r17; sub r2, r2, r3; :print_int_label_logis6; div r3, r2, r16; addi r5, r3, 48; out r5, 0; mul r3, r3, r16; sub r2, r2, r3; :print_int_label_logis5; div r3, r2, r15; addi r5, r3, 48; out r5, 0; mul r3, r3, r15; sub r2, r2, r3; :print_int_label_logis4; div r3, r2, r14; addi r5, r3, 48; out r5, 0; mul r3, r3, r14; sub r2, r2, r3; :print_int_label_logis3; div r3, r2, r13; addi r5, r3, 48; out r5, 0; mul r3, r3, r13; sub r2, r2, r3; :print_int_label_logis2; div r3, r2, r12; addi r5, r3, 48; out r5, 0; mul r3, r3, r12; sub r2, r2, r3; :print_int_label_logis1; div r3, r2, r11; addi r5, r3, 48; out r5, 0; mul r3, r3, r11; sub r2, r2, r3; :print_int_label_logis0; addi r5, r2, 48; ret; out r5, 0; :create_array; addi r4, r126, 0; add r126, r126, r2; :create_array_loop; bne r2, create_array_label; addi r2, r2, -1; ret; addi r2, r4, 0; :create_array_label; jmp create_array_loop; stored r3, r4, r2; :$RUNTIME_END$;