obsessive code factoring