protected static void removeCompressTag(MediaWiki wiki, String fileFullName) throws MediaWiki.BlockException {
		while (true) {
			try {
				MediaWiki.EditToken editToken = wiki.startEdit(fileFullName);
				// Remove the {{compress}} tag from the description page.
				Iterator<MediaWiki.Revision> descriptionPageRevisions = wiki.getLastRevision(true, fileFullName);
				if (descriptionPageRevisions.hasNext()) {
					MediaWiki.Revision descriptionPageRevision = descriptionPageRevisions.next();
					if (descriptionPageRevision == null)
						throw new MediaWiki.MissingPageException(fileFullName);
					String oldText = descriptionPageRevision.getContent(), newText = compressTagRemover.matcher(oldText).replaceAll("");
					if (!oldText.equals(newText)) {
						wiki.replacePage(editToken, newText, "-Template:Compression", true /*- bot */, true /*- minor */);
						log.log(Level.INFO, "Successfully edited {0}", fileFullName);
					}
				}
				break;
			} catch (final MediaWiki.ActionDelayException e) {
				log.log(Level.WARNING, "Edition of " + fileFullName + " delayed", e);
				shortDelay();
				// retry later
			} catch (final MediaWiki.ConflictException shouldNotHappen) {
				log.log(Level.WARNING, "Received a conflict while editing " + fileFullName + "; retrying", shouldNotHappen);
				// retry immediately
			} catch (final MediaWiki.BlockException e) {
				// fatal
				throw e;
			} catch (final IOException ioe) {
				log.log(Level.WARNING, "Network error occurred while editing " + fileFullName + "; retrying shortly", ioe);
				shortDelay();
				// retry later
			} catch (final MediaWiki.MediaWikiException mwe) {
				log.log(Level.WARNING, "Edition of " + fileFullName + " failed", mwe);
				break;
			}
		}
	}