public void update(E object, AABB volume) {
		if (traversalCount != 0) {
			throw new ConcurrentModificationException("Index cannot be modified during traversal.");
		}

		Node node = leafMap.get(object);

		if (node == null) {
			return;
		}

		if (node != root) {
			Node parent = node.parent;

			for (int i = 0; i < parent.numEntries; i++) {
				if (parent.entries[i] == node) {
					if (!parent.volumes[i].contains(volume)) {
						break;
					}

					for (int j = 0; j < node.numEntries; j++) {
						if (node.entries[j] == object) {
							node.volumes[j] = volume;
							return;
						}
					}
				}
			}
		}

		remove(object);
		insert(object, volume);
	}