What is the output of the following program, and why?

What is the output of the following program, and why?

def fun(x):

if x > 0:
    fun(x-1)
    print(x)
    fun(x-2)

fun(4)