Bug 323489 [KeyBindings] Reduce memory footprint of BindingManager
bundles/org.eclipse.jface/src/org/eclipse/jface/bindings/BindingManager.java
*/
	private final Map createContextTreeFor(final Set contextIds) {
		final Map contextTree = new HashMap();
		final Iterator contextIdItr = contextIds.iterator();
		while (contextIdItr.hasNext()) {
			String childContextId = (String) contextIdItr.next();
			while (childContextId != null) {
				
				if (contextTree.containsKey(childContextId)) {
					break;
				}
				
				final Context childContext = contextManager
						.getContext(childContextId);
				
				try {
					final String parentContextId = childContext.getParentId();
					contextTree.put(childContextId, parentContextId);
					childContextId = parentContextId;
				} catch (final NotDefinedException e) {
					break; 
				}
			}
		}
		return contextTree;
	}
	/**
	 * <p>
	 * Creates a tree of context identifiers, representing the hierarchical
	 * structure of the given contexts. The tree is structured as a mapping from