import std.stdio, std.array, std.string, std.conv, std.algorithm; import std.typecons, std.range, std.random, std.math, std.container; import std.numeric, std.bigint, core.bitop, core.stdc.string; void main() { auto N = readln.chomp.to!int; auto A = readln.split.map!(to!int).array; auto B = readln.split.map!(to!int).array; int ans = N.iota.map!(i => A[i] + B[i]).reduce!min; ans.writeln; auto anss = new int[](N + 2); foreach (i; 0..N) { if (A[i] <= B[i]) { anss[i + 1] = A[i]; } else { anss[i + 1] = ans - B[i]; } } anss.back = ans; auto m = anss.reduce!min; anss.each!(a => writeln(a - m)); }