public function setContains(Value $value)
    {
        if (is_array($value->getValue())) {
            foreach ($this->value as $val) {
                if ($val instanceof Set
                    && $val == $value->getSet()) {
                    return true;
                }
            }

            return false;
        }

        return in_array($value->getValue(), $this->value);
    }