public void renegotiateParent() { 
		if (associatedBlocks.size() > 1) {
			// Second row, first block
			GarbageBlock newParent = associatedBlocks.get(1).get(0);
			newParent.parentBlock = null;
			newParent.associatedBlocks = new Vector<Vector<GarbageBlock>>();
			// The new parent will not actually be associated with the blocks under it.
			for (Vector<GarbageBlock> row : associatedBlocks) {
				if (row != associatedBlocks.firstElement()) {
					Vector<GarbageBlock> tempRow = new Vector<GarbageBlock>();
					for (GarbageBlock b : row) {
						if (b != newParent) {
							b.setActive(true);
							tempRow.add(b);
						}
					}
					newParent.associatedBlocks.add(tempRow);
				}
			}
			
			for (Vector<GarbageBlock> row : newParent.associatedBlocks) {
				for (GarbageBlock b : row) {
					b.parentBlock = newParent;
				}
			}
			
			newParent.setHit(false);
			newParent.setActive(true);
			newParent.setFalling(false);
			//newParent.printBlocks();
		}
	}