public static int mystery(int value)
{
    if(value <= 10)
        return value * 3;
    
    return value + mystery(mystery(value / 5)); // finished call 2
    //              call2     call 1               got back 27
                                                // computes 15 + 27, which is 42
                                                // stops and returns 42
}

Call stack

m(9)   returns 27
m(3)   returns 9
m(15)     15 + 27  returns 42
m(5)   returns 15
m(27)2    27 + ____
m(9)   returns 27
m(45)2    45 + ____

Forward to Step 13
Back to Step 11
Back to main example