added removal handling