map[str, int] operatorUsage(PROGRAM P) {
m = ();
visit(P){
case add(_,_): m["add"] ? 0 += 1;
case sub(_,_): m["sub"] ? 0 += 1;
case conc(_,_): m["conc"] ? 0 += 1;
}
return m;