void setTapePointer(int n) {
		super.setTapePointer(n);
		bonds.getBondQueue().setPointer(n);
		if (type instanceof Reaction.A2_B2__2AB) {
			Reaction.A2_B2__2AB r = (Reaction.A2_B2__2AB) type;
			r.moleFractionA2().setPointer(n);
			r.moleFractionB2().setPointer(n);
			r.moleFractionAB().setPointer(n);
			r.numberOfA2().setPointer(n);
			r.numberOfB2().setPointer(n);
			r.numberOfAB().setPointer(n);
		}
		else if (type instanceof Reaction.A2_B2_C__2AB_C) {
			Reaction.A2_B2_C__2AB_C r = (Reaction.A2_B2_C__2AB_C) type;
			r.moleFractionA2().setPointer(n);
			r.moleFractionB2().setPointer(n);
			r.moleFractionAB().setPointer(n);
			r.numberOfA2().setPointer(n);
			r.numberOfB2().setPointer(n);
			r.numberOfAB().setPointer(n);
			r.numberOfC().setPointer(n);
		}
		else if (type instanceof Reaction.O2_2H2__2H2O) {
			Reaction.O2_2H2__2H2O r = (Reaction.O2_2H2__2H2O) type;
			r.moleFractionH2().setPointer(n);
			r.moleFractionO2().setPointer(n);
			r.moleFractionH2O().setPointer(n);
			r.numberOfH2().setPointer(n);
			r.numberOfO2().setPointer(n);
			r.numberOfH2O().setPointer(n);
		}
	}