assert((prior_mode=="nothing"||prior_mode=="initial_guess"||prior_mode=="fix"||prior_mode=="factor")&&"wrong _mode value, it should be: 'nothing', 'initial_guess', 'fix' or 'factor'");
assert((prior_mode=="nothing"||prior_mode=="initial_guess"||prior_mode=="fix"||prior_mode=="factor")&&"wrong _mode value, it should be: 'nothing', 'initial_guess', 'fix' or 'factor'");