function [Est,f] = MDE_Timevarying_main_boot3(iNUM_YEARS,m2htk,m3htk,m4htk,Ihtk,init_points,Contraction_index,NumObs,x1st)  

VV=[log(x1st(1)^2+(x1st(3)^2)*(x1st(1)^(-1))) log(x1st(2)^2+(x1st(4)^2)*(x1st(2)^(-1)))...
    log(x1st(6)^2+(x1st(7)^2)*(x1st(6)^(-1))) ...
    log(x1st(8)^2+(x1st(9)^2)*(x1st(8)^(-1)))];



XG=zeros(27,6);
options = optimset('Display','off','TolX',1e-7,'TolFun',1e-7,'MaxFunEvals',10000,'MaxIter',3000);

parfor  s=1:27
            X0=init_points(s,:);
            
            UB=[log(exp(VV)+1)    0.05];
            LB=[VV        -0.05];
           
[params,Fval] = fmincon(@(xx)  MDE_Timevarying_HigherOrderMom_boot3(xx,iNUM_YEARS,m2htk,m3htk,m4htk,Ihtk,Contraction_index,NumObs,x1st),X0,[],[],[],[],LB,UB,@(xx)confuneq2(xx,x1st),options);
            
    
     XG(s,:)=[exp(params(1:end-1)), params(end),Fval];
end 

 XX=sortrows(XG,6);
 
 Est=XX(1,1:end-1)';
 f=XX(1,end);

