https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=56270
return TreeEval<InputResult>(tester);
    }
public:
    /** Update duplicate key information in this Node.
     *
     * This uses a custom key comparator provided by the context in order to still detect duplicates
     * for more complicated types.
     */
    template<typename Ctx> void DuplicateKeyCheck(const Ctx& ctx) const
    {
        
        
        struct Comp {
            const Ctx* ctx_ptr;
            Comp(const Ctx& ctx) : ctx_ptr(&ctx) {}
            bool operator()(const Key& a, const Key& b) const { return ctx_ptr->KeyCompare(a, b); }
        };
        
        
        
        using keyset = std::set<Key, Comp>;
        using state = std::optional<keyset>;
        auto upfn = [&ctx](const Node& node, Span<state> subs) -> state {
            
            if (node.has_duplicate_keys.has_value() && *node.has_duplicate_keys) return {};
            
            for (auto& sub : subs) {
                if (!sub.has_value()) {
                    node.has_duplicate_keys = true;
                    return {};