better read from tree