rewrite PlaceAdd & cleanup