@Override public RSTNode update( int x, int y, int sizePower, long time, MessageSet messages, UpdateContext updateContext ) {
		int relevantMessageCount = 0;
		int size = 1<<sizePower;
		for( Message m : messages ) {
			boolean relevance =
				BitAddressUtil.rangesIntersect(this, m) &&
				m.targetShape.rectIntersection( x, y, size, size ) != RectIntersector.INCLUDES_NONE;
			relevantMessageCount += relevance ? 1 : 0;
		}
		if( relevantMessageCount == 0 ) {
			if( time < nextAutoUpdateTime ) {
				return this;
			}
			messages = MessageSet.EMPTY;
		}
		// TODO: if relevantMessageCount < messages.length, could filter, here.
		
		return _update( x, y, sizePower, time, messages, updateContext );
	}