def _cmd_variables(self, cmd):
        members = self._vt.dereference(cmd["arguments"]["variablesReference"])
        b = {}
        b["variables"] = []
        for child in members.children:
            o = {}

            try: o["name"] = child.display_name
            except: o["name"] = child.name

            if hasattr(child, "variablesReference"):
                o["variablesReference"] = child.variablesReference
                o["value"] = ""
            else:
                o["variablesReference"] = 0
                data_value = child.scope.accessor(child)
                try: o["value"] = "%x" % data_value
                except: o["value"] = str(data_value)
            b["variables"] += [o]

        self._respond(cmd, True, body = b)