product now has golden metaprogamming for self.find_by_x method