factor method with no bug testing done.