<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _calculate_ms_from_base(self, size):
 """Calculates the rotated minimum size from the given base minimum size."""

        hw = size.x * 0.5
        hh = size.y * 0.5

        a = datatypes.Point(hw, hh).get_rotated(self.angle)
        b = datatypes.Point(-hw, hh).get_rotated(self.angle)
        c = datatypes.Point(hw, -hh).get_rotated(self.angle)
        d = datatypes.Point(-hw, -hh).get_rotated(self.angle)

        minp = a.get_minimum(b).get_minimum(c).get_minimum(d)
        maxp = a.get_maximum(b).get_maximum(c).get_maximum(d)
        return maxp - minp