only add to dom once(ish)