Id = $id; $obj->Name = $name; return $obj; } public function WithLength(float $min, float $max): Product { $this->LengthMin = $min; $this->LengthMax = $max; return $this; } public function WithWidth(float $min, float $max): Product { $this->WidthMin = $min; $this->WidthMax = $max; return $this; } public function WithHeight(float $min, float $max): Product { $this->HeightMin = $min; $this->HeightMax = $max; return $this; } public function WithWeight(float $min, float $max): Product { $this->WeightMin = $min; $this->WeightMax = $max; return $this; } public function WithServices(array $services): Product { $this->AvailableServices = $services; return $this; } }