 			 	 	10000, 1e-2, 1e6));*/
 
 	
-/*        printf("Maximum: %lf\n", find_min_using_approximate_derivatives(cg_search_strategy(),
+/*        printf("Maximum: %lf\n", find_min_using_approximate_derivatives(newton_search_strategy(),
                                                gradient_norm_stop_strategy(1e-7).be_verbose(),
                                                eval, guess, -1e30));*/
 

Second real run 3052 max
Outer iteration 5635
FORCED ACCEPT: x: 1, y: 8 - 1.981631 at 2.325389 : 2212167168.000000
*/
	if (!mask) return 0;
	double val2 = /*val.x * val.x + val.y * val.y*/ val.x;
	double term = 0;
	const double lim = 1e-10;
	if (val2 <= lim)
	{
		term += (val2 - lim) * factor;
		val2 = lim;
	}
	//term -= log(val2) * count - val2;
	term -= (val2 - count) * (val2 - count);	
	term -= fabs(val.y) * 1;

