"Source: Text/System/Par.text";
"Line: 2724";
"Date: Thu Jul 13 10:19:10 2023";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/System/Par.text, line: 2724
// Example: H5E31 ()
print "Example: H5E31";
ei := GetEchoInput();
SetEchoInput(true);
// no-test
group_tasks_hundred := function(n)
    return < 0, <0, 0> >, [ 100*n - 99 .. 100*n ];
end function;
update_group_maxval := function(item, task, tresult, gresult)
    n, niters, maxval := Explode(tresult);
    gcount, gtuple := Explode(gresult);
    if gtuple[1] lt maxval then
        gtuple := < maxval, n >;
    end if;
    gcount +:= 1;
    done := gcount eq 100;
    gresult := done select gtuple else < gcount, gtuple >;
    return gresult, [], done;
end function;
socket := Socket(: LocalHost := "circle", LocalPort := 10000);
DistributedManager(socket, [1..10] :
    group_tasks := group_tasks_hundred,
    update_group := update_group_maxval
);
SetEchoInput(ei);
