Try and make idempotent