code: def visit_UnaryOp(self, node: ast.UnaryOp) -> str:
      # UnaryOp is one of {UAdd, USub, Invert, Not}, which refer to ``+x``,
      # ``-x``, ``~x``, and ``not x``. Only Not needs a space.
      if isinstance(node.op, ast.Not):
          return f"{self.visit(node.op)} {self.visit(node.operand)}"
      return f"{self.visit(node.op)}{self.visit(node.operand)}"
  
imports: from __future__ import annotations
  import ast
  from typing import NoReturn, overload
label_desc: Use image node_id 17 for calling the _UnparseVisitor obj's underlying member method code with example usage: obj.visit_UnaryOp(node) and returns: self, self, self, str, self