-- | /O(min(n,W))/. Delete a key and its value from the map.
-- When the key is not a member of the map, the original map is returned.
delete :: Key -> IntMap a -> IntMap a
delete k (IntMap m) = IntMap (W.delete (i2w k) m)
delete :: Key -> IntMap a -> IntMap a
delete k (IntMap m) = IntMap (W.delete (i2w k) m)
delete k (IntMap m) = IntMap (W.delete (i2w k) m)