This documentation is automatically generated by online-judge-tools/verification-helper
#include "seq/famous/catalan_convolution.hpp"
// [x^n]C(x)^pow
template <typename mint>
mint catalan_convolution(ll pow, ll n) {
if (pow == 0) return (n == 0 ? mint(1) : mint(0));
return mint(pow) * inv<mint>(n + n + pow) * C<mint>(n + n + pow, n);
}
#line 1 "seq/famous/catalan_convolution.hpp"
// [x^n]C(x)^pow
template <typename mint>
mint catalan_convolution(ll pow, ll n) {
if (pow == 0) return (n == 0 ? mint(1) : mint(0));
return mint(pow) * inv<mint>(n + n + pow) * C<mint>(n + n + pow, n);
}