<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def calibrate_plunger( self, top=None, bottom=None, blow_out=None, drop_tip=None):
 """Set calibration values for the pipette plunger. This can be called multiple times as the user sets each value, or you can set them all at once. Parameters top : int Touching but not engaging the plunger. bottom: int Must be above the pipette's physical hard-stop, while still leaving enough room for 'blow_out' blow_out : int Plunger has been pushed down enough to expell all liquids. drop_tip : int This position that causes the tip to be released from the pipette. """

        if top is not None:
            self.plunger_positions['top'] = top
        if bottom is not None:
            self.plunger_positions['bottom'] = bottom
        if blow_out is not None:
            self.plunger_positions['blow_out'] = blow_out
        if drop_tip is not None:
            self.plunger_positions['drop_tip'] = drop_tip

        return self