variables
  x[31] in (0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0);

function f(x[31])
  return(x(1)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(2)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(3)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(4)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(5)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(6)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(7)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(8)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(9)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(10)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(11)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(12)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(13)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(14)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(15)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(16)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(17)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(18)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(19)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(20)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(21)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(22)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(23)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(24)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(25)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(26)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(27)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(28)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(29)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(30)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)); x(31)*(-1 + x(1)*x(2)*x(3)*x(4)*x(5)*x(6)*x(7)*x(8)*x(9)*x(10)*x(11)*x(12)*x(13)*x(14)*x(15)*x(16)*x(17)*x(18)*x(19)*x(20)*x(21)*x(22)*x(23)*x(24)*x(25)*x(26)*x(27)*x(28)*x(29)*x(30)*x(31)));
end

function v(u[31])
  return(u(1)^2 + u(2)^2 + u(3)^2 + u(4)^2 + u(5)^2 + u(6)^2 + u(7)^2 + u(8)^2 + u(9)^2 + u(10)^2 + u(11)^2 + u(12)^2 + u(13)^2 + u(14)^2 + u(15)^2 + u(16)^2 + u(17)^2 + u(18)^2 + u(19)^2 + u(20)^2 + u(21)^2 + u(22)^2 + u(23)^2 + u(24)^2 + u(25)^2 + u(26)^2 + u(27)^2 + u(28)^2 + u(29)^2 + u(30)^2 + u(31)^2);
end