use thomas's approach; easier to read