finished polymorphic likes setup