| line | true | false | branch | 
 
| 39 | 4 | 0 | Ret operator ()(Args... args) const {return func->operator ()(std::forward(args)...);} | 
 
|  | 0 | 0 | Ret operator ()(Args... args) const {return func->operator ()(std::forward(args)...);} | 
 
| 44 | 0 | 1 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 0 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 1 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 1 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 1 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 0 | 3 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 0 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 3 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 3 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 3 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 0 | 4 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 0 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 4 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 4 | 0 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
|  | 3 | 1 | return (!func && !oth.func) || (func && oth && func->equals(oth.func.get())); | 
 
| 52 | 2 | 0 | return func && func->equals(&oth); | 
 
|  | 2 | 0 | return func && func->equals(&oth); | 
 
|  | 5 | 0 | return func && func->equals(&oth); | 
 
|  | 2 | 3 | return func && func->equals(&oth); |