#include <iostream>
using namespace std;
class B{};
template<class T1,class T2,class T3=B>class E{}; //<- "class T3=B"
//^ library
//v user
class C{};
template<class T1,class T3=B> using F=E<T1,C,T3>; //<- "class T3=B" is duplicated
int main() {
F<B> f1;
F<B,C> f2;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQnt9Owp0ZW1wbGF0ZTxjbGFzcyBUMSxjbGFzcyBUMixjbGFzcyBUMz1CPmNsYXNzIEV7fTsgICAvLzwtICJjbGFzcyBUMz1CIgovL14gbGlicmFyeQoKLy92IHVzZXIKY2xhc3MgQ3t9Owp0ZW1wbGF0ZTxjbGFzcyBUMSxjbGFzcyBUMz1CPiB1c2luZyBGPUU8VDEsQyxUMz47ICAvLzwtICJjbGFzcyBUMz1CIiBpcyBkdXBsaWNhdGVkCmludCBtYWluKCkgewogICAgRjxCPiBmMTsKICAgIEY8QixDPiBmMjsKICAgIHJldHVybiAwOwp9