<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def set_direct(self, address_value_dict):
 """Called in the context manager's set method to either overwrite the value for an address, or create a new future and immediately set a value in the future. Args: address_value_dict (dict of str:bytes):
 The unique full addresses with bytes to set at that address. Raises: AuthorizationException """


        with self._lock:
            for address, value in address_value_dict.items():
                self._validate_write(address)
                if address in self._state:
                    self._state[address].set_result(result=value)
                else:
                    fut = _ContextFuture(address=address)
                    self._state[address] = fut
                    fut.set_result(result=value)