static L localMaximaIncludingPlateaus(double[] l) { new L out; int n = l(l); for i to n: if ((i == 0 || l[i] >= l[i-1]) && (i == n-1 || l[i] >= l[i+1])) out.add(i); ret out; }