proc main()
{
var a = [3,4,5].iterate();
"(2,+):\n", a.nreduce(2,`+), '\n', '\n';
"(2,+,0):\n", a.nreduce(2,`+,0), '\n', '\n';
"(2,+,1):\n", a.nreduce(2,`+,1), '\n', '\n';
"(3,-):\n", a.nreduce(3,`-), '\n', '\n';
"(3,-,0):\n", a.nreduce(3,`-,0), '\n', '\n';
"(3,-,1):\n", a.nreduce(3,`-,1), '\n', '\n';
"(-3,-):\n", a.nreduce(-3,`-), '\n', '\n';
"(-3,-,0):\n", a.nreduce(-3,`-,0), '\n', '\n';
"(-3,-,1):\n", a.nreduce(-3,`-,1), '\n';
}