global str terminal_namespace = "/dev/term/0"; global str new_line = "\n"; global int x = 1; global int y = 1; function main () load_absolute_32 x -> $0; load_absolute_32 y -> $1; call add ($0 $1) -> $2; int_to_string $2 -> $3; call pln ($3); exit 0; function add (int a $0, int b $1) int result $2; add_int a b -> result; return result; function pln (str message $0) plex term $1; int msg_length $2; str nl $3; int nl_length $4; int mode $5; str term_ns $6; load_immediate 0 -> mode; load_address terminal_namespace -> term_ns; syscall OPEN term_ns mode term; string_length message -> msg_length; syscall WRITE term message msg_length; load_address new_line -> nl; string_length nl -> nl_length; syscall WRITE term nl nl_length; return;