array [1..28] of int: E = [1, 2, 1, 4, 2, 3, 2, 4, 3, 5, 3, 8, 4, 5, 5, 2, 5, 6, 5, 7, 6, 7, 6, 8, 7, 9, 8, 9]; array [1..14] of int: a = [14, 23, 10, 9, 12, 18, 26, 11, 25, 4, 7, 8, 15, 20]; var 0..100: flow :: output_var; array [1..14] of var int: x :: output_array([1..14]); constraint int_le(0, x[1]); constraint int_le(0, x[2]); constraint int_le(0, x[3]); constraint int_le(0, x[4]); constraint int_le(0, x[5]); constraint int_le(0, x[6]); constraint int_le(0, x[7]); constraint int_le(0, x[8]); constraint int_le(0, x[9]); constraint int_le(0, x[10]); constraint int_le(0, x[11]); constraint int_le(0, x[12]); constraint int_le(0, x[13]); constraint int_le(0, x[14]); constraint int_le(x[1], 14); constraint int_le(x[2], 23); constraint int_le(x[3], 10); constraint int_le(x[4], 9); constraint int_le(x[5], 12); constraint int_le(x[6], 18); constraint int_le(x[7], 26); constraint int_le(x[8], 11); constraint int_le(x[9], 25); constraint int_le(x[10], 4); constraint int_le(x[11], 7); constraint int_le(x[12], 8); constraint int_le(x[13], 15); constraint int_le(x[14], 20); constraint int_lin_eq([-1, 1, 1], [flow, x[13], x[14]], 0); constraint int_lin_eq([1, -1, -1], [flow, x[1], x[2]], 0); constraint int_lin_eq([1, -1, -1], [x[3], x[5], x[6]], 0); constraint int_lin_eq([1, -1, -1], [x[9], x[11], x[12]], 0); constraint int_lin_eq([1, 1, -1], [x[2], x[4], x[7]], 0); constraint int_lin_eq([1, 1, -1], [x[6], x[12], x[14]], 0); constraint int_lin_eq([1, 1, -1], [x[10], x[11], x[13]], 0); constraint int_lin_eq([1, -1, -1, 1], [x[1], x[3], x[4], x[8]], 0); constraint int_lin_eq([1, 1, -1, -1, -1], [x[5], x[7], x[8], x[9], x[10]], 0); solve maximize flow;