modified DE.cpp