Added universal hierarchy class factory