public void removeRBond(RBond rbond) {
		rBonds.remove(rbond);
		rbond.getAtom1().removeRBond(rbond);
		rbond.getAtom2().removeRBond(rbond);
		if (!aBonds.isEmpty()) {
			ABond abond;
			synchronized (aBonds) {
				for (Iterator it = aBonds.iterator(); it.hasNext();) {
					abond = (ABond) it.next();
					if (abond.contains(rbond.getAtom1(), rbond.getAtom2()))
						it.remove();
				}
			}
		}
		if (!tBonds.isEmpty()) {
			TBond tbond;
			synchronized (tBonds) {
				for (Iterator it = tBonds.iterator(); it.hasNext();) {
					tbond = (TBond) it.next();
					if (tbond.contains(rbond.getAtom1(), rbond.getAtom2()))
						it.remove();
				}
			}
		}
	}