add new classes for hierarchy construction (not complete yet)