please show works and details.Image text transcribed for accessibility: For the next two questions, consider the following assembly language procedure: foo: addi $sp. $sp. -4 sw $ra, 0($sp) beq $a0, $0. LI addi $a0.$a0.-1 add $al, $al, $al jal foo Suppose there is a procedure called main which calls (4, 3).[Assume the main places 4 in $a0, and 3 in $a1 before calling foo. What is the entire sequence of calls to foo starting with foo (4, 3). What is the final value returned to main?