Added tests and Opposite method for ElementType