new upstream eigen