implement the equal operator