factoring fixes epsilon issue