<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def locked_coroutine(f):
 """ Method decorator that replace asyncio.coroutine that warranty that this specific method of this class instance will not we executed twice at the same time """

    @asyncio.coroutine
    def new_function(*args, **kwargs):

        # In the instance of the class we will store
        # a lock has an attribute.
        lock_var_name = "__" + f.__name__ + "_lock"
        if not hasattr(args[0], lock_var_name):
            setattr(args[0], lock_var_name, asyncio.Lock())

        with (yield from getattr(args[0], lock_var_name)):
            return (yield from f(*args, **kwargs))

    return new_function