public function updateValue($group, $variableCode, $newValue)
    {
        $variable = clone $this->getVariable($variableCode);
        $variable->setValue($newValue);

        if (!isset($this->queuedForUpdate[$group->getName()])) {
            $this->queuedForUpdate[$group->getName()]['time'] = microtime(true);
        }

        $checkVariable = clone $this->checkVariable;
        $uniqueId = uniqid('exp_', true);
        $checkVariable->setValue("\"$uniqueId\"");

        $this->checkWindow->setValue(Builder::escapeText(get_called_class()));
        $this->queuedForUpdate[$group->getName()]['group'] = $group;
        $this->queuedForUpdate[$group->getName()]['variables'][$variableCode] = $variable;
        $this->queuedForUpdate[$group->getName()]['check'] = $checkVariable;
    }