use equals? instead of == for identity comparison