Unfortunately, the tree I'm dealing with can take different shapes at run time, based on access rights and another tree that gets blended in.