def METHOD_NAME(self, name, value, overwrite=True, decorated=True):
    if decorated:
        name, value = self._undecorate_and_validate(name, value)
    if (overwrite
            or name not in self.data
            or isinstance(self.data[name], GlobalVariableValue)):
        self.data[name] = value