<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def disconnect(self, conn_id):
 """Asynchronously disconnect from a connected device Args: conn_id (int):
 A unique identifier that will refer to this connection callback (callback):
 A callback that will be called as callback(conn_id, adapter_id, success, failure_reason) """


        self._ensure_connection(conn_id, True)

        dev = self._get_property(conn_id, 'device')
        dev.connected = False

        self._teardown_connection(conn_id)