updated ecm usage and added traits to compile unittests