Main.cc: In function ‘void bd(long long int, long long int, long long int)’: Main.cc:63:16: error: no match for ‘operator=’ (operand types are ‘node’ and ‘’) T[x]={0,0,0,1}; ^ Main.cc:26:8: note: candidate: node& node::operator=(const node&) struct node{ ^~~~ Main.cc:26:8: note: no known conversion for argument 1 from ‘’ to ‘const node&’ Main.cc:26:8: note: candidate: node& node::operator=(node&&) Main.cc:26:8: note: no known conversion for argument 1 from ‘’ to ‘node&&’ Main.cc:66:11: warning: suggest parentheses around ‘+’ inside ‘>>’ [-Wparentheses] int mid=l+r>>1; ~^~ Main.cc: In function ‘void add(long long int, long long int, long long int, long long int, long long int, long long int, long long int)’: Main.cc:79:11: warning: suggest parentheses around ‘+’ inside ‘>>’ [-Wparentheses] int mid=l+r>>1; ~^~