CP::TreeBranchHelpers::BranchConfig Node1 CP::TreeBranchHelpers ::BranchConfig + nominalOnly + basketSize + nominalAuxId + auxType + auxVecType + parse() + configureTypes() + configureSystematics() Node2 std::string     Node2->Node1 +auxName +branchDecl +branchName +metTermName +sgName +typeName Node7 CP::SystematicVariation   + testInvariant() + SystematicVariation() + SystematicVariation() + SystematicVariation() + SystematicVariation() + SystematicVariation() + SystematicVariation() + empty() + name() + basename() and 9 more... + makeToyVariation() + makeToyEnsemble() + makeContinuousEnsemble() + makeContinuous() Node2->Node7 -m_name Node8 CxxUtils::CachedValue < std::string >   + operator=() + set() + isValid() + ptr() + store() + reset() Node2->Node8 -ATLAS_THREAD_SAFE Node3 std::basic_string< Char >     Node3->Node2 Node4 SG::IAuxTypeVectorFactory   + ~IAuxTypeVectorFactory() + create() + createFromData() + copy() + copy() + copyForOutput() + swap() + clear() + getEltSize() + tiVec() + isDynamic() + tiAlloc() + tiAllocName() Node4->Node1 +auxFactory Node5 CP::SystematicSet   + SystematicSet() + SystematicSet() + SystematicSet() + SystematicSet() + SystematicSet() + begin() + end() + find() + empty() + size() and 12 more... + filterForAffectingSystematics() - joinNames() - computeHash() Node5->Node1 +auxNameFilterSys +branchNameFilterSys +sgNameFilterSys Node6 std::set< CP::Systematic Variation >     Node6->Node5 -m_sysVariations Node7->Node6 +keys Node8->Node5 -m_joinedName Node9 std::atomic< CacheState > + ptr   Node9->Node8 -m_cacheValid Node10 CxxUtils::CachedValue < std::size_t > - ATLAS_THREAD_SAFE + operator=() + set() + isValid() + ptr() + store() + reset() Node9->Node10 -m_cacheValid Node10->Node5 -m_hash