static void PerformRenumberOnPart(RMGeneratorCollection collection, RMGenPart.eGender gender, RMGenPart.GenPartType partType, ref List <ComparedPath> comparedPaths, string rootPath, string _namespace)
        {
            int       floorPositionValue = Precision.GetPositionFloorOfPart(gender, partType);
            RMGenPart nextLowestGenPart  = collection.Parts.GetPartByInternalPosition(partType, gender, floorPositionValue);

            if (nextLowestGenPart == null)
            {
                nextLowestGenPart = collection.Parts.GetLowestPartByInternalPosition(partType, gender);
                if (nextLowestGenPart == null)
                {
                    return;
                }
                nextLowestGenPart.implicitID = floorPositionValue;
                PerformRenumberOnPartsFile(nextLowestGenPart, ref comparedPaths, rootPath, _namespace);
            }
            RMGenPart prevLowestGenPart;

            while (true)
            {
                prevLowestGenPart = nextLowestGenPart;
                collection.Parts.Remove(nextLowestGenPart);
                nextLowestGenPart = collection.Parts.GetLowestPartByInternalPosition(partType, gender);
                if (nextLowestGenPart == null)
                {
                    break;
                }
                if ((nextLowestGenPart.implicitID - prevLowestGenPart.implicitID) > 1)
                {
                    if (Precision.ShouldSkipPosition(gender, partType, prevLowestGenPart.implicitID + 1))
                    {
                        int nextPosition = Precision.GetNextIntPosition(gender, partType, prevLowestGenPart.implicitID);
                        if (nextPosition == nextLowestGenPart.implicitID)
                        {
                            continue;
                        }
                    }
                    nextLowestGenPart.implicitID = Precision.GetNextIntPosition(gender, partType, prevLowestGenPart.implicitID);
                    PerformRenumberOnPartsFile(nextLowestGenPart, ref comparedPaths, rootPath, _namespace);
                }
            }
        }