fn main [ var lines := list_break_to_lines(read_lazy(h[0])); var sum := 0; for line in lines do [ var list := map(list_break_whitespace(line), ston); var first := empty(int); while len_greater_than(list, 0) do [ first := [ list[0] ] + first; var new_list := empty(int); for i := 1 to len(list) do new_list +<= list[i] - list[i - 1]; list := new_list; ] var val := list_fold(0, first, lambda(x y : int) [ return y - x; ]); sum += val; ] write(h[1], ntos(sum) + nl); ]