def METHOD_NAME(self):
    # definition
    self._definition_str = ""
    atom = self.definition.atom if self.definition is not None else self.atom
    addr_str = "unknown address" if self.addr is None else "%#x" % self.addr
    if isinstance(atom, Register):
        # convert it to a register name
        arch = self._instance.project.arch
        register_name = arch.translate_register_name(atom.reg_offset, size=atom.size)
        self._definition_str = f"Register {register_name} @ {addr_str}"
    elif isinstance(atom, MemoryLocation):
        if isinstance(atom.addr, SpOffset):
            self._definition_str = f"Stack sp{atom.addr.offset:+#x} @ {addr_str}"
        elif isinstance(atom.addr, int):
            self._definition_str = f"Memory {atom.addr:#x} @ {addr_str}"
    if not self._definition_str:
        # fallback
        self._definition_str = repr(self.definition.atom)
    # function and instruction text
    if self.addr is None:
        self._function_str = "Unknown"
        self._instruction_str = "Unknown"
    else:
        # function string
        the_func = locate_function(self._instance, self.addr)
        if the_func is None:
            # is it a SimProcedure?
            if self._instance.project.is_hooked(self.addr):
                hooker = self._instance.project.hooked_by(self.addr)
                self._function_str = "SimProcedure " + hooker.__class__.__name__.split(".")[-1]
            else:
                self._function_str = "Unknown"
        else:
            offset = self.addr - the_func.addr
            if not the_func.name:
                self._function_str = f"{the_func.addr:#x}{offset:+x}"
            else:
                self._function_str = f"{the_func.name}{offset:+x}"
        # instruction
        self._instruction_str = f"{self._function_str}:  {self._instance.get_instruction_text_at(self.addr)}"
        # text
        self._text = get_string_for_display(
            self._instance.cfg,
            self.addr,
            self._instance.project,
            max_size=60,
        )
    x = self.HORIZONTAL_PADDING
    y = self.VERTICAL_PADDING
    # definition
    self._definition_item = QGraphicsSimpleTextItem(self._definition_str, self)
    self._definition_item.setBrush(Qt.darkBlue)
    self._definition_item.setFont(Conf.symexec_font)
    self._definition_item.setPos(x, y)
    y += self._definition_item.boundingRect().height() + self.LINE_MARGIN
    # instruction
    self._instruction_item = QGraphicsSimpleTextItem(self._instruction_str, self)
    self._instruction_item.setBrush(Qt.black)
    self._instruction_item.setFont(Conf.symexec_font)
    self._instruction_item.setPos(x, y)
    x += self._instruction_item.boundingRect().width()
    # text
    if self._text:
        x += 10
        self._text_item = QGraphicsSimpleTextItem(self._text, self)
        self._text_item.setFont(Conf.symexec_font)
        self._text_item.setBrush(Qt.gray)
        self._text_item.setPos(x, y)
    # y += self._instruction_item.boundingRect().height()
    # x = self.HORIZONTAL_PADDING