Don't require the `--structure` argument.
{
private:
    UInt64 seed;
public:
    explicit FixedStringModel(UInt64 seed_) : seed(seed_) {}
    void train(const IColumn &) override {}
    void finalize() override {}
    void serialize(WriteBuffer &) const override {}
    void deserialize(ReadBuffer &) override {}
    ColumnPtr generate(const IColumn & column) override
    {
        const ColumnFixedString & column_fixed_string = assert_cast<const ColumnFixedString &>(column);
        const size_t string_size = column_fixed_string.getN();
        const auto & src_data = column_fixed_string.getChars();
        size_t size = column_fixed_string.size();
        auto res_column = ColumnFixedString::create(string_size);
        auto & res_data = res_column->getChars();
        res_data.resize(src_data.size());
        for (size_t i = 0; i < size; ++i)
            transformFixedString(&src_data[i * string_size], &res_data[i * string_size], string_size, seed);
        return res_column;
    }
    void updateSeed() override
    {
        seed = hash(seed);
    }
};
class UUIDModel : public IModel