Refactored to allow for preliminary IDs to propagate properly!