public static void paint(Clock clock) {
		while (toRemove.size() > 0) {
			updaters.remove(toRemove.remove(0));
		}
		for (int i = 0; i < updaters.size(); i++) {
			Updater updater = updaters.get(i);
			if (toRemove.contains(updater)) continue;
			if (!updater.update(clock)) {
				updaters.remove(i--);
				if (updater.tag != null) {
					HashMap<String,Updater> map = uniqueMap.get(updater.tag);
					if (map.get(updater.type) == updater) {
						map.remove(updater.type);
					}
				}
				for (Runnable callback : updater.callbacks) {
					PlayN.platform().invokeLater(callback);
				}
			}
		}
	}