before refactor root to taproot

新建一个superclass