import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class Main {
	private ArrayList<Kousha> kousha;

	public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	}

	private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	}

	private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	}

	private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	}

	class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	}

	class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	}

	class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	}
} import java.io.BufferedReader; BufferedReader java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.ArrayList; ArrayList java.util public class Main {
	private ArrayList<Kousha> kousha;

	public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	}

	private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	}

	private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	}

	private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	}

	class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	}

	class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	}

	class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	}
} Main private ArrayList<Kousha> kousha; kousha public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	} main {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	} BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) Main main = new Main(); main new Main() main.init() main.init main int n = Integer.parseInt(br.readLine()); n Integer.parseInt(br.readLine()) Integer.parseInt Integer br.readLine() br.readLine br for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    } {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    } String line = br.readLine(); line br.readLine() br.readLine br int b = Integer.parseInt(line.split(" ")[0]); b Integer.parseInt(line.split(" ")[0]) Integer.parseInt Integer line.split(" ")[0] line.split(" ") line.split line " " 0 int f = Integer.parseInt(line.split(" ")[1]); f Integer.parseInt(line.split(" ")[1]) Integer.parseInt Integer line.split(" ")[1] line.split(" ") line.split line " " 1 int r = Integer.parseInt(line.split(" ")[2]); r Integer.parseInt(line.split(" ")[2]) Integer.parseInt Integer line.split(" ")[2] line.split(" ") line.split line " " 2 int v = Integer.parseInt(line.split(" ")[3]); v Integer.parseInt(line.split(" ")[3]) Integer.parseInt Integer line.split(" ")[3] line.split(" ") line.split line " " 3 main.movePeople(b, f, r, v) main.movePeople main b f r v main.disp() main.disp main String[] args args private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	} disp {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	} for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		} int b = 0; int b = 0; b 0 b < this.kousha.size() b this.kousha.size() this.kousha.size this.kousha this this.kousha b++ b++ b {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		} {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		} Kousha kousha = this.kousha.get(b); kousha this.kousha.get(b) this.kousha.get this.kousha this this.kousha b for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			} int f = 0; int f = 0; f 0 f < kousha.getFloorCount() f kousha.getFloorCount() kousha.getFloorCount kousha f++ f++ f {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			} {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			} Floor floor = kousha.getFloor(f); floor kousha.getFloor(f) kousha.getFloor kousha f for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				} int r = 0; int r = 0; r 0 r < floor.getRoomCount() r floor.getRoomCount() floor.getRoomCount floor r++ r++ r {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				} {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				} Room room = floor.getRoom(r); room floor.getRoom(r) floor.getRoom floor r System.out.print(" " + room.getNinzu()) System.out.print System.out System System.out " " + room.getNinzu() " " room.getNinzu() room.getNinzu room System.out.println("") System.out.println System.out System System.out "" if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			} b != this.kousha.size() - 1 b this.kousha.size() - 1 this.kousha.size() this.kousha.size this.kousha this this.kousha 1 {
				System.out.println("####################");
			} System.out.println("####################") System.out.println System.out System System.out "####################" private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	} init {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	} this.kousha = new ArrayList<Kousha>() this.kousha this this.kousha new ArrayList<Kousha>() kousha.add(new Kousha(1)) kousha.add kousha new Kousha(1) kousha.add(new Kousha(2)) kousha.add kousha new Kousha(2) kousha.add(new Kousha(3)) kousha.add kousha new Kousha(3) kousha.add(new Kousha(4)) kousha.add kousha new Kousha(4) private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	} movePeople {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	} Kousha kousha = this.kousha.get(b - 1); kousha this.kousha.get(b - 1) this.kousha.get this.kousha this this.kousha b - 1 b 1 Floor floor = kousha.getFloor(f - 1); floor kousha.getFloor(f - 1) kousha.getFloor kousha f - 1 f 1 Room room = floor.getRoom(r - 1); room floor.getRoom(r - 1) floor.getRoom floor r - 1 r 1 room.setNinzu(v) room.setNinzu room v int b b int f f int r r int v v class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	} Kousha private int num; num private ArrayList<Floor> floor; floor Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		} Kousha {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		} this.num = koushaNo this.num this this.num koushaNo floor = new ArrayList<Floor>() floor new ArrayList<Floor>() floor.add(new Floor(1)) floor.add floor new Floor(1) floor.add(new Floor(2)) floor.add floor new Floor(2) floor.add(new Floor(3)) floor.add floor new Floor(3) int koushaNo koushaNo public int getNum() {
			return num;
		} getNum {
			return num;
		} return num; num public void setNum(int num) {
			this.num = num;
		} setNum {
			this.num = num;
		} this.num = num this.num this this.num num int num num public int getFloorCount() {
			return this.floor.size();
		} getFloorCount {
			return this.floor.size();
		} return this.floor.size(); this.floor.size() this.floor.size this.floor this this.floor public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		} getFloor {
			return floor.get(floorNo);
		} return floor.get(floorNo); floor.get(floorNo) floor.get floor floorNo int floorNo floorNo public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		} setFloor {
			this.floor = floor;
		} this.floor = floor this.floor this this.floor floor ArrayList<Floor> floor floor class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	} Floor private int num; num private ArrayList<Room> room; room Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		} Floor {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		} this.num = floorNo this.num this this.num floorNo room = new ArrayList<Room>() room new ArrayList<Room>() room.add(new Room(1)) room.add room new Room(1) room.add(new Room(2)) room.add room new Room(2) room.add(new Room(3)) room.add room new Room(3) room.add(new Room(4)) room.add room new Room(4) room.add(new Room(5)) room.add room new Room(5) room.add(new Room(6)) room.add room new Room(6) room.add(new Room(7)) room.add room new Room(7) room.add(new Room(8)) room.add room new Room(8) room.add(new Room(9)) room.add room new Room(9) room.add(new Room(10)) room.add room new Room(10) int floorNo floorNo public int getNum() {
			return num;
		} getNum {
			return num;
		} return num; num public void setNum(int num) {
			this.num = num;
		} setNum {
			this.num = num;
		} this.num = num this.num this this.num num int num num public Room getRoom(int roomNo) {
			return room.get(roomNo);
		} getRoom {
			return room.get(roomNo);
		} return room.get(roomNo); room.get(roomNo) room.get room roomNo int roomNo roomNo public void setRoom(ArrayList<Room> room) {
			this.room = room;
		} setRoom {
			this.room = room;
		} this.room = room this.room this this.room room ArrayList<Room> room room public int getRoomCount() {
			return this.room.size();
		} getRoomCount {
			return this.room.size();
		} return this.room.size(); this.room.size() this.room.size this.room this this.room class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	} Room private int num; num private int ninzu; ninzu Room(int roomNo) {
			this.num = roomNo;
		} Room {
			this.num = roomNo;
		} this.num = roomNo this.num this this.num roomNo int roomNo roomNo public int getNum() {
			return num;
		} getNum {
			return num;
		} return num; num public void setNum(int num) {
			this.num = num;
		} setNum {
			this.num = num;
		} this.num = num this.num this this.num num int num num public int getNinzu() {
			return ninzu;
		} getNinzu {
			return ninzu;
		} return ninzu; ninzu public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		} setNinzu {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		} this.ninzu += ninzu this.ninzu this this.ninzu ninzu if (this.ninzu < 0) {
				this.ninzu = 0;
			} this.ninzu < 0 this.ninzu this this.ninzu 0 {
				this.ninzu = 0;
			} this.ninzu = 0 this.ninzu this this.ninzu 0 int ninzu ninzu public class Main {
	private ArrayList<Kousha> kousha;

	public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	}

	private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	}

	private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	}

	private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	}

	class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	}

	class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	}

	class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	}
} public class Main {
	private ArrayList<Kousha> kousha;

	public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	}

	private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	}

	private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	}

	private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	}

	class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	}

	class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	}

	class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	}
} Main
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class Main {
	private ArrayList<Kousha> kousha;

	public static void main(String[] args) throws Exception {
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

	    Main main = new Main();
	    main.init();

	    int n = Integer.parseInt(br.readLine());

	    for (int i = 0; i < n; i++) {
		    String line = br.readLine();
		    // ?£?
		    int b = Integer.parseInt(line.split(" ")[0]);
		    // ???
		    int f = Integer.parseInt(line.split(" ")[1]);
		    // ??¨?±???????
		    int r = Integer.parseInt(line.split(" ")[2]);
		    // ?¢?????????°
		    int v = Integer.parseInt(line.split(" ")[3]);

		    main.movePeople(b, f, r, v);
	    }

	    main.disp();

	}

	private void disp() {
		for (int b = 0; b < this.kousha.size(); b++) {

			Kousha kousha = this.kousha.get(b);
			for (int f = 0; f < kousha.getFloorCount(); f++) {

				Floor floor = kousha.getFloor(f);
				for (int r = 0; r < floor.getRoomCount(); r++) {
					Room room = floor.getRoom(r);
					System.out.print(" " + room.getNinzu());
				}
				System.out.println("");
			}

			if (b != this.kousha.size() - 1) {
				System.out.println("####################");
			}
		}
	}

	private void init() {
		this.kousha = new ArrayList<Kousha>();

		kousha.add(new Kousha(1));
		kousha.add(new Kousha(2));
		kousha.add(new Kousha(3));
		kousha.add(new Kousha(4));
	}

	private void movePeople(int b, int f, int r, int v) {
		Kousha kousha = this.kousha.get(b - 1);
		Floor floor = kousha.getFloor(f - 1);
		Room room = floor.getRoom(r - 1);

		room.setNinzu(v);
	}

	class Kousha {
		private int num;

		private ArrayList<Floor> floor;

		Kousha(int koushaNo) {
			this.num = koushaNo;

			floor = new ArrayList<Floor>();
			floor.add(new Floor(1));
			floor.add(new Floor(2));
			floor.add(new Floor(3));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getFloorCount() {
			return this.floor.size();
		}

		public Floor getFloor(int floorNo) {
			return floor.get(floorNo);
		}

		public void setFloor(ArrayList<Floor> floor) {
			this.floor = floor;
		}
	}

	class Floor {
		private int num;

		private ArrayList<Room> room;

		Floor(int floorNo) {
			this.num = floorNo;

			room = new ArrayList<Room>();

			room.add(new Room(1));
			room.add(new Room(2));
			room.add(new Room(3));
			room.add(new Room(4));
			room.add(new Room(5));
			room.add(new Room(6));
			room.add(new Room(7));
			room.add(new Room(8));
			room.add(new Room(9));
			room.add(new Room(10));
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public Room getRoom(int roomNo) {
			return room.get(roomNo);
		}

		public void setRoom(ArrayList<Room> room) {
			this.room = room;
		}

		public int getRoomCount() {
			return this.room.size();
		}
	}

	class Room {
		private int num;

		private int ninzu;

		Room(int roomNo) {
			this.num = roomNo;
		}

		public int getNum() {
			return num;
		}

		public void setNum(int num) {
			this.num = num;
		}

		public int getNinzu() {
			return ninzu;
		}

		public void setNinzu(int ninzu) {
			this.ninzu += ninzu;

			if (this.ninzu < 0) {
				this.ninzu = 0;
			}
		}
	}
}