This documentation is automatically generated by online-judge-tools/verification-helper
#include "algebra/monoid_f/monoid_set.hpp"
#pragma once
// MF
template <class T> struct MonoidSet {
using F = T;
static constexpr F composition(F f, F g) { return f == id() ? g : f; }
static constexpr F id() { return std::numeric_limits<F>::max(); }
};
#line 2 "algebra/monoid_f/monoid_set.hpp"
// MF
template <class T> struct MonoidSet {
using F = T;
static constexpr F composition(F f, F g) { return f == id() ? g : f; }
static constexpr F id() { return std::numeric_limits<F>::max(); }
};