... divides<int>()):1 0 0 4 2 0 2 1 0 1After testBinary(x, y, r, limit<int>()):0 8 18 0 0 6 3 4 25 17After testUnary(x, r, negate<int>()): -4 -8 -1 8 -3 6 -2 2 -6 -2 9 -1 9 -2 5 -4 7After testBinary(x, ... y, r, minus<int>()):0 -6 -5 27 11 -2 6 16 4 -1 9 17After testBinary(x, y, r, multiplies<int>()): 16 1 12 414 324 24 2 1 92 377 28 5 1100 1410After testBinary(x, y, r, divides<int>()):1 ... objects. They are admittedly simple, but you can use them to compose more complicated function objects. Consequently, in many instances, you can construct complicated predicates without writing...