allow passing in initialTree