worked on arg passing and syscalls