private void addNewSymbols() {
		addSymbol(new Operator("+", 20, true) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return String.valueOf(a + b);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("-", 20, true) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return String.valueOf(b - a);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("*", 30, true) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return String.valueOf(a * b);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("/", 30, true) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return String.valueOf(b / a);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("%", 30, true) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return String.valueOf(b % a);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator(">", 10, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (b > a) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator(">=", 10, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (b >= a) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("<", 10, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (b < a) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("<=", 10, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (b <= a) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("==", 7, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (a == b) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("!=", 7, false) {
			@Override
			public String execute(final Integer a, final Integer b) {
				return (a != b) ? String.valueOf(1) : String.valueOf(0);
			}

			@Override
			public String execute(Integer a) {
				// TODO Auto-generated method stub
				return null;
			}
		});

		addSymbol(new Operator("!", 7, false) {
			@Override
			public String execute(final Integer a) {
				if (a > 0) {
					int result = 1;
					for (int i = 1; i <= a; i++) {
						result *= i;
					}

					return String.valueOf(result);
				}

				return "Factorial must be calculated for unsigned number";
			}

			@Override
			public String execute(Integer a, Integer b) {
				// TODO Auto-generated method stub
				return null;
			}
		});
	}