public function setValue($value)
    {
        if (null === $value) {
            $value = $this->getArgument('default');
        }

        $this->value = ($this->needsSanitization())
            ? $this->sanitizeWithCallback($value)
            : $value;

        return $this;
    }