import java.util.Scanner;

// (1) ??¨????????°r???????????????
// (2) ??¨????????°c???????????????
// (3) r + 1??¨c + 1???????¬??????????((r + 1) ?? (c + 1))?????¨?????????

// (4) r - 1????????\?????????????????????
	// (4.1) c - 1????????\?????????????????????
		// (4.1.1) ??°??????????????????
		// (4.1.2) ?????????????????°??????????¬??????????((r + 1) ?? (c + 1))???????´???????

// (5) r - 1????????\?????????????????????
	// (5.1) c - 1????????\?????????????????????
		// (5.1.1) (4.1.2)??§????´?????????°????????¨?????????
		// (5.1.2) ????´??????????????????§?????£???????????°???????¶?????????????(c[0] + c[1] + ?????????c[n])
		// (5.1.3) c - 1?????°???????????´????????\?????????????????????
			// (5.1.3.1) c - 1?????§???????¨???????c????????¨?????????
	// (5.2) ?????????r - 1????????£???????????\?????????????????????
		// (5.2.1) ?????????????????????
	// (5.3) ??????????????????

// (6) c????????\?????????????????????
	// (6.1) r - 1????????\?????????????????????
		// (6.1.1) ????´??????????????????§????¬??????????????´?????????°???????¶?????????????(r[0] + r[1] + ?????????r[n])
	// (6.2) c??????????????????r??????r - 1?????§???????¨?????????¨?????????

public class Main {

	public static void main(String[] args) {

		int r = 0;
		int c = 0;

		Scanner scan = new Scanner(System.in);

		r = scan.nextInt();
		c = scan.nextInt();

		int[][] matrix = new int[r + 1][c + 1];

		for (int i = 0; i < r; i++) {
			for (int j = 0; j < c; j++) {
				int matNum = scan.nextInt();
				matrix[i][j] = matNum;
			}
		}
		for (int i = 0; i < r; i++) {
			for (int j = 0; j < c; j++) {
				System.out.print(matrix[i][j]);
				System.out.print(" ");

				matrix[i][c] += matrix[i][j];

				matrix[r][j] += matrix[i][j];

				matrix[r][c] += matrix[i][j];
			}
			System.out.print(matrix[i][c]);
			System.out.println();
		}
		for (int j = 0; j < c + 1; j++) {
			System.out.print(matrix[r][j]);
			if (j == c) {
				break;
			}
			System.out.print(" ");
		}
		System.out.println();
		scan.close();
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz