public function startsWith(Value $value, $insensitive = false)
    {
        $value = $value->getValue();
        $valueLength = strlen($value);

        if (!empty($this->value) && !empty($value) && strlen($this->value) >= $valueLength) {
            return substr_compare($this->value, $value, 0, $valueLength, $insensitive) === 0;
        }

        return false;
    }