implementing ManyToMany