integrate2D(f_):= integrate2D(f,x); integrate2D(f_,x_):= integrates(x=>topow(f),x); integrate2D(integrate(f_,x_),x_):= integrates(x=>f,x); #integrate2D(a_*f_,x_):= if(hasnot(a,x),a*if(has(name(f),integrate) or has(name(f),integrates),toints(f), integrates(x=>topow(f),x) )); integrate2D(f_=g_,x_):=integrate2D(f,x)=integrate2D(g,x); integrate2D(f_+g_,x_):=integrate2D(f,x)+integrate2D(g,x);