Avoid double adding objects
Fix `distance` condition
Remember layer for `create` behavior