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 42
                                                // computes 27 + 42, which is 69
                                                // stops and returns 69
}

Call stack

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

Forward to Step 14
Back to Step 12
Back to main example