make some problems nonlinear