@Override
	public void emitCode(GluonOutput code) {
		factor.emitCode(code);
		for (int i=0; i<factors.size(); i++) {
			code.code("PUSH EAX");
			factors.get(i).emitCode(code);
			switch (ops.get(i)) {
				case MULTIPLY:
					code.code("POP EBX");
					code.code("IMUL EAX,EBX");
					break;
				case DIVIDE:
					code.code("MOV EBX, EAX");
					code.code("MOV EDX, 0");
					code.code("POP EAX");
					code.code("IDIV EBX");
					break;
			}
		}
	}