<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def scaled_wulff(self, wulffshape, r):
 """ Scales the Wulff shape with an effective radius r. Note that the resulting Wulff does not neccesarily have the same effective radius as the one provided. The Wulff shape is scaled by its surface energies where first the surface energies are scale by the minimum surface energy and then multiplied by the given effective radius. Args: wulffshape (WulffShape):
 Initial, unscaled WulffShape r (float):
 Arbitrary effective radius of the WulffShape Returns: WulffShape (scaled by r) """


        # get the scaling ratio for the energies
        r_ratio = r/wulffshape.effective_radius
        miller_list = wulffshape.miller_energy_dict.keys()
        # Normalize the magnitude of the facet normal vectors
        # of the Wulff shape by the minimum surface energy.
        se_list = np.array(list(wulffshape.miller_energy_dict.values()))
        # Scale the magnitudes by r_ratio
        scaled_se = se_list * r_ratio

        return WulffShape(wulffshape.lattice, miller_list,
                          scaled_se, symprec=self.symprec)