import sys import pypyjit from __pypy__ import builders # 大きな入力では早めに machine code 化する pypyjit.set_param( threshold=200, trace_eagerness=20, ) MASK = 0xFFFFFFFF def main(): data = sys.stdin.buffer.read() p = 0 # H H = 0 while True: c = data[p] p += 1 if c < 48: break H = H * 10 + c - 48 # W W = 0 while True: c = data[p] p += 1 if c < 48: break W = W * 10 + c - 48 # 最後に改行がない入力への保険。 # 通常のジャッジ入力ではここには入らない。 if data[-1] >= 48: data += b'\n' S = [0] * H total = 0 r = 0 # 行末かどうかを '\n' で判定せず、 # W 個読んだら次の行へ進む。 while r < H: row = 0 j = 0 while j < W: x = 0 # 数字のみを読む。 # 空白でも改行でも c < 48 なので同じ扱い。 while True: c = data[p] p += 1 if c < 48: break x = x * 10 + c - 48 row += x j += 1 S[r] = row total += row r += 1 T = total & MASK # ここは現在最速だった StringBuilder 版を維持 out = builders.StringBuilder(H * 4) append = out.append for s in S: append(str((s + T) & MASK)) append('\n') sys.stdout.write(out.build()) main()