added untested drop code