stop copying so much in eval alg