diff --git a/CHANGELOG.md b/CHANGELOG.md index 302b083e1..d8c11c919 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,7 @@ - added support for all enemy variants from The Golden Mask in the base game levels and vice-versa - changed all enemy types (except eels) to have the ability to drop items - removed restrictions on enemy combinations when the dragon is present - - removed skidoo driver and monk limits + - removed bird monster, skidoo driver and monk limits - improved textures and ladder face rotation in wireframe mode (#852) - fixed a crash at the end of Diving Area in TR2R (#814) - fixed a potential key softlock in City of Khamoon if "large" range is selected and either return paths are disabled in classic, or playing remastered (#820) @@ -29,6 +29,7 @@ - fixed an uncollectible secret in Natla's Mines (#849) - fixed models all using the same highlight colour in wireframe mode (#852) - fixed the Temple of Xian Dragon Seal room (default placement) sometimes being flipped on arrival, leading to potential softlocks (OG bug) +- removed support for the dragon (TR2 Remastered only) in all levels except Dragon's Lair (may revisit) ## [V1.10.2](https://github.com/LostArtefacts/TR-Rando/compare/V1.10.1...V1.10.2) - 2024-12-06 - added support for TR1X 4.6 (#796) diff --git a/Resources/Documentation/RETURNPATHS.md b/Resources/Documentation/RETURNPATHS.md index f89c769cf..63f4d8908 100644 --- a/Resources/Documentation/RETURNPATHS.md +++ b/Resources/Documentation/RETURNPATHS.md @@ -49,9 +49,9 @@ Following are details on the return paths that are available. See `Global Settin | Dragon's Lair | Slopes adjusted in room 2 to allow exiting the main arena. | | Home Sweet Home | _Not required_ | | The Cold War | Link room added between rooms 37 and 64. | -| Fool's Gold | _Not required_ | +| Fool's Gold | Door 143 will remain open after Lara goes through it. | | Furnace of the Gods | Ladder added to room 8 for room 25; drawbridge added in room 42. | -| Kingdom | _Not required_ | +| Kingdom | Doors 6 and 22 will be guaranteed to be open on arrival in room 66. | | Nightmare in Vegas | _Not required_ | ## TR3 diff --git a/TRDataControl/Data/Remastered/TR2RDataCache.cs b/TRDataControl/Data/Remastered/TR2RDataCache.cs index a7b24faec..31ad7c376 100644 --- a/TRDataControl/Data/Remastered/TR2RDataCache.cs +++ b/TRDataControl/Data/Remastered/TR2RDataCache.cs @@ -75,7 +75,7 @@ protected override Dictionary GetMapDependencies(TR2Type key [TR2Type.Eagle] = TR2LevelNames.TIBET, [TR2Type.Mercenary2OG] = TR2LevelNames.TIBET, - [TR2Type.Mercenary3] = TR2LevelNames.TIBET, + [TR2Type.Mercenary3OG] = TR2LevelNames.TIBET, [TR2Type.MercSnowmobDriverOG] = TR2LevelNames.TIBET, [TR2Type.BlackSnowmobOG] = TR2LevelNames.TIBET, [TR2Type.RedSnowmobile] = TR2LevelNames.TIBET, diff --git a/TRDataControl/Environment/Model/Types/Triggers/EMMergeTriggersFunction.cs b/TRDataControl/Environment/Model/Types/Triggers/EMMergeTriggersFunction.cs index 86ab9f705..a46df9585 100644 --- a/TRDataControl/Environment/Model/Types/Triggers/EMMergeTriggersFunction.cs +++ b/TRDataControl/Environment/Model/Types/Triggers/EMMergeTriggersFunction.cs @@ -6,63 +6,70 @@ public class EMMergeTriggersFunction : BaseEMFunction { public EMLocation BaseLocation { get; set; } public EMLocation TargetLocation { get; set; } + public List TargetLocations { get; set; } public override void ApplyToLevel(TR1Level level) { - EMLevelData data = GetData(level); - MergeTriggers(level.GetRoomSector(data.ConvertLocation(BaseLocation)), - level.GetRoomSector(data.ConvertLocation(TargetLocation)), - level.FloorData); + var data = GetData(level); + MergeTriggers(level.FloorData, loc => level.GetRoomSector(data.ConvertLocation(loc))); } public override void ApplyToLevel(TR2Level level) { - EMLevelData data = GetData(level); - MergeTriggers(level.GetRoomSector(data.ConvertLocation(BaseLocation)), - level.GetRoomSector(data.ConvertLocation(TargetLocation)), - level.FloorData); + var data = GetData(level); + MergeTriggers(level.FloorData, loc => level.GetRoomSector(data.ConvertLocation(loc))); } public override void ApplyToLevel(TR3Level level) { - EMLevelData data = GetData(level); - MergeTriggers(level.GetRoomSector(data.ConvertLocation(BaseLocation)), - level.GetRoomSector(data.ConvertLocation(TargetLocation)), - level.FloorData); + var data = GetData(level); + MergeTriggers(level.FloorData, loc => level.GetRoomSector(data.ConvertLocation(loc))); } - private static void MergeTriggers(TRRoomSector baseSector, TRRoomSector targetSector, FDControl floorData) + private void MergeTriggers(FDControl floorData, Func getSector) { - FDEntry baseEntry; + var baseSector = getSector(BaseLocation); if (baseSector.FDIndex == 0 - || baseSector == targetSector - || (baseEntry = floorData[baseSector.FDIndex].Find(e => e is FDTriggerEntry)) == null) + || floorData[baseSector.FDIndex].OfType().FirstOrDefault() is not FDTriggerEntry baseTrigger) { return; } - if (targetSector.FDIndex == 0) + var targets = new List(); + if (TargetLocations != null) { - floorData.CreateFloorData(targetSector); + targets.AddRange(TargetLocations); } - - FDEntry targetEntry = floorData[targetSector.FDIndex].Find(e => e is FDTriggerEntry); - if (targetEntry == null) + if (TargetLocation != null) { - floorData[targetSector.FDIndex].Add(baseEntry); + targets.Add(TargetLocation); // Legacy } - else + + foreach (var location in targets) { - FDTriggerEntry baseTrigger = baseEntry as FDTriggerEntry; - FDTriggerEntry targetTrigger = targetEntry as FDTriggerEntry; + var targetSector = getSector(location); + if (baseSector == targetSector) + { + continue; + } - targetTrigger.Actions.AddRange(baseTrigger.Actions); - if (baseTrigger.OneShot) + if (targetSector.FDIndex == 0) + { + floorData.CreateFloorData(targetSector); + } + + if (floorData[targetSector.FDIndex]. + OfType().FirstOrDefault() is not FDTriggerEntry targetTrigger) + { + floorData[targetSector.FDIndex].Add(baseTrigger); + } + else { - targetTrigger.OneShot = true; + targetTrigger.Actions.AddRange(baseTrigger.Actions); + targetTrigger.OneShot |= baseTrigger.OneShot; } } - floorData[baseSector.FDIndex].Remove(baseEntry); + floorData[baseSector.FDIndex].Remove(baseTrigger); } } diff --git a/TRDataControlTests/Environment/Triggers/MergeTests.cs b/TRDataControlTests/Environment/Triggers/MergeTests.cs new file mode 100644 index 000000000..6383db815 --- /dev/null +++ b/TRDataControlTests/Environment/Triggers/MergeTests.cs @@ -0,0 +1,47 @@ +using TRDataControl.Environment; +using TRLevelControl.Model; +using TRLevelControlTests; + +namespace TRDataControlTests.Environment.Triggers; + +[TestClass] +public class MergeTests : TestBase +{ + [TestMethod] + public void TestMerge() + { + var level = GetTR1TestLevel(); + var baseLoc = new EMLocation + { + X = 15872, + Z = 20992, + Room = 7, + }; + var targetLoc = new EMLocation + { + X = 5632, + Z = 20992, + }; + + var sectorA = level.GetRoomSector(baseLoc); + var triggerA = level.FloorData[sectorA.FDIndex].OfType().FirstOrDefault(); + Assert.IsTrue(triggerA.OneShot); + Assert.HasCount(1, triggerA.Actions.Where(a => a.Parameter == 13)); + + var sectorB = level.GetRoomSector(targetLoc); + var triggerB = level.FloorData[sectorB.FDIndex].OfType().FirstOrDefault(); + Assert.IsFalse(triggerB.OneShot); + Assert.HasCount(0, triggerB.Actions.Where(a => a.Parameter == 13)); + + new EMMergeTriggersFunction + { + BaseLocation = baseLoc, + TargetLocation = targetLoc, + }.ApplyToLevel(level); + + Assert.IsTrue(triggerB.OneShot); + Assert.HasCount(1, triggerB.Actions.Where(a => a.Parameter == 13)); + + Assert.HasCount(0, level.FloorData[sectorA.FDIndex].OfType()); + } +} diff --git a/TRLevelControl/Helpers/TR2TypeUtilities.cs b/TRLevelControl/Helpers/TR2TypeUtilities.cs index 74520a899..560336c0e 100644 --- a/TRLevelControl/Helpers/TR2TypeUtilities.cs +++ b/TRLevelControl/Helpers/TR2TypeUtilities.cs @@ -717,32 +717,23 @@ public static bool IsWaterCreature(TR2Type type) || type == TR2Type.BarracudaXian || type == TR2Type.ScubaDiver; } - public static List WaterCreatures() + public static List KillableWaterCreatures(bool remastered) { - return new() + var types = new List { TR2Type.SharkOG, - TR2Type.SharkGM, TR2Type.BarracudaIce, TR2Type.BarracudaUnwater, TR2Type.BarracudaXian, - TR2Type.YellowMorayEel, - TR2Type.BlackMorayEel, TR2Type.ScubaDiver }; - } - public static List KillableWaterCreatures() - { - return new() + if (!remastered) { - TR2Type.SharkOG, - TR2Type.SharkGM, - TR2Type.BarracudaIce, - TR2Type.BarracudaUnwater, - TR2Type.BarracudaXian, - TR2Type.ScubaDiver - }; + types.Add(TR2Type.SharkGM); + } + + return types; } public static bool IsStaticCreature(TR2Type type) diff --git a/TRRandomizerCore/Randomizers/TR2/Classic/TR2EnemyRandomizer.cs b/TRRandomizerCore/Randomizers/TR2/Classic/TR2EnemyRandomizer.cs index ffcf0eaf0..b0edef81e 100644 --- a/TRRandomizerCore/Randomizers/TR2/Classic/TR2EnemyRandomizer.cs +++ b/TRRandomizerCore/Randomizers/TR2/Classic/TR2EnemyRandomizer.cs @@ -349,88 +349,71 @@ private void CloneEnemies(TR2CombinedLevel level) private void AddUnarmedItems(TR2CombinedLevel level) { - if (!level.Script.RemovesWeapons || !Settings.GiveUnarmedItems) + if (!level.Script.RemovesWeapons || !Settings.CrossLevelEnemies || !Settings.GiveUnarmedItems) { return; } - TR2Entity weapon = level.Data.Entities.Find(e => - (e.TypeID == TR2Type.Pistols_S_P || TR2TypeUtilities.IsGunType(e.TypeID)) + var weaponTypes = TR2TypeUtilities.GetGunTypes(); + var weaponItem = level.Data.Entities.Find(e => + weaponTypes.Contains(e.TypeID) && _pistolLocations[level.Name].Any(l => l.IsEquivalent(e.GetLocation()))); - if (weapon == null) + + if (weaponItem == null) { return; } if (level.Is(TR2LevelNames.HOME) && Settings.RandomizeItems && Settings.RandoItemDifficulty == ItemDifficulty.OneLimit) { - weapon.TypeID = TR2Type.Pistols_S_P; + weaponItem.TypeID = TR2Type.Pistols_S_P; return; } - List replacementWeapons = TR2TypeUtilities.GetGunTypes(); - replacementWeapons.Add(TR2Type.Pistols_S_P); - TR2Type weaponType = replacementWeapons[_generator.Next(0, replacementWeapons.Count)]; - weapon.TypeID = weaponType; + weaponItem.TypeID = weaponTypes.RandomItem(_generator); - void AddItem(TR2Type type) - { - if (ItemFactory.CanCreateItem(level.Name, level.Data.Entities)) + var difficulty = TR2EnemyUtilities.GetEnemyDifficulty(level.GetEnemyEntities()); + if (difficulty > EnemyDifficulty.Easy + || weaponItem.TypeID == TR2Type.Harpoon_S_P + || weaponItem.TypeID == TR2Type.GrenadeLauncher_S_P + || _generator.NextDouble() < _easyPistolChance) + { + if (!level.Data.Entities.Any(e => e.TypeID == TR2Type.Pistols_S_P)) { - TR2Entity item = ItemFactory.CreateItem(level.Name, level.Data.Entities, weapon.GetLocation()); - item.TypeID = type; + var item = ItemFactory.CreateItem(level.Name, level.Data.Entities, + weaponItem.GetLocation(), allowLimitBreak: true); + item.TypeID = TR2Type.Pistols_S_P; } } - uint ammoCount = _unarmedAmmoCounts[weaponType]; - if (Settings.CrossLevelEnemies) + if (difficulty == EnemyDifficulty.Medium || difficulty == EnemyDifficulty.Hard) { - // Create a score based on the number and difficulty of triggered enemies. - List enemies = level.Data.Entities.FindAll(e => TR2TypeUtilities.IsEnemyType(e.TypeID)); - enemies.RemoveAll(e => !level.Data.FloorData.GetEntityTriggers(level.Data.Entities.IndexOf(e)).Any()); - if (level.Is(TR2LevelNames.HOME)) - { - enemies.Add(new() { TypeID = TR2Type.ShotgunGoon }); - } - - EnemyDifficulty difficulty = TR2EnemyUtilities.GetEnemyDifficulty(level.GetEnemyEntities()); - ammoCount *= (uint)difficulty; - - if (difficulty > EnemyDifficulty.Easy - || weaponType == TR2Type.Harpoon_S_P - || (weaponType == TR2Type.GrenadeLauncher_S_P && (level.Is(TR2LevelNames.CHICKEN) || level.Is(TR2LevelNames.HOME))) - || _generator.NextDouble() < _easyPistolChance) - { - AddItem(TR2Type.Pistols_S_P); - } - - if (difficulty == EnemyDifficulty.Medium || difficulty == EnemyDifficulty.Hard) - { - AddItem(TR2Type.SmallMed_S_P); - } - if (difficulty > EnemyDifficulty.Medium) - { - AddItem(TR2Type.LargeMed_S_P); - } - if (difficulty == EnemyDifficulty.VeryHard) - { - AddItem(TR2Type.LargeMed_S_P); - } + level.Script.AddStartInventoryItem(TR2Type.SmallMed_S_P); } - else if (level.Is(TR2LevelNames.LAIR)) + if (difficulty > EnemyDifficulty.Medium) { - ammoCount *= 6; + level.Script.AddStartInventoryItem(TR2Type.LargeMed_S_P); + } + if (difficulty == EnemyDifficulty.VeryHard) + { + level.Script.AddStartInventoryItem(TR2Type.LargeMed_S_P, 2); } + var ammoCount = _unarmedAmmoCounts[weaponItem.TypeID]; + ammoCount *= (uint)difficulty; if (ammoCount == 0) { return; } + + if (level.Is(TR2LevelNames.LAIR)) + { + ammoCount *= 6; + } - TR2Type ammoType = TR2TypeUtilities.GetWeaponAmmo(weaponType); + var ammoType = TR2TypeUtilities.GetWeaponAmmo(weaponItem.TypeID); if (level.Is(TR2LevelNames.HOME)) { - // Just convert every ammo pickup to match the gun, no need for script extras level.Data.Entities.FindAll(e => TR2TypeUtilities.IsAmmoType(e.TypeID)) .ForEach(e => e.TypeID = ammoType); } diff --git a/TRRandomizerCore/Randomizers/TR2/Remastered/TR2REnemyRandomizer.cs b/TRRandomizerCore/Randomizers/TR2/Remastered/TR2REnemyRandomizer.cs index d39abdbf5..b294f323e 100644 --- a/TRRandomizerCore/Randomizers/TR2/Remastered/TR2REnemyRandomizer.cs +++ b/TRRandomizerCore/Randomizers/TR2/Remastered/TR2REnemyRandomizer.cs @@ -13,16 +13,10 @@ namespace TRRandomizerCore.Randomizers; public class TR2REnemyRandomizer : BaseTR2RRandomizer { - private static readonly List _dragonLevels = new() - { - TR2LevelNames.GW, - TR2LevelNames.DORIA, - TR2LevelNames.DECK, - TR2LevelNames.TIBET, - TR2LevelNames.COT, - TR2LevelNames.CHICKEN, + private static readonly List _dragonLevels = + [ TR2LevelNames.XIAN, - }; + ]; private const int _hshShellCount = 16; private static readonly List _hshShellLocations = new() diff --git a/TRRandomizerCore/Randomizers/TR2/Shared/TR2EnemyAllocator.cs b/TRRandomizerCore/Randomizers/TR2/Shared/TR2EnemyAllocator.cs index 93eddbe00..0a2caa4bf 100644 --- a/TRRandomizerCore/Randomizers/TR2/Shared/TR2EnemyAllocator.cs +++ b/TRRandomizerCore/Randomizers/TR2/Shared/TR2EnemyAllocator.cs @@ -71,7 +71,7 @@ public EnemyTransportCollection SelectCrossLevelEnemies(string levelNam if (TR2EnemyUtilities.IsWaterEnemyRequired(level)) { - List waterEnemies = TR2TypeUtilities.KillableWaterCreatures(); + List waterEnemies = TR2TypeUtilities.KillableWaterCreatures(Settings.IsRemastered); newTypes.Add(SelectRequiredEnemy(waterEnemies, levelName, difficulty)); } @@ -147,23 +147,6 @@ public EnemyTransportCollection SelectCrossLevelEnemies(string levelNam testedTypes.Add(type); - // Check if the use of this enemy triggers an overwrite of the pool, for example - // the dragon in HSH. Null means nothing special has been defined. - var restrictedCombinations = TR2EnemyUtilities.GetPermittedCombinations(levelName, type, difficulty, Settings.IsRemastered); - if (restrictedCombinations != null) - { - do - { - // Pick a combination, ensuring we honour docile bird monsters if present, - // and try to select a group that doesn't contain an excluded enemy. - newTypes.Clear(); - newTypes.AddRange(restrictedCombinations[Generator.Next(0, restrictedCombinations.Count)]); - } - while (Settings.DocileChickens && newTypes.Any(TR2TypeUtilities.IsBirdMonsterType) && chickenGuisers.All(g => newTypes.Contains(g)) - || (newTypes.Any(_excludedEnemies.Contains) && restrictedCombinations.Any(c => !c.Any(_excludedEnemies.Contains)))); - break; - } - // If it's the chicken in HSH with default behaviour, we don't want it ending the level if (Settings.DefaultChickens && TR2TypeUtilities.IsBirdMonsterType(type) && levelName == TR2LevelNames.HOME && allEnemies.Except(newTypes).Count() > 1) diff --git a/TRRandomizerCore/Resources/TR2/Environment/LEVEL1.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/LEVEL1.TR2-Environment.json index 3a66b8d87..d08584374 100644 --- a/TRRandomizerCore/Resources/TR2/Environment/LEVEL1.TR2-Environment.json +++ b/TRRandomizerCore/Resources/TR2/Environment/LEVEL1.TR2-Environment.json @@ -447,6 +447,31 @@ } ] }, + { + "Condition": { + "Comments": "If item #155 is not in its default position, make its pickup trigger a normal one.", + "ConditionType": 0, + "EntityIndex": 155, + "X": 22016, + "Y": -4096, + "Z": 16896, + "Room": 81 + }, + "OnFalse": [ + { + "EMType": 69, + "Locations": [ + { + "X": 22016, + "Y": -4096, + "Z": 16896, + "Room": 81 + } + ], + "TrigType": 0 + } + ] + }, { "Condition": { "Comments": "If item #154 is not in its default position, add something else for the flipmap trigger.", diff --git a/TRRandomizerCore/Resources/TR2/Environment/LEVEL2.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/LEVEL2.TR2-Environment.json index 59df5192d..4b2632ed5 100644 --- a/TRRandomizerCore/Resources/TR2/Environment/LEVEL2.TR2-Environment.json +++ b/TRRandomizerCore/Resources/TR2/Environment/LEVEL2.TR2-Environment.json @@ -64,6 +64,21 @@ 35 ], "IsSkyboxVisible": true + }, + { + "Comments": "Keep door 143 open once Lara gets through.", + "EMType": 68, + "Location": { + "X": 44544, + "Y": 1024, + "Z": 40448, + "Room": 69 + }, + "Actions": [ + { + "Parameter": 143 + } + ] } ], "Any": [], diff --git a/TRRandomizerCore/Resources/TR2/Environment/LEVEL3.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/LEVEL3.TR2-Environment.json index dcdeec1ec..252f1eee8 100644 --- a/TRRandomizerCore/Resources/TR2/Environment/LEVEL3.TR2-Environment.json +++ b/TRRandomizerCore/Resources/TR2/Environment/LEVEL3.TR2-Environment.json @@ -18,6 +18,18 @@ "Z": 39424 } }, + { + "Comments": "Remove a stale pickup trigger under item 57, it's triggered elsewhere.", + "EMType": 62, + "Locations": [ + { + "X": 51712, + "Y": -4736, + "Z": 8704, + "Room": 19 + } + ] + }, { "Comments": "Add a ladder as a return path from room 8.", "EMType": 26, diff --git a/TRRandomizerCore/Resources/TR2/Environment/LEVEL4.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/LEVEL4.TR2-Environment.json index 668550544..ea2ca1d9b 100644 --- a/TRRandomizerCore/Resources/TR2/Environment/LEVEL4.TR2-Environment.json +++ b/TRRandomizerCore/Resources/TR2/Environment/LEVEL4.TR2-Environment.json @@ -1,5 +1,46 @@ { - "All": [], + "All": [ + { + "Comments": "Guarantee the return path gate will open regardless of item rando.", + "EMType": 67, + "BaseLocation": { + "X": 46592, + "Y": 3072, + "Z": 36352, + "Room": 66 + }, + "NewLocation": { + "X": 48640, + "Y": 4480, + "Z": 38400, + "Room": 66 + } + }, + { + "EMType": 69, + "Location": { + "X": 48640, + "Y": 4480, + "Z": 38400, + "Room": 66 + }, + "TrigType": 0 + }, + { + "EMType": 68, + "Location": { + "X": 48640, + "Y": 4480, + "Z": 38400, + "Room": 66 + }, + "Actions": [ + { + "Parameter": 6 + } + ] + } + ], "Any": [], "AllWithin": [], "OneOf": [], @@ -561,6 +602,23 @@ } ], "TrigType": 0 + }, + { + "EMType": 63, + "Locations": [ + { + "X": 65024, + "Y": 1024, + "Z": 71168, + "Room": 45 + } + ], + "BaseLocation": { + "X": 65024, + "Y": 1024, + "Z": 72192, + "Room": 45 + } } ] }, diff --git a/TRRandomizerCore/Resources/TR2/Environment/LEVEL5.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/LEVEL5.TR2-Environment.json index 6c158b1a9..e727106aa 100644 --- a/TRRandomizerCore/Resources/TR2/Environment/LEVEL5.TR2-Environment.json +++ b/TRRandomizerCore/Resources/TR2/Environment/LEVEL5.TR2-Environment.json @@ -48,8 +48,7 @@ "Mask": 31, "Actions": [ { - "Action": 4, - "Parameter": 1 + "Action": 5 } ] } @@ -70,22 +69,130 @@ "Mask": 31, "Actions": [ { - "Action": 4, - "Parameter": 1 + "Action": 5 } ] } }, + { + "EMType": 62, + "Locations": [ + { + "X": 48640, + "Y": 12032, + "Z": 64000, + "Room": 72 + }, + { + "X": 49664, + "Y": 12032, + "Z": 64000, + "Room": 72 + } + ] + }, { "EMType": 61, "ExpandedLocations": { "Location": { - "X": 47616, - "Y": 11648, + "X": 46592, + "Y": 12032, "Z": 64000, "Room": 72 }, - "ExpandX": 4, + "ExpandX": 6, + "ExpandZ": 1 + }, + "Trigger": { + "Mask": 31, + "Actions": [ + { + "Action": 4 + } + ] + } + }, + { + "EMType": 62, + "Locations": [ + { + "X": 48640, + "Y": 12288, + "Z": 45568, + "Room": 36 + }, + { + "X": 49664, + "Y": 12288, + "Z": 45568, + "Room": 36 + }, + { + "X": 48640, + "Y": 12288, + "Z": 44544, + "Room": 38 + }, + { + "X": 49664, + "Y": 12288, + "Z": 44544, + "Room": 38 + } + ] + }, + { + "EMType": 61, + "Locations": [ + { + "X": 48640, + "Y": 12288, + "Z": 45568, + "Room": 36 + }, + { + "X": 49664, + "Y": 12288, + "Z": 45568, + "Room": 36 + } + ], + "Trigger": { + "OneShot": true, + "Mask": 31, + "Actions": [ + { + "Action": 8, + "Parameter": 58 + } + ] + } + }, + { + "EMType": 71, + "Locations": [ + { + "X": 50688, + "Y": 12288, + "Z": 46592, + "Room": 36 + } + ], + "ActionItem": { + "Action": 3, + "Parameter": 1 + } + }, + { + "EMType": 61, + "ExpandedLocations": { + "Location": { + "X": 44544, + "Y": 12288, + "Z": 44544, + "Room": 38 + }, + "ExpandX": 10, "ExpandZ": 1 }, "Trigger": { @@ -99,32 +206,143 @@ } }, { - "Comments": "Open the trapdoor at the base of the sculpture without having to go back to the top. Keys may be in here.", - "EMType": 51, - "TypeID": 103, - "Intensity": -1, - "Location": { - "X": 44544, - "Y": 12288, - "Z": 57856, - "Room": 35, - "Angle": 16384 + "EMType": 61, + "ExpandedLocations": { + "Location": { + "X": 44544, + "Y": 12288, + "Z": 43520, + "Room": 38 + }, + "ExpandX": 10, + "ExpandZ": 1 + }, + "Trigger": { + "Mask": 31, + "Actions": [ + { + "Action": 3, + "Parameter": 1 + } + ] } }, { "EMType": 61, - "EntityLocation": -1, + "ExpandedLocations": { + "Location": { + "X": 54784, + "Y": 12032, + "Z": 57856, + "Room": 45 + }, + "ExpandX": 1, + "ExpandZ": 2 + }, + "Trigger": { + "Mask": 31, + "Actions": [ + { + "Action": 5, + "Parameter": 1 + } + ] + } + }, + { + "EMType": 62, + "Locations": [ + { + "X": 44544, + "Y": -5888, + "Z": 64000, + "Room": 44 + }, + { + "X": 45568, + "Y": -5888, + "Z": 64000, + "Room": 44 + } + ] + }, + { + "EMType": 61, + "ExpandedLocations": { + "Location": { + "X": 44544, + "Y": -5888, + "Z": 64000, + "Room": 44 + }, + "ExpandX": 2, + "ExpandZ": 1 + }, + "Trigger": { + "Mask": 31, + "Actions": [ + { + "Action": 5, + "Parameter": 2 + } + ] + } + }, + { + "EMType": 61, + "ExpandedLocations": { + "Location": { + "X": 43520, + "Y": -5760, + "Z": 61952, + "Room": 44 + }, + "ExpandX": 4, + "ExpandZ": 2 + }, + "Trigger": { + "Mask": 31, + "Actions": [ + { + "Action": 3, + "Parameter": 2 + } + ] + } + }, + { + "EMType": 61, + "ExpandedLocations": { + "Location": { + "X": 56832, + "Y": 12032, + "Z": 57856, + "Room": 45 + }, + "ExpandX": 1, + "ExpandZ": 2 + }, "Trigger": { - "TrigType": 2, "Mask": 31, - "Timer": 5, - "SwitchOrKeyRef": -1, "Actions": [ { - "Parameter": 64 + "Action": 4, + "Parameter": 1 } ] } + }, + { + "Comments": "Remove the timer and one-shot flag from the trapdoor at the base of the sculpture. Keys may be in here.", + "EMType": 69, + "Location": { + "X": 45568, + "Y": 9600, + "Z": 57856, + "Room": 35 + }, + "OneShot": false, + "Timer": 0 } ], "Any": [], @@ -252,7 +470,7 @@ }, { "Condition": { - "Comments": "If item #142 is not in its default position, make its pickup trigger a normal one.", + "Comments": "If item #142 is not in its default position, trigger the enemies along with the others in this area.", "ConditionType": 0, "EntityIndex": 142, "X": 48640, @@ -262,22 +480,49 @@ }, "OnFalse": [ { - "EMType": 69, - "Locations": [ + "EMType": 73, + "BaseLocation": { + "X": 48640, + "Y": 12032, + "Z": 83456, + "Room": 74 + }, + "TargetLocations": [ { - "X": 48640, - "Y": 12032, - "Z": 83456, - "Room": 74 + "X": 47616, + "Y": 12800, + "Z": 76288, + "Room": 75 }, { "X": 48640, - "Y": 12032, - "Z": 83456, - "Room": 74 + "Y": 12800, + "Z": 76288, + "Room": 75 + }, + { + "X": 49664, + "Y": 12800, + "Z": 76288, + "Room": 75 + }, + { + "X": 50688, + "Y": 12800, + "Z": 76288, + "Room": 75 } - ], - "TrigType": 0 + ] + }, + { + "EMType": 129, + "CameraIndex": 6, + "NewLocation": { + "X": 53760, + "Y": 9984, + "Z": 84480, + "Room": 74 + } } ] }, diff --git a/TRRandomizerCore/Resources/TR2/Locations/locations.json b/TRRandomizerCore/Resources/TR2/Locations/locations.json index dbdaac0e7..fb43a0a45 100644 --- a/TRRandomizerCore/Resources/TR2/Locations/locations.json +++ b/TRRandomizerCore/Resources/TR2/Locations/locations.json @@ -3777,9 +3777,9 @@ ], "LIVING.TR2": [ { - "X": 94062, - "Y": 3530, - "Z": 76946, + "X": 93825, + "Y": 3688, + "Z": 76886, "Room": 4, "IsUWCorner": true }, @@ -7362,6 +7362,26 @@ "Z": 36809, "Room": 5 }, + { + "X": 38846, + "Y": -17349, + "Z": 48177, + "Room": 61, + "Difficulty": "Hard" + }, + { + "X": 31680, + "Y": -16580, + "Z": 62420, + "Room": 10, + "RequiresGlitch": true + }, + { + "X": 42041, + "Y": -17429, + "Z": 47075, + "Room": 0 + }, { "X": 35781, "Y": -15619, @@ -7760,6 +7780,14 @@ "Y": 5632, "Z": 80821, "Room": 98 + }, + { + "X": 59382, + "Y": -15602, + "Z": 49211, + "Room": 39, + "Difficulty": "Hard", + "RequiresGlitch": true } ], "LEVEL4.TR2": [ @@ -7783,11 +7811,26 @@ "Room": 14 }, { - "X": 74789, + "X": 74820, "Y": 1792, - "Z": 52187, + "Z": 52168, "Room": 61 }, + { + "X": 75720, + "Y": 1873, + "Z": 47616, + "Room": 61, + "Difficulty": "Hard" + }, + { + "X": 75841, + "Y": 8240, + "Z": 33856, + "Room": 55, + "Difficulty": "Hard", + "RequiresDamage": true + }, { "X": 65622, "Y": 3002, diff --git a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_special.json b/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_special.json deleted file mode 100644 index fa85c3543..000000000 --- a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_special.json +++ /dev/null @@ -1,2961 +0,0 @@ -{ - "MONASTRY.TR2": { - "40": { - "2": [ - [ 1000, 46, 37, 40 ], - [ 1000, 46, 40, 21 ], - [ 1000, 46, 40, 36 ], - [ 1000, 38, 15, 40 ], - [ 1000, 38, 47, 40 ], - [ 1000, 38, 37, 40 ], - [ 1000, 38, 19, 40 ], - [ 1000, 38, 40, 16 ], - [ 1000, 38, 40, 17 ], - [ 1000, 38, 40, 18 ], - [ 1000, 38, 40, 48 ], - [ 1000, 38, 40, 49 ], - [ 1000, 38, 40, 50 ], - [ 1000, 38, 40, 21 ], - [ 1000, 38, 40, 36 ], - [ 1000, 38, 40, 214 ], - [ 1000, 38, 40, 260 ], - [ 1000, 15, 47, 40 ], - [ 1000, 15, 37, 40 ], - [ 1000, 15, 19, 40 ], - [ 1000, 15, 40, 16 ], - [ 1000, 15, 40, 17 ], - [ 1000, 15, 40, 18 ], - [ 1000, 15, 40, 48 ], - [ 1000, 15, 40, 49 ], - [ 1000, 15, 40, 50 ], - [ 1000, 15, 40, 21 ], - [ 1000, 15, 40, 36 ], - [ 1000, 15, 40, 214 ], - [ 1000, 15, 40, 260 ], - [ 1000, 47, 37, 40 ], - [ 1000, 47, 40, 48 ], - [ 1000, 47, 40, 49 ], - [ 1000, 47, 40, 50 ], - [ 1000, 47, 40, 21 ], - [ 1000, 47, 40, 36 ], - [ 1000, 1014, 37, 40 ], - [ 1000, 1014, 40, 21 ], - [ 1000, 1014, 40, 36 ], - [ 1000, 37, 31, 40 ], - [ 1000, 37, 19, 40 ], - [ 1000, 37, 40, 16 ], - [ 1000, 37, 40, 17 ], - [ 1000, 37, 40, 18 ], - [ 1000, 37, 40, 48 ], - [ 1000, 37, 40, 49 ], - [ 1000, 37, 40, 50 ], - [ 1000, 37, 40, 54 ], - [ 1000, 37, 40, 53 ], - [ 1000, 37, 40, 21 ], - [ 1000, 37, 40, 36 ], - [ 1000, 37, 40, 1003 ], - [ 1000, 37, 40, 1004 ], - [ 1000, 37, 40, 33 ], - [ 1000, 37, 40, 214 ], - [ 1000, 37, 40, 260 ], - [ 1000, 31, 40, 21 ], - [ 1000, 31, 40, 36 ], - [ 1000, 19, 40, 49 ], - [ 1000, 19, 40, 50 ], - [ 1000, 19, 40, 21 ], - [ 1000, 19, 40, 36 ], - [ 1000, 40, 16, 17 ], - [ 1000, 40, 16, 18 ], - [ 1000, 40, 16, 48 ], - [ 1000, 40, 16, 49 ], - [ 1000, 40, 16, 50 ], - [ 1000, 40, 16, 21 ], - [ 1000, 40, 16, 36 ], - [ 1000, 40, 16, 214 ], - [ 1000, 40, 16, 260 ], - [ 1000, 40, 17, 18 ], - [ 1000, 40, 17, 48 ], - [ 1000, 40, 17, 49 ], - [ 1000, 40, 17, 50 ], - [ 1000, 40, 17, 21 ], - [ 1000, 40, 17, 36 ], - [ 1000, 40, 17, 214 ], - [ 1000, 40, 17, 260 ], - [ 1000, 40, 18, 48 ], - [ 1000, 40, 18, 49 ], - [ 1000, 40, 18, 50 ], - [ 1000, 40, 18, 21 ], - [ 1000, 40, 18, 36 ], - [ 1000, 40, 18, 214 ], - [ 1000, 40, 18, 260 ], - [ 1000, 40, 48, 49 ], - [ 1000, 40, 48, 50 ], - [ 1000, 40, 48, 21 ], - [ 1000, 40, 48, 36 ], - [ 1000, 40, 48, 214 ], - [ 1000, 40, 48, 260 ], - [ 1000, 40, 49, 50 ], - [ 1000, 40, 49, 21 ], - [ 1000, 40, 49, 36 ], - [ 1000, 40, 49, 214 ], - [ 1000, 40, 49, 260 ], - [ 1000, 40, 50, 21 ], - [ 1000, 40, 50, 36 ], - [ 1000, 40, 50, 214 ], - [ 1000, 40, 50, 260 ], - [ 1000, 40, 54, 21 ], - [ 1000, 40, 54, 36 ], - [ 1000, 40, 53, 21 ], - [ 1000, 40, 53, 36 ], - [ 1000, 40, 21, 36 ], - [ 1000, 40, 21, 1003 ], - [ 1000, 40, 21, 1004 ], - [ 1000, 40, 21, 1005 ], - [ 1000, 40, 21, 33 ], - [ 1000, 40, 21, 214 ], - [ 1000, 40, 21, 260 ], - [ 1000, 40, 36, 1003 ], - [ 1000, 40, 36, 1004 ], - [ 1000, 40, 36, 33 ], - [ 1000, 40, 36, 214 ], - [ 1000, 40, 36, 260 ], - [ 1000, 40, 214, 260 ], - [ 46, 38, 15, 40 ], - [ 46, 38, 47, 40 ], - [ 46, 38, 37, 40 ], - [ 46, 38, 40, 16 ], - [ 46, 38, 40, 17 ], - [ 46, 38, 40, 18 ], - [ 46, 38, 40, 48 ], - [ 46, 38, 40, 49 ], - [ 46, 38, 40, 50 ], - [ 46, 38, 40, 21 ], - [ 46, 38, 40, 1001 ], - [ 46, 38, 40, 36 ], - [ 46, 38, 40, 214 ], - [ 46, 38, 40, 260 ], - [ 46, 15, 47, 40 ], - [ 46, 15, 37, 40 ], - [ 46, 15, 19, 40 ], - [ 46, 15, 40, 16 ], - [ 46, 15, 40, 17 ], - [ 46, 15, 40, 18 ], - [ 46, 15, 40, 48 ], - [ 46, 15, 40, 49 ], - [ 46, 15, 40, 50 ], - [ 46, 15, 40, 21 ], - [ 46, 15, 40, 1001 ], - [ 46, 15, 40, 36 ], - [ 46, 15, 40, 214 ], - [ 46, 15, 40, 260 ], - [ 46, 47, 37, 40 ], - [ 46, 47, 40, 49 ], - [ 46, 47, 40, 21 ], - [ 46, 47, 40, 36 ], - [ 46, 1014, 37, 40 ], - [ 46, 1014, 40, 21 ], - [ 46, 1014, 40, 36 ], - [ 46, 37, 31, 40 ], - [ 46, 37, 19, 40 ], - [ 46, 37, 40, 16 ], - [ 46, 37, 40, 17 ], - [ 46, 37, 40, 18 ], - [ 46, 37, 40, 48 ], - [ 46, 37, 40, 49 ], - [ 46, 37, 40, 50 ], - [ 46, 37, 40, 54 ], - [ 46, 37, 40, 53 ], - [ 46, 37, 40, 21 ], - [ 46, 37, 40, 1001 ], - [ 46, 37, 40, 36 ], - [ 46, 37, 40, 214 ], - [ 46, 37, 40, 1002 ], - [ 46, 37, 40, 260 ], - [ 46, 31, 40, 21 ], - [ 46, 31, 40, 36 ], - [ 46, 19, 40, 21 ], - [ 46, 19, 40, 36 ], - [ 46, 40, 16, 17 ], - [ 46, 40, 16, 48 ], - [ 46, 40, 16, 49 ], - [ 46, 40, 16, 50 ], - [ 46, 40, 16, 21 ], - [ 46, 40, 16, 1001 ], - [ 46, 40, 16, 36 ], - [ 46, 40, 16, 214 ], - [ 46, 40, 17, 18 ], - [ 46, 40, 17, 48 ], - [ 46, 40, 17, 49 ], - [ 46, 40, 17, 50 ], - [ 46, 40, 17, 21 ], - [ 46, 40, 17, 1001 ], - [ 46, 40, 17, 36 ], - [ 46, 40, 17, 214 ], - [ 46, 40, 17, 260 ], - [ 46, 40, 18, 48 ], - [ 46, 40, 18, 49 ], - [ 46, 40, 18, 50 ], - [ 46, 40, 18, 21 ], - [ 46, 40, 18, 1001 ], - [ 46, 40, 18, 36 ], - [ 46, 40, 18, 214 ], - [ 46, 40, 48, 49 ], - [ 46, 40, 48, 50 ], - [ 46, 40, 48, 21 ], - [ 46, 40, 48, 1001 ], - [ 46, 40, 48, 36 ], - [ 46, 40, 48, 214 ], - [ 46, 40, 48, 260 ], - [ 46, 40, 49, 50 ], - [ 46, 40, 49, 21 ], - [ 46, 40, 49, 1001 ], - [ 46, 40, 49, 36 ], - [ 46, 40, 49, 214 ], - [ 46, 40, 49, 260 ], - [ 46, 40, 50, 21 ], - [ 46, 40, 50, 1001 ], - [ 46, 40, 50, 36 ], - [ 46, 40, 50, 214 ], - [ 46, 40, 50, 260 ], - [ 46, 40, 54, 21 ], - [ 46, 40, 53, 21 ], - [ 46, 40, 21, 1001 ], - [ 46, 40, 21, 36 ], - [ 46, 40, 21, 1004 ], - [ 46, 40, 21, 33 ], - [ 46, 40, 21, 214 ], - [ 46, 40, 21, 1002 ], - [ 46, 40, 21, 260 ], - [ 46, 40, 1001, 36 ], - [ 46, 40, 1001, 214 ], - [ 46, 40, 1001, 260 ], - [ 46, 40, 36, 1004 ], - [ 46, 40, 36, 33 ], - [ 46, 40, 36, 214 ], - [ 46, 40, 36, 1002 ], - [ 46, 40, 214, 260 ], - [ 38, 15, 47, 40 ], - [ 38, 15, 1014, 40 ], - [ 38, 15, 37, 40 ], - [ 38, 15, 1011, 40 ], - [ 38, 15, 31, 40 ], - [ 38, 15, 19, 40 ], - [ 38, 15, 40, 16 ], - [ 38, 15, 40, 17 ], - [ 38, 15, 40, 18 ], - [ 38, 15, 40, 48 ], - [ 38, 15, 40, 49 ], - [ 38, 15, 40, 50 ], - [ 38, 15, 40, 54 ], - [ 38, 15, 40, 53 ], - [ 38, 15, 40, 21 ], - [ 38, 15, 40, 20 ], - [ 38, 15, 40, 1001 ], - [ 38, 15, 40, 36 ], - [ 38, 15, 40, 1003 ], - [ 38, 15, 40, 1004 ], - [ 38, 15, 40, 1005 ], - [ 38, 15, 40, 1006 ], - [ 38, 15, 40, 1007 ], - [ 38, 15, 40, 33 ], - [ 38, 15, 40, 214 ], - [ 38, 15, 40, 1002 ], - [ 38, 15, 40, 260 ], - [ 38, 15, 40, 45 ], - [ 38, 47, 1014, 40 ], - [ 38, 47, 37, 40 ], - [ 38, 47, 31, 40 ], - [ 38, 47, 19, 40 ], - [ 38, 47, 40, 16 ], - [ 38, 47, 40, 17 ], - [ 38, 47, 40, 18 ], - [ 38, 47, 40, 48 ], - [ 38, 47, 40, 49 ], - [ 38, 47, 40, 50 ], - [ 38, 47, 40, 54 ], - [ 38, 47, 40, 53 ], - [ 38, 47, 40, 21 ], - [ 38, 47, 40, 1001 ], - [ 38, 47, 40, 36 ], - [ 38, 47, 40, 1004 ], - [ 38, 47, 40, 33 ], - [ 38, 47, 40, 214 ], - [ 38, 47, 40, 1002 ], - [ 38, 47, 40, 260 ], - [ 38, 1014, 37, 40 ], - [ 38, 1014, 40, 16 ], - [ 38, 1014, 40, 17 ], - [ 38, 1014, 40, 18 ], - [ 38, 1014, 40, 48 ], - [ 38, 1014, 40, 49 ], - [ 38, 1014, 40, 50 ], - [ 38, 1014, 40, 21 ], - [ 38, 1014, 40, 1001 ], - [ 38, 1014, 40, 36 ], - [ 38, 1014, 40, 214 ], - [ 38, 1014, 40, 260 ], - [ 38, 37, 1011, 40 ], - [ 38, 37, 31, 40 ], - [ 38, 37, 19, 40 ], - [ 38, 37, 40, 16 ], - [ 38, 37, 40, 17 ], - [ 38, 37, 40, 18 ], - [ 38, 37, 40, 48 ], - [ 38, 37, 40, 49 ], - [ 38, 37, 40, 50 ], - [ 38, 37, 40, 52 ], - [ 38, 37, 40, 54 ], - [ 38, 37, 40, 53 ], - [ 38, 37, 40, 21 ], - [ 38, 37, 40, 20 ], - [ 38, 37, 40, 1001 ], - [ 38, 37, 40, 36 ], - [ 38, 37, 40, 1003 ], - [ 38, 37, 40, 1004 ], - [ 38, 37, 40, 1005 ], - [ 38, 37, 40, 1006 ], - [ 38, 37, 40, 1007 ], - [ 38, 37, 40, 33 ], - [ 38, 37, 40, 214 ], - [ 38, 37, 40, 1002 ], - [ 38, 37, 40, 260 ], - [ 38, 37, 40, 41 ], - [ 38, 37, 40, 43 ], - [ 38, 37, 40, 45 ], - [ 38, 1011, 40, 21 ], - [ 38, 1011, 40, 36 ], - [ 38, 31, 40, 16 ], - [ 38, 31, 40, 17 ], - [ 38, 31, 40, 18 ], - [ 38, 31, 40, 48 ], - [ 38, 31, 40, 49 ], - [ 38, 31, 40, 50 ], - [ 38, 31, 40, 21 ], - [ 38, 31, 40, 1001 ], - [ 38, 31, 40, 36 ], - [ 38, 31, 40, 214 ], - [ 38, 31, 40, 260 ], - [ 38, 19, 40, 16 ], - [ 38, 19, 40, 17 ], - [ 38, 19, 40, 18 ], - [ 38, 19, 40, 48 ], - [ 38, 19, 40, 49 ], - [ 38, 19, 40, 50 ], - [ 38, 19, 40, 54 ], - [ 38, 19, 40, 53 ], - [ 38, 19, 40, 21 ], - [ 38, 19, 40, 1001 ], - [ 38, 19, 40, 36 ], - [ 38, 19, 40, 214 ], - [ 38, 19, 40, 1002 ], - [ 38, 19, 40, 260 ], - [ 38, 40, 16, 17 ], - [ 38, 40, 16, 18 ], - [ 38, 40, 16, 48 ], - [ 38, 40, 16, 49 ], - [ 38, 40, 16, 50 ], - [ 38, 40, 16, 54 ], - [ 38, 40, 16, 53 ], - [ 38, 40, 16, 21 ], - [ 38, 40, 16, 1001 ], - [ 38, 40, 16, 36 ], - [ 38, 40, 16, 1003 ], - [ 38, 40, 16, 1004 ], - [ 38, 40, 16, 1005 ], - [ 38, 40, 16, 33 ], - [ 38, 40, 16, 214 ], - [ 38, 40, 16, 1002 ], - [ 38, 40, 16, 260 ], - [ 38, 40, 17, 18 ], - [ 38, 40, 17, 48 ], - [ 38, 40, 17, 49 ], - [ 38, 40, 17, 50 ], - [ 38, 40, 17, 54 ], - [ 38, 40, 17, 53 ], - [ 38, 40, 17, 21 ], - [ 38, 40, 17, 1001 ], - [ 38, 40, 17, 36 ], - [ 38, 40, 17, 1003 ], - [ 38, 40, 17, 1004 ], - [ 38, 40, 17, 1005 ], - [ 38, 40, 17, 33 ], - [ 38, 40, 17, 214 ], - [ 38, 40, 17, 1002 ], - [ 38, 40, 17, 260 ], - [ 38, 40, 18, 48 ], - [ 38, 40, 18, 49 ], - [ 38, 40, 18, 50 ], - [ 38, 40, 18, 54 ], - [ 38, 40, 18, 53 ], - [ 38, 40, 18, 21 ], - [ 38, 40, 18, 1001 ], - [ 38, 40, 18, 36 ], - [ 38, 40, 18, 1003 ], - [ 38, 40, 18, 1004 ], - [ 38, 40, 18, 1005 ], - [ 38, 40, 18, 33 ], - [ 38, 40, 18, 214 ], - [ 38, 40, 18, 1002 ], - [ 38, 40, 18, 260 ], - [ 38, 40, 48, 49 ], - [ 38, 40, 48, 50 ], - [ 38, 40, 48, 54 ], - [ 38, 40, 48, 53 ], - [ 38, 40, 48, 21 ], - [ 38, 40, 48, 1001 ], - [ 38, 40, 48, 36 ], - [ 38, 40, 48, 1003 ], - [ 38, 40, 48, 1004 ], - [ 38, 40, 48, 1005 ], - [ 38, 40, 48, 33 ], - [ 38, 40, 48, 214 ], - [ 38, 40, 48, 1002 ], - [ 38, 40, 48, 260 ], - [ 38, 40, 49, 50 ], - [ 38, 40, 49, 54 ], - [ 38, 40, 49, 53 ], - [ 38, 40, 49, 21 ], - [ 38, 40, 49, 20 ], - [ 38, 40, 49, 1001 ], - [ 38, 40, 49, 36 ], - [ 38, 40, 49, 1003 ], - [ 38, 40, 49, 1004 ], - [ 38, 40, 49, 1005 ], - [ 38, 40, 49, 1007 ], - [ 38, 40, 49, 33 ], - [ 38, 40, 49, 214 ], - [ 38, 40, 49, 1002 ], - [ 38, 40, 49, 260 ], - [ 38, 40, 50, 54 ], - [ 38, 40, 50, 53 ], - [ 38, 40, 50, 21 ], - [ 38, 40, 50, 20 ], - [ 38, 40, 50, 1001 ], - [ 38, 40, 50, 36 ], - [ 38, 40, 50, 1003 ], - [ 38, 40, 50, 1004 ], - [ 38, 40, 50, 1005 ], - [ 38, 40, 50, 1007 ], - [ 38, 40, 50, 33 ], - [ 38, 40, 50, 214 ], - [ 38, 40, 50, 1002 ], - [ 38, 40, 50, 260 ], - [ 38, 40, 52, 21 ], - [ 38, 40, 52, 36 ], - [ 38, 40, 54, 21 ], - [ 38, 40, 54, 1001 ], - [ 38, 40, 54, 36 ], - [ 38, 40, 54, 214 ], - [ 38, 40, 54, 260 ], - [ 38, 40, 53, 21 ], - [ 38, 40, 53, 1001 ], - [ 38, 40, 53, 36 ], - [ 38, 40, 53, 214 ], - [ 38, 40, 53, 260 ], - [ 38, 40, 21, 20 ], - [ 38, 40, 21, 1001 ], - [ 38, 40, 21, 36 ], - [ 38, 40, 21, 1003 ], - [ 38, 40, 21, 1004 ], - [ 38, 40, 21, 1005 ], - [ 38, 40, 21, 1006 ], - [ 38, 40, 21, 1007 ], - [ 38, 40, 21, 33 ], - [ 38, 40, 21, 214 ], - [ 38, 40, 21, 1002 ], - [ 38, 40, 21, 260 ], - [ 38, 40, 21, 41 ], - [ 38, 40, 21, 43 ], - [ 38, 40, 21, 45 ], - [ 38, 40, 20, 1001 ], - [ 38, 40, 20, 36 ], - [ 38, 40, 1001, 36 ], - [ 38, 40, 1001, 1003 ], - [ 38, 40, 1001, 1004 ], - [ 38, 40, 1001, 1005 ], - [ 38, 40, 1001, 1007 ], - [ 38, 40, 1001, 33 ], - [ 38, 40, 1001, 214 ], - [ 38, 40, 1001, 260 ], - [ 38, 40, 36, 1003 ], - [ 38, 40, 36, 1004 ], - [ 38, 40, 36, 1005 ], - [ 38, 40, 36, 1006 ], - [ 38, 40, 36, 1007 ], - [ 38, 40, 36, 33 ], - [ 38, 40, 36, 214 ], - [ 38, 40, 36, 1002 ], - [ 38, 40, 36, 260 ], - [ 38, 40, 36, 41 ], - [ 38, 40, 36, 43 ], - [ 38, 40, 36, 45 ], - [ 38, 40, 1003, 214 ], - [ 38, 40, 1003, 260 ], - [ 38, 40, 1004, 214 ], - [ 38, 40, 1004, 260 ], - [ 38, 40, 1005, 214 ], - [ 38, 40, 1005, 260 ], - [ 38, 40, 33, 214 ], - [ 38, 40, 33, 260 ], - [ 38, 40, 214, 1002 ], - [ 38, 40, 214, 260 ], - [ 38, 40, 1002, 260 ], - [ 15, 47, 1014, 40 ], - [ 15, 47, 37, 40 ], - [ 15, 47, 31, 40 ], - [ 15, 47, 19, 40 ], - [ 15, 47, 40, 16 ], - [ 15, 47, 40, 17 ], - [ 15, 47, 40, 18 ], - [ 15, 47, 40, 48 ], - [ 15, 47, 40, 49 ], - [ 15, 47, 40, 50 ], - [ 15, 47, 40, 54 ], - [ 15, 47, 40, 53 ], - [ 15, 47, 40, 21 ], - [ 15, 47, 40, 1001 ], - [ 15, 47, 40, 36 ], - [ 15, 47, 40, 1003 ], - [ 15, 47, 40, 1004 ], - [ 15, 47, 40, 33 ], - [ 15, 47, 40, 214 ], - [ 15, 47, 40, 1002 ], - [ 15, 47, 40, 260 ], - [ 15, 1014, 37, 40 ], - [ 15, 1014, 19, 40 ], - [ 15, 1014, 40, 16 ], - [ 15, 1014, 40, 17 ], - [ 15, 1014, 40, 18 ], - [ 15, 1014, 40, 48 ], - [ 15, 1014, 40, 49 ], - [ 15, 1014, 40, 50 ], - [ 15, 1014, 40, 21 ], - [ 15, 1014, 40, 1001 ], - [ 15, 1014, 40, 36 ], - [ 15, 1014, 40, 214 ], - [ 15, 1014, 40, 260 ], - [ 15, 37, 1011, 40 ], - [ 15, 37, 31, 40 ], - [ 15, 37, 19, 40 ], - [ 15, 37, 40, 16 ], - [ 15, 37, 40, 17 ], - [ 15, 37, 40, 18 ], - [ 15, 37, 40, 48 ], - [ 15, 37, 40, 49 ], - [ 15, 37, 40, 50 ], - [ 15, 37, 40, 52 ], - [ 15, 37, 40, 54 ], - [ 15, 37, 40, 53 ], - [ 15, 37, 40, 21 ], - [ 15, 37, 40, 20 ], - [ 15, 37, 40, 1001 ], - [ 15, 37, 40, 36 ], - [ 15, 37, 40, 1003 ], - [ 15, 37, 40, 1004 ], - [ 15, 37, 40, 1005 ], - [ 15, 37, 40, 1006 ], - [ 15, 37, 40, 1007 ], - [ 15, 37, 40, 33 ], - [ 15, 37, 40, 214 ], - [ 15, 37, 40, 1002 ], - [ 15, 37, 40, 260 ], - [ 15, 37, 40, 41 ], - [ 15, 37, 40, 43 ], - [ 15, 37, 40, 45 ], - [ 15, 1011, 40, 49 ], - [ 15, 1011, 40, 50 ], - [ 15, 1011, 40, 21 ], - [ 15, 1011, 40, 1001 ], - [ 15, 1011, 40, 36 ], - [ 15, 31, 19, 40 ], - [ 15, 31, 40, 16 ], - [ 15, 31, 40, 17 ], - [ 15, 31, 40, 18 ], - [ 15, 31, 40, 48 ], - [ 15, 31, 40, 49 ], - [ 15, 31, 40, 50 ], - [ 15, 31, 40, 21 ], - [ 15, 31, 40, 1001 ], - [ 15, 31, 40, 36 ], - [ 15, 31, 40, 214 ], - [ 15, 31, 40, 260 ], - [ 15, 19, 40, 16 ], - [ 15, 19, 40, 17 ], - [ 15, 19, 40, 18 ], - [ 15, 19, 40, 48 ], - [ 15, 19, 40, 49 ], - [ 15, 19, 40, 50 ], - [ 15, 19, 40, 54 ], - [ 15, 19, 40, 53 ], - [ 15, 19, 40, 21 ], - [ 15, 19, 40, 1001 ], - [ 15, 19, 40, 36 ], - [ 15, 19, 40, 1004 ], - [ 15, 19, 40, 33 ], - [ 15, 19, 40, 214 ], - [ 15, 19, 40, 1002 ], - [ 15, 19, 40, 260 ], - [ 15, 40, 16, 17 ], - [ 15, 40, 16, 18 ], - [ 15, 40, 16, 48 ], - [ 15, 40, 16, 49 ], - [ 15, 40, 16, 50 ], - [ 15, 40, 16, 54 ], - [ 15, 40, 16, 53 ], - [ 15, 40, 16, 21 ], - [ 15, 40, 16, 20 ], - [ 15, 40, 16, 1001 ], - [ 15, 40, 16, 36 ], - [ 15, 40, 16, 1003 ], - [ 15, 40, 16, 1004 ], - [ 15, 40, 16, 1005 ], - [ 15, 40, 16, 1007 ], - [ 15, 40, 16, 33 ], - [ 15, 40, 16, 214 ], - [ 15, 40, 16, 1002 ], - [ 15, 40, 16, 260 ], - [ 15, 40, 17, 18 ], - [ 15, 40, 17, 48 ], - [ 15, 40, 17, 49 ], - [ 15, 40, 17, 50 ], - [ 15, 40, 17, 54 ], - [ 15, 40, 17, 53 ], - [ 15, 40, 17, 21 ], - [ 15, 40, 17, 20 ], - [ 15, 40, 17, 1001 ], - [ 15, 40, 17, 36 ], - [ 15, 40, 17, 1003 ], - [ 15, 40, 17, 1004 ], - [ 15, 40, 17, 1005 ], - [ 15, 40, 17, 1007 ], - [ 15, 40, 17, 33 ], - [ 15, 40, 17, 214 ], - [ 15, 40, 17, 1002 ], - [ 15, 40, 17, 260 ], - [ 15, 40, 18, 48 ], - [ 15, 40, 18, 49 ], - [ 15, 40, 18, 50 ], - [ 15, 40, 18, 54 ], - [ 15, 40, 18, 53 ], - [ 15, 40, 18, 21 ], - [ 15, 40, 18, 20 ], - [ 15, 40, 18, 1001 ], - [ 15, 40, 18, 36 ], - [ 15, 40, 18, 1003 ], - [ 15, 40, 18, 1004 ], - [ 15, 40, 18, 1005 ], - [ 15, 40, 18, 1007 ], - [ 15, 40, 18, 33 ], - [ 15, 40, 18, 214 ], - [ 15, 40, 18, 1002 ], - [ 15, 40, 18, 260 ], - [ 15, 40, 48, 49 ], - [ 15, 40, 48, 50 ], - [ 15, 40, 48, 54 ], - [ 15, 40, 48, 53 ], - [ 15, 40, 48, 21 ], - [ 15, 40, 48, 20 ], - [ 15, 40, 48, 1001 ], - [ 15, 40, 48, 36 ], - [ 15, 40, 48, 1003 ], - [ 15, 40, 48, 1004 ], - [ 15, 40, 48, 1005 ], - [ 15, 40, 48, 1007 ], - [ 15, 40, 48, 33 ], - [ 15, 40, 48, 214 ], - [ 15, 40, 48, 1002 ], - [ 15, 40, 48, 260 ], - [ 15, 40, 49, 50 ], - [ 15, 40, 49, 54 ], - [ 15, 40, 49, 53 ], - [ 15, 40, 49, 21 ], - [ 15, 40, 49, 20 ], - [ 15, 40, 49, 1001 ], - [ 15, 40, 49, 36 ], - [ 15, 40, 49, 1003 ], - [ 15, 40, 49, 1004 ], - [ 15, 40, 49, 1005 ], - [ 15, 40, 49, 1006 ], - [ 15, 40, 49, 1007 ], - [ 15, 40, 49, 33 ], - [ 15, 40, 49, 214 ], - [ 15, 40, 49, 1002 ], - [ 15, 40, 49, 260 ], - [ 15, 40, 49, 45 ], - [ 15, 40, 50, 54 ], - [ 15, 40, 50, 53 ], - [ 15, 40, 50, 21 ], - [ 15, 40, 50, 20 ], - [ 15, 40, 50, 1001 ], - [ 15, 40, 50, 36 ], - [ 15, 40, 50, 1003 ], - [ 15, 40, 50, 1004 ], - [ 15, 40, 50, 1005 ], - [ 15, 40, 50, 1006 ], - [ 15, 40, 50, 1007 ], - [ 15, 40, 50, 33 ], - [ 15, 40, 50, 214 ], - [ 15, 40, 50, 1002 ], - [ 15, 40, 50, 260 ], - [ 15, 40, 52, 21 ], - [ 15, 40, 52, 36 ], - [ 15, 40, 54, 21 ], - [ 15, 40, 54, 1001 ], - [ 15, 40, 54, 36 ], - [ 15, 40, 54, 214 ], - [ 15, 40, 54, 260 ], - [ 15, 40, 53, 21 ], - [ 15, 40, 53, 1001 ], - [ 15, 40, 53, 36 ], - [ 15, 40, 53, 214 ], - [ 15, 40, 53, 260 ], - [ 15, 40, 21, 20 ], - [ 15, 40, 21, 1001 ], - [ 15, 40, 21, 36 ], - [ 15, 40, 21, 1003 ], - [ 15, 40, 21, 1004 ], - [ 15, 40, 21, 1005 ], - [ 15, 40, 21, 1006 ], - [ 15, 40, 21, 1007 ], - [ 15, 40, 21, 33 ], - [ 15, 40, 21, 214 ], - [ 15, 40, 21, 1002 ], - [ 15, 40, 21, 260 ], - [ 15, 40, 21, 41 ], - [ 15, 40, 21, 43 ], - [ 15, 40, 21, 45 ], - [ 15, 40, 20, 1001 ], - [ 15, 40, 20, 36 ], - [ 15, 40, 20, 214 ], - [ 15, 40, 20, 260 ], - [ 15, 40, 1001, 36 ], - [ 15, 40, 1001, 1003 ], - [ 15, 40, 1001, 1004 ], - [ 15, 40, 1001, 1005 ], - [ 15, 40, 1001, 1007 ], - [ 15, 40, 1001, 33 ], - [ 15, 40, 1001, 214 ], - [ 15, 40, 1001, 260 ], - [ 15, 40, 36, 1003 ], - [ 15, 40, 36, 1004 ], - [ 15, 40, 36, 1005 ], - [ 15, 40, 36, 1006 ], - [ 15, 40, 36, 1007 ], - [ 15, 40, 36, 33 ], - [ 15, 40, 36, 214 ], - [ 15, 40, 36, 1002 ], - [ 15, 40, 36, 260 ], - [ 15, 40, 36, 41 ], - [ 15, 40, 36, 43 ], - [ 15, 40, 36, 45 ], - [ 15, 40, 1003, 214 ], - [ 15, 40, 1003, 260 ], - [ 15, 40, 1004, 214 ], - [ 15, 40, 1004, 260 ], - [ 15, 40, 1005, 214 ], - [ 15, 40, 1005, 260 ], - [ 15, 40, 1007, 214 ], - [ 15, 40, 1007, 260 ], - [ 15, 40, 33, 214 ], - [ 15, 40, 33, 260 ], - [ 15, 40, 214, 1002 ], - [ 15, 40, 214, 260 ], - [ 15, 40, 1002, 260 ], - [ 47, 1014, 37, 40 ], - [ 47, 1014, 40, 49 ], - [ 47, 1014, 40, 50 ], - [ 47, 1014, 40, 21 ], - [ 47, 1014, 40, 36 ], - [ 47, 37, 1011, 40 ], - [ 47, 37, 31, 40 ], - [ 47, 37, 19, 40 ], - [ 47, 37, 40, 16 ], - [ 47, 37, 40, 17 ], - [ 47, 37, 40, 18 ], - [ 47, 37, 40, 48 ], - [ 47, 37, 40, 49 ], - [ 47, 37, 40, 50 ], - [ 47, 37, 40, 54 ], - [ 47, 37, 40, 53 ], - [ 47, 37, 40, 21 ], - [ 47, 37, 40, 20 ], - [ 47, 37, 40, 1001 ], - [ 47, 37, 40, 36 ], - [ 47, 37, 40, 1003 ], - [ 47, 37, 40, 1004 ], - [ 47, 37, 40, 1005 ], - [ 47, 37, 40, 1006 ], - [ 47, 37, 40, 1007 ], - [ 47, 37, 40, 33 ], - [ 47, 37, 40, 214 ], - [ 47, 37, 40, 1002 ], - [ 47, 37, 40, 260 ], - [ 47, 37, 40, 41 ], - [ 47, 37, 40, 45 ], - [ 47, 1011, 40, 21 ], - [ 47, 1011, 40, 36 ], - [ 47, 31, 40, 49 ], - [ 47, 31, 40, 21 ], - [ 47, 31, 40, 36 ], - [ 47, 19, 40, 16 ], - [ 47, 19, 40, 17 ], - [ 47, 19, 40, 18 ], - [ 47, 19, 40, 48 ], - [ 47, 19, 40, 49 ], - [ 47, 19, 40, 50 ], - [ 47, 19, 40, 21 ], - [ 47, 19, 40, 1001 ], - [ 47, 19, 40, 36 ], - [ 47, 19, 40, 214 ], - [ 47, 19, 40, 260 ], - [ 47, 40, 16, 17 ], - [ 47, 40, 16, 18 ], - [ 47, 40, 16, 48 ], - [ 47, 40, 16, 49 ], - [ 47, 40, 16, 50 ], - [ 47, 40, 16, 54 ], - [ 47, 40, 16, 21 ], - [ 47, 40, 16, 1001 ], - [ 47, 40, 16, 36 ], - [ 47, 40, 16, 214 ], - [ 47, 40, 16, 260 ], - [ 47, 40, 17, 18 ], - [ 47, 40, 17, 48 ], - [ 47, 40, 17, 49 ], - [ 47, 40, 17, 50 ], - [ 47, 40, 17, 54 ], - [ 47, 40, 17, 21 ], - [ 47, 40, 17, 1001 ], - [ 47, 40, 17, 36 ], - [ 47, 40, 17, 214 ], - [ 47, 40, 17, 260 ], - [ 47, 40, 18, 48 ], - [ 47, 40, 18, 49 ], - [ 47, 40, 18, 50 ], - [ 47, 40, 18, 54 ], - [ 47, 40, 18, 21 ], - [ 47, 40, 18, 1001 ], - [ 47, 40, 18, 36 ], - [ 47, 40, 18, 214 ], - [ 47, 40, 18, 260 ], - [ 47, 40, 48, 49 ], - [ 47, 40, 48, 50 ], - [ 47, 40, 48, 54 ], - [ 47, 40, 48, 21 ], - [ 47, 40, 48, 1001 ], - [ 47, 40, 48, 36 ], - [ 47, 40, 48, 214 ], - [ 47, 40, 48, 1002 ], - [ 47, 40, 48, 260 ], - [ 47, 40, 49, 50 ], - [ 47, 40, 49, 54 ], - [ 47, 40, 49, 53 ], - [ 47, 40, 49, 21 ], - [ 47, 40, 49, 1001 ], - [ 47, 40, 49, 36 ], - [ 47, 40, 49, 1004 ], - [ 47, 40, 49, 33 ], - [ 47, 40, 49, 214 ], - [ 47, 40, 49, 1002 ], - [ 47, 40, 49, 260 ], - [ 47, 40, 50, 54 ], - [ 47, 40, 50, 53 ], - [ 47, 40, 50, 21 ], - [ 47, 40, 50, 1001 ], - [ 47, 40, 50, 36 ], - [ 47, 40, 50, 214 ], - [ 47, 40, 50, 1002 ], - [ 47, 40, 50, 260 ], - [ 47, 40, 54, 21 ], - [ 47, 40, 54, 1001 ], - [ 47, 40, 54, 36 ], - [ 47, 40, 54, 214 ], - [ 47, 40, 54, 260 ], - [ 47, 40, 53, 21 ], - [ 47, 40, 53, 1001 ], - [ 47, 40, 53, 36 ], - [ 47, 40, 21, 20 ], - [ 47, 40, 21, 1001 ], - [ 47, 40, 21, 36 ], - [ 47, 40, 21, 1003 ], - [ 47, 40, 21, 1004 ], - [ 47, 40, 21, 1005 ], - [ 47, 40, 21, 1006 ], - [ 47, 40, 21, 1007 ], - [ 47, 40, 21, 33 ], - [ 47, 40, 21, 214 ], - [ 47, 40, 21, 1002 ], - [ 47, 40, 21, 260 ], - [ 47, 40, 21, 41 ], - [ 47, 40, 21, 45 ], - [ 47, 40, 20, 36 ], - [ 47, 40, 1001, 36 ], - [ 47, 40, 1001, 214 ], - [ 47, 40, 1001, 260 ], - [ 47, 40, 36, 1003 ], - [ 47, 40, 36, 1004 ], - [ 47, 40, 36, 1005 ], - [ 47, 40, 36, 1006 ], - [ 47, 40, 36, 1007 ], - [ 47, 40, 36, 33 ], - [ 47, 40, 36, 214 ], - [ 47, 40, 36, 1002 ], - [ 47, 40, 36, 260 ], - [ 47, 40, 36, 41 ], - [ 47, 40, 36, 45 ], - [ 47, 40, 214, 260 ], - [ 1014, 37, 31, 40 ], - [ 1014, 37, 19, 40 ], - [ 1014, 37, 40, 16 ], - [ 1014, 37, 40, 17 ], - [ 1014, 37, 40, 18 ], - [ 1014, 37, 40, 48 ], - [ 1014, 37, 40, 49 ], - [ 1014, 37, 40, 50 ], - [ 1014, 37, 40, 54 ], - [ 1014, 37, 40, 53 ], - [ 1014, 37, 40, 21 ], - [ 1014, 37, 40, 1001 ], - [ 1014, 37, 40, 36 ], - [ 1014, 37, 40, 1004 ], - [ 1014, 37, 40, 33 ], - [ 1014, 37, 40, 214 ], - [ 1014, 37, 40, 1002 ], - [ 1014, 37, 40, 260 ], - [ 1014, 31, 40, 21 ], - [ 1014, 31, 40, 36 ], - [ 1014, 19, 40, 21 ], - [ 1014, 19, 40, 36 ], - [ 1014, 40, 16, 17 ], - [ 1014, 40, 16, 18 ], - [ 1014, 40, 16, 48 ], - [ 1014, 40, 16, 49 ], - [ 1014, 40, 16, 50 ], - [ 1014, 40, 16, 21 ], - [ 1014, 40, 16, 1001 ], - [ 1014, 40, 16, 36 ], - [ 1014, 40, 16, 214 ], - [ 1014, 40, 16, 260 ], - [ 1014, 40, 17, 18 ], - [ 1014, 40, 17, 48 ], - [ 1014, 40, 17, 49 ], - [ 1014, 40, 17, 50 ], - [ 1014, 40, 17, 21 ], - [ 1014, 40, 17, 1001 ], - [ 1014, 40, 17, 36 ], - [ 1014, 40, 17, 214 ], - [ 1014, 40, 17, 260 ], - [ 1014, 40, 18, 48 ], - [ 1014, 40, 18, 49 ], - [ 1014, 40, 18, 50 ], - [ 1014, 40, 18, 21 ], - [ 1014, 40, 18, 1001 ], - [ 1014, 40, 18, 36 ], - [ 1014, 40, 18, 214 ], - [ 1014, 40, 18, 260 ], - [ 1014, 40, 48, 49 ], - [ 1014, 40, 48, 50 ], - [ 1014, 40, 48, 21 ], - [ 1014, 40, 48, 1001 ], - [ 1014, 40, 48, 36 ], - [ 1014, 40, 48, 214 ], - [ 1014, 40, 48, 260 ], - [ 1014, 40, 49, 50 ], - [ 1014, 40, 49, 21 ], - [ 1014, 40, 49, 1001 ], - [ 1014, 40, 49, 36 ], - [ 1014, 40, 49, 214 ], - [ 1014, 40, 49, 260 ], - [ 1014, 40, 50, 21 ], - [ 1014, 40, 50, 1001 ], - [ 1014, 40, 50, 36 ], - [ 1014, 40, 50, 214 ], - [ 1014, 40, 50, 260 ], - [ 1014, 40, 54, 21 ], - [ 1014, 40, 54, 36 ], - [ 1014, 40, 53, 21 ], - [ 1014, 40, 53, 36 ], - [ 1014, 40, 21, 1001 ], - [ 1014, 40, 21, 36 ], - [ 1014, 40, 21, 1004 ], - [ 1014, 40, 21, 33 ], - [ 1014, 40, 21, 214 ], - [ 1014, 40, 21, 1002 ], - [ 1014, 40, 21, 260 ], - [ 1014, 40, 1001, 36 ], - [ 1014, 40, 1001, 214 ], - [ 1014, 40, 1001, 260 ], - [ 1014, 40, 36, 1004 ], - [ 1014, 40, 36, 33 ], - [ 1014, 40, 36, 214 ], - [ 1014, 40, 36, 1002 ], - [ 1014, 40, 36, 260 ], - [ 1014, 40, 214, 260 ], - [ 37, 1011, 19, 40 ], - [ 37, 1011, 40, 16 ], - [ 37, 1011, 40, 17 ], - [ 37, 1011, 40, 18 ], - [ 37, 1011, 40, 48 ], - [ 37, 1011, 40, 49 ], - [ 37, 1011, 40, 50 ], - [ 37, 1011, 40, 21 ], - [ 37, 1011, 40, 1001 ], - [ 37, 1011, 40, 36 ], - [ 37, 1011, 40, 214 ], - [ 37, 1011, 40, 260 ], - [ 37, 31, 19, 40 ], - [ 37, 31, 40, 16 ], - [ 37, 31, 40, 17 ], - [ 37, 31, 40, 18 ], - [ 37, 31, 40, 48 ], - [ 37, 31, 40, 49 ], - [ 37, 31, 40, 50 ], - [ 37, 31, 40, 54 ], - [ 37, 31, 40, 53 ], - [ 37, 31, 40, 21 ], - [ 37, 31, 40, 1001 ], - [ 37, 31, 40, 36 ], - [ 37, 31, 40, 214 ], - [ 37, 31, 40, 1002 ], - [ 37, 31, 40, 260 ], - [ 37, 19, 40, 16 ], - [ 37, 19, 40, 17 ], - [ 37, 19, 40, 18 ], - [ 37, 19, 40, 48 ], - [ 37, 19, 40, 49 ], - [ 37, 19, 40, 50 ], - [ 37, 19, 40, 54 ], - [ 37, 19, 40, 53 ], - [ 37, 19, 40, 21 ], - [ 37, 19, 40, 20 ], - [ 37, 19, 40, 1001 ], - [ 37, 19, 40, 36 ], - [ 37, 19, 40, 1003 ], - [ 37, 19, 40, 1004 ], - [ 37, 19, 40, 1005 ], - [ 37, 19, 40, 1006 ], - [ 37, 19, 40, 1007 ], - [ 37, 19, 40, 33 ], - [ 37, 19, 40, 214 ], - [ 37, 19, 40, 1002 ], - [ 37, 19, 40, 260 ], - [ 37, 40, 16, 17 ], - [ 37, 40, 16, 18 ], - [ 37, 40, 16, 48 ], - [ 37, 40, 16, 49 ], - [ 37, 40, 16, 50 ], - [ 37, 40, 16, 54 ], - [ 37, 40, 16, 53 ], - [ 37, 40, 16, 21 ], - [ 37, 40, 16, 20 ], - [ 37, 40, 16, 1001 ], - [ 37, 40, 16, 36 ], - [ 37, 40, 16, 1003 ], - [ 37, 40, 16, 1004 ], - [ 37, 40, 16, 1005 ], - [ 37, 40, 16, 1006 ], - [ 37, 40, 16, 1007 ], - [ 37, 40, 16, 33 ], - [ 37, 40, 16, 214 ], - [ 37, 40, 16, 1002 ], - [ 37, 40, 16, 260 ], - [ 37, 40, 16, 41 ], - [ 37, 40, 16, 45 ], - [ 37, 40, 17, 18 ], - [ 37, 40, 17, 48 ], - [ 37, 40, 17, 49 ], - [ 37, 40, 17, 50 ], - [ 37, 40, 17, 54 ], - [ 37, 40, 17, 53 ], - [ 37, 40, 17, 21 ], - [ 37, 40, 17, 20 ], - [ 37, 40, 17, 1001 ], - [ 37, 40, 17, 36 ], - [ 37, 40, 17, 1003 ], - [ 37, 40, 17, 1004 ], - [ 37, 40, 17, 1005 ], - [ 37, 40, 17, 1006 ], - [ 37, 40, 17, 1007 ], - [ 37, 40, 17, 33 ], - [ 37, 40, 17, 214 ], - [ 37, 40, 17, 1002 ], - [ 37, 40, 17, 260 ], - [ 37, 40, 17, 41 ], - [ 37, 40, 17, 45 ], - [ 37, 40, 18, 48 ], - [ 37, 40, 18, 49 ], - [ 37, 40, 18, 50 ], - [ 37, 40, 18, 54 ], - [ 37, 40, 18, 53 ], - [ 37, 40, 18, 21 ], - [ 37, 40, 18, 20 ], - [ 37, 40, 18, 1001 ], - [ 37, 40, 18, 36 ], - [ 37, 40, 18, 1003 ], - [ 37, 40, 18, 1004 ], - [ 37, 40, 18, 1005 ], - [ 37, 40, 18, 1006 ], - [ 37, 40, 18, 1007 ], - [ 37, 40, 18, 33 ], - [ 37, 40, 18, 214 ], - [ 37, 40, 18, 1002 ], - [ 37, 40, 18, 260 ], - [ 37, 40, 18, 41 ], - [ 37, 40, 18, 45 ], - [ 37, 40, 48, 49 ], - [ 37, 40, 48, 50 ], - [ 37, 40, 48, 54 ], - [ 37, 40, 48, 53 ], - [ 37, 40, 48, 21 ], - [ 37, 40, 48, 20 ], - [ 37, 40, 48, 1001 ], - [ 37, 40, 48, 36 ], - [ 37, 40, 48, 1003 ], - [ 37, 40, 48, 1004 ], - [ 37, 40, 48, 1005 ], - [ 37, 40, 48, 1006 ], - [ 37, 40, 48, 1007 ], - [ 37, 40, 48, 33 ], - [ 37, 40, 48, 214 ], - [ 37, 40, 48, 1002 ], - [ 37, 40, 48, 260 ], - [ 37, 40, 48, 41 ], - [ 37, 40, 48, 45 ], - [ 37, 40, 49, 50 ], - [ 37, 40, 49, 52 ], - [ 37, 40, 49, 54 ], - [ 37, 40, 49, 53 ], - [ 37, 40, 49, 21 ], - [ 37, 40, 49, 20 ], - [ 37, 40, 49, 1001 ], - [ 37, 40, 49, 36 ], - [ 37, 40, 49, 1003 ], - [ 37, 40, 49, 1004 ], - [ 37, 40, 49, 1005 ], - [ 37, 40, 49, 1006 ], - [ 37, 40, 49, 1007 ], - [ 37, 40, 49, 33 ], - [ 37, 40, 49, 214 ], - [ 37, 40, 49, 1002 ], - [ 37, 40, 49, 260 ], - [ 37, 40, 49, 41 ], - [ 37, 40, 49, 43 ], - [ 37, 40, 49, 45 ], - [ 37, 40, 50, 52 ], - [ 37, 40, 50, 54 ], - [ 37, 40, 50, 53 ], - [ 37, 40, 50, 21 ], - [ 37, 40, 50, 20 ], - [ 37, 40, 50, 1001 ], - [ 37, 40, 50, 36 ], - [ 37, 40, 50, 1003 ], - [ 37, 40, 50, 1004 ], - [ 37, 40, 50, 1005 ], - [ 37, 40, 50, 1006 ], - [ 37, 40, 50, 1007 ], - [ 37, 40, 50, 33 ], - [ 37, 40, 50, 214 ], - [ 37, 40, 50, 1002 ], - [ 37, 40, 50, 260 ], - [ 37, 40, 50, 41 ], - [ 37, 40, 50, 45 ], - [ 37, 40, 52, 21 ], - [ 37, 40, 52, 36 ], - [ 37, 40, 54, 53 ], - [ 37, 40, 54, 21 ], - [ 37, 40, 54, 1001 ], - [ 37, 40, 54, 36 ], - [ 37, 40, 54, 1003 ], - [ 37, 40, 54, 1004 ], - [ 37, 40, 54, 1005 ], - [ 37, 40, 54, 33 ], - [ 37, 40, 54, 214 ], - [ 37, 40, 54, 1002 ], - [ 37, 40, 54, 260 ], - [ 37, 40, 53, 21 ], - [ 37, 40, 53, 1001 ], - [ 37, 40, 53, 36 ], - [ 37, 40, 53, 1004 ], - [ 37, 40, 53, 33 ], - [ 37, 40, 53, 214 ], - [ 37, 40, 53, 1002 ], - [ 37, 40, 53, 260 ], - [ 37, 40, 21, 20 ], - [ 37, 40, 21, 1001 ], - [ 37, 40, 21, 36 ], - [ 37, 40, 21, 1003 ], - [ 37, 40, 21, 1004 ], - [ 37, 40, 21, 1005 ], - [ 37, 40, 21, 1006 ], - [ 37, 40, 21, 1007 ], - [ 37, 40, 21, 33 ], - [ 37, 40, 21, 214 ], - [ 37, 40, 21, 1002 ], - [ 37, 40, 21, 260 ], - [ 37, 40, 21, 41 ], - [ 37, 40, 21, 43 ], - [ 37, 40, 21, 45 ], - [ 37, 40, 20, 1001 ], - [ 37, 40, 20, 36 ], - [ 37, 40, 20, 214 ], - [ 37, 40, 20, 260 ], - [ 37, 40, 1001, 36 ], - [ 37, 40, 1001, 1003 ], - [ 37, 40, 1001, 1004 ], - [ 37, 40, 1001, 1005 ], - [ 37, 40, 1001, 1006 ], - [ 37, 40, 1001, 1007 ], - [ 37, 40, 1001, 33 ], - [ 37, 40, 1001, 214 ], - [ 37, 40, 1001, 260 ], - [ 37, 40, 1001, 41 ], - [ 37, 40, 1001, 45 ], - [ 37, 40, 36, 1003 ], - [ 37, 40, 36, 1004 ], - [ 37, 40, 36, 1005 ], - [ 37, 40, 36, 1006 ], - [ 37, 40, 36, 1007 ], - [ 37, 40, 36, 33 ], - [ 37, 40, 36, 214 ], - [ 37, 40, 36, 1002 ], - [ 37, 40, 36, 260 ], - [ 37, 40, 36, 41 ], - [ 37, 40, 36, 43 ], - [ 37, 40, 36, 45 ], - [ 37, 40, 1003, 214 ], - [ 37, 40, 1003, 1002 ], - [ 37, 40, 1003, 260 ], - [ 37, 40, 1004, 214 ], - [ 37, 40, 1004, 1002 ], - [ 37, 40, 1004, 260 ], - [ 37, 40, 1005, 214 ], - [ 37, 40, 1005, 260 ], - [ 37, 40, 1006, 214 ], - [ 37, 40, 1006, 260 ], - [ 37, 40, 1007, 214 ], - [ 37, 40, 1007, 260 ], - [ 37, 40, 33, 214 ], - [ 37, 40, 33, 1002 ], - [ 37, 40, 33, 260 ], - [ 37, 40, 214, 1002 ], - [ 37, 40, 214, 260 ], - [ 37, 40, 214, 41 ], - [ 37, 40, 214, 45 ], - [ 37, 40, 1002, 260 ], - [ 37, 40, 260, 41 ], - [ 37, 40, 260, 45 ], - [ 1011, 19, 40, 21 ], - [ 1011, 19, 40, 36 ], - [ 1011, 40, 16, 21 ], - [ 1011, 40, 16, 36 ], - [ 1011, 40, 17, 21 ], - [ 1011, 40, 17, 36 ], - [ 1011, 40, 18, 21 ], - [ 1011, 40, 18, 36 ], - [ 1011, 40, 48, 21 ], - [ 1011, 40, 48, 36 ], - [ 1011, 40, 49, 21 ], - [ 1011, 40, 49, 36 ], - [ 1011, 40, 50, 21 ], - [ 1011, 40, 50, 36 ], - [ 1011, 40, 21, 1001 ], - [ 1011, 40, 21, 36 ], - [ 1011, 40, 21, 214 ], - [ 1011, 40, 21, 260 ], - [ 1011, 40, 1001, 36 ], - [ 1011, 40, 36, 214 ], - [ 1011, 40, 36, 260 ], - [ 31, 19, 40, 21 ], - [ 31, 19, 40, 36 ], - [ 31, 40, 16, 17 ], - [ 31, 40, 16, 48 ], - [ 31, 40, 16, 49 ], - [ 31, 40, 16, 50 ], - [ 31, 40, 16, 21 ], - [ 31, 40, 16, 1001 ], - [ 31, 40, 16, 36 ], - [ 31, 40, 16, 214 ], - [ 31, 40, 17, 18 ], - [ 31, 40, 17, 48 ], - [ 31, 40, 17, 49 ], - [ 31, 40, 17, 50 ], - [ 31, 40, 17, 21 ], - [ 31, 40, 17, 1001 ], - [ 31, 40, 17, 36 ], - [ 31, 40, 17, 214 ], - [ 31, 40, 17, 260 ], - [ 31, 40, 18, 48 ], - [ 31, 40, 18, 49 ], - [ 31, 40, 18, 50 ], - [ 31, 40, 18, 21 ], - [ 31, 40, 18, 1001 ], - [ 31, 40, 18, 36 ], - [ 31, 40, 18, 214 ], - [ 31, 40, 48, 49 ], - [ 31, 40, 48, 50 ], - [ 31, 40, 48, 21 ], - [ 31, 40, 48, 1001 ], - [ 31, 40, 48, 36 ], - [ 31, 40, 48, 214 ], - [ 31, 40, 48, 260 ], - [ 31, 40, 49, 50 ], - [ 31, 40, 49, 21 ], - [ 31, 40, 49, 1001 ], - [ 31, 40, 49, 36 ], - [ 31, 40, 49, 214 ], - [ 31, 40, 49, 260 ], - [ 31, 40, 50, 21 ], - [ 31, 40, 50, 1001 ], - [ 31, 40, 50, 36 ], - [ 31, 40, 50, 214 ], - [ 31, 40, 50, 260 ], - [ 31, 40, 54, 21 ], - [ 31, 40, 54, 36 ], - [ 31, 40, 53, 21 ], - [ 31, 40, 53, 36 ], - [ 31, 40, 21, 1001 ], - [ 31, 40, 21, 36 ], - [ 31, 40, 21, 1004 ], - [ 31, 40, 21, 33 ], - [ 31, 40, 21, 214 ], - [ 31, 40, 21, 1002 ], - [ 31, 40, 21, 260 ], - [ 31, 40, 1001, 36 ], - [ 31, 40, 1001, 214 ], - [ 31, 40, 1001, 260 ], - [ 31, 40, 36, 1004 ], - [ 31, 40, 36, 33 ], - [ 31, 40, 36, 214 ], - [ 31, 40, 36, 1002 ], - [ 31, 40, 36, 260 ], - [ 31, 40, 214, 260 ], - [ 19, 40, 16, 17 ], - [ 19, 40, 16, 18 ], - [ 19, 40, 16, 48 ], - [ 19, 40, 16, 49 ], - [ 19, 40, 16, 50 ], - [ 19, 40, 16, 21 ], - [ 19, 40, 16, 1001 ], - [ 19, 40, 16, 36 ], - [ 19, 40, 16, 214 ], - [ 19, 40, 16, 260 ], - [ 19, 40, 17, 18 ], - [ 19, 40, 17, 48 ], - [ 19, 40, 17, 49 ], - [ 19, 40, 17, 50 ], - [ 19, 40, 17, 21 ], - [ 19, 40, 17, 1001 ], - [ 19, 40, 17, 36 ], - [ 19, 40, 17, 214 ], - [ 19, 40, 17, 260 ], - [ 19, 40, 18, 48 ], - [ 19, 40, 18, 49 ], - [ 19, 40, 18, 50 ], - [ 19, 40, 18, 21 ], - [ 19, 40, 18, 1001 ], - [ 19, 40, 18, 36 ], - [ 19, 40, 18, 214 ], - [ 19, 40, 18, 260 ], - [ 19, 40, 48, 49 ], - [ 19, 40, 48, 50 ], - [ 19, 40, 48, 21 ], - [ 19, 40, 48, 1001 ], - [ 19, 40, 48, 36 ], - [ 19, 40, 48, 214 ], - [ 19, 40, 48, 260 ], - [ 19, 40, 49, 50 ], - [ 19, 40, 49, 54 ], - [ 19, 40, 49, 53 ], - [ 19, 40, 49, 21 ], - [ 19, 40, 49, 1001 ], - [ 19, 40, 49, 36 ], - [ 19, 40, 49, 214 ], - [ 19, 40, 49, 1002 ], - [ 19, 40, 49, 260 ], - [ 19, 40, 50, 54 ], - [ 19, 40, 50, 21 ], - [ 19, 40, 50, 1001 ], - [ 19, 40, 50, 36 ], - [ 19, 40, 50, 214 ], - [ 19, 40, 50, 1002 ], - [ 19, 40, 50, 260 ], - [ 19, 40, 54, 21 ], - [ 19, 40, 54, 1001 ], - [ 19, 40, 54, 36 ], - [ 19, 40, 53, 21 ], - [ 19, 40, 53, 36 ], - [ 19, 40, 21, 20 ], - [ 19, 40, 21, 1001 ], - [ 19, 40, 21, 36 ], - [ 19, 40, 21, 1003 ], - [ 19, 40, 21, 1004 ], - [ 19, 40, 21, 1005 ], - [ 19, 40, 21, 1006 ], - [ 19, 40, 21, 1007 ], - [ 19, 40, 21, 33 ], - [ 19, 40, 21, 214 ], - [ 19, 40, 21, 1002 ], - [ 19, 40, 21, 260 ], - [ 19, 40, 21, 45 ], - [ 19, 40, 20, 36 ], - [ 19, 40, 1001, 36 ], - [ 19, 40, 1001, 214 ], - [ 19, 40, 1001, 260 ], - [ 19, 40, 36, 1003 ], - [ 19, 40, 36, 1004 ], - [ 19, 40, 36, 1005 ], - [ 19, 40, 36, 1006 ], - [ 19, 40, 36, 1007 ], - [ 19, 40, 36, 33 ], - [ 19, 40, 36, 214 ], - [ 19, 40, 36, 1002 ], - [ 19, 40, 36, 260 ], - [ 19, 40, 36, 45 ], - [ 19, 40, 214, 260 ], - [ 40, 16, 17, 18 ], - [ 40, 16, 17, 48 ], - [ 40, 16, 17, 49 ], - [ 40, 16, 17, 50 ], - [ 40, 16, 17, 54 ], - [ 40, 16, 17, 53 ], - [ 40, 16, 17, 21 ], - [ 40, 16, 17, 1001 ], - [ 40, 16, 17, 36 ], - [ 40, 16, 17, 1004 ], - [ 40, 16, 17, 33 ], - [ 40, 16, 17, 214 ], - [ 40, 16, 17, 1002 ], - [ 40, 16, 17, 260 ], - [ 40, 16, 18, 48 ], - [ 40, 16, 18, 49 ], - [ 40, 16, 18, 50 ], - [ 40, 16, 18, 54 ], - [ 40, 16, 18, 53 ], - [ 40, 16, 18, 21 ], - [ 40, 16, 18, 1001 ], - [ 40, 16, 18, 36 ], - [ 40, 16, 18, 214 ], - [ 40, 16, 18, 1002 ], - [ 40, 16, 18, 260 ], - [ 40, 16, 48, 49 ], - [ 40, 16, 48, 50 ], - [ 40, 16, 48, 54 ], - [ 40, 16, 48, 53 ], - [ 40, 16, 48, 21 ], - [ 40, 16, 48, 1001 ], - [ 40, 16, 48, 36 ], - [ 40, 16, 48, 1004 ], - [ 40, 16, 48, 33 ], - [ 40, 16, 48, 214 ], - [ 40, 16, 48, 1002 ], - [ 40, 16, 48, 260 ], - [ 40, 16, 49, 50 ], - [ 40, 16, 49, 54 ], - [ 40, 16, 49, 53 ], - [ 40, 16, 49, 21 ], - [ 40, 16, 49, 1001 ], - [ 40, 16, 49, 36 ], - [ 40, 16, 49, 1003 ], - [ 40, 16, 49, 1004 ], - [ 40, 16, 49, 1005 ], - [ 40, 16, 49, 33 ], - [ 40, 16, 49, 214 ], - [ 40, 16, 49, 1002 ], - [ 40, 16, 49, 260 ], - [ 40, 16, 50, 54 ], - [ 40, 16, 50, 53 ], - [ 40, 16, 50, 21 ], - [ 40, 16, 50, 1001 ], - [ 40, 16, 50, 36 ], - [ 40, 16, 50, 1003 ], - [ 40, 16, 50, 1004 ], - [ 40, 16, 50, 33 ], - [ 40, 16, 50, 214 ], - [ 40, 16, 50, 1002 ], - [ 40, 16, 50, 260 ], - [ 40, 16, 54, 21 ], - [ 40, 16, 54, 1001 ], - [ 40, 16, 54, 36 ], - [ 40, 16, 54, 214 ], - [ 40, 16, 54, 260 ], - [ 40, 16, 53, 21 ], - [ 40, 16, 53, 1001 ], - [ 40, 16, 53, 36 ], - [ 40, 16, 53, 214 ], - [ 40, 16, 53, 260 ], - [ 40, 16, 21, 20 ], - [ 40, 16, 21, 1001 ], - [ 40, 16, 21, 36 ], - [ 40, 16, 21, 1003 ], - [ 40, 16, 21, 1004 ], - [ 40, 16, 21, 1005 ], - [ 40, 16, 21, 1006 ], - [ 40, 16, 21, 1007 ], - [ 40, 16, 21, 33 ], - [ 40, 16, 21, 214 ], - [ 40, 16, 21, 1002 ], - [ 40, 16, 21, 260 ], - [ 40, 16, 21, 41 ], - [ 40, 16, 21, 45 ], - [ 40, 16, 20, 36 ], - [ 40, 16, 1001, 36 ], - [ 40, 16, 1001, 1004 ], - [ 40, 16, 1001, 33 ], - [ 40, 16, 1001, 214 ], - [ 40, 16, 1001, 260 ], - [ 40, 16, 36, 1003 ], - [ 40, 16, 36, 1004 ], - [ 40, 16, 36, 1005 ], - [ 40, 16, 36, 1006 ], - [ 40, 16, 36, 1007 ], - [ 40, 16, 36, 33 ], - [ 40, 16, 36, 214 ], - [ 40, 16, 36, 1002 ], - [ 40, 16, 36, 260 ], - [ 40, 16, 36, 41 ], - [ 40, 16, 36, 45 ], - [ 40, 16, 214, 1002 ], - [ 40, 16, 214, 260 ], - [ 40, 16, 1002, 260 ], - [ 40, 17, 18, 48 ], - [ 40, 17, 18, 49 ], - [ 40, 17, 18, 50 ], - [ 40, 17, 18, 54 ], - [ 40, 17, 18, 53 ], - [ 40, 17, 18, 21 ], - [ 40, 17, 18, 1001 ], - [ 40, 17, 18, 36 ], - [ 40, 17, 18, 1004 ], - [ 40, 17, 18, 33 ], - [ 40, 17, 18, 214 ], - [ 40, 17, 18, 1002 ], - [ 40, 17, 18, 260 ], - [ 40, 17, 48, 49 ], - [ 40, 17, 48, 50 ], - [ 40, 17, 48, 54 ], - [ 40, 17, 48, 53 ], - [ 40, 17, 48, 21 ], - [ 40, 17, 48, 1001 ], - [ 40, 17, 48, 36 ], - [ 40, 17, 48, 1004 ], - [ 40, 17, 48, 33 ], - [ 40, 17, 48, 214 ], - [ 40, 17, 48, 1002 ], - [ 40, 17, 48, 260 ], - [ 40, 17, 49, 50 ], - [ 40, 17, 49, 54 ], - [ 40, 17, 49, 53 ], - [ 40, 17, 49, 21 ], - [ 40, 17, 49, 1001 ], - [ 40, 17, 49, 36 ], - [ 40, 17, 49, 1003 ], - [ 40, 17, 49, 1004 ], - [ 40, 17, 49, 1005 ], - [ 40, 17, 49, 33 ], - [ 40, 17, 49, 214 ], - [ 40, 17, 49, 1002 ], - [ 40, 17, 49, 260 ], - [ 40, 17, 50, 54 ], - [ 40, 17, 50, 53 ], - [ 40, 17, 50, 21 ], - [ 40, 17, 50, 1001 ], - [ 40, 17, 50, 36 ], - [ 40, 17, 50, 1003 ], - [ 40, 17, 50, 1004 ], - [ 40, 17, 50, 1005 ], - [ 40, 17, 50, 33 ], - [ 40, 17, 50, 214 ], - [ 40, 17, 50, 1002 ], - [ 40, 17, 50, 260 ], - [ 40, 17, 54, 21 ], - [ 40, 17, 54, 1001 ], - [ 40, 17, 54, 36 ], - [ 40, 17, 54, 214 ], - [ 40, 17, 54, 260 ], - [ 40, 17, 53, 21 ], - [ 40, 17, 53, 1001 ], - [ 40, 17, 53, 36 ], - [ 40, 17, 53, 214 ], - [ 40, 17, 53, 260 ], - [ 40, 17, 21, 20 ], - [ 40, 17, 21, 1001 ], - [ 40, 17, 21, 36 ], - [ 40, 17, 21, 1003 ], - [ 40, 17, 21, 1004 ], - [ 40, 17, 21, 1005 ], - [ 40, 17, 21, 1006 ], - [ 40, 17, 21, 1007 ], - [ 40, 17, 21, 33 ], - [ 40, 17, 21, 214 ], - [ 40, 17, 21, 1002 ], - [ 40, 17, 21, 260 ], - [ 40, 17, 21, 41 ], - [ 40, 17, 21, 45 ], - [ 40, 17, 20, 36 ], - [ 40, 17, 1001, 36 ], - [ 40, 17, 1001, 1004 ], - [ 40, 17, 1001, 33 ], - [ 40, 17, 1001, 214 ], - [ 40, 17, 1001, 260 ], - [ 40, 17, 36, 1003 ], - [ 40, 17, 36, 1004 ], - [ 40, 17, 36, 1005 ], - [ 40, 17, 36, 1006 ], - [ 40, 17, 36, 1007 ], - [ 40, 17, 36, 33 ], - [ 40, 17, 36, 214 ], - [ 40, 17, 36, 1002 ], - [ 40, 17, 36, 260 ], - [ 40, 17, 36, 41 ], - [ 40, 17, 36, 45 ], - [ 40, 17, 1004, 214 ], - [ 40, 17, 1004, 260 ], - [ 40, 17, 33, 214 ], - [ 40, 17, 33, 260 ], - [ 40, 17, 214, 1002 ], - [ 40, 17, 214, 260 ], - [ 40, 17, 1002, 260 ], - [ 40, 18, 48, 49 ], - [ 40, 18, 48, 50 ], - [ 40, 18, 48, 54 ], - [ 40, 18, 48, 53 ], - [ 40, 18, 48, 21 ], - [ 40, 18, 48, 1001 ], - [ 40, 18, 48, 36 ], - [ 40, 18, 48, 1004 ], - [ 40, 18, 48, 33 ], - [ 40, 18, 48, 214 ], - [ 40, 18, 48, 1002 ], - [ 40, 18, 48, 260 ], - [ 40, 18, 49, 50 ], - [ 40, 18, 49, 54 ], - [ 40, 18, 49, 53 ], - [ 40, 18, 49, 21 ], - [ 40, 18, 49, 1001 ], - [ 40, 18, 49, 36 ], - [ 40, 18, 49, 1003 ], - [ 40, 18, 49, 1004 ], - [ 40, 18, 49, 1005 ], - [ 40, 18, 49, 33 ], - [ 40, 18, 49, 214 ], - [ 40, 18, 49, 1002 ], - [ 40, 18, 49, 260 ], - [ 40, 18, 50, 54 ], - [ 40, 18, 50, 53 ], - [ 40, 18, 50, 21 ], - [ 40, 18, 50, 1001 ], - [ 40, 18, 50, 36 ], - [ 40, 18, 50, 1003 ], - [ 40, 18, 50, 1004 ], - [ 40, 18, 50, 33 ], - [ 40, 18, 50, 214 ], - [ 40, 18, 50, 1002 ], - [ 40, 18, 50, 260 ], - [ 40, 18, 54, 21 ], - [ 40, 18, 54, 1001 ], - [ 40, 18, 54, 36 ], - [ 40, 18, 54, 214 ], - [ 40, 18, 54, 260 ], - [ 40, 18, 53, 21 ], - [ 40, 18, 53, 1001 ], - [ 40, 18, 53, 36 ], - [ 40, 18, 53, 214 ], - [ 40, 18, 53, 260 ], - [ 40, 18, 21, 20 ], - [ 40, 18, 21, 1001 ], - [ 40, 18, 21, 36 ], - [ 40, 18, 21, 1003 ], - [ 40, 18, 21, 1004 ], - [ 40, 18, 21, 1005 ], - [ 40, 18, 21, 1006 ], - [ 40, 18, 21, 1007 ], - [ 40, 18, 21, 33 ], - [ 40, 18, 21, 214 ], - [ 40, 18, 21, 1002 ], - [ 40, 18, 21, 260 ], - [ 40, 18, 21, 41 ], - [ 40, 18, 21, 45 ], - [ 40, 18, 20, 36 ], - [ 40, 18, 1001, 36 ], - [ 40, 18, 1001, 1004 ], - [ 40, 18, 1001, 33 ], - [ 40, 18, 1001, 214 ], - [ 40, 18, 1001, 260 ], - [ 40, 18, 36, 1003 ], - [ 40, 18, 36, 1004 ], - [ 40, 18, 36, 1005 ], - [ 40, 18, 36, 1006 ], - [ 40, 18, 36, 1007 ], - [ 40, 18, 36, 33 ], - [ 40, 18, 36, 214 ], - [ 40, 18, 36, 1002 ], - [ 40, 18, 36, 260 ], - [ 40, 18, 36, 41 ], - [ 40, 18, 36, 45 ], - [ 40, 18, 214, 1002 ], - [ 40, 18, 214, 260 ], - [ 40, 18, 1002, 260 ], - [ 40, 48, 49, 50 ], - [ 40, 48, 49, 54 ], - [ 40, 48, 49, 53 ], - [ 40, 48, 49, 21 ], - [ 40, 48, 49, 1001 ], - [ 40, 48, 49, 36 ], - [ 40, 48, 49, 1003 ], - [ 40, 48, 49, 1004 ], - [ 40, 48, 49, 1005 ], - [ 40, 48, 49, 33 ], - [ 40, 48, 49, 214 ], - [ 40, 48, 49, 1002 ], - [ 40, 48, 49, 260 ], - [ 40, 48, 50, 54 ], - [ 40, 48, 50, 53 ], - [ 40, 48, 50, 21 ], - [ 40, 48, 50, 1001 ], - [ 40, 48, 50, 36 ], - [ 40, 48, 50, 1003 ], - [ 40, 48, 50, 1004 ], - [ 40, 48, 50, 1005 ], - [ 40, 48, 50, 33 ], - [ 40, 48, 50, 214 ], - [ 40, 48, 50, 1002 ], - [ 40, 48, 50, 260 ], - [ 40, 48, 54, 21 ], - [ 40, 48, 54, 1001 ], - [ 40, 48, 54, 36 ], - [ 40, 48, 54, 214 ], - [ 40, 48, 54, 260 ], - [ 40, 48, 53, 21 ], - [ 40, 48, 53, 1001 ], - [ 40, 48, 53, 36 ], - [ 40, 48, 53, 214 ], - [ 40, 48, 53, 260 ], - [ 40, 48, 21, 20 ], - [ 40, 48, 21, 1001 ], - [ 40, 48, 21, 36 ], - [ 40, 48, 21, 1003 ], - [ 40, 48, 21, 1004 ], - [ 40, 48, 21, 1005 ], - [ 40, 48, 21, 1006 ], - [ 40, 48, 21, 1007 ], - [ 40, 48, 21, 33 ], - [ 40, 48, 21, 214 ], - [ 40, 48, 21, 1002 ], - [ 40, 48, 21, 260 ], - [ 40, 48, 21, 41 ], - [ 40, 48, 21, 45 ], - [ 40, 48, 20, 36 ], - [ 40, 48, 1001, 36 ], - [ 40, 48, 1001, 1004 ], - [ 40, 48, 1001, 33 ], - [ 40, 48, 1001, 214 ], - [ 40, 48, 1001, 260 ], - [ 40, 48, 36, 1003 ], - [ 40, 48, 36, 1004 ], - [ 40, 48, 36, 1005 ], - [ 40, 48, 36, 1006 ], - [ 40, 48, 36, 1007 ], - [ 40, 48, 36, 33 ], - [ 40, 48, 36, 214 ], - [ 40, 48, 36, 1002 ], - [ 40, 48, 36, 260 ], - [ 40, 48, 36, 41 ], - [ 40, 48, 36, 45 ], - [ 40, 48, 1004, 214 ], - [ 40, 48, 1004, 260 ], - [ 40, 48, 33, 214 ], - [ 40, 48, 33, 260 ], - [ 40, 48, 214, 1002 ], - [ 40, 48, 214, 260 ], - [ 40, 48, 1002, 260 ], - [ 40, 49, 50, 54 ], - [ 40, 49, 50, 53 ], - [ 40, 49, 50, 21 ], - [ 40, 49, 50, 20 ], - [ 40, 49, 50, 1001 ], - [ 40, 49, 50, 36 ], - [ 40, 49, 50, 1003 ], - [ 40, 49, 50, 1004 ], - [ 40, 49, 50, 1005 ], - [ 40, 49, 50, 1007 ], - [ 40, 49, 50, 33 ], - [ 40, 49, 50, 214 ], - [ 40, 49, 50, 1002 ], - [ 40, 49, 50, 260 ], - [ 40, 49, 52, 21 ], - [ 40, 49, 52, 36 ], - [ 40, 49, 54, 21 ], - [ 40, 49, 54, 1001 ], - [ 40, 49, 54, 36 ], - [ 40, 49, 54, 214 ], - [ 40, 49, 54, 260 ], - [ 40, 49, 53, 21 ], - [ 40, 49, 53, 1001 ], - [ 40, 49, 53, 36 ], - [ 40, 49, 53, 214 ], - [ 40, 49, 53, 260 ], - [ 40, 49, 21, 20 ], - [ 40, 49, 21, 1001 ], - [ 40, 49, 21, 36 ], - [ 40, 49, 21, 1003 ], - [ 40, 49, 21, 1004 ], - [ 40, 49, 21, 1005 ], - [ 40, 49, 21, 1006 ], - [ 40, 49, 21, 1007 ], - [ 40, 49, 21, 33 ], - [ 40, 49, 21, 214 ], - [ 40, 49, 21, 1002 ], - [ 40, 49, 21, 260 ], - [ 40, 49, 21, 41 ], - [ 40, 49, 21, 43 ], - [ 40, 49, 21, 45 ], - [ 40, 49, 20, 1001 ], - [ 40, 49, 20, 36 ], - [ 40, 49, 1001, 36 ], - [ 40, 49, 1001, 1003 ], - [ 40, 49, 1001, 1004 ], - [ 40, 49, 1001, 1005 ], - [ 40, 49, 1001, 1007 ], - [ 40, 49, 1001, 33 ], - [ 40, 49, 1001, 214 ], - [ 40, 49, 1001, 260 ], - [ 40, 49, 36, 1003 ], - [ 40, 49, 36, 1004 ], - [ 40, 49, 36, 1005 ], - [ 40, 49, 36, 1006 ], - [ 40, 49, 36, 1007 ], - [ 40, 49, 36, 33 ], - [ 40, 49, 36, 214 ], - [ 40, 49, 36, 1002 ], - [ 40, 49, 36, 260 ], - [ 40, 49, 36, 41 ], - [ 40, 49, 36, 43 ], - [ 40, 49, 36, 45 ], - [ 40, 49, 1003, 214 ], - [ 40, 49, 1003, 260 ], - [ 40, 49, 1004, 214 ], - [ 40, 49, 1004, 260 ], - [ 40, 49, 1005, 214 ], - [ 40, 49, 1005, 260 ], - [ 40, 49, 33, 214 ], - [ 40, 49, 33, 260 ], - [ 40, 49, 214, 1002 ], - [ 40, 49, 214, 260 ], - [ 40, 49, 1002, 260 ], - [ 40, 50, 52, 21 ], - [ 40, 50, 52, 36 ], - [ 40, 50, 54, 21 ], - [ 40, 50, 54, 1001 ], - [ 40, 50, 54, 36 ], - [ 40, 50, 54, 214 ], - [ 40, 50, 54, 260 ], - [ 40, 50, 53, 21 ], - [ 40, 50, 53, 1001 ], - [ 40, 50, 53, 36 ], - [ 40, 50, 53, 214 ], - [ 40, 50, 53, 260 ], - [ 40, 50, 21, 20 ], - [ 40, 50, 21, 1001 ], - [ 40, 50, 21, 36 ], - [ 40, 50, 21, 1003 ], - [ 40, 50, 21, 1004 ], - [ 40, 50, 21, 1005 ], - [ 40, 50, 21, 1006 ], - [ 40, 50, 21, 1007 ], - [ 40, 50, 21, 33 ], - [ 40, 50, 21, 214 ], - [ 40, 50, 21, 1002 ], - [ 40, 50, 21, 260 ], - [ 40, 50, 21, 41 ], - [ 40, 50, 21, 43 ], - [ 40, 50, 21, 45 ], - [ 40, 50, 20, 36 ], - [ 40, 50, 1001, 36 ], - [ 40, 50, 1001, 1003 ], - [ 40, 50, 1001, 1004 ], - [ 40, 50, 1001, 1005 ], - [ 40, 50, 1001, 33 ], - [ 40, 50, 1001, 214 ], - [ 40, 50, 1001, 260 ], - [ 40, 50, 36, 1003 ], - [ 40, 50, 36, 1004 ], - [ 40, 50, 36, 1005 ], - [ 40, 50, 36, 1006 ], - [ 40, 50, 36, 1007 ], - [ 40, 50, 36, 33 ], - [ 40, 50, 36, 214 ], - [ 40, 50, 36, 1002 ], - [ 40, 50, 36, 260 ], - [ 40, 50, 36, 41 ], - [ 40, 50, 36, 43 ], - [ 40, 50, 36, 45 ], - [ 40, 50, 1003, 214 ], - [ 40, 50, 1003, 260 ], - [ 40, 50, 1004, 214 ], - [ 40, 50, 1004, 260 ], - [ 40, 50, 33, 214 ], - [ 40, 50, 33, 260 ], - [ 40, 50, 214, 1002 ], - [ 40, 50, 214, 260 ], - [ 40, 50, 1002, 260 ], - [ 40, 52, 21, 1001 ], - [ 40, 52, 21, 36 ], - [ 40, 54, 53, 21 ], - [ 40, 54, 21, 1001 ], - [ 40, 54, 21, 36 ], - [ 40, 54, 21, 1003 ], - [ 40, 54, 21, 1004 ], - [ 40, 54, 21, 1005 ], - [ 40, 54, 21, 33 ], - [ 40, 54, 21, 214 ], - [ 40, 54, 21, 1002 ], - [ 40, 54, 21, 260 ], - [ 40, 54, 1001, 36 ], - [ 40, 54, 1001, 214 ], - [ 40, 54, 1001, 260 ], - [ 40, 54, 36, 1003 ], - [ 40, 54, 36, 1004 ], - [ 40, 54, 36, 1005 ], - [ 40, 54, 36, 33 ], - [ 40, 54, 36, 214 ], - [ 40, 54, 36, 1002 ], - [ 40, 54, 214, 260 ], - [ 40, 53, 21, 1001 ], - [ 40, 53, 21, 36 ], - [ 40, 53, 21, 1004 ], - [ 40, 53, 21, 33 ], - [ 40, 53, 21, 214 ], - [ 40, 53, 21, 1002 ], - [ 40, 53, 21, 260 ], - [ 40, 53, 1001, 36 ], - [ 40, 53, 1001, 214 ], - [ 40, 53, 1001, 260 ], - [ 40, 53, 36, 1004 ], - [ 40, 53, 36, 33 ], - [ 40, 53, 36, 214 ], - [ 40, 53, 36, 1002 ], - [ 40, 53, 214, 260 ], - [ 40, 21, 20, 1001 ], - [ 40, 21, 20, 36 ], - [ 40, 21, 20, 214 ], - [ 40, 21, 20, 260 ], - [ 40, 21, 1001, 36 ], - [ 40, 21, 1001, 1003 ], - [ 40, 21, 1001, 1004 ], - [ 40, 21, 1001, 1005 ], - [ 40, 21, 1001, 1006 ], - [ 40, 21, 1001, 1007 ], - [ 40, 21, 1001, 33 ], - [ 40, 21, 1001, 214 ], - [ 40, 21, 1001, 260 ], - [ 40, 21, 1001, 41 ], - [ 40, 21, 1001, 45 ], - [ 40, 21, 36, 1003 ], - [ 40, 21, 36, 1004 ], - [ 40, 21, 36, 1005 ], - [ 40, 21, 36, 1006 ], - [ 40, 21, 36, 1007 ], - [ 40, 21, 36, 33 ], - [ 40, 21, 36, 214 ], - [ 40, 21, 36, 1002 ], - [ 40, 21, 36, 260 ], - [ 40, 21, 36, 41 ], - [ 40, 21, 36, 43 ], - [ 40, 21, 36, 45 ], - [ 40, 21, 1003, 214 ], - [ 40, 21, 1003, 1002 ], - [ 40, 21, 1003, 260 ], - [ 40, 21, 1004, 33 ], - [ 40, 21, 1004, 214 ], - [ 40, 21, 1004, 1002 ], - [ 40, 21, 1004, 260 ], - [ 40, 21, 1005, 214 ], - [ 40, 21, 1005, 1002 ], - [ 40, 21, 1005, 260 ], - [ 40, 21, 1006, 214 ], - [ 40, 21, 1006, 260 ], - [ 40, 21, 1007, 214 ], - [ 40, 21, 1007, 260 ], - [ 40, 21, 33, 214 ], - [ 40, 21, 33, 1002 ], - [ 40, 21, 33, 260 ], - [ 40, 21, 214, 1002 ], - [ 40, 21, 214, 260 ], - [ 40, 21, 214, 41 ], - [ 40, 21, 214, 45 ], - [ 40, 21, 1002, 260 ], - [ 40, 21, 260, 41 ], - [ 40, 21, 260, 45 ], - [ 40, 20, 1001, 36 ], - [ 40, 20, 36, 214 ], - [ 40, 20, 36, 260 ], - [ 40, 1001, 36, 1003 ], - [ 40, 1001, 36, 1004 ], - [ 40, 1001, 36, 1005 ], - [ 40, 1001, 36, 1006 ], - [ 40, 1001, 36, 1007 ], - [ 40, 1001, 36, 33 ], - [ 40, 1001, 36, 214 ], - [ 40, 1001, 36, 260 ], - [ 40, 1001, 36, 41 ], - [ 40, 1001, 36, 45 ], - [ 40, 1001, 1004, 214 ], - [ 40, 1001, 1004, 260 ], - [ 40, 1001, 33, 214 ], - [ 40, 1001, 33, 260 ], - [ 40, 1001, 214, 260 ], - [ 40, 36, 1003, 214 ], - [ 40, 36, 1003, 1002 ], - [ 40, 36, 1003, 260 ], - [ 40, 36, 1004, 33 ], - [ 40, 36, 1004, 214 ], - [ 40, 36, 1004, 1002 ], - [ 40, 36, 1004, 260 ], - [ 40, 36, 1005, 214 ], - [ 40, 36, 1005, 260 ], - [ 40, 36, 1006, 214 ], - [ 40, 36, 1006, 260 ], - [ 40, 36, 1007, 214 ], - [ 40, 36, 1007, 260 ], - [ 40, 36, 33, 214 ], - [ 40, 36, 33, 1002 ], - [ 40, 36, 33, 260 ], - [ 40, 36, 214, 1002 ], - [ 40, 36, 214, 260 ], - [ 40, 36, 214, 41 ], - [ 40, 36, 214, 45 ], - [ 40, 36, 1002, 260 ], - [ 40, 36, 260, 45 ], - [ 40, 214, 1002, 260 ] - ] - } - }, - "EMPRTOMB.TR2": { - "40": { - "2": [ - [ 1009, 1000, 27, 40 ], - [ 1009, 1000, 15, 40 ], - [ 1009, 1000, 37, 40 ], - [ 1009, 1000, 40, 21 ], - [ 1009, 1000, 40, 36 ], - [ 1009, 46, 37, 40 ], - [ 1009, 46, 40, 21 ], - [ 1009, 27, 38, 40 ], - [ 1009, 27, 15, 40 ], - [ 1009, 27, 47, 40 ], - [ 1009, 27, 37, 40 ], - [ 1009, 27, 19, 40 ], - [ 1009, 27, 40, 16 ], - [ 1009, 27, 40, 17 ], - [ 1009, 27, 40, 18 ], - [ 1009, 27, 40, 48 ], - [ 1009, 27, 40, 49 ], - [ 1009, 27, 40, 50 ], - [ 1009, 27, 40, 21 ], - [ 1009, 27, 40, 1001 ], - [ 1009, 27, 40, 214 ], - [ 1009, 27, 40, 1002 ], - [ 1009, 38, 15, 40 ], - [ 1009, 38, 47, 40 ], - [ 1009, 38, 37, 40 ], - [ 1009, 38, 19, 40 ], - [ 1009, 38, 40, 16 ], - [ 1009, 38, 40, 17 ], - [ 1009, 38, 40, 18 ], - [ 1009, 38, 40, 48 ], - [ 1009, 38, 40, 49 ], - [ 1009, 38, 40, 50 ], - [ 1009, 38, 40, 21 ], - [ 1009, 38, 40, 29 ], - [ 1009, 38, 40, 25 ], - [ 1009, 38, 40, 1001 ], - [ 1009, 38, 40, 36 ], - [ 1009, 38, 40, 214 ], - [ 1009, 38, 40, 260 ], - [ 1009, 38, 40, 26 ], - [ 1009, 15, 47, 40 ], - [ 1009, 15, 37, 40 ], - [ 1009, 15, 19, 40 ], - [ 1009, 15, 40, 16 ], - [ 1009, 15, 40, 17 ], - [ 1009, 15, 40, 18 ], - [ 1009, 15, 40, 48 ], - [ 1009, 15, 40, 49 ], - [ 1009, 15, 40, 50 ], - [ 1009, 15, 40, 54 ], - [ 1009, 15, 40, 21 ], - [ 1009, 15, 40, 29 ], - [ 1009, 15, 40, 25 ], - [ 1009, 15, 40, 1001 ], - [ 1009, 15, 40, 36 ], - [ 1009, 15, 40, 214 ], - [ 1009, 15, 40, 1002 ], - [ 1009, 15, 40, 260 ], - [ 1009, 15, 40, 26 ], - [ 1009, 47, 37, 40 ], - [ 1009, 47, 40, 16 ], - [ 1009, 47, 40, 17 ], - [ 1009, 47, 40, 18 ], - [ 1009, 47, 40, 48 ], - [ 1009, 47, 40, 49 ], - [ 1009, 47, 40, 50 ], - [ 1009, 47, 40, 21 ], - [ 1009, 47, 40, 1001 ], - [ 1009, 47, 40, 36 ], - [ 1009, 47, 40, 214 ], - [ 1009, 47, 40, 260 ], - [ 1009, 47, 40, 26 ], - [ 1009, 1014, 37, 40 ], - [ 1009, 1014, 40, 21 ], - [ 1009, 1014, 40, 36 ], - [ 1009, 37, 31, 40 ], - [ 1009, 37, 19, 40 ], - [ 1009, 37, 40, 16 ], - [ 1009, 37, 40, 17 ], - [ 1009, 37, 40, 18 ], - [ 1009, 37, 40, 48 ], - [ 1009, 37, 40, 49 ], - [ 1009, 37, 40, 50 ], - [ 1009, 37, 40, 54 ], - [ 1009, 37, 40, 53 ], - [ 1009, 37, 40, 21 ], - [ 1009, 37, 40, 29 ], - [ 1009, 37, 40, 25 ], - [ 1009, 37, 40, 20 ], - [ 1009, 37, 40, 1001 ], - [ 1009, 37, 40, 36 ], - [ 1009, 37, 40, 1003 ], - [ 1009, 37, 40, 1004 ], - [ 1009, 37, 40, 1005 ], - [ 1009, 37, 40, 1007 ], - [ 1009, 37, 40, 33 ], - [ 1009, 37, 40, 214 ], - [ 1009, 37, 40, 1002 ], - [ 1009, 37, 40, 260 ], - [ 1009, 37, 40, 26 ], - [ 1009, 31, 40, 21 ], - [ 1009, 31, 40, 36 ], - [ 1009, 19, 40, 16 ], - [ 1009, 19, 40, 17 ], - [ 1009, 19, 40, 18 ], - [ 1009, 19, 40, 48 ], - [ 1009, 19, 40, 49 ], - [ 1009, 19, 40, 50 ], - [ 1009, 19, 40, 21 ], - [ 1009, 19, 40, 1001 ], - [ 1009, 19, 40, 36 ], - [ 1009, 19, 40, 214 ], - [ 1009, 19, 40, 260 ], - [ 1009, 19, 40, 26 ], - [ 1009, 40, 16, 17 ], - [ 1009, 40, 16, 18 ], - [ 1009, 40, 16, 48 ], - [ 1009, 40, 16, 49 ], - [ 1009, 40, 16, 50 ], - [ 1009, 40, 16, 21 ], - [ 1009, 40, 16, 1001 ], - [ 1009, 40, 16, 36 ], - [ 1009, 40, 16, 214 ], - [ 1009, 40, 16, 260 ], - [ 1009, 40, 16, 26 ], - [ 1009, 40, 17, 18 ], - [ 1009, 40, 17, 48 ], - [ 1009, 40, 17, 49 ], - [ 1009, 40, 17, 50 ], - [ 1009, 40, 17, 21 ], - [ 1009, 40, 17, 1001 ], - [ 1009, 40, 17, 36 ], - [ 1009, 40, 17, 214 ], - [ 1009, 40, 17, 260 ], - [ 1009, 40, 17, 26 ], - [ 1009, 40, 18, 48 ], - [ 1009, 40, 18, 49 ], - [ 1009, 40, 18, 50 ], - [ 1009, 40, 18, 21 ], - [ 1009, 40, 18, 1001 ], - [ 1009, 40, 18, 36 ], - [ 1009, 40, 18, 214 ], - [ 1009, 40, 18, 260 ], - [ 1009, 40, 18, 26 ], - [ 1009, 40, 48, 49 ], - [ 1009, 40, 48, 50 ], - [ 1009, 40, 48, 21 ], - [ 1009, 40, 48, 29 ], - [ 1009, 40, 48, 1001 ], - [ 1009, 40, 48, 36 ], - [ 1009, 40, 48, 214 ], - [ 1009, 40, 48, 260 ], - [ 1009, 40, 48, 26 ], - [ 1009, 40, 49, 50 ], - [ 1009, 40, 49, 21 ], - [ 1009, 40, 49, 29 ], - [ 1009, 40, 49, 25 ], - [ 1009, 40, 49, 1001 ], - [ 1009, 40, 49, 36 ], - [ 1009, 40, 49, 214 ], - [ 1009, 40, 49, 260 ], - [ 1009, 40, 49, 26 ], - [ 1009, 40, 50, 21 ], - [ 1009, 40, 50, 29 ], - [ 1009, 40, 50, 25 ], - [ 1009, 40, 50, 1001 ], - [ 1009, 40, 50, 36 ], - [ 1009, 40, 50, 214 ], - [ 1009, 40, 50, 260 ], - [ 1009, 40, 50, 26 ], - [ 1009, 40, 54, 21 ], - [ 1009, 40, 53, 21 ], - [ 1009, 40, 21, 29 ], - [ 1009, 40, 21, 25 ], - [ 1009, 40, 21, 20 ], - [ 1009, 40, 21, 1001 ], - [ 1009, 40, 21, 36 ], - [ 1009, 40, 21, 1003 ], - [ 1009, 40, 21, 1004 ], - [ 1009, 40, 21, 1005 ], - [ 1009, 40, 21, 1007 ], - [ 1009, 40, 21, 33 ], - [ 1009, 40, 21, 214 ], - [ 1009, 40, 21, 1002 ], - [ 1009, 40, 21, 260 ], - [ 1009, 40, 21, 26 ], - [ 1009, 40, 29, 1001 ], - [ 1009, 40, 25, 1001 ], - [ 1009, 40, 20, 36 ], - [ 1009, 40, 1001, 36 ], - [ 1009, 40, 1001, 214 ], - [ 1009, 40, 1001, 260 ], - [ 1009, 40, 1001, 26 ], - [ 1009, 40, 36, 1003 ], - [ 1009, 40, 36, 1004 ], - [ 1009, 40, 36, 1005 ], - [ 1009, 40, 36, 1007 ], - [ 1009, 40, 36, 33 ], - [ 1009, 40, 36, 214 ], - [ 1009, 40, 36, 1002 ], - [ 1009, 40, 214, 260 ], - [ 1009, 40, 214, 26 ], - [ 1008, 27, 38, 40 ], - [ 1008, 27, 15, 40 ], - [ 1008, 27, 37, 40 ], - [ 1008, 27, 40, 16 ], - [ 1008, 27, 40, 17 ], - [ 1008, 27, 40, 18 ], - [ 1008, 27, 40, 48 ], - [ 1008, 27, 40, 49 ], - [ 1008, 27, 40, 50 ], - [ 1008, 27, 40, 21 ], - [ 1008, 27, 40, 1001 ], - [ 1008, 27, 40, 214 ], - [ 1008, 38, 15, 40 ], - [ 1008, 38, 37, 40 ], - [ 1008, 38, 40, 21 ], - [ 1008, 38, 40, 36 ], - [ 1008, 38, 40, 26 ], - [ 1008, 15, 37, 40 ], - [ 1008, 15, 40, 17 ], - [ 1008, 15, 40, 48 ], - [ 1008, 15, 40, 49 ], - [ 1008, 15, 40, 50 ], - [ 1008, 15, 40, 21 ], - [ 1008, 15, 40, 1001 ], - [ 1008, 15, 40, 36 ], - [ 1008, 15, 40, 26 ], - [ 1008, 47, 37, 40 ], - [ 1008, 47, 40, 21 ], - [ 1008, 47, 40, 36 ], - [ 1008, 37, 19, 40 ], - [ 1008, 37, 40, 16 ], - [ 1008, 37, 40, 17 ], - [ 1008, 37, 40, 18 ], - [ 1008, 37, 40, 48 ], - [ 1008, 37, 40, 49 ], - [ 1008, 37, 40, 50 ], - [ 1008, 37, 40, 21 ], - [ 1008, 37, 40, 29 ], - [ 1008, 37, 40, 25 ], - [ 1008, 37, 40, 1001 ], - [ 1008, 37, 40, 36 ], - [ 1008, 37, 40, 214 ], - [ 1008, 37, 40, 260 ], - [ 1008, 37, 40, 26 ], - [ 1008, 19, 40, 21 ], - [ 1008, 19, 40, 36 ], - [ 1008, 40, 16, 21 ], - [ 1008, 40, 16, 36 ], - [ 1008, 40, 17, 21 ], - [ 1008, 40, 17, 36 ], - [ 1008, 40, 18, 21 ], - [ 1008, 40, 18, 36 ], - [ 1008, 40, 48, 21 ], - [ 1008, 40, 48, 36 ], - [ 1008, 40, 49, 21 ], - [ 1008, 40, 49, 36 ], - [ 1008, 40, 49, 26 ], - [ 1008, 40, 50, 21 ], - [ 1008, 40, 50, 36 ], - [ 1008, 40, 50, 26 ], - [ 1008, 40, 21, 29 ], - [ 1008, 40, 21, 25 ], - [ 1008, 40, 21, 1001 ], - [ 1008, 40, 21, 36 ], - [ 1008, 40, 21, 214 ], - [ 1008, 40, 21, 260 ], - [ 1008, 40, 21, 26 ], - [ 1008, 40, 1001, 36 ], - [ 1008, 40, 1001, 26 ], - [ 1008, 40, 36, 214 ], - [ 1010, 1000, 27, 40 ], - [ 1010, 1000, 15, 40 ], - [ 1010, 1000, 37, 40 ], - [ 1010, 1000, 40, 21 ], - [ 1010, 1000, 40, 36 ], - [ 1010, 46, 37, 40 ], - [ 1010, 46, 40, 21 ], - [ 1010, 27, 38, 40 ], - [ 1010, 27, 15, 40 ], - [ 1010, 27, 47, 40 ], - [ 1010, 27, 37, 40 ], - [ 1010, 27, 19, 40 ], - [ 1010, 27, 40, 16 ], - [ 1010, 27, 40, 17 ], - [ 1010, 27, 40, 18 ], - [ 1010, 27, 40, 48 ], - [ 1010, 27, 40, 49 ], - [ 1010, 27, 40, 50 ], - [ 1010, 27, 40, 21 ], - [ 1010, 27, 40, 1001 ], - [ 1010, 27, 40, 214 ], - [ 1010, 27, 40, 1002 ], - [ 1010, 38, 15, 40 ], - [ 1010, 38, 47, 40 ], - [ 1010, 38, 37, 40 ], - [ 1010, 38, 19, 40 ], - [ 1010, 38, 40, 16 ], - [ 1010, 38, 40, 17 ], - [ 1010, 38, 40, 18 ], - [ 1010, 38, 40, 48 ], - [ 1010, 38, 40, 49 ], - [ 1010, 38, 40, 50 ], - [ 1010, 38, 40, 21 ], - [ 1010, 38, 40, 29 ], - [ 1010, 38, 40, 25 ], - [ 1010, 38, 40, 1001 ], - [ 1010, 38, 40, 36 ], - [ 1010, 38, 40, 214 ], - [ 1010, 38, 40, 260 ], - [ 1010, 38, 40, 26 ], - [ 1010, 15, 47, 40 ], - [ 1010, 15, 37, 40 ], - [ 1010, 15, 19, 40 ], - [ 1010, 15, 40, 16 ], - [ 1010, 15, 40, 17 ], - [ 1010, 15, 40, 18 ], - [ 1010, 15, 40, 48 ], - [ 1010, 15, 40, 49 ], - [ 1010, 15, 40, 50 ], - [ 1010, 15, 40, 54 ], - [ 1010, 15, 40, 21 ], - [ 1010, 15, 40, 29 ], - [ 1010, 15, 40, 25 ], - [ 1010, 15, 40, 1001 ], - [ 1010, 15, 40, 36 ], - [ 1010, 15, 40, 214 ], - [ 1010, 15, 40, 1002 ], - [ 1010, 15, 40, 260 ], - [ 1010, 15, 40, 26 ], - [ 1010, 47, 37, 40 ], - [ 1010, 47, 40, 16 ], - [ 1010, 47, 40, 17 ], - [ 1010, 47, 40, 18 ], - [ 1010, 47, 40, 48 ], - [ 1010, 47, 40, 49 ], - [ 1010, 47, 40, 50 ], - [ 1010, 47, 40, 21 ], - [ 1010, 47, 40, 1001 ], - [ 1010, 47, 40, 36 ], - [ 1010, 47, 40, 214 ], - [ 1010, 47, 40, 260 ], - [ 1010, 47, 40, 26 ], - [ 1010, 1014, 37, 40 ], - [ 1010, 1014, 40, 21 ], - [ 1010, 1014, 40, 36 ], - [ 1010, 37, 31, 40 ], - [ 1010, 37, 19, 40 ], - [ 1010, 37, 40, 16 ], - [ 1010, 37, 40, 17 ], - [ 1010, 37, 40, 18 ], - [ 1010, 37, 40, 48 ], - [ 1010, 37, 40, 49 ], - [ 1010, 37, 40, 50 ], - [ 1010, 37, 40, 54 ], - [ 1010, 37, 40, 53 ], - [ 1010, 37, 40, 21 ], - [ 1010, 37, 40, 29 ], - [ 1010, 37, 40, 25 ], - [ 1010, 37, 40, 20 ], - [ 1010, 37, 40, 1001 ], - [ 1010, 37, 40, 36 ], - [ 1010, 37, 40, 1003 ], - [ 1010, 37, 40, 1004 ], - [ 1010, 37, 40, 1005 ], - [ 1010, 37, 40, 1007 ], - [ 1010, 37, 40, 33 ], - [ 1010, 37, 40, 214 ], - [ 1010, 37, 40, 1002 ], - [ 1010, 37, 40, 260 ], - [ 1010, 37, 40, 26 ], - [ 1010, 31, 40, 21 ], - [ 1010, 31, 40, 36 ], - [ 1010, 19, 40, 16 ], - [ 1010, 19, 40, 17 ], - [ 1010, 19, 40, 18 ], - [ 1010, 19, 40, 48 ], - [ 1010, 19, 40, 49 ], - [ 1010, 19, 40, 50 ], - [ 1010, 19, 40, 21 ], - [ 1010, 19, 40, 1001 ], - [ 1010, 19, 40, 36 ], - [ 1010, 19, 40, 214 ], - [ 1010, 19, 40, 260 ], - [ 1010, 19, 40, 26 ], - [ 1010, 40, 16, 17 ], - [ 1010, 40, 16, 18 ], - [ 1010, 40, 16, 48 ], - [ 1010, 40, 16, 49 ], - [ 1010, 40, 16, 50 ], - [ 1010, 40, 16, 21 ], - [ 1010, 40, 16, 1001 ], - [ 1010, 40, 16, 36 ], - [ 1010, 40, 16, 214 ], - [ 1010, 40, 16, 260 ], - [ 1010, 40, 16, 26 ], - [ 1010, 40, 17, 18 ], - [ 1010, 40, 17, 48 ], - [ 1010, 40, 17, 49 ], - [ 1010, 40, 17, 50 ], - [ 1010, 40, 17, 21 ], - [ 1010, 40, 17, 1001 ], - [ 1010, 40, 17, 36 ], - [ 1010, 40, 17, 214 ], - [ 1010, 40, 17, 260 ], - [ 1010, 40, 17, 26 ], - [ 1010, 40, 18, 48 ], - [ 1010, 40, 18, 49 ], - [ 1010, 40, 18, 50 ], - [ 1010, 40, 18, 21 ], - [ 1010, 40, 18, 1001 ], - [ 1010, 40, 18, 36 ], - [ 1010, 40, 18, 214 ], - [ 1010, 40, 18, 260 ], - [ 1010, 40, 18, 26 ], - [ 1010, 40, 48, 49 ], - [ 1010, 40, 48, 50 ], - [ 1010, 40, 48, 21 ], - [ 1010, 40, 48, 29 ], - [ 1010, 40, 48, 1001 ], - [ 1010, 40, 48, 36 ], - [ 1010, 40, 48, 214 ], - [ 1010, 40, 48, 260 ], - [ 1010, 40, 48, 26 ], - [ 1010, 40, 49, 50 ], - [ 1010, 40, 49, 21 ], - [ 1010, 40, 49, 29 ], - [ 1010, 40, 49, 25 ], - [ 1010, 40, 49, 1001 ], - [ 1010, 40, 49, 36 ], - [ 1010, 40, 49, 214 ], - [ 1010, 40, 49, 260 ], - [ 1010, 40, 49, 26 ], - [ 1010, 40, 50, 21 ], - [ 1010, 40, 50, 29 ], - [ 1010, 40, 50, 25 ], - [ 1010, 40, 50, 1001 ], - [ 1010, 40, 50, 36 ], - [ 1010, 40, 50, 214 ], - [ 1010, 40, 50, 260 ], - [ 1010, 40, 50, 26 ], - [ 1010, 40, 54, 21 ], - [ 1010, 40, 53, 21 ], - [ 1010, 40, 21, 29 ], - [ 1010, 40, 21, 25 ], - [ 1010, 40, 21, 20 ], - [ 1010, 40, 21, 1001 ], - [ 1010, 40, 21, 36 ], - [ 1010, 40, 21, 1003 ], - [ 1010, 40, 21, 1004 ], - [ 1010, 40, 21, 1005 ], - [ 1010, 40, 21, 1007 ], - [ 1010, 40, 21, 33 ], - [ 1010, 40, 21, 214 ], - [ 1010, 40, 21, 1002 ], - [ 1010, 40, 21, 260 ], - [ 1010, 40, 21, 26 ], - [ 1010, 40, 29, 1001 ], - [ 1010, 40, 25, 1001 ], - [ 1010, 40, 20, 36 ], - [ 1010, 40, 1001, 36 ], - [ 1010, 40, 1001, 214 ], - [ 1010, 40, 1001, 260 ], - [ 1010, 40, 1001, 26 ], - [ 1010, 40, 36, 1003 ], - [ 1010, 40, 36, 1004 ], - [ 1010, 40, 36, 1005 ], - [ 1010, 40, 36, 1007 ], - [ 1010, 40, 36, 33 ], - [ 1010, 40, 36, 214 ], - [ 1010, 40, 36, 1002 ], - [ 1010, 40, 214, 260 ], - [ 1010, 40, 214, 26 ], - [ 1000, 27, 15, 40 ], - [ 1000, 27, 37, 40 ], - [ 1000, 27, 40, 21 ], - [ 1000, 27, 40, 36 ], - [ 1000, 37, 40, 26 ], - [ 1000, 40, 21, 26 ], - [ 1000, 40, 36, 26 ], - [ 46, 27, 37, 40 ], - [ 46, 27, 40, 21 ], - [ 46, 37, 40, 26 ], - [ 46, 40, 21, 26 ], - [ 27, 38, 15, 40 ], - [ 27, 38, 47, 40 ], - [ 27, 38, 37, 40 ], - [ 27, 38, 19, 40 ], - [ 27, 38, 40, 16 ], - [ 27, 38, 40, 17 ], - [ 27, 38, 40, 18 ], - [ 27, 38, 40, 48 ], - [ 27, 38, 40, 49 ], - [ 27, 38, 40, 50 ], - [ 27, 38, 40, 21 ], - [ 27, 38, 40, 29 ], - [ 27, 38, 40, 25 ], - [ 27, 38, 40, 1001 ], - [ 27, 38, 40, 36 ], - [ 27, 38, 40, 214 ], - [ 27, 38, 40, 260 ], - [ 27, 38, 40, 26 ], - [ 27, 15, 47, 40 ], - [ 27, 15, 37, 40 ], - [ 27, 15, 19, 40 ], - [ 27, 15, 40, 16 ], - [ 27, 15, 40, 17 ], - [ 27, 15, 40, 18 ], - [ 27, 15, 40, 48 ], - [ 27, 15, 40, 49 ], - [ 27, 15, 40, 50 ], - [ 27, 15, 40, 54 ], - [ 27, 15, 40, 21 ], - [ 27, 15, 40, 29 ], - [ 27, 15, 40, 25 ], - [ 27, 15, 40, 1001 ], - [ 27, 15, 40, 36 ], - [ 27, 15, 40, 214 ], - [ 27, 15, 40, 1002 ], - [ 27, 15, 40, 260 ], - [ 27, 15, 40, 26 ], - [ 27, 47, 37, 40 ], - [ 27, 47, 40, 16 ], - [ 27, 47, 40, 17 ], - [ 27, 47, 40, 18 ], - [ 27, 47, 40, 48 ], - [ 27, 47, 40, 49 ], - [ 27, 47, 40, 50 ], - [ 27, 47, 40, 21 ], - [ 27, 47, 40, 1001 ], - [ 27, 47, 40, 36 ], - [ 27, 47, 40, 214 ], - [ 27, 47, 40, 260 ], - [ 27, 47, 40, 26 ], - [ 27, 1014, 37, 40 ], - [ 27, 1014, 40, 21 ], - [ 27, 1014, 40, 36 ], - [ 27, 37, 31, 40 ], - [ 27, 37, 19, 40 ], - [ 27, 37, 40, 16 ], - [ 27, 37, 40, 17 ], - [ 27, 37, 40, 18 ], - [ 27, 37, 40, 48 ], - [ 27, 37, 40, 49 ], - [ 27, 37, 40, 50 ], - [ 27, 37, 40, 54 ], - [ 27, 37, 40, 53 ], - [ 27, 37, 40, 21 ], - [ 27, 37, 40, 29 ], - [ 27, 37, 40, 25 ], - [ 27, 37, 40, 20 ], - [ 27, 37, 40, 1001 ], - [ 27, 37, 40, 36 ], - [ 27, 37, 40, 1003 ], - [ 27, 37, 40, 1004 ], - [ 27, 37, 40, 1005 ], - [ 27, 37, 40, 1007 ], - [ 27, 37, 40, 33 ], - [ 27, 37, 40, 214 ], - [ 27, 37, 40, 1002 ], - [ 27, 37, 40, 260 ], - [ 27, 37, 40, 26 ], - [ 27, 31, 40, 21 ], - [ 27, 31, 40, 36 ], - [ 27, 19, 40, 16 ], - [ 27, 19, 40, 17 ], - [ 27, 19, 40, 18 ], - [ 27, 19, 40, 48 ], - [ 27, 19, 40, 49 ], - [ 27, 19, 40, 50 ], - [ 27, 19, 40, 21 ], - [ 27, 19, 40, 1001 ], - [ 27, 19, 40, 36 ], - [ 27, 19, 40, 214 ], - [ 27, 19, 40, 260 ], - [ 27, 19, 40, 26 ], - [ 27, 40, 16, 17 ], - [ 27, 40, 16, 18 ], - [ 27, 40, 16, 48 ], - [ 27, 40, 16, 49 ], - [ 27, 40, 16, 50 ], - [ 27, 40, 16, 21 ], - [ 27, 40, 16, 1001 ], - [ 27, 40, 16, 36 ], - [ 27, 40, 16, 214 ], - [ 27, 40, 16, 260 ], - [ 27, 40, 16, 26 ], - [ 27, 40, 17, 18 ], - [ 27, 40, 17, 48 ], - [ 27, 40, 17, 49 ], - [ 27, 40, 17, 50 ], - [ 27, 40, 17, 21 ], - [ 27, 40, 17, 29 ], - [ 27, 40, 17, 1001 ], - [ 27, 40, 17, 36 ], - [ 27, 40, 17, 214 ], - [ 27, 40, 17, 260 ], - [ 27, 40, 17, 26 ], - [ 27, 40, 18, 48 ], - [ 27, 40, 18, 49 ], - [ 27, 40, 18, 50 ], - [ 27, 40, 18, 21 ], - [ 27, 40, 18, 1001 ], - [ 27, 40, 18, 36 ], - [ 27, 40, 18, 214 ], - [ 27, 40, 18, 260 ], - [ 27, 40, 18, 26 ], - [ 27, 40, 48, 49 ], - [ 27, 40, 48, 50 ], - [ 27, 40, 48, 21 ], - [ 27, 40, 48, 29 ], - [ 27, 40, 48, 1001 ], - [ 27, 40, 48, 36 ], - [ 27, 40, 48, 214 ], - [ 27, 40, 48, 260 ], - [ 27, 40, 48, 26 ], - [ 27, 40, 49, 50 ], - [ 27, 40, 49, 21 ], - [ 27, 40, 49, 29 ], - [ 27, 40, 49, 25 ], - [ 27, 40, 49, 1001 ], - [ 27, 40, 49, 36 ], - [ 27, 40, 49, 214 ], - [ 27, 40, 49, 260 ], - [ 27, 40, 49, 26 ], - [ 27, 40, 50, 21 ], - [ 27, 40, 50, 29 ], - [ 27, 40, 50, 25 ], - [ 27, 40, 50, 1001 ], - [ 27, 40, 50, 36 ], - [ 27, 40, 50, 214 ], - [ 27, 40, 50, 260 ], - [ 27, 40, 50, 26 ], - [ 27, 40, 54, 21 ], - [ 27, 40, 53, 21 ], - [ 27, 40, 21, 29 ], - [ 27, 40, 21, 25 ], - [ 27, 40, 21, 20 ], - [ 27, 40, 21, 1001 ], - [ 27, 40, 21, 36 ], - [ 27, 40, 21, 1003 ], - [ 27, 40, 21, 1004 ], - [ 27, 40, 21, 1005 ], - [ 27, 40, 21, 1007 ], - [ 27, 40, 21, 33 ], - [ 27, 40, 21, 214 ], - [ 27, 40, 21, 1002 ], - [ 27, 40, 21, 260 ], - [ 27, 40, 21, 26 ], - [ 27, 40, 29, 1001 ], - [ 27, 40, 25, 1001 ], - [ 27, 40, 20, 36 ], - [ 27, 40, 1001, 36 ], - [ 27, 40, 1001, 214 ], - [ 27, 40, 1001, 260 ], - [ 27, 40, 1001, 26 ], - [ 27, 40, 36, 1003 ], - [ 27, 40, 36, 1004 ], - [ 27, 40, 36, 1005 ], - [ 27, 40, 36, 1007 ], - [ 27, 40, 36, 33 ], - [ 27, 40, 36, 214 ], - [ 27, 40, 36, 1002 ], - [ 27, 40, 214, 260 ], - [ 27, 40, 214, 26 ], - [ 38, 15, 40, 29 ], - [ 38, 15, 40, 25 ], - [ 38, 15, 40, 26 ], - [ 38, 47, 40, 26 ], - [ 38, 37, 40, 29 ], - [ 38, 37, 40, 25 ], - [ 38, 37, 40, 26 ], - [ 38, 19, 40, 26 ], - [ 38, 40, 16, 26 ], - [ 38, 40, 17, 26 ], - [ 38, 40, 18, 26 ], - [ 38, 40, 48, 26 ], - [ 38, 40, 49, 26 ], - [ 38, 40, 50, 26 ], - [ 38, 40, 21, 29 ], - [ 38, 40, 21, 25 ], - [ 38, 40, 21, 26 ], - [ 38, 40, 29, 36 ], - [ 38, 40, 29, 26 ], - [ 38, 40, 25, 36 ], - [ 38, 40, 1001, 26 ], - [ 38, 40, 36, 26 ], - [ 38, 40, 214, 26 ], - [ 38, 40, 260, 26 ], - [ 15, 47, 40, 26 ], - [ 15, 37, 40, 29 ], - [ 15, 37, 40, 25 ], - [ 15, 37, 40, 26 ], - [ 15, 19, 40, 26 ], - [ 15, 40, 16, 26 ], - [ 15, 40, 17, 26 ], - [ 15, 40, 18, 26 ], - [ 15, 40, 48, 26 ], - [ 15, 40, 49, 29 ], - [ 15, 40, 49, 25 ], - [ 15, 40, 49, 26 ], - [ 15, 40, 50, 29 ], - [ 15, 40, 50, 25 ], - [ 15, 40, 50, 26 ], - [ 15, 40, 21, 29 ], - [ 15, 40, 21, 25 ], - [ 15, 40, 21, 26 ], - [ 15, 40, 29, 1001 ], - [ 15, 40, 29, 36 ], - [ 15, 40, 29, 26 ], - [ 15, 40, 25, 36 ], - [ 15, 40, 25, 26 ], - [ 15, 40, 1001, 26 ], - [ 15, 40, 36, 26 ], - [ 15, 40, 214, 26 ], - [ 15, 40, 260, 26 ], - [ 47, 37, 40, 29 ], - [ 47, 37, 40, 25 ], - [ 47, 37, 40, 26 ], - [ 47, 40, 17, 26 ], - [ 47, 40, 48, 26 ], - [ 47, 40, 49, 26 ], - [ 47, 40, 50, 26 ], - [ 47, 40, 21, 29 ], - [ 47, 40, 21, 25 ], - [ 47, 40, 21, 26 ], - [ 47, 40, 29, 36 ], - [ 47, 40, 25, 36 ], - [ 47, 40, 1001, 26 ], - [ 47, 40, 36, 26 ], - [ 47, 40, 214, 26 ], - [ 1014, 37, 40, 26 ], - [ 1014, 40, 21, 26 ], - [ 1014, 40, 36, 26 ], - [ 37, 31, 40, 26 ], - [ 37, 19, 40, 29 ], - [ 37, 19, 40, 25 ], - [ 37, 19, 40, 26 ], - [ 37, 40, 16, 29 ], - [ 37, 40, 16, 25 ], - [ 37, 40, 16, 26 ], - [ 37, 40, 17, 29 ], - [ 37, 40, 17, 25 ], - [ 37, 40, 17, 26 ], - [ 37, 40, 18, 29 ], - [ 37, 40, 18, 25 ], - [ 37, 40, 18, 26 ], - [ 37, 40, 48, 29 ], - [ 37, 40, 48, 25 ], - [ 37, 40, 48, 26 ], - [ 37, 40, 49, 29 ], - [ 37, 40, 49, 25 ], - [ 37, 40, 49, 26 ], - [ 37, 40, 50, 29 ], - [ 37, 40, 50, 25 ], - [ 37, 40, 50, 26 ], - [ 37, 40, 54, 26 ], - [ 37, 40, 53, 26 ], - [ 37, 40, 21, 29 ], - [ 37, 40, 21, 25 ], - [ 37, 40, 21, 26 ], - [ 37, 40, 29, 1001 ], - [ 37, 40, 29, 36 ], - [ 37, 40, 29, 214 ], - [ 37, 40, 29, 260 ], - [ 37, 40, 29, 26 ], - [ 37, 40, 25, 1001 ], - [ 37, 40, 25, 36 ], - [ 37, 40, 25, 214 ], - [ 37, 40, 25, 260 ], - [ 37, 40, 25, 26 ], - [ 37, 40, 1001, 26 ], - [ 37, 40, 36, 26 ], - [ 37, 40, 1003, 26 ], - [ 37, 40, 1004, 26 ], - [ 37, 40, 33, 26 ], - [ 37, 40, 214, 26 ], - [ 37, 40, 1002, 26 ], - [ 37, 40, 260, 26 ], - [ 31, 40, 21, 26 ], - [ 31, 40, 36, 26 ], - [ 19, 40, 49, 26 ], - [ 19, 40, 50, 26 ], - [ 19, 40, 21, 29 ], - [ 19, 40, 21, 25 ], - [ 19, 40, 21, 26 ], - [ 19, 40, 29, 36 ], - [ 19, 40, 25, 36 ], - [ 19, 40, 1001, 26 ], - [ 19, 40, 36, 26 ], - [ 40, 16, 17, 26 ], - [ 40, 16, 18, 26 ], - [ 40, 16, 48, 26 ], - [ 40, 16, 49, 26 ], - [ 40, 16, 50, 26 ], - [ 40, 16, 21, 29 ], - [ 40, 16, 21, 25 ], - [ 40, 16, 21, 26 ], - [ 40, 16, 29, 36 ], - [ 40, 16, 25, 36 ], - [ 40, 16, 1001, 26 ], - [ 40, 16, 36, 26 ], - [ 40, 16, 214, 26 ], - [ 40, 16, 260, 26 ], - [ 40, 17, 18, 26 ], - [ 40, 17, 48, 26 ], - [ 40, 17, 49, 26 ], - [ 40, 17, 50, 26 ], - [ 40, 17, 21, 29 ], - [ 40, 17, 21, 25 ], - [ 40, 17, 21, 26 ], - [ 40, 17, 29, 36 ], - [ 40, 17, 25, 36 ], - [ 40, 17, 1001, 26 ], - [ 40, 17, 36, 26 ], - [ 40, 17, 214, 26 ], - [ 40, 17, 260, 26 ], - [ 40, 18, 48, 26 ], - [ 40, 18, 49, 26 ], - [ 40, 18, 50, 26 ], - [ 40, 18, 21, 29 ], - [ 40, 18, 21, 25 ], - [ 40, 18, 21, 26 ], - [ 40, 18, 29, 36 ], - [ 40, 18, 25, 36 ], - [ 40, 18, 1001, 26 ], - [ 40, 18, 36, 26 ], - [ 40, 18, 214, 26 ], - [ 40, 18, 260, 26 ], - [ 40, 48, 49, 26 ], - [ 40, 48, 50, 26 ], - [ 40, 48, 21, 29 ], - [ 40, 48, 21, 25 ], - [ 40, 48, 21, 26 ], - [ 40, 48, 29, 36 ], - [ 40, 48, 25, 36 ], - [ 40, 48, 1001, 26 ], - [ 40, 48, 36, 26 ], - [ 40, 48, 214, 26 ], - [ 40, 48, 260, 26 ], - [ 40, 49, 50, 26 ], - [ 40, 49, 21, 29 ], - [ 40, 49, 21, 25 ], - [ 40, 49, 21, 26 ], - [ 40, 49, 29, 36 ], - [ 40, 49, 29, 26 ], - [ 40, 49, 25, 36 ], - [ 40, 49, 1001, 26 ], - [ 40, 49, 36, 26 ], - [ 40, 49, 214, 26 ], - [ 40, 49, 260, 26 ], - [ 40, 50, 21, 29 ], - [ 40, 50, 21, 25 ], - [ 40, 50, 21, 26 ], - [ 40, 50, 29, 36 ], - [ 40, 50, 29, 26 ], - [ 40, 50, 25, 36 ], - [ 40, 50, 1001, 26 ], - [ 40, 50, 36, 26 ], - [ 40, 50, 214, 26 ], - [ 40, 50, 260, 26 ], - [ 40, 54, 21, 26 ], - [ 40, 53, 21, 26 ], - [ 40, 21, 29, 1001 ], - [ 40, 21, 29, 36 ], - [ 40, 21, 29, 214 ], - [ 40, 21, 29, 260 ], - [ 40, 21, 29, 26 ], - [ 40, 21, 25, 1001 ], - [ 40, 21, 25, 36 ], - [ 40, 21, 25, 214 ], - [ 40, 21, 25, 260 ], - [ 40, 21, 25, 26 ], - [ 40, 21, 1001, 26 ], - [ 40, 21, 36, 26 ], - [ 40, 21, 1003, 26 ], - [ 40, 21, 1004, 26 ], - [ 40, 21, 1005, 26 ], - [ 40, 21, 33, 26 ], - [ 40, 21, 214, 26 ], - [ 40, 21, 1002, 26 ], - [ 40, 21, 260, 26 ], - [ 40, 29, 1001, 36 ], - [ 40, 29, 36, 214 ], - [ 40, 25, 1001, 36 ], - [ 40, 25, 36, 214 ], - [ 40, 1001, 36, 26 ], - [ 40, 1001, 214, 26 ], - [ 40, 1001, 260, 26 ], - [ 40, 36, 1003, 26 ], - [ 40, 36, 1004, 26 ], - [ 40, 36, 33, 26 ], - [ 40, 36, 214, 26 ], - [ 40, 36, 1002, 26 ], - [ 40, 214, 260, 26 ] - ] - } - }, - "HOUSE.TR2": { - "40": { - "0": [ - [ 40, 20, 1009, 37 ], - [ 40, 20, 1010, 37 ], - [ 40, 20, 38, 37 ], - [ 40, 20, 37, 49 ], - [ 40, 20, 37, 50 ] - ], - "1": [ - [ 40, 20, 1009, 21 ], - [ 40, 20, 1010, 21 ], - [ 40, 20, 38, 21 ], - [ 40, 20, 38, 36 ], - [ 40, 20, 37, 21 ], - [ 40, 20, 37, 36 ], - [ 40, 20, 49, 21 ], - [ 40, 20, 49, 36 ], - [ 40, 20, 50, 21 ], - [ 40, 20, 50, 36 ], - [ 40, 20, 21, 1001 ], - [ 40, 20, 21, 36 ], - [ 40, 20, 1001, 36 ] - ] - } - } -} \ No newline at end of file diff --git a/TRRandomizerCore/Utilities/TR2EnemyUtilities.cs b/TRRandomizerCore/Utilities/TR2EnemyUtilities.cs index 4dab9b6c3..83622dbce 100644 --- a/TRRandomizerCore/Utilities/TR2EnemyUtilities.cs +++ b/TRRandomizerCore/Utilities/TR2EnemyUtilities.cs @@ -139,31 +139,6 @@ public static int GetRestrictedEnemyTotalTypeCount(RandoDifficulty difficulty) return _restrictedEnemyLevelCountsTechnical.Count; } - public static List> GetPermittedCombinations( - string levelName, TR2Type type, RandoDifficulty difficulty, bool remastered) - { - if (!remastered) - { - return null; - } - - if (_specialEnemyCombinations.TryGetValue(levelName, out var typeDict) - && typeDict.TryGetValue(type, out var difficultyDict)) - { - if (difficultyDict.TryGetValue(difficulty, out var result)) - { - return result; - } - - if (difficultyDict.TryGetValue(RandoDifficulty.DefaultOrNoRestrictions, out result)) - { - return result; - } - } - - return null; - } - public static Dictionary> PrepareEnemyGameTracker(bool docileBirdMonster, RandoDifficulty difficulty) { Dictionary> tracker = new(); @@ -296,10 +271,6 @@ public static EnemyDifficulty GetEnemyDifficulty(List enemies) private static readonly Dictionary>> _restrictedEnemyZonesDefault; private static readonly Dictionary>> _restrictedEnemyZonesTechnical; - // This allows us to define specific combinations of enemies if the leader is chosen for the rando pool. For - // example, the dragon in HSH will only work with 20 possible combinations. - private static readonly Dictionary>>>> _specialEnemyCombinations; - // We also limit the count for some - more than 1 dragon tends to cause crashes if they spawn close together. // Winston is an easter egg so maybe keep it low. private static readonly Dictionary _restrictedEnemyLevelCountsTechnical = new() @@ -317,10 +288,7 @@ public static EnemyDifficulty GetEnemyDifficulty(List enemies) { [TR2Type.Winston] = 2, }; - private static readonly Dictionary _restrictedEnemyGameCountsDefault = new() - { - [TR2Type.BirdMonster] = 3, - }; + private static readonly Dictionary _restrictedEnemyGameCountsDefault = []; // Predefined absolute limits for skidoo drivers private static readonly Dictionary _skidooLimits = new() @@ -345,10 +313,6 @@ static TR2EnemyUtilities() ( File.ReadAllText("Resources/TR2/Restrictions/enemy_restrictions_technical.json") ); - _specialEnemyCombinations = JsonConvert.DeserializeObject>>>>> - ( - File.ReadAllText("Resources/TR2/Restrictions/enemy_restrictions_special.json") - ); ExpandZones(_restrictedEnemyZonesDefault.Select(z => z.Value)); ExpandZones(_restrictedEnemyZonesTechnical.Select(z => z.Value));