-O2 to -O3
import Eigen for future usage
switch to Eigen-based vector