modified rule 30 to run as unit test