question: private HashMap < Integer , Trie > buildLookupTable ( final Map < Integer , List < Trie > > childTries ) { HashMap < Integer , Trie > lookup = new HashMap < > ( childTries . size ( ) ) ; for ( int id : childTries . keySet ( ) ) { final List < Trie > tries = childTries . get ( id ) ; if ( tries . size ( ) == 1 ) { lookup . put ( id , tries . get ( 0 ) ) ; } else { lookup . put ( id , new SliceAggregatingTrie ( tries ) ) ; } } return lookup ; }
target:  Build a lookup table for children tries. If the list contains only a single child node, a regular trie node is inserted into the table; otherwise a SliceAggregatingTrie node is created that hides this partitioning into multiple packedSlices upstream.