\begin{Verbatim}[commandchars=@\[\]]
@PYbc[import] @PYaV[sys]
@PYay[def] @PYaL[logged](stream):
    @PYay[def] @PYaL[_inner](fun):
        @PYay[def] @PYaL[_wrapper](@PYbe[*]args, @PYbe[*]@PYbe[*]kwargs):
            stream@PYbe[.]write(@PYaB[']@PYaB[Function ]@PYbg[%s]@PYaB[ entry]@PYao[\n]@PYaB['] @PYbe[%]
                    fun@PYbe[.]__name__)
            fun(@PYbe[*]args, @PYbe[*]@PYbe[*]kwargs)
            stream@PYbe[.]write(@PYaB[']@PYaB[Function ]@PYbg[%s]@PYaB[ exit]@PYao[\n]@PYaB['] @PYbe[%]
                    fun@PYbe[.]__name__)
        @PYay[return] _wrapper
    @PYay[return] _inner

@PYaC[@PYZat[]logged](stream@PYbe[=]sys@PYbe[.]stderr)
@PYay[def] @PYaL[foo]():
    @PYay[print] @PYaB[']@PYaB[Doing something]@PYaB[']
foo()
\end{Verbatim}

