update drop logic