* Initial: Variant using trees