removed std::make_shared. doesn't work with eigen aliged operator new on 32 bit systems!