diff --git a/Content.Client/Administration/AdminNameOverlay.cs b/Content.Client/Administration/AdminNameOverlay.cs
index c6e6a75293..3c968ec17c 100644
--- a/Content.Client/Administration/AdminNameOverlay.cs
+++ b/Content.Client/Administration/AdminNameOverlay.cs
@@ -85,10 +85,10 @@ internal sealed class AdminNameOverlay : Overlay
var currentOffset = Vector2.Zero;
- args.ScreenHandle.DrawString(_font, screenCoordinates + currentOffset, playerInfo.Username, uiScale, playerInfo.Connected ? Color.Yellow : Color.White);
+ args.ScreenHandle.DrawString(_font, screenCoordinates + currentOffset, playerInfo.CharacterName, uiScale, playerInfo.Connected ? Color.Aquamarine : Color.White);
currentOffset += lineoffset;
- args.ScreenHandle.DrawString(_font, screenCoordinates + currentOffset, playerInfo.CharacterName, uiScale, playerInfo.Connected ? Color.Aquamarine : Color.White);
+ args.ScreenHandle.DrawString(_font, screenCoordinates + currentOffset, playerInfo.Username, uiScale, playerInfo.Connected ? Color.Yellow : Color.White);
currentOffset += lineoffset;
if (!string.IsNullOrEmpty(playerInfo.PlaytimeString) && playTime)
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs b/Content.Client/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs
new file mode 100644
index 0000000000..85a5659c4b
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs
@@ -0,0 +1,5 @@
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Client.CartridgeLoader.Cartridges;
+
+public sealed class NanoTaskCartridgeSystem : SharedNanoTaskCartridgeSystem;
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml
new file mode 100644
index 0000000000..7d7c635de8
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml.cs b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml.cs
new file mode 100644
index 0000000000..5edbee9d44
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemControl.xaml.cs
@@ -0,0 +1,33 @@
+using Robust.Client.AutoGenerated;
+using Robust.Client.Graphics;
+using Robust.Client.UserInterface;
+using Robust.Client.UserInterface.XAML;
+using Robust.Shared.Maths;
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Client.CartridgeLoader.Cartridges;
+
+///
+/// Represents a single control for a single NanoTask item
+///
+[GenerateTypedNameReferences]
+public sealed partial class NanoTaskItemControl : Control
+{
+ public Action? OnMainPressed;
+ public Action? OnDonePressed;
+
+ public NanoTaskItemControl(NanoTaskItemAndId item)
+ {
+ RobustXamlLoader.Load(this);
+
+ TaskLabel.Text = item.Data.Description;
+ TaskLabel.FontColorOverride = Color.White;
+ TaskForLabel.Text = item.Data.TaskIsFor;
+
+ MainButton.OnPressed += _ => OnMainPressed?.Invoke(item.Id);
+ DoneButton.OnPressed += _ => OnDonePressed?.Invoke(item.Id);
+
+ MainButton.Disabled = item.Data.IsTaskDone;
+ DoneButton.Text = item.Data.IsTaskDone ? Loc.GetString("nano-task-ui-revert-done") : Loc.GetString("nano-task-ui-done");
+ }
+}
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml
new file mode 100644
index 0000000000..ad72df05d9
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml.cs b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml.cs
new file mode 100644
index 0000000000..124b7b7eaa
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskItemPopup.xaml.cs
@@ -0,0 +1,109 @@
+using System.Linq;
+using Robust.Client.AutoGenerated;
+using Robust.Client.UserInterface.CustomControls;
+using Robust.Client.UserInterface.XAML;
+using Robust.Client.UserInterface.Controls;
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Client.CartridgeLoader.Cartridges;
+
+///
+/// Popup displayed to edit a NanoTask item
+///
+[GenerateTypedNameReferences]
+public sealed partial class NanoTaskItemPopup : DefaultWindow
+{
+ private readonly ButtonGroup _priorityGroup = new();
+ private int? _editingTaskId = null;
+
+ public Action? TaskSaved;
+ public Action? TaskDeleted;
+ public Action? TaskCreated;
+ public Action? TaskPrinted;
+
+ private NanoTaskItem MakeItem()
+ {
+ return new(
+ description: DescriptionInput.Text,
+ taskIsFor: RequesterInput.Text,
+ isTaskDone: false,
+ priority: _priorityGroup.Pressed switch {
+ var item when item == LowButton => NanoTaskPriority.Low,
+ var item when item == MediumButton => NanoTaskPriority.Medium,
+ var item when item == HighButton => NanoTaskPriority.High,
+ _ => NanoTaskPriority.Medium,
+ }
+ );
+ }
+
+ public NanoTaskItemPopup()
+ {
+ RobustXamlLoader.Load(this);
+
+ LowButton.Group = _priorityGroup;
+ MediumButton.Group = _priorityGroup;
+ HighButton.Group = _priorityGroup;
+
+ CancelButton.OnPressed += _ => Close();
+ DeleteButton.OnPressed += _ =>
+ {
+ if (_editingTaskId is int id)
+ {
+ TaskDeleted?.Invoke(id);
+ }
+ };
+ PrintButton.OnPressed += _ =>
+ {
+ TaskPrinted?.Invoke(MakeItem());
+ };
+ SaveButton.OnPressed += _ =>
+ {
+ if (_editingTaskId is int id)
+ {
+ TaskSaved?.Invoke(id, MakeItem());
+ }
+ else
+ {
+ TaskCreated?.Invoke(MakeItem());
+ }
+ };
+
+ DescriptionInput.OnTextChanged += args =>
+ {
+ if (args.Text.Length > NanoTaskItem.MaximumStringLength)
+ DescriptionInput.Text = args.Text[..NanoTaskItem.MaximumStringLength];
+ };
+ RequesterInput.OnTextChanged += args =>
+ {
+ if (args.Text.Length > NanoTaskItem.MaximumStringLength)
+ RequesterInput.Text = args.Text[..NanoTaskItem.MaximumStringLength];
+ };
+ }
+
+ public void SetEditingTaskId(int? id)
+ {
+ _editingTaskId = id;
+ DeleteButton.Visible = id is not null;
+ }
+
+ public void ResetInputs(NanoTaskItem? item)
+ {
+ if (item is NanoTaskItem task)
+ {
+ var button = task.Priority switch {
+ NanoTaskPriority.High => HighButton,
+ NanoTaskPriority.Medium => MediumButton,
+ NanoTaskPriority.Low => LowButton,
+ };
+ button.Pressed = true;
+ DescriptionInput.Text = task.Description;
+ RequesterInput.Text = task.TaskIsFor;
+ }
+ else
+ {
+ MediumButton.Pressed = true;
+ DescriptionInput.Text = "";
+ RequesterInput.Text = "";
+ }
+ }
+}
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskUi.cs b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUi.cs
new file mode 100644
index 0000000000..ac08051c89
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUi.cs
@@ -0,0 +1,82 @@
+using System.Linq;
+using Content.Client.UserInterface.Fragments;
+using Content.Shared.CartridgeLoader;
+using Content.Shared.CartridgeLoader.Cartridges;
+using Robust.Client.GameObjects;
+using Robust.Client.UserInterface;
+
+namespace Content.Client.CartridgeLoader.Cartridges;
+
+///
+/// UI fragment responsible for displaying NanoTask controls in a PDA and coordinating with the NanoTaskCartridgeSystem for state
+///
+public sealed partial class NanoTaskUi : UIFragment
+{
+ private NanoTaskUiFragment? _fragment;
+ private NanoTaskItemPopup? _popup;
+
+ public override Control GetUIFragmentRoot()
+ {
+ return _fragment!;
+ }
+
+ public override void Setup(BoundUserInterface userInterface, EntityUid? fragmentOwner)
+ {
+ _fragment = new NanoTaskUiFragment();
+ _popup = new NanoTaskItemPopup();
+ _fragment.NewTask += () =>
+ {
+ _popup.ResetInputs(null);
+ _popup.SetEditingTaskId(null);
+ _popup.OpenCentered();
+ };
+ _fragment.OpenTask += id =>
+ {
+ if (_fragment.Tasks.Find(task => task.Id == id) is not NanoTaskItemAndId task)
+ return;
+
+ _popup.ResetInputs(task.Data);
+ _popup.SetEditingTaskId(task.Id);
+ _popup.OpenCentered();
+ };
+ _fragment.ToggleTaskCompletion += id =>
+ {
+ if (_fragment.Tasks.Find(task => task.Id == id) is not NanoTaskItemAndId task)
+ return;
+
+ userInterface.SendMessage(new CartridgeUiMessage(new NanoTaskUiMessageEvent(new NanoTaskUpdateTask(new(id, new(
+ description: task.Data.Description,
+ taskIsFor: task.Data.TaskIsFor,
+ isTaskDone: !task.Data.IsTaskDone,
+ priority: task.Data.Priority
+ ))))));
+ };
+ _popup.TaskSaved += (id, data) =>
+ {
+ userInterface.SendMessage(new CartridgeUiMessage(new NanoTaskUiMessageEvent(new NanoTaskUpdateTask(new(id, data)))));
+ _popup.Close();
+ };
+ _popup.TaskDeleted += id =>
+ {
+ userInterface.SendMessage(new CartridgeUiMessage(new NanoTaskUiMessageEvent(new NanoTaskDeleteTask(id))));
+ _popup.Close();
+ };
+ _popup.TaskCreated += data =>
+ {
+ userInterface.SendMessage(new CartridgeUiMessage(new NanoTaskUiMessageEvent(new NanoTaskAddTask(data))));
+ _popup.Close();
+ };
+ _popup.TaskPrinted += data =>
+ {
+ userInterface.SendMessage(new CartridgeUiMessage(new NanoTaskUiMessageEvent(new NanoTaskPrintTask(data))));
+ };
+ }
+
+ public override void UpdateState(BoundUserInterfaceState state)
+ {
+ if (state is not NanoTaskUiState nanoTaskState)
+ return;
+
+ _fragment?.UpdateState(nanoTaskState.Tasks);
+ }
+}
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml
new file mode 100644
index 0000000000..f3620802f0
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml.cs b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml.cs
new file mode 100644
index 0000000000..38897d6205
--- /dev/null
+++ b/Content.Client/CartridgeLoader/Cartridges/NanoTaskUiFragment.xaml.cs
@@ -0,0 +1,52 @@
+using System.Linq;
+using Robust.Client.AutoGenerated;
+using Robust.Client.UserInterface.Controls;
+using Robust.Client.UserInterface.XAML;
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Client.CartridgeLoader.Cartridges;
+
+///
+/// Class displaying the main UI of NanoTask
+///
+[GenerateTypedNameReferences]
+public sealed partial class NanoTaskUiFragment : BoxContainer
+{
+ public Action? OpenTask;
+ public Action? ToggleTaskCompletion;
+ public Action? NewTask;
+ public List Tasks = new();
+
+ public NanoTaskUiFragment()
+ {
+ RobustXamlLoader.Load(this);
+ Orientation = LayoutOrientation.Vertical;
+ HorizontalExpand = true;
+ VerticalExpand = true;
+ NewTaskButton.OnPressed += _ => NewTask?.Invoke();
+ }
+ public void UpdateState(List tasks)
+ {
+ Tasks = tasks;
+ HighContainer.RemoveAllChildren();
+ MediumContainer.RemoveAllChildren();
+ LowContainer.RemoveAllChildren();
+
+ HighPriority.Text = Loc.GetString("nano-task-ui-heading-high-priority-tasks", ("amount", tasks.Count(task => task.Data.Priority == NanoTaskPriority.High)));
+ MediumPriority.Text = Loc.GetString("nano-task-ui-heading-medium-priority-tasks", ("amount", tasks.Count(task => task.Data.Priority == NanoTaskPriority.Medium)));
+ LowPriority.Text = Loc.GetString("nano-task-ui-heading-low-priority-tasks", ("amount", tasks.Count(task => task.Data.Priority == NanoTaskPriority.Low)));
+
+ foreach (var task in tasks)
+ {
+ var container = task.Data.Priority switch {
+ NanoTaskPriority.High => HighContainer,
+ NanoTaskPriority.Medium => MediumContainer,
+ NanoTaskPriority.Low => LowContainer,
+ };
+ var control = new NanoTaskItemControl(task);
+ container.AddChild(control);
+ control.OnMainPressed += id => OpenTask?.Invoke(id);
+ control.OnDonePressed += id => ToggleTaskCompletion?.Invoke(id);
+ }
+ }
+}
diff --git a/Content.Client/Commands/DebugCommands.cs b/Content.Client/Commands/DebugCommands.cs
index 20d763a0e9..c4aa8847e4 100644
--- a/Content.Client/Commands/DebugCommands.cs
+++ b/Content.Client/Commands/DebugCommands.cs
@@ -36,29 +36,6 @@ internal sealed class ShowSubFloor : LocalizedCommands
}
}
-internal sealed class ShowSubFloorForever : LocalizedCommands
-{
- [Dependency] private readonly IEntitySystemManager _entitySystemManager = default!;
-
- public const string CommandName = "showsubfloorforever";
- public override string Command => CommandName;
-
- public override string Help => LocalizationManager.GetString($"cmd-{Command}-help", ("command", Command));
-
- public override void Execute(IConsoleShell shell, string argStr, string[] args)
- {
- _entitySystemManager.GetEntitySystem().ShowAll = true;
-
- var entMan = IoCManager.Resolve();
- var components = entMan.EntityQuery(true);
-
- foreach (var (_, sprite) in components)
- {
- sprite.DrawDepth = (int) DrawDepth.Overlays;
- }
- }
-}
-
internal sealed class NotifyCommand : LocalizedCommands
{
[Dependency] private readonly IEntitySystemManager _entitySystemManager = default!;
diff --git a/Content.Client/Commands/MappingClientSideSetupCommand.cs b/Content.Client/Commands/MappingClientSideSetupCommand.cs
index d17f1fccaf..99a8ba00fe 100644
--- a/Content.Client/Commands/MappingClientSideSetupCommand.cs
+++ b/Content.Client/Commands/MappingClientSideSetupCommand.cs
@@ -24,7 +24,7 @@ internal sealed class MappingClientSideSetupCommand : LocalizedCommands
{
_entitySystemManager.GetEntitySystem().MarkersVisible = true;
_lightManager.Enabled = false;
- shell.ExecuteCommand("showsubfloorforever");
+ shell.ExecuteCommand("showsubfloor");
_entitySystemManager.GetEntitySystem().LoadActionAssignments("/mapping_actions.yml", false);
}
}
diff --git a/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs b/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs
index a35cf84c44..85d65020c6 100644
--- a/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs
+++ b/Content.Client/CriminalRecords/CriminalRecordsConsoleWindow.xaml.cs
@@ -3,6 +3,7 @@ using Content.Shared.Access.Systems;
using Content.Shared.Administration;
using Content.Shared.CriminalRecords;
using Content.Shared.Dataset;
+using Content.Shared.Random.Helpers;
using Content.Shared.Security;
using Content.Shared.StationRecords;
using Robust.Client.AutoGenerated;
@@ -32,7 +33,7 @@ public sealed partial class CriminalRecordsConsoleWindow : FancyWindow
public readonly EntityUid Console;
- [ValidatePrototypeId]
+ [ValidatePrototypeId]
private const string ReasonPlaceholders = "CriminalRecordsWantedReasonPlaceholders";
public Action? OnKeySelected;
@@ -333,8 +334,8 @@ public sealed partial class CriminalRecordsConsoleWindow : FancyWindow
var field = "reason";
var title = Loc.GetString("criminal-records-status-" + status.ToString().ToLower());
- var placeholders = _proto.Index(ReasonPlaceholders);
- var placeholder = Loc.GetString("criminal-records-console-reason-placeholder", ("placeholder", _random.Pick(placeholders.Values))); // just funny it doesn't actually get used
+ var placeholders = _proto.Index(ReasonPlaceholders);
+ var placeholder = Loc.GetString("criminal-records-console-reason-placeholder", ("placeholder", _random.Pick(placeholders))); // just funny it doesn't actually get used
var prompt = Loc.GetString("criminal-records-console-reason");
var entry = new QuickDialogEntry(field, QuickDialogEntryType.LongText, prompt, placeholder);
var entries = new List() { entry };
diff --git a/Content.Client/IconSmoothing/IconSmoothComponent.cs b/Content.Client/IconSmoothing/IconSmoothComponent.cs
index 040198529c..7898e9dc1e 100644
--- a/Content.Client/IconSmoothing/IconSmoothComponent.cs
+++ b/Content.Client/IconSmoothing/IconSmoothComponent.cs
@@ -26,6 +26,12 @@ namespace Content.Client.IconSmoothing
[ViewVariables(VVAccess.ReadWrite), DataField("key")]
public string? SmoothKey { get; private set; }
+ ///
+ /// Additional keys to smooth with.
+ ///
+ [DataField]
+ public List AdditionalKeys = new();
+
///
/// Prepended to the RSI state.
///
diff --git a/Content.Client/IconSmoothing/IconSmoothSystem.cs b/Content.Client/IconSmoothing/IconSmoothSystem.cs
index 2654f1ab57..45aafb5288 100644
--- a/Content.Client/IconSmoothing/IconSmoothSystem.cs
+++ b/Content.Client/IconSmoothing/IconSmoothSystem.cs
@@ -376,7 +376,8 @@ namespace Content.Client.IconSmoothing
while (candidates.MoveNext(out var entity))
{
if (smoothQuery.TryGetComponent(entity, out var other) &&
- other.SmoothKey == smooth.SmoothKey &&
+ other.SmoothKey != null &&
+ (other.SmoothKey == smooth.SmoothKey || smooth.AdditionalKeys.Contains(other.SmoothKey)) &&
other.Enabled)
{
return true;
diff --git a/Content.Client/SubFloor/SubFloorHideSystem.cs b/Content.Client/SubFloor/SubFloorHideSystem.cs
index 5e5f2993b4..df65717c40 100644
--- a/Content.Client/SubFloor/SubFloorHideSystem.cs
+++ b/Content.Client/SubFloor/SubFloorHideSystem.cs
@@ -64,9 +64,15 @@ public sealed class SubFloorHideSystem : SharedSubFloorHideSystem
args.Sprite.Visible = hasVisibleLayer || revealed;
- // allows a t-ray to show wires/pipes above carpets/puddles
- if (scannerRevealed)
+ if (ShowAll)
{
+ // Allows sandbox mode to make wires visible over other stuff.
+ component.OriginalDrawDepth ??= args.Sprite.DrawDepth;
+ args.Sprite.DrawDepth = (int)Shared.DrawDepth.DrawDepth.Overdoors;
+ }
+ else if (scannerRevealed)
+ {
+ // Allows a t-ray to show wires/pipes above carpets/puddles.
if (component.OriginalDrawDepth is not null)
return;
component.OriginalDrawDepth = args.Sprite.DrawDepth;
diff --git a/Content.IntegrationTests/Tests/DeviceLinking/DeviceLinkingTest.cs b/Content.IntegrationTests/Tests/DeviceLinking/DeviceLinkingTest.cs
new file mode 100644
index 0000000000..96836d378a
--- /dev/null
+++ b/Content.IntegrationTests/Tests/DeviceLinking/DeviceLinkingTest.cs
@@ -0,0 +1,94 @@
+using System.Collections.Generic;
+using System.Linq;
+using Content.Server.DeviceLinking.Systems;
+using Content.Shared.DeviceLinking;
+using Content.Shared.Prototypes;
+using Robust.Shared.GameObjects;
+using Robust.Shared.Map;
+using Robust.Shared.Maths;
+using Robust.Shared.Prototypes;
+
+namespace Content.IntegrationTests.Tests.DeviceLinking;
+
+public sealed class DeviceLinkingTest
+{
+ private const string PortTesterProtoId = "DeviceLinkingSinkPortTester";
+
+ [TestPrototypes]
+ private const string Prototypes = $@"
+- type: entity
+ id: {PortTesterProtoId}
+ components:
+ - type: DeviceLinkSource
+ ports:
+ - Output
+";
+
+ ///
+ /// Spawns every entity that has a
+ /// and sends a signal to every port to make sure nothing causes an error.
+ ///
+ [Test]
+ public async Task AllDeviceLinkSinksWorkTest()
+ {
+ await using var pair = await PoolManager.GetServerClient();
+ var server = pair.Server;
+ var compFact = server.ResolveDependency();
+ var mapMan = server.ResolveDependency();
+ var mapSys = server.System();
+ var deviceLinkSys = server.System();
+
+ var prototypes = server.ProtoMan.EnumeratePrototypes();
+
+ await server.WaitAssertion(() =>
+ {
+ Assert.Multiple(() =>
+ {
+ foreach (var proto in prototypes)
+ {
+ if (proto.Abstract || pair.IsTestPrototype(proto))
+ continue;
+
+ if (!proto.TryGetComponent(out var protoSinkComp, compFact))
+ continue;
+
+ foreach (var port in protoSinkComp.Ports)
+ {
+ // Create a map for each entity/port combo so they can't interfere
+ mapSys.CreateMap(out var mapId);
+ var grid = mapMan.CreateGridEntity(mapId);
+ mapSys.SetTile(grid.Owner, grid.Comp, Vector2i.Zero, new Tile(1));
+ var coord = new EntityCoordinates(grid.Owner, 0, 0);
+
+ // Spawn the sink entity
+ var sinkEnt = server.EntMan.SpawnEntity(proto.ID, coord);
+ // Get the actual sink component, since the one we got from the prototype doesn't have its owner set up
+ Assert.That(server.EntMan.TryGetComponent(sinkEnt, out var sinkComp),
+ $"Tester prototype does not have a DeviceLinkSourceComponent!");
+
+ // Spawn the tester
+ var sourceEnt = server.EntMan.SpawnEntity(PortTesterProtoId, coord);
+ Assert.That(server.EntMan.TryGetComponent(sourceEnt, out var sourceComp),
+ $"Tester prototype does not have a DeviceLinkSourceComponent!");
+
+ // Create a link from the tester's output to the target port on the sink
+ deviceLinkSys.SaveLinks(null,
+ sourceEnt,
+ sinkEnt,
+ [("Output", port.Id)],
+ sourceComp,
+ sinkComp);
+
+ // Send a signal to the port
+ Assert.DoesNotThrow(() => { deviceLinkSys.InvokePort(sourceEnt, "Output", null, sourceComp); },
+ $"Exception thrown while triggering port {port.Id} of sink device {proto.ID}");
+
+ mapSys.DeleteMap(mapId);
+ }
+ }
+ });
+ });
+
+ await pair.CleanReturnAsync();
+ }
+}
diff --git a/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs b/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs
index 039c0c7b18..5790e414f3 100644
--- a/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs
+++ b/Content.IntegrationTests/Tests/GameRules/NukeOpsTest.cs
@@ -152,10 +152,14 @@ public sealed class NukeOpsTest
Assert.That(roleSys.MindGetAllRoleInfo(mindCrew).Any(x => nukeroles.Contains(x.Prototype)), Is.False);
}
+ var ruleGridComps = entMan.AllComponents();
+ Assert.That(ruleGridComps, Has.Length.EqualTo(1),
+ $"Unexpected RuleGrid(s) detected! {string.Join(',', ruleGridComps.Select(e => server.EntMan.ToPrettyString(e.Uid)))}");
+
// The game rule exists, and all the stations/shuttles/maps are properly initialized
var rule = entMan.AllComponents().Single();
var ruleComp = rule.Component;
- var gridsRule = entMan.AllComponents().Single().Component;
+ var gridsRule = ruleGridComps.Single().Component;
foreach (var grid in gridsRule.MapGrids)
{
Assert.That(entMan.EntityExists(grid));
diff --git a/Content.IntegrationTests/Tests/Localization/LocalizedDatasetPrototypeTest.cs b/Content.IntegrationTests/Tests/Localization/LocalizedDatasetPrototypeTest.cs
index b30c0a370e..8d272545ce 100644
--- a/Content.IntegrationTests/Tests/Localization/LocalizedDatasetPrototypeTest.cs
+++ b/Content.IntegrationTests/Tests/Localization/LocalizedDatasetPrototypeTest.cs
@@ -19,16 +19,19 @@ public sealed class LocalizedDatasetPrototypeTest
var protos = protoMan.EnumeratePrototypes().OrderBy(p => p.ID);
- // Check each prototype
- foreach (var proto in protos)
+ Assert.Multiple(() =>
{
- // Check each value in the prototype
- foreach (var locId in proto.Values)
+ // Check each prototype
+ foreach (var proto in protos)
{
- // Make sure the localization manager has a string for the LocId
- Assert.That(localizationMan.HasString(locId), $"LocalizedDataset {proto.ID} with prefix \"{proto.Values.Prefix}\" specifies {proto.Values.Count} entries, but no localized string was found matching {locId}!");
+ // Check each value in the prototype
+ foreach (var locId in proto.Values)
+ {
+ // Make sure the localization manager has a string for the LocId
+ Assert.That(localizationMan.HasString(locId), $"LocalizedDataset {proto.ID} with prefix \"{proto.Values.Prefix}\" specifies {proto.Values.Count} entries, but no localized string was found matching {locId}!");
+ }
}
- }
+ });
await pair.CleanReturnAsync();
}
diff --git a/Content.IntegrationTests/Tests/StoreTests.cs b/Content.IntegrationTests/Tests/StoreTests.cs
index 1f7d357bc0..e6aed78755 100644
--- a/Content.IntegrationTests/Tests/StoreTests.cs
+++ b/Content.IntegrationTests/Tests/StoreTests.cs
@@ -102,6 +102,12 @@ public sealed class StoreTests
+ $"flag as 'true'. This marks the fact that cost modifier of discount is not applied properly!"
);
+ // The storeComponent returns discounted items with conditions randomly, so we remove these to sanitize the data.
+ foreach (var discountedItem in discountedListingItems)
+ {
+ discountedItem.Conditions = null;
+ }
+
// Refund action requests re-generation of listing items so we will be re-acquiring items from component a lot of times.
var itemIds = discountedListingItems.Select(x => x.ID);
foreach (var itemId in itemIds)
@@ -140,6 +146,9 @@ public sealed class StoreTests
// get refreshed item after refund re-generated items
discountedListingItem = storeComponent.FullListingsCatalog.First(x => x.ID == itemId);
+ // The storeComponent can give a discounted item a condition at random, so we remove it to sanitize the data.
+ discountedListingItem.Conditions = null;
+
var afterRefundBalance = storeComponent.Balance[UplinkSystem.TelecrystalCurrencyPrototype];
Assert.That(afterRefundBalance.Value, Is.EqualTo(originalBalance.Value), "Expected refund to return all discounted cost value.");
Assert.That(
diff --git a/Content.IntegrationTests/Tests/Vending/VendingInteractionTest.cs b/Content.IntegrationTests/Tests/Vending/VendingInteractionTest.cs
new file mode 100644
index 0000000000..bcaf4343b6
--- /dev/null
+++ b/Content.IntegrationTests/Tests/Vending/VendingInteractionTest.cs
@@ -0,0 +1,205 @@
+using System.Linq;
+using Content.IntegrationTests.Tests.Interaction;
+using Content.Server.VendingMachines;
+using Content.Shared.Damage;
+using Content.Shared.Damage.Prototypes;
+using Content.Shared.FixedPoint;
+using Content.Shared.VendingMachines;
+
+namespace Content.IntegrationTests.Tests.Vending;
+
+public sealed class VendingInteractionTest : InteractionTest
+{
+ private const string VendingMachineProtoId = "InteractionTestVendingMachine";
+
+ private const string VendedItemProtoId = "InteractionTestItem";
+
+ private const string RestockBoxProtoId = "InteractionTestRestockBox";
+
+ private const string RestockBoxOtherProtoId = "InteractionTestRestockBoxOther";
+
+ [TestPrototypes]
+ private const string TestPrototypes = $@"
+- type: entity
+ parent: BaseItem
+ id: {VendedItemProtoId}
+ name: {VendedItemProtoId}
+
+- type: vendingMachineInventory
+ id: InteractionTestVendingInventory
+ startingInventory:
+ {VendedItemProtoId}: 5
+
+- type: vendingMachineInventory
+ id: InteractionTestVendingInventoryOther
+ startingInventory:
+ {VendedItemProtoId}: 5
+
+- type: entity
+ parent: BaseVendingMachineRestock
+ id: {RestockBoxProtoId}
+ components:
+ - type: VendingMachineRestock
+ canRestock:
+ - InteractionTestVendingInventory
+
+- type: entity
+ parent: BaseVendingMachineRestock
+ id: {RestockBoxOtherProtoId}
+ components:
+ - type: VendingMachineRestock
+ canRestock:
+ - InteractionTestVendingInventoryOther
+
+- type: entity
+ id: {VendingMachineProtoId}
+ parent: VendingMachine
+ components:
+ - type: VendingMachine
+ pack: InteractionTestVendingInventory
+ ejectDelay: 0 # no delay to speed up tests
+ - type: Sprite
+ sprite: error.rsi
+";
+
+ [Test]
+ public async Task InteractUITest()
+ {
+ await SpawnTarget(VendingMachineProtoId);
+
+ // Should start with no BUI open
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "BUI was open unexpectedly.");
+
+ // Unpowered vending machine does not open BUI
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "BUI opened without power.");
+
+ // Power the vending machine
+ var apc = await SpawnEntity("APCBasic", SEntMan.GetCoordinates(TargetCoords));
+ await RunTicks(1);
+
+ // Interacting with powered vending machine opens BUI
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), "BUI failed to open.");
+
+ // Interacting with it again closes the BUI
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "BUI failed to close on interaction.");
+
+ // Reopen BUI for the next check
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), "BUI failed to reopen.");
+
+ // Remove power
+ await Delete(apc);
+ await RunTicks(1);
+
+ // The BUI should close when power is lost
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "BUI failed to close on power loss.");
+ }
+
+ [Test]
+ public async Task DispenseItemTest()
+ {
+ await SpawnTarget(VendingMachineProtoId);
+ var vendorEnt = SEntMan.GetEntity(Target.Value);
+
+ var vendingSystem = SEntMan.System();
+ var items = vendingSystem.GetAllInventory(vendorEnt);
+
+ // Verify initial item count
+ Assert.That(items, Is.Not.Empty, $"{VendingMachineProtoId} spawned with no items.");
+ Assert.That(items.First().Amount, Is.EqualTo(5), $"{VendingMachineProtoId} spawned with unexpected item count.");
+
+ // Power the vending machine
+ await SpawnEntity("APCBasic", SEntMan.GetCoordinates(TargetCoords));
+ await RunTicks(1);
+
+ // Open the BUI
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), "BUI failed to open.");
+
+ // Request an item be dispensed
+ var ev = new VendingMachineEjectMessage(InventoryType.Regular, VendedItemProtoId);
+ await SendBui(VendingMachineUiKey.Key, ev);
+
+ // Make sure the stock decreased
+ Assert.That(items.First().Amount, Is.EqualTo(4), "Stocked item count did not decrease.");
+ // Make sure the dispensed item was spawned in to the world
+ await AssertEntityLookup(
+ ("APCBasic", 1),
+ (VendedItemProtoId, 1)
+ );
+ }
+
+ [Test]
+ public async Task RestockTest()
+ {
+ var vendingSystem = SEntMan.System();
+
+ await SpawnTarget(VendingMachineProtoId);
+ var vendorEnt = SEntMan.GetEntity(Target.Value);
+
+ var items = vendingSystem.GetAllInventory(vendorEnt);
+
+ Assert.That(items, Is.Not.Empty, $"{VendingMachineProtoId} spawned with no items.");
+ Assert.That(items.First().Amount, Is.EqualTo(5), $"{VendingMachineProtoId} spawned with unexpected item count.");
+
+ // Try to restock with the maintenance panel closed (nothing happens)
+ await InteractUsing(RestockBoxProtoId);
+
+ Assert.That(items.First().Amount, Is.EqualTo(5), "Restocked without opening maintenance panel.");
+
+ // Open the maintenance panel
+ await InteractUsing(Screw);
+
+ // Try to restock using the wrong restock box (nothing happens)
+ await InteractUsing(RestockBoxOtherProtoId);
+
+ Assert.That(items.First().Amount, Is.EqualTo(5), "Restocked with wrong restock box.");
+
+ // Restock the machine
+ await InteractUsing(RestockBoxProtoId);
+
+ Assert.That(items.First().Amount, Is.EqualTo(10), "Restocking resulted in unexpected item count.");
+ }
+
+ [Test]
+ public async Task RepairTest()
+ {
+ await SpawnTarget(VendingMachineProtoId);
+
+ // Power the vending machine
+ await SpawnEntity("APCBasic", SEntMan.GetCoordinates(TargetCoords));
+ await RunTicks(1);
+
+ // Break it
+ await BreakVendor();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "BUI did not close when vending machine broke.");
+
+ // Make sure we can't open the BUI while it's broken
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), Is.False, "Opened BUI of broken vending machine.");
+
+ // Repair the vending machine
+ await InteractUsing(Weld);
+
+ // Make sure the BUI can open now that the machine has been repaired
+ await Activate();
+ Assert.That(IsUiOpen(VendingMachineUiKey.Key), "Failed to open BUI after repair.");
+ }
+
+ private async Task BreakVendor()
+ {
+ var damageableSys = SEntMan.System();
+ Assert.That(TryComp(out var damageableComp), $"{VendingMachineProtoId} does not have DamageableComponent.");
+ Assert.That(damageableComp.Damage.GetTotal(), Is.EqualTo(FixedPoint2.Zero), $"{VendingMachineProtoId} started with unexpected damage.");
+
+ // Damage the vending machine to the point that it breaks
+ var damageType = ProtoMan.Index("Blunt");
+ var damage = new DamageSpecifier(damageType, FixedPoint2.New(100));
+ await Server.WaitPost(() => damageableSys.TryChangeDamage(SEntMan.GetEntity(Target), damage, ignoreResistances: true));
+ await RunTicks(5);
+ Assert.That(damageableComp.Damage.GetTotal(), Is.GreaterThan(FixedPoint2.Zero), $"{VendingMachineProtoId} did not take damage.");
+ }
+}
diff --git a/Content.Server/Administration/Commands/RoleBanCommand.cs b/Content.Server/Administration/Commands/RoleBanCommand.cs
index 8b535977ee..68fbac0334 100644
--- a/Content.Server/Administration/Commands/RoleBanCommand.cs
+++ b/Content.Server/Administration/Commands/RoleBanCommand.cs
@@ -7,6 +7,8 @@ using Content.Shared.Database;
using Content.Shared.Roles;
using Robust.Shared.Configuration;
using Robust.Shared.Console;
+using Robust.Shared.Prototypes;
+
namespace Content.Server.Administration.Commands;
[AdminCommand(AdminFlags.Ban)]
@@ -15,6 +17,7 @@ public sealed class RoleBanCommand : IConsoleCommand
[Dependency] private readonly IPlayerLocator _locator = default!;
[Dependency] private readonly IBanManager _bans = default!;
[Dependency] private readonly IConfigurationManager _cfg = default!;
+ [Dependency] private readonly IPrototypeManager _proto = default!;
public string Command => "roleban";
public string Description => Loc.GetString("cmd-roleban-desc");
@@ -76,6 +79,12 @@ public sealed class RoleBanCommand : IConsoleCommand
return;
}
+ if (!_proto.HasIndex(job))
+ {
+ shell.WriteError(Loc.GetString("cmd-roleban-job-parse",("job", job)));
+ return;
+ }
+
var located = await _locator.LookupIdByNameOrIdAsync(target);
if (located == null)
{
diff --git a/Content.Server/Antag/AntagRandomSpawnRule.cs b/Content.Server/Antag/AntagRandomSpawnRule.cs
index 499761a8df..58fab5414c 100644
--- a/Content.Server/Antag/AntagRandomSpawnRule.cs
+++ b/Content.Server/Antag/AntagRandomSpawnRule.cs
@@ -1,4 +1,5 @@
using Content.Server.Antag.Components;
+using Content.Shared.GameTicking.Components;
using Content.Server.GameTicking.Rules;
namespace Content.Server.Antag;
@@ -14,9 +15,20 @@ public sealed class AntagRandomSpawnSystem : GameRuleSystem(OnSelectLocation);
}
+ protected override void Added(EntityUid uid, AntagRandomSpawnComponent comp, GameRuleComponent gameRule, GameRuleAddedEvent args)
+ {
+ base.Added(uid, comp, gameRule, args);
+
+ // we have to select this here because AntagSelectLocationEvent is raised twice because MakeAntag is called twice
+ // once when a ghost role spawner is created and once when someone takes the ghost role
+
+ if (TryFindRandomTile(out _, out _, out _, out var coords))
+ comp.Coords = coords;
+ }
+
private void OnSelectLocation(Entity ent, ref AntagSelectLocationEvent args)
{
- if (TryFindRandomTile(out _, out _, out _, out var coords))
- args.Coordinates.Add(_transform.ToMapCoordinates(coords));
+ if (ent.Comp.Coords != null)
+ args.Coordinates.Add(_transform.ToMapCoordinates(ent.Comp.Coords.Value));
}
}
diff --git a/Content.Server/Antag/AntagSelectionSystem.API.cs b/Content.Server/Antag/AntagSelectionSystem.API.cs
index a4cb6fd0e5..93b5fa6136 100644
--- a/Content.Server/Antag/AntagSelectionSystem.API.cs
+++ b/Content.Server/Antag/AntagSelectionSystem.API.cs
@@ -3,7 +3,9 @@ using System.Linq;
using Content.Server.Antag.Components;
using Content.Server.GameTicking.Rules.Components;
using Content.Server.Objectives;
+using Content.Shared.Antag;
using Content.Shared.Chat;
+using Content.Shared.GameTicking.Components;
using Content.Shared.Mind;
using Content.Shared.Preferences;
using JetBrains.Annotations;
@@ -25,7 +27,7 @@ public sealed partial class AntagSelectionSystem
definition = null;
var totalTargetCount = GetTargetAntagCount(ent, players);
- var mindCount = ent.Comp.SelectedMinds.Count;
+ var mindCount = ent.Comp.AssignedMinds.Count;
if (mindCount >= totalTargetCount)
return false;
@@ -95,7 +97,7 @@ public sealed partial class AntagSelectionSystem
var countOffset = 0;
foreach (var otherDef in ent.Comp.Definitions)
{
- countOffset += Math.Clamp((poolSize - countOffset) / otherDef.PlayerRatio, otherDef.Min, otherDef.Max) * otherDef.PlayerRatio;
+ countOffset += Math.Clamp((poolSize - countOffset) / otherDef.PlayerRatio, otherDef.Min, otherDef.Max) * otherDef.PlayerRatio; // Note: Is the PlayerRatio necessary here? Seems like it can cause issues for defs with varied PlayerRatio.
}
// make sure we don't double-count the current selection
countOffset -= Math.Clamp(poolSize / def.PlayerRatio, def.Min, def.Max) * def.PlayerRatio;
@@ -115,7 +117,7 @@ public sealed partial class AntagSelectionSystem
return new List<(EntityUid, SessionData, string)>();
var output = new List<(EntityUid, SessionData, string)>();
- foreach (var (mind, name) in ent.Comp.SelectedMinds)
+ foreach (var (mind, name) in ent.Comp.AssignedMinds)
{
if (!TryComp(mind, out var mindComp) || mindComp.OriginalOwnerUserId == null)
continue;
@@ -137,7 +139,7 @@ public sealed partial class AntagSelectionSystem
return new();
var output = new List>();
- foreach (var (mind, _) in ent.Comp.SelectedMinds)
+ foreach (var (mind, _) in ent.Comp.AssignedMinds)
{
if (!TryComp(mind, out var mindComp) || mindComp.OriginalOwnerUserId == null)
continue;
@@ -155,7 +157,7 @@ public sealed partial class AntagSelectionSystem
if (!Resolve(ent, ref ent.Comp, false))
return new();
- return ent.Comp.SelectedMinds.Select(p => p.Item1).ToList();
+ return ent.Comp.AssignedMinds.Select(p => p.Item1).ToList();
}
///
@@ -247,7 +249,7 @@ public sealed partial class AntagSelectionSystem
if (!Resolve(ent, ref ent.Comp, false))
return false;
- return GetAliveAntagCount(ent) == ent.Comp.SelectedMinds.Count;
+ return GetAliveAntagCount(ent) == ent.Comp.AssignedMinds.Count;
}
///
@@ -352,8 +354,66 @@ public sealed partial class AntagSelectionSystem
var ruleEnt = GameTicker.AddGameRule(id);
RemComp(ruleEnt);
var antag = Comp(ruleEnt);
- antag.SelectionsComplete = true; // don't do normal selection.
+ antag.AssignmentComplete = true; // don't do normal selection.
GameTicker.StartGameRule(ruleEnt);
return (ruleEnt, antag);
}
+
+ ///
+ /// Get all sessions that have been preselected for antag.
+ ///
+ /// A specific definition to be excluded from the check.
+ public HashSet GetPreSelectedAntagSessions(AntagSelectionDefinition? except = null)
+ {
+ var result = new HashSet();
+ var query = QueryAllRules();
+ while (query.MoveNext(out var uid, out var comp, out _))
+ {
+ if (HasComp(uid))
+ continue;
+
+ foreach (var def in comp.Definitions)
+ {
+ if (def.Equals(except))
+ continue;
+
+ if (comp.PreSelectedSessions.TryGetValue(def, out var set))
+ result.UnionWith(set);
+ }
+ }
+
+ return result;
+ }
+
+ ///
+ /// Get all sessions that have been preselected for antag and are exclusive, i.e. should not be paired with other antags.
+ ///
+ /// A specific definition to be excluded from the check.
+ // Note: This is a bit iffy since technically this exclusive definition is defined via the MultiAntagSetting, while there's a separately tracked antagExclusive variable in the mindrole.
+ // We can't query that however since there's no guarantee the mindrole has been given out yet when checking pre-selected antags.
+ // I don't think there's any instance where they differ, but it's something to be aware of for a potential future refactor.
+ public HashSet GetPreSelectedExclusiveAntagSessions(AntagSelectionDefinition? except = null)
+ {
+ var result = new HashSet();
+ var query = QueryAllRules();
+ while (query.MoveNext(out var uid, out var comp, out _))
+ {
+ if (HasComp(uid))
+ continue;
+
+ foreach (var def in comp.Definitions)
+ {
+ if (def.Equals(except))
+ continue;
+
+ if (def.MultiAntagSetting == AntagAcceptability.None && comp.PreSelectedSessions.TryGetValue(def, out var set))
+ {
+ result.UnionWith(set);
+ break;
+ }
+ }
+ }
+
+ return result;
+ }
}
diff --git a/Content.Server/Antag/AntagSelectionSystem.cs b/Content.Server/Antag/AntagSelectionSystem.cs
index ce7f3fec4c..62fbeefb65 100644
--- a/Content.Server/Antag/AntagSelectionSystem.cs
+++ b/Content.Server/Antag/AntagSelectionSystem.cs
@@ -11,8 +11,11 @@ using Content.Server.Preferences.Managers;
using Content.Server.Roles;
using Content.Server.Roles.Jobs;
using Content.Server.Shuttles.Components;
+using Content.Server.Station.Events;
+using Content.Shared.Administration.Logs;
using Content.Shared.Antag;
using Content.Shared.Clothing;
+using Content.Shared.Database;
using Content.Shared.GameTicking;
using Content.Shared.GameTicking.Components;
using Content.Shared.Ghost;
@@ -46,6 +49,7 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem();
- while (query.MoveNext(out var uid, out _, out var antag, out _))
+ while (query.MoveNext(out var uid, out var antag, out _))
{
- rules.Add((uid, antag));
+ if (HasComp(uid) ||
+ (HasComp(uid) && antag.SelectionTime == AntagSelectionTime.IntraPlayerSpawn)) //IntraPlayerSpawn selects antags before spawning, but doesn't activate until after.
+ rules.Add((uid, antag));
}
RobustRandom.Shuffle(rules);
@@ -142,7 +163,7 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem p.LateJoinAdditional))
continue;
- DebugTools.AssertEqual(antag.SelectionTime, AntagSelectionTime.PostPlayerSpawn);
+ DebugTools.AssertNotEqual(antag.SelectionTime, AntagSelectionTime.PrePlayerSpawn);
// do not count players in the lobby for the antag ratio
var players = _playerManager.NetworkedSessions.Count(x => x.AttachedEntity != null);
@@ -150,7 +171,9 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem GameTicker.PlayerGameStatuses.TryGetValue(x.UserId, out var status) && status == PlayerGameStatus.JoinedGame)
- .ToList();
+ if (!component.PreSelectionsComplete)
+ {
+ var players = _playerManager.Sessions
+ .Where(x => GameTicker.PlayerGameStatuses.TryGetValue(x.UserId, out var status) &&
+ status == PlayerGameStatus.JoinedGame)
+ .ToList();
- ChooseAntags((uid, component), players, midround: true);
+ ChooseAntags((uid, component), players, midround: true);
+ }
+
+ AssignPreSelectedSessions((uid, component));
}
///
@@ -201,7 +230,7 @@ public sealed partial class AntagSelectionSystem : GameRuleSystemDisable picking players for pre-spawn antags in the middle of a round
public void ChooseAntags(Entity ent, IList pool, bool midround = false)
{
- if (ent.Comp.SelectionsComplete)
+ if (ent.Comp.PreSelectionsComplete)
return;
foreach (var def in ent.Comp.Definitions)
@@ -209,7 +238,7 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem
@@ -250,21 +279,53 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem x.Contains(session)))
{
Log.Warning($"Somehow picked {session} for an antag when this rule already selected them previously");
continue;
}
}
- MakeAntag(ent, session, def);
+ if (session == null)
+ MakeAntag(ent, null, def); // This is for spawner antags
+ else
+ {
+ if (!ent.Comp.PreSelectedSessions.TryGetValue(def, out var set))
+ ent.Comp.PreSelectedSessions.Add(def, set = new HashSet());
+ set.Add(session); // Selection done!
+ Log.Debug($"Pre-selected {session.Name} as antagonist: {ToPrettyString(ent)}");
+ _adminLogger.Add(LogType.AntagSelection, $"Pre-selected {session.Name} as antagonist: {ToPrettyString(ent)}");
+ }
}
}
+ ///
+ /// Assigns antag roles to sessions selected for it.
+ ///
+ public void AssignPreSelectedSessions(Entity ent)
+ {
+ // Only assign if there's been a pre-selection, and the selection hasn't already been made
+ if (!ent.Comp.PreSelectionsComplete || ent.Comp.AssignmentComplete)
+ return;
+
+ foreach (var def in ent.Comp.Definitions)
+ {
+ if (!ent.Comp.PreSelectedSessions.TryGetValue(def, out var set))
+ continue;
+
+ foreach (var session in set)
+ {
+ TryMakeAntag(ent, session, def);
+ }
+ }
+
+ ent.Comp.AssignmentComplete = true;
+ }
+
///
/// Tries to makes a given player into the specified antagonist.
///
- public bool TryMakeAntag(Entity ent, ICommonSession? session, AntagSelectionDefinition def, bool ignoreSpawner = false, bool checkPref = true)
+ public bool TryMakeAntag(Entity ent, ICommonSession? session, AntagSelectionDefinition def, bool ignoreSpawner = false, bool checkPref = true, bool onlyPreSelect = false)
{
if (checkPref && !HasPrimaryAntagPreference(session, def))
return false;
@@ -272,7 +333,19 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem());
+ set.Add(session);
+ Log.Debug($"Pre-selected {session!.Name} as antagonist: {ToPrettyString(ent)}");
+ _adminLogger.Add(LogType.AntagSelection, $"Pre-selected {session.Name} as antagonist: {ToPrettyString(ent)}");
+ }
+ else
+ {
+ MakeAntag(ent, session, def, ignoreSpawner);
+ }
+
return true;
}
@@ -286,7 +359,10 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem());
+ set.Add(session);
+ ent.Comp.AssignedSessions.Add(session);
// we shouldn't be blocking the entity if they're just a ghost or smth.
if (!HasComp(session.AttachedEntity))
@@ -309,10 +385,19 @@ public sealed partial class AntagSelectionSystem : GameRuleSystem
@@ -5,4 +7,11 @@ namespace Content.Server.Antag.Components;
/// Requires .
///
[RegisterComponent]
-public sealed partial class AntagRandomSpawnComponent : Component;
+public sealed partial class AntagRandomSpawnComponent : Component
+{
+ ///
+ /// Location that was picked.
+ ///
+ [DataField]
+ public EntityCoordinates? Coords;
+}
diff --git a/Content.Server/Antag/Components/AntagSelectionComponent.cs b/Content.Server/Antag/Components/AntagSelectionComponent.cs
index 35c6f8bc3a..5c752ddff7 100644
--- a/Content.Server/Antag/Components/AntagSelectionComponent.cs
+++ b/Content.Server/Antag/Components/AntagSelectionComponent.cs
@@ -14,10 +14,16 @@ namespace Content.Server.Antag.Components;
public sealed partial class AntagSelectionComponent : Component
{
///
- /// Has the primary selection of antagonists finished yet?
+ /// Has the primary assignment of antagonists finished yet?
///
[DataField]
- public bool SelectionsComplete;
+ public bool AssignmentComplete;
+
+ ///
+ /// Has the antagonists been preselected but yet to be fully assigned?
+ ///
+ [DataField]
+ public bool PreSelectionsComplete;
///
/// The definitions for the antagonists
@@ -26,10 +32,10 @@ public sealed partial class AntagSelectionComponent : Component
public List Definitions = new();
///
- /// The minds and original names of the players selected to be antagonists.
+ /// The minds and original names of the players assigned to be antagonists.
///
[DataField]
- public List<(EntityUid, string)> SelectedMinds = new();
+ public List<(EntityUid, string)> AssignedMinds = new();
///
/// When the antag selection will occur.
@@ -37,11 +43,17 @@ public sealed partial class AntagSelectionComponent : Component
[DataField]
public AntagSelectionTime SelectionTime = AntagSelectionTime.PostPlayerSpawn;
+ ///
+ /// Cached sessions of antag definitions and selected players. Players in this dict are not guaranteed to have been assigned the role yet.
+ ///
+ [DataField]
+ public Dictionary>PreSelectedSessions = new();
+
///
/// Cached sessions of players who are chosen. Used so we don't have to rebuild the pool multiple times in a tick.
/// Is not serialized.
///
- public HashSet SelectedSessions = new();
+ public HashSet AssignedSessions = new();
///
/// Locale id for the name of the antag.
diff --git a/Content.Server/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs b/Content.Server/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs
new file mode 100644
index 0000000000..8118ca8555
--- /dev/null
+++ b/Content.Server/CartridgeLoader/Cartridges/NanoTaskCartridgeSystem.cs
@@ -0,0 +1,151 @@
+using Content.Shared.CartridgeLoader.Cartridges;
+using Content.Shared.CartridgeLoader;
+using Content.Shared.Hands.EntitySystems;
+using Content.Shared.Interaction;
+using Content.Shared.Paper;
+using Robust.Shared.Audio;
+using Robust.Shared.Audio.Systems;
+using Robust.Shared.Timing;
+using Robust.Shared.Utility;
+
+namespace Content.Server.CartridgeLoader.Cartridges;
+
+///
+/// Server-side class implementing the core UI logic of NanoTask
+///
+public sealed class NanoTaskCartridgeSystem : SharedNanoTaskCartridgeSystem
+{
+ [Dependency] private readonly CartridgeLoaderSystem _cartridgeLoader = default!;
+ [Dependency] private readonly IGameTiming _timing = default!;
+ [Dependency] private readonly PaperSystem _paper = default!;
+ [Dependency] private readonly SharedAudioSystem _audio = default!;
+ [Dependency] private readonly SharedHandsSystem _hands = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(OnUiMessage);
+ SubscribeLocalEvent(OnUiReady);
+
+ SubscribeLocalEvent(OnCartridgeRemoved);
+
+ SubscribeLocalEvent(OnInteractUsing);
+ }
+
+ private void OnCartridgeRemoved(Entity ent, ref CartridgeRemovedEvent args)
+ {
+ if (!_cartridgeLoader.HasProgram(args.Loader))
+ {
+ RemComp(args.Loader);
+ }
+ }
+
+ private void OnInteractUsing(Entity ent, ref InteractUsingEvent args)
+ {
+ if (!_cartridgeLoader.TryGetProgram(ent.Owner, out var uid, out var program))
+ {
+ return;
+ }
+ if (!EntityManager.TryGetComponent(args.Used, out var printed))
+ {
+ return;
+ }
+ if (printed.Task is NanoTaskItem item)
+ {
+ program.Tasks.Add(new(program.Counter++, printed.Task));
+ args.Handled = true;
+ EntityManager.DeleteEntity(args.Used);
+ UpdateUiState(new Entity(uid.Value, program), ent.Owner);
+ }
+ }
+
+ ///
+ /// This gets called when the ui fragment needs to be updated for the first time after activating
+ ///
+ private void OnUiReady(Entity ent, ref CartridgeUiReadyEvent args)
+ {
+ UpdateUiState(ent, args.Loader);
+ }
+
+ private void SetupPrintedTask(EntityUid uid, NanoTaskItem item)
+ {
+ PaperComponent? paper = null;
+ NanoTaskPrintedComponent? printed = null;
+ if (!Resolve(uid, ref paper, ref printed))
+ return;
+
+ printed.Task = item;
+ var msg = new FormattedMessage();
+ msg.AddText(Loc.GetString("nano-task-printed-description", ("description", item.Description)));
+ msg.PushNewline();
+ msg.AddText(Loc.GetString("nano-task-printed-requester", ("requester", item.TaskIsFor)));
+ msg.PushNewline();
+ msg.AddText(item.Priority switch {
+ NanoTaskPriority.High => Loc.GetString("nano-task-printed-high-priority"),
+ NanoTaskPriority.Medium => Loc.GetString("nano-task-printed-medium-priority"),
+ NanoTaskPriority.Low => Loc.GetString("nano-task-printed-low-priority"),
+ _ => "",
+ });
+
+ _paper.SetContent((uid, paper), msg.ToMarkup());
+ }
+
+ ///
+ /// The ui messages received here get wrapped by a CartridgeMessageEvent and are relayed from the
+ ///
+ ///
+ /// The cartridge specific ui message event needs to inherit from the CartridgeMessageEvent
+ ///
+ private void OnUiMessage(Entity ent, ref CartridgeMessageEvent args)
+ {
+ if (args is not NanoTaskUiMessageEvent message)
+ return;
+
+ switch (message.Payload)
+ {
+ case NanoTaskAddTask task:
+ if (!task.Item.Validate())
+ return;
+
+ ent.Comp.Tasks.Add(new(ent.Comp.Counter++, task.Item));
+ break;
+ case NanoTaskUpdateTask task:
+ {
+ if (!task.Item.Data.Validate())
+ return;
+
+ var idx = ent.Comp.Tasks.FindIndex(t => t.Id == task.Item.Id);
+ if (idx != -1)
+ ent.Comp.Tasks[idx] = task.Item;
+ break;
+ }
+ case NanoTaskDeleteTask task:
+ ent.Comp.Tasks.RemoveAll(t => t.Id == task.Id);
+ break;
+ case NanoTaskPrintTask task:
+ {
+ if (!task.Item.Validate())
+ return;
+ if (_timing.CurTime < ent.Comp.NextPrintAllowedAfter)
+ return;
+
+ ent.Comp.NextPrintAllowedAfter = _timing.CurTime + ent.Comp.PrintDelay;
+ var printed = Spawn("PaperNanoTaskItem", Transform(message.Actor).Coordinates);
+ _hands.PickupOrDrop(message.Actor, printed);
+ _audio.PlayPvs(new SoundPathSpecifier("/Audio/Machines/printer.ogg"), ent.Owner);
+ SetupPrintedTask(printed, task.Item);
+ break;
+ }
+ }
+
+ UpdateUiState(ent, GetEntity(args.LoaderUid));
+ }
+
+
+ private void UpdateUiState(Entity ent, EntityUid loaderUid)
+ {
+ var state = new NanoTaskUiState(ent.Comp.Tasks);
+ _cartridgeLoader.UpdateCartridgeUiState(loaderUid, state);
+ }
+}
diff --git a/Content.Server/Cloning/CloningSystem.cs b/Content.Server/Cloning/CloningSystem.cs
index 937b311a59..b8aff813d2 100644
--- a/Content.Server/Cloning/CloningSystem.cs
+++ b/Content.Server/Cloning/CloningSystem.cs
@@ -5,9 +5,15 @@ using Content.Shared.Cloning.Events;
using Content.Shared.Database;
using Content.Shared.Humanoid;
using Content.Shared.Inventory;
+using Content.Shared.Implants;
+using Content.Shared.Implants.Components;
using Content.Shared.NameModifier.Components;
using Content.Shared.StatusEffect;
+using Content.Shared.Stacks;
+using Content.Shared.Storage;
+using Content.Shared.Storage.EntitySystems;
using Content.Shared.Whitelist;
+using Robust.Shared.Containers;
using Robust.Shared.Map;
using Robust.Shared.Prototypes;
using System.Diagnostics.CodeAnalysis;
@@ -28,6 +34,10 @@ public sealed class CloningSystem : EntitySystem
[Dependency] private readonly IPrototypeManager _prototype = default!;
[Dependency] private readonly EntityWhitelistSystem _whitelist = default!;
[Dependency] private readonly ISharedAdminLogManager _adminLogger = default!;
+ [Dependency] private readonly SharedContainerSystem _container = default!;
+ [Dependency] private readonly SharedStorageSystem _storage = default!;
+ [Dependency] private readonly SharedStackSystem _stack = default!;
+ [Dependency] private readonly SharedSubdermalImplantSystem _subdermalImplant = default!;
///
/// Spawns a clone of the given humanoid mob at the specified location or in nullspace.
@@ -81,6 +91,15 @@ public sealed class CloningSystem : EntitySystem
if (settings.CopyEquipment != null)
CopyEquipment(original, clone.Value, settings.CopyEquipment.Value, settings.Whitelist, settings.Blacklist);
+ // Copy storage on the mob itself as well.
+ // This is needed for slime storage.
+ if (settings.CopyInternalStorage)
+ CopyStorage(original, clone.Value, settings.Whitelist, settings.Blacklist);
+
+ // copy implants and their storage contents
+ if (settings.CopyImplants)
+ CopyImplants(original, clone.Value, settings.CopyInternalStorage, settings.Whitelist, settings.Blacklist);
+
var originalName = Name(original);
if (TryComp(original, out var nameModComp)) // if the originals name was modified, use the unmodified name
originalName = nameModComp.BaseName;
@@ -100,24 +119,122 @@ public sealed class CloningSystem : EntitySystem
/// Copies the equipment the original has to the clone.
/// This uses the original prototype of the items, so any changes to components that are done after spawning are lost!
///
- public void CopyEquipment(EntityUid original, EntityUid clone, SlotFlags slotFlags, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
+ public void CopyEquipment(Entity original, Entity clone, SlotFlags slotFlags, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
{
- if (!TryComp(original, out var originalInventory) || !TryComp(clone, out var cloneInventory))
+ if (!Resolve(original, ref original.Comp) || !Resolve(clone, ref clone.Comp))
return;
+
+ var coords = Transform(clone).Coordinates;
+
// Iterate over all inventory slots
- var slotEnumerator = _inventory.GetSlotEnumerator((original, originalInventory), slotFlags);
+ var slotEnumerator = _inventory.GetSlotEnumerator(original, slotFlags);
while (slotEnumerator.NextItem(out var item, out var slot))
{
- // Spawn a copy of the item using the original prototype.
- // This means any changes done to the item after spawning will be reset, but that should not be a problem for simple items like clothing etc.
- // we use a whitelist and blacklist to be sure to exclude any problematic entities
+ var cloneItem = CopyItem(item, coords, whitelist, blacklist);
- if (_whitelist.IsWhitelistFail(whitelist, item) || _whitelist.IsBlacklistPass(blacklist, item))
- continue;
-
- var prototype = MetaData(item).EntityPrototype;
- if (prototype != null)
- _inventory.SpawnItemInSlot(clone, slot.Name, prototype.ID, silent: true, inventory: cloneInventory);
+ if (cloneItem != null && !_inventory.TryEquip(clone, cloneItem.Value, slot.Name, silent: true, inventory: clone.Comp))
+ Del(cloneItem); // delete it again if the clone cannot equip it
}
}
+
+ ///
+ /// Copies an item and its storage recursively, placing all items at the same position in grid storage.
+ /// This uses the original prototype of the items, so any changes to components that are done after spawning are lost!
+ ///
+ ///
+ /// This is not perfect and only considers item in storage containers.
+ /// Some components have their own additional spawn logic on map init, so we cannot just copy all containers.
+ ///
+ public EntityUid? CopyItem(EntityUid original, EntityCoordinates coords, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
+ {
+ // we use a whitelist and blacklist to be sure to exclude any problematic entities
+ if (!_whitelist.CheckBoth(original, blacklist, whitelist))
+ return null;
+
+ var prototype = MetaData(original).EntityPrototype?.ID;
+ if (prototype == null)
+ return null;
+
+ var spawned = EntityManager.SpawnAtPosition(prototype, coords);
+
+ // if the original is a stack, adjust the count of the copy
+ if (TryComp(original, out var originalStack) && TryComp(spawned, out var spawnedStack))
+ _stack.SetCount(spawned, originalStack.Count, spawnedStack);
+
+ // if the original has items inside its storage, copy those as well
+ if (TryComp(original, out var originalStorage) && TryComp(spawned, out var spawnedStorage))
+ {
+ // remove all items that spawned with the entity inside its storage
+ // this ignores other containers, but this should be good enough for our purposes
+ _container.CleanContainer(spawnedStorage.Container);
+
+ // recursively replace them
+ // surely no one will ever create two items that contain each other causing an infinite loop, right?
+ foreach ((var itemUid, var itemLocation) in originalStorage.StoredItems)
+ {
+ var copy = CopyItem(itemUid, coords, whitelist, blacklist);
+ if (copy != null)
+ _storage.InsertAt((spawned, spawnedStorage), copy.Value, itemLocation, out _, playSound: false);
+ }
+ }
+
+ return spawned;
+ }
+
+ ///
+ /// Copies an item's storage recursively to another storage.
+ /// The storage grids should have the same shape or it will drop on the floor.
+ /// Basically the same as CopyItem, but we don't copy the outermost container.
+ ///
+ public void CopyStorage(Entity original, Entity target, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
+ {
+ if (!Resolve(original, ref original.Comp, false) || !Resolve(target, ref target.Comp, false))
+ return;
+
+ var coords = Transform(target).Coordinates;
+
+ // delete all items in the target storage
+ _container.CleanContainer(target.Comp.Container);
+
+ // recursively replace them
+ foreach ((var itemUid, var itemLocation) in original.Comp.StoredItems)
+ {
+ var copy = CopyItem(itemUid, coords, whitelist, blacklist);
+ if (copy != null)
+ _storage.InsertAt(target, copy.Value, itemLocation, out _, playSound: false);
+ }
+ }
+
+ ///
+ /// Copies all implants from one mob to another.
+ /// Might result in duplicates if the target already has them.
+ /// Can copy the storage inside a storage implant according to a whitelist and blacklist.
+ ///
+ /// Entity to copy implants from.
+ /// Entity to copy implants to.
+ /// If true will copy storage of the implants (E.g storage implant)
+ /// Whitelist for the storage copy (If copyStorage is true)
+ /// Blacklist for the storage copy (If copyStorage is true)
+ public void CopyImplants(Entity original, EntityUid target, bool copyStorage = false, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
+ {
+ if (!Resolve(original, ref original.Comp, false))
+ return; // they don't have any implants to copy!
+
+ foreach (var originalImplant in original.Comp.ImplantContainer.ContainedEntities)
+ {
+ if (!HasComp(originalImplant))
+ continue; // not an implant (should only happen with admin shenanigans)
+
+ var implantId = MetaData(originalImplant).EntityPrototype?.ID;
+
+ if (implantId == null)
+ continue;
+
+ var targetImplant = _subdermalImplant.AddImplant(target, implantId);
+
+ if (copyStorage && targetImplant != null)
+ CopyStorage(originalImplant, targetImplant.Value, whitelist, blacklist); // only needed for storage implants
+ }
+
+ }
}
diff --git a/Content.Server/Explosion/Components/SpawnOnTriggerComponent.cs b/Content.Server/Explosion/Components/SpawnOnTriggerComponent.cs
index a8b36fbd84..c28ec7faeb 100644
--- a/Content.Server/Explosion/Components/SpawnOnTriggerComponent.cs
+++ b/Content.Server/Explosion/Components/SpawnOnTriggerComponent.cs
@@ -1,12 +1,24 @@
using Content.Server.Explosion.EntitySystems;
using Robust.Shared.Prototypes;
-using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
namespace Content.Server.Explosion.Components;
+///
+/// Spawns a protoype when triggered.
+///
[RegisterComponent, Access(typeof(TriggerSystem))]
public sealed partial class SpawnOnTriggerComponent : Component
{
- [ViewVariables(VVAccess.ReadWrite), DataField("proto", required: true, customTypeSerializer:typeof(PrototypeIdSerializer))]
- public string Proto = string.Empty;
+ ///
+ /// The prototype to spawn.
+ ///
+ [DataField(required: true)]
+ public EntProtoId Proto = string.Empty;
+
+ ///
+ /// Use MapCoordinates for spawning?
+ /// Set to true if you don't want the new entity parented to the spawner.
+ ///
+ [DataField]
+ public bool mapCoords;
}
diff --git a/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs b/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
index 950bd3e462..28c2ed8c34 100644
--- a/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
+++ b/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
@@ -1,15 +1,20 @@
-namespace Content.Server.Explosion.Components
-{
- [RegisterComponent]
- public sealed partial class TriggerOnCollideComponent : Component
- {
- [DataField("fixtureID", required: true)]
- public string FixtureID = String.Empty;
+namespace Content.Server.Explosion.Components;
- ///
- /// Doesn't trigger if the other colliding fixture is nonhard.
- ///
- [DataField("ignoreOtherNonHard")]
- public bool IgnoreOtherNonHard = true;
- }
+///
+/// Triggers when colliding with another entity.
+///
+[RegisterComponent]
+public sealed partial class TriggerOnCollideComponent : Component
+{
+ ///
+ /// The fixture with which to collide.
+ ///
+ [DataField(required: true)]
+ public string FixtureID = string.Empty;
+
+ ///
+ /// Doesn't trigger if the other colliding fixture is nonhard.
+ ///
+ [DataField]
+ public bool IgnoreOtherNonHard = true;
}
diff --git a/Content.Server/Explosion/Components/TriggerOnUseComponent.cs b/Content.Server/Explosion/Components/TriggerOnUseComponent.cs
new file mode 100644
index 0000000000..2b44d2fbac
--- /dev/null
+++ b/Content.Server/Explosion/Components/TriggerOnUseComponent.cs
@@ -0,0 +1,7 @@
+namespace Content.Server.Explosion.Components;
+
+///
+/// Triggers on use in hand.
+///
+[RegisterComponent]
+public sealed partial class TriggerOnUseComponent : Component { }
diff --git a/Content.Server/Explosion/Components/TriggerWhitelistComponent.cs b/Content.Server/Explosion/Components/TriggerWhitelistComponent.cs
new file mode 100644
index 0000000000..80becf17cc
--- /dev/null
+++ b/Content.Server/Explosion/Components/TriggerWhitelistComponent.cs
@@ -0,0 +1,23 @@
+using Content.Shared.Whitelist;
+
+namespace Content.Server.Explosion.Components;
+
+///
+/// Checks if the user of a Trigger satisfies a whitelist and blacklist condition.
+/// Cancels the trigger otherwise.
+///
+[RegisterComponent]
+public sealed partial class TriggerWhitelistComponent : Component
+{
+ ///
+ /// Whitelist for what entites can cause this trigger.
+ ///
+ [DataField]
+ public EntityWhitelist? Whitelist;
+
+ ///
+ /// Blacklist for what entites can cause this trigger.
+ ///
+ [DataField]
+ public EntityWhitelist? Blacklist;
+}
diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs
index 53f6dfacf8..0459730c64 100644
--- a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs
+++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs
@@ -14,6 +14,7 @@ using Content.Shared.Explosion.Components;
using Content.Shared.Explosion.Components.OnTrigger;
using Content.Shared.Implants.Components;
using Content.Shared.Interaction;
+using Content.Shared.Interaction.Events;
using Content.Shared.Inventory;
using Content.Shared.Mobs;
using Content.Shared.Mobs.Components;
@@ -23,6 +24,7 @@ using Content.Shared.Slippery;
using Content.Shared.StepTrigger.Systems;
using Content.Shared.Trigger;
using Content.Shared.Weapons.Ranged.Events;
+using Content.Shared.Whitelist;
using JetBrains.Annotations;
using Robust.Shared.Audio;
using Robust.Shared.Audio.Systems;
@@ -31,10 +33,7 @@ using Robust.Shared.Physics.Events;
using Robust.Shared.Physics.Systems;
using Robust.Shared.Prototypes;
using Robust.Shared.Random;
-using Robust.Shared.Player;
-using Content.Shared.Coordinates;
using Robust.Shared.Utility;
-using Robust.Shared.Timing;
namespace Content.Server.Explosion.EntitySystems
{
@@ -53,6 +52,12 @@ namespace Content.Server.Explosion.EntitySystems
}
}
+ ///
+ /// Raised before a trigger is activated.
+ ///
+ [ByRefEvent]
+ public record struct BeforeTriggerEvent(EntityUid Triggered, EntityUid? User, bool Cancelled = false);
+
///
/// Raised when timer trigger becomes active.
///
@@ -78,6 +83,7 @@ namespace Content.Server.Explosion.EntitySystems
[Dependency] private readonly SharedSolutionContainerSystem _solutionContainerSystem = default!;
[Dependency] private readonly InventorySystem _inventory = default!;
[Dependency] private readonly ElectrocutionSystem _electrocution = default!;
+ [Dependency] private readonly EntityWhitelistSystem _whitelist = default!;
public override void Initialize()
{
@@ -93,6 +99,7 @@ namespace Content.Server.Explosion.EntitySystems
SubscribeLocalEvent(OnSpawnTriggered);
SubscribeLocalEvent(OnTriggerCollide);
SubscribeLocalEvent(OnActivate);
+ SubscribeLocalEvent(OnUse);
SubscribeLocalEvent(OnImplantTrigger);
SubscribeLocalEvent(OnStepTriggered);
SubscribeLocalEvent(OnSlipTriggered);
@@ -109,6 +116,13 @@ namespace Content.Server.Explosion.EntitySystems
SubscribeLocalEvent(OnSoundTrigger);
SubscribeLocalEvent(HandleShockTrigger);
SubscribeLocalEvent(HandleRattleTrigger);
+
+ SubscribeLocalEvent(HandleWhitelist);
+ }
+
+ private void HandleWhitelist(Entity ent, ref BeforeTriggerEvent args)
+ {
+ args.Cancelled = !_whitelist.CheckBoth(args.User, ent.Comp.Blacklist, ent.Comp.Whitelist);
}
private void OnSoundTrigger(EntityUid uid, SoundOnTriggerComponent component, TriggerEvent args)
@@ -155,16 +169,23 @@ namespace Content.Server.Explosion.EntitySystems
RemCompDeferred(uid);
}
- private void OnSpawnTrigger(EntityUid uid, SpawnOnTriggerComponent component, TriggerEvent args)
+ private void OnSpawnTrigger(Entity ent, ref TriggerEvent args)
{
- var xform = Transform(uid);
+ var xform = Transform(ent);
- var coords = xform.Coordinates;
+ if (ent.Comp.mapCoords)
+ {
+ var mapCoords = _transformSystem.GetMapCoordinates(ent, xform);
+ Spawn(ent.Comp.Proto, mapCoords);
+ }
+ else
+ {
+ var coords = xform.Coordinates;
+ if (!coords.IsValid(EntityManager))
+ return;
+ Spawn(ent.Comp.Proto, coords);
- if (!coords.IsValid(EntityManager))
- return;
-
- Spawn(component.Proto, coords);
+ }
}
private void HandleExplodeTrigger(EntityUid uid, ExplodeOnTriggerComponent component, TriggerEvent args)
@@ -248,6 +269,15 @@ namespace Content.Server.Explosion.EntitySystems
args.Handled = true;
}
+ private void OnUse(Entity ent, ref UseInHandEvent args)
+ {
+ if (args.Handled)
+ return;
+
+ Trigger(ent.Owner, args.User);
+ args.Handled = true;
+ }
+
private void OnImplantTrigger(EntityUid uid, TriggerImplantActionComponent component, ActivateImplantEvent args)
{
args.Handled = Trigger(uid);
@@ -275,6 +305,11 @@ namespace Content.Server.Explosion.EntitySystems
public bool Trigger(EntityUid trigger, EntityUid? user = null)
{
+ var beforeTriggerEvent = new BeforeTriggerEvent(trigger, user);
+ RaiseLocalEvent(trigger, ref beforeTriggerEvent);
+ if (beforeTriggerEvent.Cancelled)
+ return false;
+
var triggerEvent = new TriggerEvent(trigger, user);
EntityManager.EventBus.RaiseLocalEvent(trigger, triggerEvent, true);
return triggerEvent.Handled;
diff --git a/Content.Server/Forensics/Systems/ForensicsSystem.cs b/Content.Server/Forensics/Systems/ForensicsSystem.cs
index a52b060391..27df086ae1 100644
--- a/Content.Server/Forensics/Systems/ForensicsSystem.cs
+++ b/Content.Server/Forensics/Systems/ForensicsSystem.cs
@@ -73,7 +73,6 @@ namespace Content.Server.Forensics
private void OnDNAInit(Entity ent, ref MapInitEvent args)
{
- Log.Debug($"Init DNA {Name(ent.Owner)} {ent.Comp.DNA}");
if (ent.Comp.DNA == null)
RandomizeDNA((ent.Owner, ent.Comp));
else
@@ -327,7 +326,6 @@ namespace Content.Server.Forensics
ent.Comp.DNA = GenerateDNA();
Dirty(ent);
- Log.Debug($"Randomize DNA {Name(ent.Owner)} {ent.Comp.DNA}");
var ev = new GenerateDnaEvent { Owner = ent.Owner, DNA = ent.Comp.DNA };
RaiseLocalEvent(ent.Owner, ref ev);
}
diff --git a/Content.Server/GameTicking/Rules/Components/ParadoxCloneRuleComponent.cs b/Content.Server/GameTicking/Rules/Components/ParadoxCloneRuleComponent.cs
new file mode 100644
index 0000000000..d0d3c1e9db
--- /dev/null
+++ b/Content.Server/GameTicking/Rules/Components/ParadoxCloneRuleComponent.cs
@@ -0,0 +1,43 @@
+using Content.Shared.Cloning;
+using Content.Shared.Whitelist;
+using Robust.Shared.Prototypes;
+
+namespace Content.Server.GameTicking.Rules.Components;
+
+///
+/// Gamerule component for spawning a paradox clone antagonist.
+///
+[RegisterComponent]
+public sealed partial class ParadoxCloneRuleComponent : Component
+{
+ ///
+ /// Cloning settings to be used.
+ ///
+ [DataField]
+ public ProtoId Settings = "BaseClone";
+
+ ///
+ /// Visual effect spawned when gibbing at round end.
+ ///
+ [DataField]
+ public EntProtoId GibProto = "MobParadoxTimed";
+
+ ///
+ /// Mind entity of the original player.
+ /// Gets assigned when cloning.
+ ///
+ [DataField]
+ public EntityUid? Original;
+
+ ///
+ /// Whitelist for Objectives to be copied to the clone.
+ ///
+ [DataField]
+ public EntityWhitelist? ObjectiveWhitelist;
+
+ ///
+ /// Blacklist for Objectives to be copied to the clone.
+ ///
+ [DataField]
+ public EntityWhitelist? ObjectiveBlacklist;
+}
diff --git a/Content.Server/GameTicking/Rules/GameRuleSystem.Utility.cs b/Content.Server/GameTicking/Rules/GameRuleSystem.Utility.cs
index 5a5eb720cf..33ee91f8a5 100644
--- a/Content.Server/GameTicking/Rules/GameRuleSystem.Utility.cs
+++ b/Content.Server/GameTicking/Rules/GameRuleSystem.Utility.cs
@@ -19,6 +19,11 @@ public abstract partial class GameRuleSystem where T: IComponent
return EntityQueryEnumerator();
}
+ protected EntityQueryEnumerator QueryDelayedRules()
+ {
+ return EntityQueryEnumerator();
+ }
+
///
/// Queries all gamerules, regardless of if they're active or not.
///
diff --git a/Content.Server/GameTicking/Rules/ParadoxCloneRuleSystem.cs b/Content.Server/GameTicking/Rules/ParadoxCloneRuleSystem.cs
new file mode 100644
index 0000000000..8a5cab85b8
--- /dev/null
+++ b/Content.Server/GameTicking/Rules/ParadoxCloneRuleSystem.cs
@@ -0,0 +1,94 @@
+using Content.Server.Antag;
+using Content.Server.Cloning;
+using Content.Server.GameTicking.Rules.Components;
+using Content.Server.Medical.SuitSensors;
+using Content.Server.Objectives.Components;
+using Content.Shared.GameTicking.Components;
+using Content.Shared.Gibbing.Components;
+using Content.Shared.Medical.SuitSensor;
+using Content.Shared.Mind;
+using Robust.Shared.Random;
+
+namespace Content.Server.GameTicking.Rules;
+
+public sealed class ParadoxCloneRuleSystem : GameRuleSystem
+{
+ [Dependency] private readonly SharedTransformSystem _transform = default!;
+ [Dependency] private readonly SharedMindSystem _mind = default!;
+ [Dependency] private readonly IRobustRandom _random = default!;
+ [Dependency] private readonly CloningSystem _cloning = default!;
+ [Dependency] private readonly SuitSensorSystem _sensor = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(OnAntagSelectEntity);
+ SubscribeLocalEvent(AfterAntagEntitySelected);
+ }
+
+ protected override void Started(EntityUid uid, ParadoxCloneRuleComponent component, GameRuleComponent gameRule, GameRuleStartedEvent args)
+ {
+ base.Started(uid, component, gameRule, args);
+
+ // check if we got enough potential cloning targets, otherwise cancel the gamerule so that the ghost role does not show up
+ var allHumans = _mind.GetAliveHumans();
+
+ if (allHumans.Count == 0)
+ {
+ Log.Info("Could not find any alive players to create a paradox clone from! Ending gamerule.");
+ ForceEndSelf(uid, gameRule);
+ }
+ }
+
+ // we have to do the spawning here so we can transfer the mind to the correct entity and can assign the objectives correctly
+ private void OnAntagSelectEntity(Entity ent, ref AntagSelectEntityEvent args)
+ {
+ if (args.Session?.AttachedEntity is not { } spawner)
+ return;
+
+ // get possible targets
+ var allHumans = _mind.GetAliveHumans();
+
+ // we already checked when starting the gamerule, but someone might have died since then.
+ if (allHumans.Count == 0)
+ {
+ Log.Warning("Could not find any alive players to create a paradox clone from!");
+ return;
+ }
+
+ // pick a random player
+ var playerToClone = _random.Pick(allHumans);
+ var bodyToClone = playerToClone.Comp.OwnedEntity;
+
+ if (bodyToClone == null || !_cloning.TryCloning(bodyToClone.Value, _transform.GetMapCoordinates(spawner), ent.Comp.Settings, out var clone))
+ {
+ Log.Error($"Unable to make a paradox clone of entity {ToPrettyString(bodyToClone)}");
+ return;
+ }
+
+ var targetComp = EnsureComp(clone.Value);
+ targetComp.Target = playerToClone.Owner; // set the kill target
+
+ var gibComp = EnsureComp(clone.Value);
+ gibComp.SpawnProto = ent.Comp.GibProto;
+ gibComp.PreventGibbingObjectives = new() { "ParadoxCloneKillObjective" }; // don't gib them if they killed the original.
+
+ // turn their suit sensors off so they don't immediately get noticed
+ _sensor.SetAllSensors(clone.Value, SuitSensorMode.SensorOff);
+
+ args.Entity = clone;
+ ent.Comp.Original = playerToClone.Owner;
+ }
+
+ private void AfterAntagEntitySelected(Entity ent, ref AfterAntagEntitySelectedEvent args)
+ {
+ if (ent.Comp.Original == null)
+ return;
+
+ if (!_mind.TryGetMind(args.EntityUid, out var cloneMindId, out var cloneMindComp))
+ return;
+
+ _mind.CopyObjectives(ent.Comp.Original.Value, (cloneMindId, cloneMindComp), ent.Comp.ObjectiveWhitelist, ent.Comp.ObjectiveBlacklist);
+ }
+}
diff --git a/Content.Server/GameTicking/Rules/RevolutionaryRuleSystem.cs b/Content.Server/GameTicking/Rules/RevolutionaryRuleSystem.cs
index a313b78eaf..9ec932b06f 100644
--- a/Content.Server/GameTicking/Rules/RevolutionaryRuleSystem.cs
+++ b/Content.Server/GameTicking/Rules/RevolutionaryRuleSystem.cs
@@ -189,7 +189,7 @@ public sealed class RevolutionaryRuleSystem : GameRuleSystem();
while (rev.MoveNext(out var uid, out _, out var mc))
@@ -251,34 +251,45 @@ public sealed class RevolutionaryRuleSystem : GameRuleSystemThe list of the entities
/// Bool for if you want to check if someone is in space and consider them missing in action. (Won't check when emergency shuttle arrives just in case)
/// Bool for if you don't want to count cuffed entities.
+ /// Bool for if you want to count revolutionaries.
///
- private bool IsGroupDetainedOrDead(List list, bool checkOffStation, bool countCuffed)
+ private bool IsGroupDetainedOrDead(List list, bool checkOffStation, bool countCuffed, bool countRevolutionaries)
{
var gone = 0;
+
foreach (var entity in list)
{
if (TryComp(entity, out var cuffed) && cuffed.CuffedHandCount > 0 && countCuffed)
{
gone++;
+ continue;
}
- else
+
+ if (TryComp(entity, out var state))
{
- if (TryComp(entity, out var state))
- {
- if (state.CurrentState == MobState.Dead || state.CurrentState == MobState.Invalid)
- {
- gone++;
- }
- else if (checkOffStation && _stationSystem.GetOwningStation(entity) == null && !_emergencyShuttle.EmergencyShuttleArrived)
- {
- gone++;
- }
- }
- //If they don't have the MobStateComponent they might as well be dead.
- else
+ if (state.CurrentState == MobState.Dead || state.CurrentState == MobState.Invalid)
{
gone++;
+ continue;
}
+
+ if (checkOffStation && _stationSystem.GetOwningStation(entity) == null && !_emergencyShuttle.EmergencyShuttleArrived)
+ {
+ gone++;
+ continue;
+ }
+ }
+ //If they don't have the MobStateComponent they might as well be dead.
+ else
+ {
+ gone++;
+ continue;
+ }
+
+ if ((HasComp(entity) || HasComp(entity)) && countRevolutionaries)
+ {
+ gone++;
+ continue;
}
}
diff --git a/Content.Server/Gibbing/Systems/GibOnRoundEndSystem.cs b/Content.Server/Gibbing/Systems/GibOnRoundEndSystem.cs
new file mode 100644
index 0000000000..d23832984f
--- /dev/null
+++ b/Content.Server/Gibbing/Systems/GibOnRoundEndSystem.cs
@@ -0,0 +1,55 @@
+using Content.Shared.GameTicking;
+using Content.Shared.Gibbing.Components;
+using Content.Shared.Mind;
+using Content.Shared.Objectives.Systems;
+using Content.Server.Body.Systems;
+
+namespace Content.Server.Gibbing.Systems;
+public sealed class GibOnRoundEndSystem : EntitySystem
+{
+ [Dependency] private readonly BodySystem _body = default!;
+ [Dependency] private readonly SharedMindSystem _mind = default!;
+ [Dependency] private readonly SharedObjectivesSystem _objectives = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ // this is raised after RoundEndTextAppendEvent, so they can successfully greentext before we gib them
+ SubscribeLocalEvent(OnRoundEnd);
+ }
+
+ private void OnRoundEnd(RoundEndMessageEvent args)
+ {
+ var gibQuery = EntityQueryEnumerator();
+
+ // gib everyone with the component
+ while (gibQuery.MoveNext(out var uid, out var gibComp))
+ {
+ var gib = false;
+ // if they fulfill all objectives given in the component they are not gibbed
+ if (_mind.TryGetMind(uid, out var mindId, out var mindComp))
+ {
+ foreach (var objectiveId in gibComp.PreventGibbingObjectives)
+ {
+ if (!_mind.TryFindObjective((mindId, mindComp), objectiveId, out var objective)
+ || !_objectives.IsCompleted(objective.Value, (mindId, mindComp)))
+ {
+ gib = true;
+ break;
+ }
+ }
+ }
+ else
+ gib = true;
+
+ if (!gib)
+ continue;
+
+ if (gibComp.SpawnProto != null)
+ SpawnAtPosition(gibComp.SpawnProto, Transform(uid).Coordinates);
+
+ _body.GibBody(uid, splatModifier: 5f);
+ }
+ }
+}
diff --git a/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs b/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
index b697a42d51..f6e46dd4f8 100644
--- a/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
+++ b/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
@@ -15,6 +15,7 @@ using Content.Shared.DoAfter;
using Content.Shared.Examine;
using Content.Shared.GameTicking;
using Content.Shared.Interaction;
+using Content.Shared.Inventory;
using Content.Shared.Medical.SuitSensor;
using Content.Shared.Mobs;
using Content.Shared.Mobs.Components;
@@ -44,6 +45,7 @@ public sealed class SuitSensorSystem : EntitySystem
[Dependency] private readonly SharedDoAfterSystem _doAfterSystem = default!;
[Dependency] private readonly ActionBlockerSystem _actionBlocker = default!;
[Dependency] private readonly IPrototypeManager _proto = default!;
+ [Dependency] private readonly InventorySystem _inventory = default!;
public override void Initialize()
{
@@ -347,6 +349,20 @@ public sealed class SuitSensorSystem : EntitySystem
}
}
+ ///
+ /// Set all suit sensors on the equipment someone is wearing to the specified mode.
+ ///
+ public void SetAllSensors(EntityUid target, SuitSensorMode mode, SlotFlags slots = SlotFlags.All )
+ {
+ // iterate over all inventory slots
+ var slotEnumerator = _inventory.GetSlotEnumerator(target, slots);
+ while (slotEnumerator.NextItem(out var item, out _))
+ {
+ if (TryComp(item, out var sensorComp))
+ SetSensor((item, sensorComp), mode);
+ }
+ }
+
public SuitSensorStatus? GetSensorState(EntityUid uid, SuitSensorComponent? sensor = null, TransformComponent? transform = null)
{
if (!Resolve(uid, ref sensor, ref transform))
diff --git a/Content.Server/Mindshield/MindShieldSystem.cs b/Content.Server/Mindshield/MindShieldSystem.cs
index bfca6c008e..63d6bf097e 100644
--- a/Content.Server/Mindshield/MindShieldSystem.cs
+++ b/Content.Server/Mindshield/MindShieldSystem.cs
@@ -8,6 +8,7 @@ using Content.Shared.Implants.Components;
using Content.Shared.Mindshield.Components;
using Content.Shared.Revolutionary.Components;
using Content.Shared.Tag;
+using Robust.Shared.Containers;
namespace Content.Server.Mindshield;
@@ -29,6 +30,7 @@ public sealed class MindShieldSystem : EntitySystem
{
base.Initialize();
SubscribeLocalEvent(ImplantCheck);
+ SubscribeLocalEvent(OnImplantDraw);
}
///
@@ -61,4 +63,10 @@ public sealed class MindShieldSystem : EntitySystem
_adminLogManager.Add(LogType.Mind, LogImpact.Medium, $"{ToPrettyString(implanted)} was deconverted due to being implanted with a Mindshield.");
}
}
+
+ private void OnImplantDraw(Entity ent, ref EntGotRemovedFromContainerMessage args)
+ {
+ RemComp(args.Container.Owner);
+ }
}
+
diff --git a/Content.Server/Objectives/Components/PickRandomHeadComponent.cs b/Content.Server/Objectives/Components/PickRandomHeadComponent.cs
index c2f82fb6c5..38ed252264 100644
--- a/Content.Server/Objectives/Components/PickRandomHeadComponent.cs
+++ b/Content.Server/Objectives/Components/PickRandomHeadComponent.cs
@@ -1,12 +1,8 @@
-using Content.Server.Objectives.Systems;
-
namespace Content.Server.Objectives.Components;
///
/// Sets the target for to a random head.
/// If there are no heads it will fallback to any person.
///
-[RegisterComponent, Access(typeof(KillPersonConditionSystem))]
-public sealed partial class PickRandomHeadComponent : Component
-{
-}
+[RegisterComponent]
+public sealed partial class PickRandomHeadComponent : Component;
diff --git a/Content.Server/Objectives/Components/PickRandomPersonComponent.cs b/Content.Server/Objectives/Components/PickRandomPersonComponent.cs
index 4188b1da3d..bf4135e2a9 100644
--- a/Content.Server/Objectives/Components/PickRandomPersonComponent.cs
+++ b/Content.Server/Objectives/Components/PickRandomPersonComponent.cs
@@ -1,11 +1,7 @@
-using Content.Server.Objectives.Systems;
-
namespace Content.Server.Objectives.Components;
///
/// Sets the target for to a random person.
///
-[RegisterComponent, Access(typeof(KillPersonConditionSystem))]
-public sealed partial class PickRandomPersonComponent : Component
-{
-}
+[RegisterComponent]
+public sealed partial class PickRandomPersonComponent : Component;
diff --git a/Content.Server/Objectives/Components/PickSpecificPersonComponent.cs b/Content.Server/Objectives/Components/PickSpecificPersonComponent.cs
new file mode 100644
index 0000000000..03a482fc7b
--- /dev/null
+++ b/Content.Server/Objectives/Components/PickSpecificPersonComponent.cs
@@ -0,0 +1,8 @@
+namespace Content.Server.Objectives.Components;
+
+///
+/// Sets this objective's target to the one given in , if the entity has it.
+/// This component needs to be added to objective entity itself.
+///
+[RegisterComponent]
+public sealed partial class PickSpecificPersonComponent : Component;
diff --git a/Content.Server/Objectives/Components/RandomTraitorAliveComponent.cs b/Content.Server/Objectives/Components/RandomTraitorAliveComponent.cs
index fd37d0d2c8..1c45cb45d5 100644
--- a/Content.Server/Objectives/Components/RandomTraitorAliveComponent.cs
+++ b/Content.Server/Objectives/Components/RandomTraitorAliveComponent.cs
@@ -1,11 +1,7 @@
-using Content.Server.Objectives.Systems;
-
namespace Content.Server.Objectives.Components;
///
/// Sets the target for to a random traitor.
///
-[RegisterComponent, Access(typeof(KeepAliveConditionSystem))]
-public sealed partial class RandomTraitorAliveComponent : Component
-{
-}
+[RegisterComponent]
+public sealed partial class RandomTraitorAliveComponent : Component;
diff --git a/Content.Server/Objectives/Components/RandomTraitorProgressComponent.cs b/Content.Server/Objectives/Components/RandomTraitorProgressComponent.cs
index c05ac0d3ef..f2da9778eb 100644
--- a/Content.Server/Objectives/Components/RandomTraitorProgressComponent.cs
+++ b/Content.Server/Objectives/Components/RandomTraitorProgressComponent.cs
@@ -1,11 +1,7 @@
-using Content.Server.Objectives.Systems;
-
namespace Content.Server.Objectives.Components;
///
/// Sets the target for to a random traitor.
///
-[RegisterComponent, Access(typeof(HelpProgressConditionSystem))]
-public sealed partial class RandomTraitorProgressComponent : Component
-{
-}
+[RegisterComponent]
+public sealed partial class RandomTraitorProgressComponent : Component;
diff --git a/Content.Server/Objectives/Components/TargetOverrideComponent.cs b/Content.Server/Objectives/Components/TargetOverrideComponent.cs
new file mode 100644
index 0000000000..faa402012c
--- /dev/null
+++ b/Content.Server/Objectives/Components/TargetOverrideComponent.cs
@@ -0,0 +1,16 @@
+namespace Content.Server.Objectives.Components;
+
+///
+/// Sets a target objective to a specific target when receiving it.
+/// The objective entity needs to have .
+/// This component needs to be added to entity receiving the objective.
+///
+[RegisterComponent]
+public sealed partial class TargetOverrideComponent : Component
+{
+ ///
+ /// The entity that should be targeted.
+ ///
+ [DataField]
+ public EntityUid? Target;
+}
diff --git a/Content.Server/Objectives/Systems/HelpProgressConditionSystem.cs b/Content.Server/Objectives/Systems/HelpProgressConditionSystem.cs
index 7639e69bfd..1816896ecc 100644
--- a/Content.Server/Objectives/Systems/HelpProgressConditionSystem.cs
+++ b/Content.Server/Objectives/Systems/HelpProgressConditionSystem.cs
@@ -1,31 +1,23 @@
-using Content.Server.GameTicking.Rules;
using Content.Server.Objectives.Components;
using Content.Shared.Mind;
using Content.Shared.Objectives.Components;
using Content.Shared.Objectives.Systems;
-using Content.Shared.Roles.Jobs;
-using Robust.Shared.Random;
-using System.Linq;
namespace Content.Server.Objectives.Systems;
///
-/// Handles help progress condition logic and picking random help targets.
+/// Handles help progress condition logic.
///
public sealed class HelpProgressConditionSystem : EntitySystem
{
- [Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SharedObjectivesSystem _objectives = default!;
[Dependency] private readonly TargetObjectiveSystem _target = default!;
- [Dependency] private readonly TraitorRuleSystem _traitorRule = default!;
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent(OnGetProgress);
-
- SubscribeLocalEvent(OnTraitorAssigned);
}
private void OnGetProgress(EntityUid uid, HelpProgressConditionComponent comp, ref ObjectiveGetProgressEvent args)
@@ -36,55 +28,6 @@ public sealed class HelpProgressConditionSystem : EntitySystem
args.Progress = GetProgress(target.Value);
}
- private void OnTraitorAssigned(EntityUid uid, RandomTraitorProgressComponent comp, ref ObjectiveAssignedEvent args)
- {
- // invalid prototype
- if (!TryComp(uid, out var target))
- {
- args.Cancelled = true;
- return;
- }
-
- var traitors = _traitorRule.GetOtherTraitorMindsAliveAndConnected(args.Mind).ToHashSet();
-
- // cant help anyone who is tasked with helping:
- // 1. thats boring
- // 2. no cyclic progress dependencies!!!
- foreach (var traitor in traitors)
- {
- // TODO: replace this with TryComp(traitor) or something when objectives are moved out of mind
- if (!TryComp(traitor.Id, out var mind))
- continue;
-
- foreach (var objective in mind.Objectives)
- {
- if (HasComp(objective))
- traitors.RemoveWhere(x => x.Mind == mind);
- }
- }
-
- // Can't have multiple objectives to help/save the same person
- foreach (var objective in args.Mind.Objectives)
- {
- if (HasComp(objective) || HasComp(objective))
- {
- if (TryComp(objective, out var help))
- {
- traitors.RemoveWhere(x => x.Id == help.Target);
- }
- }
- }
-
- // no more helpable traitors
- if (traitors.Count == 0)
- {
- args.Cancelled = true;
- return;
- }
-
- _target.SetTarget(uid, _random.Pick(traitors).Id, target);
- }
-
private float GetProgress(EntityUid target)
{
var total = 0f; // how much progress they have
diff --git a/Content.Server/Objectives/Systems/KeepAliveCondition.cs b/Content.Server/Objectives/Systems/KeepAliveCondition.cs
index fad8aa6d18..f68227e861 100644
--- a/Content.Server/Objectives/Systems/KeepAliveCondition.cs
+++ b/Content.Server/Objectives/Systems/KeepAliveCondition.cs
@@ -1,30 +1,22 @@
using Content.Server.Objectives.Components;
-using Content.Server.GameTicking.Rules;
using Content.Shared.Mind;
using Content.Shared.Objectives.Components;
-using Content.Shared.Roles.Jobs;
-using Robust.Shared.Random;
-using System.Linq;
namespace Content.Server.Objectives.Systems;
///
-/// Handles keep alive condition logic and picking random traitors to keep alive.
+/// Handles keep alive condition logic.
///
public sealed class KeepAliveConditionSystem : EntitySystem
{
- [Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SharedMindSystem _mind = default!;
[Dependency] private readonly TargetObjectiveSystem _target = default!;
- [Dependency] private readonly TraitorRuleSystem _traitorRule = default!;
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent(OnGetProgress);
-
- SubscribeLocalEvent(OnAssigned);
}
private void OnGetProgress(EntityUid uid, KeepAliveConditionComponent comp, ref ObjectiveGetProgressEvent args)
@@ -35,39 +27,6 @@ public sealed class KeepAliveConditionSystem : EntitySystem
args.Progress = GetProgress(target.Value);
}
- private void OnAssigned(EntityUid uid, RandomTraitorAliveComponent comp, ref ObjectiveAssignedEvent args)
- {
- // invalid prototype
- if (!TryComp(uid, out var target))
- {
- args.Cancelled = true;
- return;
- }
-
- var traitors = _traitorRule.GetOtherTraitorMindsAliveAndConnected(args.Mind).ToHashSet();
-
- // Can't have multiple objectives to help/save the same person
- foreach (var objective in args.Mind.Objectives)
- {
- if (HasComp(objective) || HasComp(objective))
- {
- if (TryComp(objective, out var help))
- {
- traitors.RemoveWhere(x => x.Id == help.Target);
- }
- }
- }
-
- // You are the first/only traitor.
- if (traitors.Count == 0)
- {
- args.Cancelled = true;
- return;
- }
-
- _target.SetTarget(uid, _random.Pick(traitors).Id, target);
- }
-
private float GetProgress(EntityUid target)
{
if (!TryComp(target, out var mind))
diff --git a/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs b/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs
index 3aa4d606fc..45ad68e28b 100644
--- a/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs
+++ b/Content.Server/Objectives/Systems/KillPersonConditionSystem.cs
@@ -1,12 +1,9 @@
using Content.Server.Objectives.Components;
-using Content.Server.Revolutionary.Components;
using Content.Server.Shuttles.Systems;
using Content.Shared.CCVar;
using Content.Shared.Mind;
using Content.Shared.Objectives.Components;
using Robust.Shared.Configuration;
-using Robust.Shared.Random;
-using System.Linq;
namespace Content.Server.Objectives.Systems;
@@ -17,7 +14,6 @@ public sealed class KillPersonConditionSystem : EntitySystem
{
[Dependency] private readonly EmergencyShuttleSystem _emergencyShuttle = default!;
[Dependency] private readonly IConfigurationManager _config = default!;
- [Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SharedMindSystem _mind = default!;
[Dependency] private readonly TargetObjectiveSystem _target = default!;
@@ -26,10 +22,6 @@ public sealed class KillPersonConditionSystem : EntitySystem
base.Initialize();
SubscribeLocalEvent(OnGetProgress);
-
- SubscribeLocalEvent(OnPersonAssigned);
-
- SubscribeLocalEvent(OnHeadAssigned);
}
private void OnGetProgress(EntityUid uid, KillPersonConditionComponent comp, ref ObjectiveGetProgressEvent args)
@@ -40,74 +32,6 @@ public sealed class KillPersonConditionSystem : EntitySystem
args.Progress = GetProgress(target.Value, comp.RequireDead);
}
- private void OnPersonAssigned(EntityUid uid, PickRandomPersonComponent comp, ref ObjectiveAssignedEvent args)
- {
- // invalid objective prototype
- if (!TryComp(uid, out var target))
- {
- args.Cancelled = true;
- return;
- }
-
- // target already assigned
- if (target.Target != null)
- return;
-
- var allHumans = _mind.GetAliveHumans(args.MindId);
-
- // Can't have multiple objectives to kill the same person
- foreach (var objective in args.Mind.Objectives)
- {
- if (HasComp(objective) && TryComp(objective, out var kill))
- {
- allHumans.RemoveWhere(x => x.Owner == kill.Target);
- }
- }
-
- // no other humans to kill
- if (allHumans.Count == 0)
- {
- args.Cancelled = true;
- return;
- }
-
- _target.SetTarget(uid, _random.Pick(allHumans), target);
- }
-
- private void OnHeadAssigned(EntityUid uid, PickRandomHeadComponent comp, ref ObjectiveAssignedEvent args)
- {
- // invalid prototype
- if (!TryComp(uid, out var target))
- {
- args.Cancelled = true;
- return;
- }
-
- // target already assigned
- if (target.Target != null)
- return;
-
- // no other humans to kill
- var allHumans = _mind.GetAliveHumans(args.MindId);
- if (allHumans.Count == 0)
- {
- args.Cancelled = true;
- return;
- }
-
- var allHeads = new HashSet>();
- foreach (var person in allHumans)
- {
- if (TryComp(person, out var mind) && mind.OwnedEntity is { } ent && HasComp(ent))
- allHeads.Add(person);
- }
-
- if (allHeads.Count == 0)
- allHeads = allHumans; // fallback to non-head target
-
- _target.SetTarget(uid, _random.Pick(allHeads), target);
- }
-
private float GetProgress(EntityUid target, bool requireDead)
{
// deleted or gibbed or something, counts as dead
diff --git a/Content.Server/Objectives/Systems/PickObjectiveTargetSystem.cs b/Content.Server/Objectives/Systems/PickObjectiveTargetSystem.cs
new file mode 100644
index 0000000000..2977e10569
--- /dev/null
+++ b/Content.Server/Objectives/Systems/PickObjectiveTargetSystem.cs
@@ -0,0 +1,212 @@
+using Content.Server.Objectives.Components;
+using Content.Shared.Mind;
+using Content.Shared.Objectives.Components;
+using Content.Server.GameTicking.Rules;
+using Content.Server.Revolutionary.Components;
+using Robust.Shared.Random;
+using System.Linq;
+
+namespace Content.Server.Objectives.Systems;
+
+///
+/// Handles assinging a target to an objective entity with using different components.
+/// These can be combined with condition components for objective completions in order to create a variety of objectives.
+///
+public sealed class PickObjectiveTargetSystem : EntitySystem
+{
+ [Dependency] private readonly TargetObjectiveSystem _target = default!;
+ [Dependency] private readonly SharedMindSystem _mind = default!;
+ [Dependency] private readonly IRobustRandom _random = default!;
+ [Dependency] private readonly TraitorRuleSystem _traitorRule = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(OnSpecificPersonAssigned);
+ SubscribeLocalEvent(OnRandomPersonAssigned);
+ SubscribeLocalEvent(OnRandomHeadAssigned);
+
+ SubscribeLocalEvent(OnRandomTraitorProgressAssigned);
+ SubscribeLocalEvent(OnRandomTraitorAliveAssigned);
+ }
+
+ private void OnSpecificPersonAssigned(Entity ent, ref ObjectiveAssignedEvent args)
+ {
+ // invalid objective prototype
+ if (!TryComp(ent.Owner, out var target))
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ // target already assigned
+ if (target.Target != null)
+ return;
+
+ if (args.Mind.OwnedEntity == null)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ var user = args.Mind.OwnedEntity.Value;
+ if (!TryComp(user, out var targetComp) || targetComp.Target == null)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ _target.SetTarget(ent.Owner, targetComp.Target.Value);
+ }
+
+ private void OnRandomPersonAssigned(Entity ent, ref ObjectiveAssignedEvent args)
+ {
+ // invalid objective prototype
+ if (!TryComp(ent.Owner, out var target))
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ // target already assigned
+ if (target.Target != null)
+ return;
+
+ var allHumans = _mind.GetAliveHumans(args.MindId);
+
+ // Can't have multiple objectives to kill the same person
+ foreach (var objective in args.Mind.Objectives)
+ {
+ if (HasComp(objective) && TryComp(objective, out var kill))
+ {
+ allHumans.RemoveWhere(x => x.Owner == kill.Target);
+ }
+ }
+
+ // no other humans to kill
+ if (allHumans.Count == 0)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ _target.SetTarget(ent.Owner, _random.Pick(allHumans), target);
+ }
+
+ private void OnRandomHeadAssigned(Entity ent, ref ObjectiveAssignedEvent args)
+ {
+ // invalid prototype
+ if (!TryComp(ent.Owner, out var target))
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ // target already assigned
+ if (target.Target != null)
+ return;
+
+ // no other humans to kill
+ var allHumans = _mind.GetAliveHumans(args.MindId);
+ if (allHumans.Count == 0)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ var allHeads = new HashSet>();
+ foreach (var person in allHumans)
+ {
+ if (TryComp(person, out var mind) && mind.OwnedEntity is { } owned && HasComp(owned))
+ allHeads.Add(person);
+ }
+
+ if (allHeads.Count == 0)
+ allHeads = allHumans; // fallback to non-head target
+
+ _target.SetTarget(ent.Owner, _random.Pick(allHeads), target);
+ }
+
+ private void OnRandomTraitorProgressAssigned(Entity ent, ref ObjectiveAssignedEvent args)
+ {
+ // invalid prototype
+ if (!TryComp(ent.Owner, out var target))
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ var traitors = _traitorRule.GetOtherTraitorMindsAliveAndConnected(args.Mind).ToHashSet();
+
+ // cant help anyone who is tasked with helping:
+ // 1. thats boring
+ // 2. no cyclic progress dependencies!!!
+ foreach (var traitor in traitors)
+ {
+ // TODO: replace this with TryComp(traitor) or something when objectives are moved out of mind
+ if (!TryComp(traitor.Id, out var mind))
+ continue;
+
+ foreach (var objective in mind.Objectives)
+ {
+ if (HasComp(objective))
+ traitors.RemoveWhere(x => x.Mind == mind);
+ }
+ }
+
+ // Can't have multiple objectives to help/save the same person
+ foreach (var objective in args.Mind.Objectives)
+ {
+ if (HasComp(objective) || HasComp(objective))
+ {
+ if (TryComp(objective, out var help))
+ {
+ traitors.RemoveWhere(x => x.Id == help.Target);
+ }
+ }
+ }
+
+ // no more helpable traitors
+ if (traitors.Count == 0)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ _target.SetTarget(ent.Owner, _random.Pick(traitors).Id, target);
+ }
+
+ private void OnRandomTraitorAliveAssigned(Entity ent, ref ObjectiveAssignedEvent args)
+ {
+ // invalid prototype
+ if (!TryComp(ent.Owner, out var target))
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ var traitors = _traitorRule.GetOtherTraitorMindsAliveAndConnected(args.Mind).ToHashSet();
+
+ // Can't have multiple objectives to help/save the same person
+ foreach (var objective in args.Mind.Objectives)
+ {
+ if (HasComp(objective) || HasComp(objective))
+ {
+ if (TryComp(objective, out var help))
+ {
+ traitors.RemoveWhere(x => x.Id == help.Target);
+ }
+ }
+ }
+
+ // You are the first/only traitor.
+ if (traitors.Count == 0)
+ {
+ args.Cancelled = true;
+ return;
+ }
+
+ _target.SetTarget(ent.Owner, _random.Pick(traitors).Id, target);
+ }
+}
diff --git a/Content.Server/Polymorph/Components/PolymorphOnTriggerComponent.cs b/Content.Server/Polymorph/Components/PolymorphOnTriggerComponent.cs
new file mode 100644
index 0000000000..a11b4f4d4c
--- /dev/null
+++ b/Content.Server/Polymorph/Components/PolymorphOnTriggerComponent.cs
@@ -0,0 +1,18 @@
+using Content.Shared.Polymorph;
+using Robust.Shared.Prototypes;
+
+namespace Content.Server.Polymorph.Components;
+
+///
+/// Intended for use with the trigger system.
+/// Polymorphs the user of the trigger.
+///
+[RegisterComponent]
+public sealed partial class PolymorphOnTriggerComponent : Component
+{
+ ///
+ /// Polymorph settings.
+ ///
+ [DataField(required: true)]
+ public ProtoId Polymorph;
+}
diff --git a/Content.Server/Polymorph/Systems/PolymorphSystem.Collide.cs b/Content.Server/Polymorph/Systems/PolymorphSystem.Collide.cs
deleted file mode 100644
index b29f46e09e..0000000000
--- a/Content.Server/Polymorph/Systems/PolymorphSystem.Collide.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-using Content.Server.Polymorph.Components;
-using Content.Shared.Polymorph;
-using Content.Shared.Projectiles;
-using Content.Shared.Whitelist;
-using Robust.Shared.Audio;
-using Robust.Shared.Physics.Events;
-using Robust.Shared.Prototypes;
-
-namespace Content.Server.Polymorph.Systems;
-
-public partial class PolymorphSystem
-{
- [Dependency] private readonly EntityWhitelistSystem _whitelistSystem = default!;
-
- ///
- /// Need to do this so we don't get a collection enumeration error in physics by polymorphing
- /// an entity we're colliding with
- ///
- private Queue _queuedPolymorphUpdates = new();
-
- private void InitializeCollide()
- {
- SubscribeLocalEvent(OnPolymorphCollide);
- }
-
- public void UpdateCollide()
- {
- while (_queuedPolymorphUpdates.TryDequeue(out var data))
- {
- if (Deleted(data.Ent))
- continue;
-
- var ent = PolymorphEntity(data.Ent, data.Polymorph);
- if (ent != null)
- _audio.PlayPvs(data.Sound, ent.Value);
- }
- }
-
- private void OnPolymorphCollide(EntityUid uid, PolymorphOnCollideComponent component, ref StartCollideEvent args)
- {
- if (args.OurFixtureId != SharedProjectileSystem.ProjectileFixture)
- return;
-
- var other = args.OtherEntity;
- if (_whitelistSystem.IsWhitelistFail(component.Whitelist, other) ||
- _whitelistSystem.IsBlacklistPass(component.Blacklist, other))
- return;
-
- _queuedPolymorphUpdates.Enqueue(new (other, component.Sound, component.Polymorph));
- }
-}
-
-public struct PolymorphQueuedData
-{
- public EntityUid Ent;
- public SoundSpecifier Sound;
- public ProtoId Polymorph;
-
- public PolymorphQueuedData(EntityUid ent, SoundSpecifier sound, ProtoId polymorph)
- {
- Ent = ent;
- Sound = sound;
- Polymorph = polymorph;
- }
-}
diff --git a/Content.Server/Polymorph/Systems/PolymorphSystem.Trigger.cs b/Content.Server/Polymorph/Systems/PolymorphSystem.Trigger.cs
new file mode 100644
index 0000000000..452b060315
--- /dev/null
+++ b/Content.Server/Polymorph/Systems/PolymorphSystem.Trigger.cs
@@ -0,0 +1,41 @@
+using Content.Shared.Polymorph;
+using Content.Server.Polymorph.Components;
+using Content.Server.Explosion.EntitySystems;
+using Robust.Shared.Prototypes;
+
+namespace Content.Server.Polymorph.Systems;
+
+public sealed partial class PolymorphSystem
+{
+ ///
+ /// Need to do this so we don't get a collection enumeration error in physics by polymorphing
+ /// an entity we're colliding with in case of TriggerOnCollide.
+ /// Also makes sure other trigger effects don't activate in nullspace after we have polymorphed.
+ ///
+ private Queue<(EntityUid Ent, ProtoId Polymorph)> _queuedPolymorphUpdates = new();
+
+ private void InitializeTrigger()
+ {
+ SubscribeLocalEvent(OnTrigger);
+ }
+
+ private void OnTrigger(Entity ent, ref TriggerEvent args)
+ {
+ if (args.User == null)
+ return;
+
+ _queuedPolymorphUpdates.Enqueue((args.User.Value, ent.Comp.Polymorph));
+ args.Handled = true;
+ }
+
+ public void UpdateTrigger()
+ {
+ while (_queuedPolymorphUpdates.TryDequeue(out var data))
+ {
+ if (TerminatingOrDeleted(data.Item1))
+ continue;
+
+ PolymorphEntity(data.Item1, data.Item2);
+ }
+ }
+}
diff --git a/Content.Server/Polymorph/Systems/PolymorphSystem.cs b/Content.Server/Polymorph/Systems/PolymorphSystem.cs
index 2c06ba3be9..e305109ad5 100644
--- a/Content.Server/Polymorph/Systems/PolymorphSystem.cs
+++ b/Content.Server/Polymorph/Systems/PolymorphSystem.cs
@@ -60,8 +60,8 @@ public sealed partial class PolymorphSystem : EntitySystem
SubscribeLocalEvent(OnBeforeFullySliced);
SubscribeLocalEvent(OnDestruction);
- InitializeCollide();
InitializeMap();
+ InitializeTrigger();
}
public override void Update(float frameTime)
@@ -89,7 +89,7 @@ public sealed partial class PolymorphSystem : EntitySystem
}
}
- UpdateCollide();
+ UpdateTrigger();
}
private void OnComponentStartup(Entity ent, ref ComponentStartup args)
@@ -204,6 +204,12 @@ public sealed partial class PolymorphSystem : EntitySystem
var child = Spawn(configuration.Entity, _transform.GetMapCoordinates(uid, targetTransformComp), rotation: _transform.GetWorldRotation(uid));
+ if (configuration.PolymorphPopup != null)
+ _popup.PopupEntity(Loc.GetString(configuration.PolymorphPopup,
+ ("parent", Identity.Entity(uid, EntityManager)),
+ ("child", Identity.Entity(child, EntityManager))),
+ child);
+
MakeSentientCommand.MakeSentient(child, EntityManager);
var polymorphedComp = _compFact.GetComponent();
@@ -347,10 +353,11 @@ public sealed partial class PolymorphSystem : EntitySystem
var ev = new PolymorphedEvent(uid, parent, true);
RaiseLocalEvent(uid, ref ev);
- _popup.PopupEntity(Loc.GetString("polymorph-revert-popup-generic",
+ if (component.Configuration.ExitPolymorphPopup != null)
+ _popup.PopupEntity(Loc.GetString(component.Configuration.ExitPolymorphPopup,
("parent", Identity.Entity(uid, EntityManager)),
("child", Identity.Entity(parent, EntityManager))),
- parent);
+ parent);
QueueDel(uid);
return parent;
diff --git a/Content.Server/RatKing/RatKingSystem.cs b/Content.Server/RatKing/RatKingSystem.cs
index 01c213d540..eb3bef6c02 100644
--- a/Content.Server/RatKing/RatKingSystem.cs
+++ b/Content.Server/RatKing/RatKingSystem.cs
@@ -10,6 +10,7 @@ using Content.Shared.Dataset;
using Content.Shared.Nutrition.Components;
using Content.Shared.Nutrition.EntitySystems;
using Content.Shared.Pointing;
+using Content.Shared.Random.Helpers;
using Content.Shared.RatKing;
using Robust.Shared.Map;
using Robust.Shared.Random;
@@ -120,10 +121,10 @@ namespace Content.Server.RatKing
base.DoCommandCallout(uid, component);
if (!component.OrderCallouts.TryGetValue(component.CurrentOrder, out var datasetId) ||
- !PrototypeManager.TryIndex(datasetId, out var datasetPrototype))
+ !PrototypeManager.TryIndex(datasetId, out var datasetPrototype))
return;
- var msg = Random.Pick(datasetPrototype.Values);
+ var msg = Random.Pick(datasetPrototype);
_chat.TrySendInGameICMessage(uid, msg, InGameICChatType.Speak, true);
}
}
diff --git a/Content.Server/Roles/ParadoxCloneRoleComponent.cs b/Content.Server/Roles/ParadoxCloneRoleComponent.cs
new file mode 100644
index 0000000000..d55cd34da4
--- /dev/null
+++ b/Content.Server/Roles/ParadoxCloneRoleComponent.cs
@@ -0,0 +1,9 @@
+using Content.Shared.Roles;
+
+namespace Content.Server.Roles;
+
+///
+/// Added to mind role entities to tag that they are a paradox clone.
+///
+[RegisterComponent]
+public sealed partial class ParadoxCloneRoleComponent : BaseMindRoleComponent;
diff --git a/Content.Server/Salvage/SalvageSystem.Magnet.cs b/Content.Server/Salvage/SalvageSystem.Magnet.cs
index 988c5da797..694186da9a 100644
--- a/Content.Server/Salvage/SalvageSystem.Magnet.cs
+++ b/Content.Server/Salvage/SalvageSystem.Magnet.cs
@@ -19,12 +19,14 @@ public sealed partial class SalvageSystem
private const string MagnetChannel = "Supply";
private EntityQuery _salvMobQuery;
+ private EntityQuery _mobStateQuery;
private List<(Entity Entity, EntityUid MapUid, Vector2 LocalPosition)> _detachEnts = new();
private void InitializeMagnet()
{
_salvMobQuery = GetEntityQuery();
+ _mobStateQuery = GetEntityQuery();
SubscribeLocalEvent(OnMagnetDataMapInit);
@@ -155,6 +157,21 @@ public sealed partial class SalvageSystem
if (_salvMobQuery.HasComp(mobUid))
continue;
+ bool CheckParents(EntityUid uid)
+ {
+ do
+ {
+ uid = _transform.GetParentUid(uid);
+ if (_mobStateQuery.HasComp(uid))
+ return true;
+ }
+ while (uid != xform.GridUid && uid != EntityUid.Invalid);
+ return false;
+ }
+
+ if (CheckParents(mobUid))
+ continue;
+
// Can't parent directly to map as it runs grid traversal.
_detachEnts.Add(((mobUid, xform), xform.MapUid.Value, _transform.GetWorldPosition(xform)));
_transform.DetachEntity(mobUid, xform);
diff --git a/Content.Server/Silicons/Laws/IonStormSystem.cs b/Content.Server/Silicons/Laws/IonStormSystem.cs
index c47d7e99ea..7b848a0ea6 100644
--- a/Content.Server/Silicons/Laws/IonStormSystem.cs
+++ b/Content.Server/Silicons/Laws/IonStormSystem.cs
@@ -231,7 +231,7 @@ public sealed class IonStormSystem : EntitySystem
return _robustRandom.Next(0, 35) switch
{
0 => Loc.GetString("ion-storm-law-on-station", ("joined", joined), ("subjects", triple)),
- 1 => Loc.GetString("ion-storm-law-no-shuttle", ("joined", joined), ("subjects", triple)),
+ 1 => Loc.GetString("ion-storm-law-call-shuttle", ("joined", joined), ("subjects", triple)),
2 => Loc.GetString("ion-storm-law-crew-are", ("who", crewAll), ("joined", joined), ("subjects", objectsThreats)),
3 => Loc.GetString("ion-storm-law-subjects-harmful", ("adjective", adjective), ("subjects", triple)),
4 => Loc.GetString("ion-storm-law-must-harmful", ("must", must)),
diff --git a/Content.Server/Speech/EntitySystems/DamagedSiliconAccentSystem.cs b/Content.Server/Speech/EntitySystems/DamagedSiliconAccentSystem.cs
new file mode 100644
index 0000000000..757d668127
--- /dev/null
+++ b/Content.Server/Speech/EntitySystems/DamagedSiliconAccentSystem.cs
@@ -0,0 +1,174 @@
+using System.Text;
+using Content.Server.PowerCell;
+using Content.Shared.Speech.Components;
+using Content.Shared.Damage;
+using Content.Shared.FixedPoint;
+using Robust.Shared.Random;
+
+namespace Content.Server.Speech.EntitySystems;
+
+public sealed class DamagedSiliconAccentSystem : EntitySystem
+{
+ [Dependency] private readonly IRobustRandom _random = default!;
+ [Dependency] private readonly PowerCellSystem _powerCell = default!;
+
+ public override void Initialize()
+ {
+ base.Initialize();
+ SubscribeLocalEvent(OnAccent, after: [typeof(ReplacementAccentSystem)]);
+ }
+
+ private void OnAccent(Entity ent, ref AccentGetEvent args)
+ {
+ var uid = ent.Owner;
+
+ if (ent.Comp.EnableChargeCorruption)
+ {
+ var currentChargeLevel = 0.0f;
+ if (ent.Comp.OverrideChargeLevel.HasValue)
+ {
+ currentChargeLevel = ent.Comp.OverrideChargeLevel.Value;
+ }
+ else if (_powerCell.TryGetBatteryFromSlot(uid, out var battery))
+ {
+ currentChargeLevel = battery.CurrentCharge / battery.MaxCharge;
+ }
+ currentChargeLevel = Math.Clamp(currentChargeLevel, 0.0f, 1.0f);
+ // Corrupt due to low power (drops characters on longer messages)
+ args.Message = CorruptPower(args.Message, currentChargeLevel, ref ent.Comp);
+ }
+
+ if (ent.Comp.EnableDamageCorruption)
+ {
+ var damage = FixedPoint2.Zero;
+ if (ent.Comp.OverrideTotalDamage.HasValue)
+ {
+ damage = ent.Comp.OverrideTotalDamage.Value;
+ }
+ else if (TryComp(uid, out var damageable))
+ {
+ damage = damageable.TotalDamage;
+ }
+ // Corrupt due to damage (drop, repeat, replace with symbols)
+ args.Message = CorruptDamage(args.Message, damage, ref ent.Comp);
+ }
+ }
+
+ public string CorruptPower(string message, float chargeLevel, ref DamagedSiliconAccentComponent comp)
+ {
+ // The first idxMin characters are SAFE
+ var idxMin = comp.StartPowerCorruptionAtCharIdx;
+ // Probability will max at idxMax
+ var idxMax = comp.MaxPowerCorruptionAtCharIdx;
+
+ // Fast bails, would not have an effect
+ if (chargeLevel > comp.ChargeThresholdForPowerCorruption || message.Length < idxMin)
+ {
+ return message;
+ }
+
+ var outMsg = new StringBuilder();
+
+ var maxDropProb = comp.MaxDropProbFromPower * (1.0f - chargeLevel / comp.ChargeThresholdForPowerCorruption);
+
+ var idx = -1;
+ foreach (var letter in message)
+ {
+ idx++;
+ if (idx < idxMin) // Fast character, no effect
+ {
+ outMsg.Append(letter);
+ continue;
+ }
+
+ // use an x^2 interpolation to increase the drop probability until we hit idxMax
+ var probToDrop = idx >= idxMax
+ ? maxDropProb
+ : (float)Math.Pow(((double)idx - idxMin) / (idxMax - idxMin), 2.0) * maxDropProb;
+ // Ensure we're in the range for Prob()
+ probToDrop = Math.Clamp(probToDrop, 0.0f, 1.0f);
+
+ if (_random.Prob(probToDrop)) // Lose a character
+ {
+ // Additional chance to change to dot for flavor instead of full drop
+ if (_random.Prob(comp.ProbToCorruptDotFromPower))
+ {
+ outMsg.Append('.');
+ }
+ }
+ else // Character is safe
+ {
+ outMsg.Append(letter);
+ }
+ }
+ return outMsg.ToString();
+ }
+
+ private string CorruptDamage(string message, FixedPoint2 totalDamage, ref DamagedSiliconAccentComponent comp)
+ {
+ var outMsg = new StringBuilder();
+ // Linear interpolation of character damage probability
+ var damagePercent = Math.Clamp((float)totalDamage / (float)comp.DamageAtMaxCorruption, 0, 1);
+ var chanceToCorruptLetter = damagePercent * comp.MaxDamageCorruption;
+ foreach (var letter in message)
+ {
+ if (_random.Prob(chanceToCorruptLetter)) // Corrupt!
+ {
+ outMsg.Append(CorruptLetterDamage(letter));
+ }
+ else // Safe!
+ {
+ outMsg.Append(letter);
+ }
+ }
+ return outMsg.ToString();
+ }
+
+ private string CorruptLetterDamage(char letter)
+ {
+ var res = _random.NextDouble();
+ return res switch
+ {
+ < 0.0 => letter.ToString(), // shouldn't be less than 0!
+ < 0.5 => CorruptPunctuize(), // 50% chance to replace with random punctuation
+ < 0.75 => "", // 25% chance to remove character
+ < 1.00 => CorruptRepeat(letter), // 25% to repeat the character
+ _ => letter.ToString(), // shouldn't be greater than 1!
+ };
+ }
+
+ private string CorruptPunctuize()
+ {
+ const string punctuation = "\"\\`~!@#$%^&*()_+-={}[]|\\;:<>,.?/";
+ return punctuation[_random.NextByte((byte)punctuation.Length)].ToString();
+ }
+
+ private string CorruptRepeat(char letter)
+ {
+ // 25% chance to add another character in the streak
+ // (kind of like "exploding dice")
+ // Solved numerically in closed form for streaks of bernoulli variables with p = 0.25
+ // Can calculate for different p using python function:
+ /*
+ * def prob(streak, p):
+ * if streak == 0:
+ * return scipy.stats.binom(streak+1, p).pmf(streak)
+ * return prob(streak-1) * p
+ * def prob_cum(streak, p=.25):
+ * return np.sum([prob(i, p) for i in range(streak+1)])
+ */
+ var numRepeats = _random.NextDouble() switch
+ {
+ < 0.75000000 => 2,
+ < 0.93750000 => 3,
+ < 0.98437500 => 4,
+ < 0.99609375 => 5,
+ < 0.99902344 => 6,
+ < 0.99975586 => 7,
+ < 0.99993896 => 8,
+ < 0.99998474 => 9,
+ _ => 10,
+ };
+ return new string(letter, numRepeats);
+ }
+}
diff --git a/Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs b/Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs
index 8a918bd2fd..8045cfed46 100644
--- a/Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs
+++ b/Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs
@@ -1,10 +1,12 @@
using System.Linq;
using Content.Server.Administration.Managers;
+using Content.Server.Antag;
using Content.Server.Players.PlayTimeTracking;
using Content.Server.Station.Components;
using Content.Server.Station.Events;
using Content.Shared.Preferences;
using Content.Shared.Roles;
+using Robust.Server.Player;
using Robust.Shared.Network;
using Robust.Shared.Prototypes;
using Robust.Shared.Random;
@@ -17,6 +19,8 @@ public sealed partial class StationJobsSystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IBanManager _banManager = default!;
+ [Dependency] private readonly IPlayerManager _playerManager = default!;
+ [Dependency] private readonly AntagSelectionSystem _antag = default!;
private Dictionary> _jobsByWeight = default!;
private List _orderedWeights = default!;
@@ -345,6 +349,7 @@ public sealed partial class StationJobsSystem
foreach (var (player, profile) in profiles)
{
var roleBans = _banManager.GetJobBans(player);
+ var antagBlocked = _antag.GetPreSelectedAntagSessions();
var profileJobs = profile.JobPriorities.Keys.Select(k => new ProtoId(k)).ToList();
var ev = new StationJobsGetCandidatesEvent(player, profileJobs);
RaiseLocalEvent(ref ev);
@@ -361,6 +366,9 @@ public sealed partial class StationJobsSystem
if (!_prototypeManager.TryIndex(jobId, out var job))
continue;
+ if (!job.CanBeAntag && (!_playerManager.TryGetSessionById(player, out var session) || antagBlocked.Contains(session)))
+ continue;
+
if (weight is not null && job.Weight != weight.Value)
continue;
diff --git a/Content.Server/StationRecords/Systems/StationRecordsSystem.cs b/Content.Server/StationRecords/Systems/StationRecordsSystem.cs
index a5332022ee..5957b98cd7 100644
--- a/Content.Server/StationRecords/Systems/StationRecordsSystem.cs
+++ b/Content.Server/StationRecords/Systems/StationRecordsSystem.cs
@@ -64,7 +64,8 @@ public sealed class StationRecordsSystem : SharedStationRecordsSystem
// Unfortunately this means that an event is called for it as well, and since TryFindIdCard will succeed if the
// given entity is a card and the card itself is the key the record will be mistakenly renamed to the card's name
// if we don't return early.
- if (HasComp(ev.Uid))
+ // We also do not include the PDA itself being renamed, as that triggers the same event (e.g. for chameleon PDAs).
+ if (HasComp(ev.Uid) || HasComp(ev.Uid))
return;
if (_idCard.TryFindIdCard(ev.Uid, out var idCard))
diff --git a/Content.Shared.Database/LogType.cs b/Content.Shared.Database/LogType.cs
index 5ebb100daf..a868d0e384 100644
--- a/Content.Shared.Database/LogType.cs
+++ b/Content.Shared.Database/LogType.cs
@@ -449,9 +449,14 @@ public enum LogType
/// An atmos networked device (such as a vent or pump) has had its settings changed, usually through an air alarm
///
AtmosDeviceSetting = 97,
-
+
///
/// Commands related to admemes. Stuff like config changes, etc.
///
AdminCommands = 98,
+
+ ///
+ /// A player was selected or assigned antag status
+ ///
+ AntagSelection = 99,
}
diff --git a/Content.Shared/Anomaly/SharedAnomalySystem.cs b/Content.Shared/Anomaly/SharedAnomalySystem.cs
index 3f8da9e3c8..0d7c926f76 100644
--- a/Content.Shared/Anomaly/SharedAnomalySystem.cs
+++ b/Content.Shared/Anomaly/SharedAnomalySystem.cs
@@ -163,7 +163,7 @@ public abstract class SharedAnomalySystem : EntitySystem
var ev = new AnomalySupercriticalEvent(uid, powerMod);
RaiseLocalEvent(uid, ref ev, true);
- EndAnomaly(uid, component, true);
+ EndAnomaly(uid, component, true, logged: true);
}
///
@@ -173,13 +173,17 @@ public abstract class SharedAnomalySystem : EntitySystem
///
/// Whether or not the anomaly ended via supercritical event
/// Create anomaly cores based on the result of completing an anomaly?
- public void EndAnomaly(EntityUid uid, AnomalyComponent? component = null, bool supercritical = false, bool spawnCore = true)
+ /// Whether or not the anomaly decaying/going supercritical is logged
+ public void EndAnomaly(EntityUid uid, AnomalyComponent? component = null, bool supercritical = false, bool spawnCore = true, bool logged = false)
{
- // Logging before resolve, in case the anomaly has deleted itself.
- if (_net.IsServer)
- Log.Info($"Ending anomaly. Entity: {ToPrettyString(uid)}");
- AdminLog.Add(LogType.Anomaly, supercritical ? LogImpact.High : LogImpact.Low,
- $"Anomaly {ToPrettyString(uid)} {(supercritical ? "went supercritical" : "decayed")}.");
+ if (logged)
+ {
+ // Logging before resolve, in case the anomaly has deleted itself.
+ if (_net.IsServer)
+ Log.Info($"Ending anomaly. Entity: {ToPrettyString(uid)}");
+ AdminLog.Add(LogType.Anomaly, supercritical ? LogImpact.High : LogImpact.Low,
+ $"Anomaly {ToPrettyString(uid)} {(supercritical ? "went supercritical" : "decayed")}.");
+ }
if (!Resolve(uid, ref component))
return;
@@ -260,7 +264,7 @@ public abstract class SharedAnomalySystem : EntitySystem
if (newVal < 0)
{
- EndAnomaly(uid, component);
+ EndAnomaly(uid, component, logged: true);
return;
}
diff --git a/Content.Shared/Antag/AntagAcceptability.cs b/Content.Shared/Antag/AntagAcceptability.cs
index f56be97503..33323aacf3 100644
--- a/Content.Shared/Antag/AntagAcceptability.cs
+++ b/Content.Shared/Antag/AntagAcceptability.cs
@@ -17,7 +17,7 @@ public enum AntagAcceptability
///
/// Choose anyone
///
- All
+ All,
}
public enum AntagSelectionTime : byte
@@ -28,8 +28,14 @@ public enum AntagSelectionTime : byte
///
PrePlayerSpawn,
+ ///
+ /// Antag roles are selected to the player session before job assignment and spawning.
+ /// Unlike PrePlayerSpawn, this does not remove you from the job spawn pool.
+ ///
+ IntraPlayerSpawn,
+
///
/// Antag roles get assigned after players have been assigned jobs and have spawned in.
///
- PostPlayerSpawn
+ PostPlayerSpawn,
}
diff --git a/Content.Shared/Armor/ArmorComponent.cs b/Content.Shared/Armor/ArmorComponent.cs
index 8ffbb5a4f8..38f5f2cb1b 100644
--- a/Content.Shared/Armor/ArmorComponent.cs
+++ b/Content.Shared/Armor/ArmorComponent.cs
@@ -23,6 +23,12 @@ public sealed partial class ArmorComponent : Component
///
[DataField]
public float PriceMultiplier = 1;
+
+ ///
+ /// If true, you can examine the armor to see the protection. If false, the verb won't appear.
+ ///
+ [DataField]
+ public bool ShowArmorOnExamine = true;
}
///
diff --git a/Content.Shared/Armor/SharedArmorSystem.cs b/Content.Shared/Armor/SharedArmorSystem.cs
index bea875256f..1ff1bbc073 100644
--- a/Content.Shared/Armor/SharedArmorSystem.cs
+++ b/Content.Shared/Armor/SharedArmorSystem.cs
@@ -51,7 +51,7 @@ public abstract class SharedArmorSystem : EntitySystem
private void OnArmorVerbExamine(EntityUid uid, ArmorComponent component, GetVerbsEvent args)
{
- if (!args.CanInteract || !args.CanAccess)
+ if (!args.CanInteract || !args.CanAccess || !component.ShowArmorOnExamine)
return;
var examineMarkup = GetArmorExamine(component.Modifiers);
diff --git a/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs b/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs
index 1745730647..3d2d263652 100644
--- a/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs
+++ b/Content.Shared/Buckle/SharedBuckleSystem.Buckle.cs
@@ -416,7 +416,7 @@ public abstract partial class SharedBuckleSystem
public bool TryUnbuckle(Entity buckle, EntityUid? user, bool popup)
{
- if (!Resolve(buckle.Owner, ref buckle.Comp))
+ if (!Resolve(buckle.Owner, ref buckle.Comp, false))
return false;
if (!CanUnbuckle(buckle, user, popup, out var strap))
diff --git a/Content.Shared/CartridgeLoader/Cartridges/NanoTaskCartridgeComponent.cs b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskCartridgeComponent.cs
new file mode 100644
index 0000000000..31169ae022
--- /dev/null
+++ b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskCartridgeComponent.cs
@@ -0,0 +1,42 @@
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Shared.CartridgeLoader.Cartridges;
+
+///
+/// Component that indicates a PDA cartridge as containing the NanoTask program
+///
+[RegisterComponent, AutoGenerateComponentPause]
+public sealed partial class NanoTaskCartridgeComponent : Component
+{
+ ///
+ /// The list of tasks
+ ///
+ [DataField]
+ public List Tasks = new();
+
+ ///
+ /// counter for generating task IDs
+ ///
+ [DataField]
+ public int Counter = 1;
+
+ ///
+ /// When the user can print again
+ ///
+ [DataField, AutoPausedField]
+ public TimeSpan NextPrintAllowedAfter = TimeSpan.Zero;
+
+ ///
+ /// How long in between each time the user can print out a task
+ ///
+ [DataField]
+ public TimeSpan PrintDelay = TimeSpan.FromSeconds(5);
+}
+
+///
+/// Component attached to the PDA a NanoTask cartridge is inserted into for interaction handling
+///
+[RegisterComponent]
+public sealed partial class NanoTaskInteractionComponent : Component
+{
+}
diff --git a/Content.Shared/CartridgeLoader/Cartridges/NanoTaskPrintedComponent.cs b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskPrintedComponent.cs
new file mode 100644
index 0000000000..a020e46521
--- /dev/null
+++ b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskPrintedComponent.cs
@@ -0,0 +1,16 @@
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Shared.CartridgeLoader.Cartridges;
+
+///
+/// Component attached to a piece of paper to indicate that it was printed from NanoTask and can be inserted back into it
+///
+[RegisterComponent]
+public sealed partial class NanoTaskPrintedComponent : Component
+{
+ ///
+ /// The task that this item holds
+ ///
+ [DataField]
+ public NanoTaskItem? Task;
+}
diff --git a/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiMessageEvent.cs b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiMessageEvent.cs
new file mode 100644
index 0000000000..51a34aaa75
--- /dev/null
+++ b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiMessageEvent.cs
@@ -0,0 +1,91 @@
+using Robust.Shared.Serialization;
+
+namespace Content.Shared.CartridgeLoader.Cartridges;
+
+///
+/// Base UI message for NanoTask interactions
+///
+public interface INanoTaskUiMessagePayload
+{
+}
+
+///
+/// Dispatched when a new task is created
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskAddTask : INanoTaskUiMessagePayload
+{
+ ///
+ /// The newly created task
+ ///
+ public readonly NanoTaskItem Item;
+
+ public NanoTaskAddTask(NanoTaskItem item)
+ {
+ Item = item;
+ }
+}
+
+///
+/// Dispatched when an existing task is modified
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskUpdateTask : INanoTaskUiMessagePayload
+{
+ ///
+ /// The task that was updated and its ID
+ ///
+ public readonly NanoTaskItemAndId Item;
+
+ public NanoTaskUpdateTask(NanoTaskItemAndId item)
+ {
+ Item = item;
+ }
+}
+
+///
+/// Dispatched when an existing task is deleted
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskDeleteTask : INanoTaskUiMessagePayload
+{
+ ///
+ /// The ID of the task to delete
+ ///
+ public readonly int Id;
+
+ public NanoTaskDeleteTask(int id)
+ {
+ Id = id;
+ }
+}
+
+///
+/// Dispatched when a task is requested to be printed
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskPrintTask : INanoTaskUiMessagePayload
+{
+ ///
+ /// The NanoTask to print
+ ///
+ public readonly NanoTaskItem Item;
+
+ public NanoTaskPrintTask(NanoTaskItem item)
+ {
+ Item = item;
+ }
+}
+
+///
+/// Cartridge message event carrying the NanoTask UI messages
+///
+[Serializable, NetSerializable]
+public sealed class NanoTaskUiMessageEvent : CartridgeMessageEvent
+{
+ public readonly INanoTaskUiMessagePayload Payload;
+ public NanoTaskUiMessageEvent(INanoTaskUiMessagePayload payload)
+ {
+ Payload = payload;
+ }
+}
diff --git a/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiState.cs b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiState.cs
new file mode 100644
index 0000000000..9f270671e3
--- /dev/null
+++ b/Content.Shared/CartridgeLoader/Cartridges/NanoTaskUiState.cs
@@ -0,0 +1,88 @@
+using Robust.Shared.Serialization;
+
+namespace Content.Shared.CartridgeLoader.Cartridges;
+
+///
+/// The priority assigned to a NanoTask item
+///
+[Serializable, NetSerializable]
+public enum NanoTaskPriority : byte
+{
+ High,
+ Medium,
+ Low,
+};
+
+///
+/// The data relating to a single NanoTask item, but not its identifier
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskItem
+{
+ ///
+ /// The maximum length of the Description and TaskIsFor fields
+ ///
+ public static int MaximumStringLength = 30;
+
+ ///
+ /// The task description, i.e. "Bake a cake"
+ ///
+ public readonly string Description;
+
+ ///
+ /// Who the task is for, i.e. "Cargo"
+ ///
+ public readonly string TaskIsFor;
+
+ ///
+ /// If the task is marked as done or not
+ ///
+ public readonly bool IsTaskDone;
+
+ ///
+ /// The task's marked priority
+ ///
+ public readonly NanoTaskPriority Priority;
+
+ public NanoTaskItem(string description, string taskIsFor, bool isTaskDone, NanoTaskPriority priority)
+ {
+ Description = description;
+ TaskIsFor = taskIsFor;
+ IsTaskDone = isTaskDone;
+ Priority = priority;
+ }
+ public bool Validate()
+ {
+ return Description.Length <= MaximumStringLength && TaskIsFor.Length <= MaximumStringLength;
+ }
+};
+
+///
+/// Pairs a NanoTask item and its identifier
+///
+[Serializable, NetSerializable, DataRecord]
+public sealed class NanoTaskItemAndId
+{
+ public readonly int Id;
+ public readonly NanoTaskItem Data;
+
+ public NanoTaskItemAndId(int id, NanoTaskItem data)
+ {
+ Id = id;
+ Data = data;
+ }
+};
+
+///
+/// The UI state of the NanoTask
+///
+[Serializable, NetSerializable]
+public sealed class NanoTaskUiState : BoundUserInterfaceState
+{
+ public List Tasks;
+
+ public NanoTaskUiState(List tasks)
+ {
+ Tasks = tasks;
+ }
+}
diff --git a/Content.Shared/CartridgeLoader/Cartridges/SharedNanoTaskCartridgeSystem.cs b/Content.Shared/CartridgeLoader/Cartridges/SharedNanoTaskCartridgeSystem.cs
new file mode 100644
index 0000000000..444e377f6a
--- /dev/null
+++ b/Content.Shared/CartridgeLoader/Cartridges/SharedNanoTaskCartridgeSystem.cs
@@ -0,0 +1,19 @@
+using Content.Shared.CartridgeLoader;
+using Content.Shared.CartridgeLoader.Cartridges;
+
+namespace Content.Shared.CartridgeLoader.Cartridges;
+
+public abstract class SharedNanoTaskCartridgeSystem : EntitySystem
+{
+ public override void Initialize()
+ {
+ base.Initialize();
+
+ SubscribeLocalEvent(OnCartridgeAdded);
+ }
+
+ private void OnCartridgeAdded(Entity ent, ref CartridgeAddedEvent args)
+ {
+ EnsureComp(args.Loader);
+ }
+}
diff --git a/Content.Shared/Cloning/CloningSettingsPrototype.cs b/Content.Shared/Cloning/CloningSettingsPrototype.cs
index 3828e6c0cf..b5cfc0500d 100644
--- a/Content.Shared/Cloning/CloningSettingsPrototype.cs
+++ b/Content.Shared/Cloning/CloningSettingsPrototype.cs
@@ -34,7 +34,19 @@ public sealed partial class CloningSettingsPrototype : IPrototype, IInheritingPr
/// Disabled when null.
///
[DataField]
- public SlotFlags? CopyEquipment = SlotFlags.WITHOUT_POCKET;
+ public SlotFlags? CopyEquipment = SlotFlags.All;
+
+ ///
+ /// Whether or not to copy slime storage and storage implant contents.
+ ///
+ [DataField]
+ public bool CopyInternalStorage = true;
+
+ ///
+ /// Whether or not to copy implants.
+ ///
+ [DataField]
+ public bool CopyImplants = true;
///
/// Whitelist for the equipment allowed to be copied.
diff --git a/Content.Shared/CriminalRecords/Components/CriminalRecordsHackerComponent.cs b/Content.Shared/CriminalRecords/Components/CriminalRecordsHackerComponent.cs
index 189a387a5d..ca9b4de1ce 100644
--- a/Content.Shared/CriminalRecords/Components/CriminalRecordsHackerComponent.cs
+++ b/Content.Shared/CriminalRecords/Components/CriminalRecordsHackerComponent.cs
@@ -21,7 +21,7 @@ public sealed partial class CriminalRecordsHackerComponent : Component
/// Dataset of random reasons to use.
///
[DataField]
- public ProtoId Reasons = "CriminalRecordsWantedReasonPlaceholders";
+ public ProtoId Reasons = "CriminalRecordsWantedReasonPlaceholders";
///
/// Announcement made after the console is hacked.
diff --git a/Content.Shared/Electrocution/Components/ElectrifiedComponent.cs b/Content.Shared/Electrocution/Components/ElectrifiedComponent.cs
index 52eb76ca54..1de5b47c57 100644
--- a/Content.Shared/Electrocution/Components/ElectrifiedComponent.cs
+++ b/Content.Shared/Electrocution/Components/ElectrifiedComponent.cs
@@ -82,7 +82,7 @@ public sealed partial class ElectrifiedComponent : Component
/// Shock time multiplier for HV electrocution
///
[DataField, AutoNetworkedField]
- public float HighVoltageTimeMultiplier = 1.5f;
+ public float HighVoltageTimeMultiplier = 2f;
///
/// Damage multiplier for MV electrocution
@@ -94,7 +94,7 @@ public sealed partial class ElectrifiedComponent : Component
/// Shock time multiplier for MV electrocution
///
[DataField, AutoNetworkedField]
- public float MediumVoltageTimeMultiplier = 1.25f;
+ public float MediumVoltageTimeMultiplier = 1.5f;
[DataField, AutoNetworkedField]
public float ShockDamage = 7.5f;
@@ -103,7 +103,7 @@ public sealed partial class ElectrifiedComponent : Component
/// Shock time, in seconds.
///
[DataField, AutoNetworkedField]
- public float ShockTime = 8f;
+ public float ShockTime = 5f;
[DataField, AutoNetworkedField]
public float SiemensCoefficient = 1f;
diff --git a/Content.Shared/Gibbing/Components/GibOnRoundEndComponent.cs b/Content.Shared/Gibbing/Components/GibOnRoundEndComponent.cs
new file mode 100644
index 0000000000..5ce8edbd25
--- /dev/null
+++ b/Content.Shared/Gibbing/Components/GibOnRoundEndComponent.cs
@@ -0,0 +1,22 @@
+using Robust.Shared.Prototypes;
+
+namespace Content.Shared.Gibbing.Components;
+
+///
+/// Gibs an entity on round end.
+///
+[RegisterComponent]
+public sealed partial class GibOnRoundEndComponent : Component
+{
+ ///
+ /// If the entity has all these objectives fulfilled they won't be gibbed.
+ ///
+ [DataField]
+ public HashSet PreventGibbingObjectives = new();
+
+ ///
+ /// Entity to spawn when gibbed. Can be used for effects.
+ ///
+ [DataField]
+ public EntProtoId? SpawnProto;
+}
diff --git a/Content.Shared/IdentityManagement/Identity.cs b/Content.Shared/IdentityManagement/Identity.cs
index cdb3c81ada..836adfcdf8 100644
--- a/Content.Shared/IdentityManagement/Identity.cs
+++ b/Content.Shared/IdentityManagement/Identity.cs
@@ -49,11 +49,17 @@ public static class Identity
/// This is an extension method because of its simplicity, and if it was any harder to call it might not
/// be used enough for loc.
///
- public static EntityUid Entity(EntityUid uid, IEntityManager ent)
+ ///
+ /// If this entity can see through identities, this method will always return the actual target entity.
+ ///
+ public static EntityUid Entity(EntityUid uid, IEntityManager ent, EntityUid? viewer = null)
{
if (!ent.TryGetComponent(uid, out var identity))
return uid;
+ if (viewer != null && CanSeeThroughIdentity(uid, viewer.Value, ent))
+ return uid;
+
return identity.IdentityEntitySlot.ContainedEntity ?? uid;
}
diff --git a/Content.Shared/Medical/Cryogenics/CryoPodComponent.cs b/Content.Shared/Medical/Cryogenics/CryoPodComponent.cs
index a736a63cb2..43244a5f0d 100644
--- a/Content.Shared/Medical/Cryogenics/CryoPodComponent.cs
+++ b/Content.Shared/Medical/Cryogenics/CryoPodComponent.cs
@@ -1,4 +1,4 @@
-using Robust.Shared.Containers;
+using Robust.Shared.Containers;
using Robust.Shared.GameStates;
using Robust.Shared.Serialization;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom;
@@ -16,7 +16,7 @@ public sealed partial class CryoPodComponent : Component
public string PortName { get; set; } = "port";
///
- /// Specifies the name of the atmospherics port to draw gas from.
+ /// Specifies the name of the slot that holds beaker with medicine.
///
[ViewVariables(VVAccess.ReadWrite)]
[DataField("solutionContainerName")]
diff --git a/Content.Shared/Mind/SharedMindSystem.cs b/Content.Shared/Mind/SharedMindSystem.cs
index 0f5f9172cc..fc1be3f1ba 100644
--- a/Content.Shared/Mind/SharedMindSystem.cs
+++ b/Content.Shared/Mind/SharedMindSystem.cs
@@ -11,6 +11,7 @@ using Content.Shared.Mobs.Components;
using Content.Shared.Mobs.Systems;
using Content.Shared.Objectives.Systems;
using Content.Shared.Players;
+using Content.Shared.Whitelist;
using Robust.Shared.Map;
using Robust.Shared.Network;
using Robust.Shared.Player;
@@ -26,6 +27,7 @@ public abstract class SharedMindSystem : EntitySystem
[Dependency] private readonly SharedObjectivesSystem _objectives = default!;
[Dependency] private readonly SharedPlayerSystem _player = default!;
[Dependency] private readonly MetaDataSystem _metadata = default!;
+ [Dependency] private readonly EntityWhitelistSystem _whitelist = default!;
[ViewVariables]
protected readonly Dictionary UserMinds = new();
@@ -364,6 +366,16 @@ public abstract class SharedMindSystem : EntitySystem
var title = Name(objective);
_adminLogger.Add(LogType.Mind, LogImpact.Low, $"Objective {objective} ({title}) removed from the mind of {MindOwnerLoggingString(mind)}");
mind.Objectives.Remove(objective);
+
+ // garbage collection - only delete the objective entity if no mind uses it anymore
+ // This comes up for stuff like paradox clones where the objectives share the same entity
+ var mindQuery = new AllEntityQueryEnumerator();
+ while (mindQuery.MoveNext(out _, out var queryComp))
+ {
+ if (queryComp.Objectives.Contains(objective))
+ return true;
+ }
+
Del(objective);
return true;
}
@@ -395,6 +407,33 @@ public abstract class SharedMindSystem : EntitySystem
return false;
}
+ ///
+ /// Copies objectives from one mind to another, so that they are shared between two players.
+ ///
+ ///
+ /// Only copies the reference to the objective entity, not the entity itself.
+ /// This relies on the fact that objectives are never changed after spawning them.
+ /// If someone ever changes that, they will have to address this.
+ ///
+ /// mind entity of the player to copy from
+ /// mind entity of the player to copy to
+ /// whitelist for objectives that should be copied
+ /// blacklist for objectives that should not be copied
+ public void CopyObjectives(Entity source, Entity target, EntityWhitelist? whitelist = null, EntityWhitelist? blacklist = null)
+ {
+ if (!Resolve(source, ref source.Comp) || !Resolve(target, ref target.Comp))
+ return;
+
+ foreach (var objective in source.Comp.Objectives)
+ {
+ if (target.Comp.Objectives.Contains(objective))
+ continue; // target already has this objective
+
+ if (_whitelist.CheckBoth(objective, blacklist, whitelist))
+ AddObjective(target, target.Comp, objective);
+ }
+ }
+
///
/// Tries to find an objective that has the same prototype as the argument.
///
diff --git a/Content.Shared/Mindshield/Components/MindShieldImplantComponent.cs b/Content.Shared/Mindshield/Components/MindShieldImplantComponent.cs
new file mode 100644
index 0000000000..09de4467be
--- /dev/null
+++ b/Content.Shared/Mindshield/Components/MindShieldImplantComponent.cs
@@ -0,0 +1,10 @@
+using Content.Shared.Revolutionary;
+using Robust.Shared.GameStates;
+
+namespace Content.Shared.Mindshield.Components;
+
+///
+/// Component given to an entity to mark it is a mindshield implant.
+///
+[RegisterComponent, NetworkedComponent, Access(typeof(SharedRevolutionarySystem))]
+public sealed partial class MindShieldImplantComponent : Component;
diff --git a/Content.Shared/Polymorph/PolymorphPrototype.cs b/Content.Shared/Polymorph/PolymorphPrototype.cs
index c057669408..07901b1857 100644
--- a/Content.Shared/Polymorph/PolymorphPrototype.cs
+++ b/Content.Shared/Polymorph/PolymorphPrototype.cs
@@ -128,6 +128,18 @@ public sealed partial record PolymorphConfiguration
///
[DataField]
public SoundSpecifier? ExitPolymorphSound;
+
+ ///
+ /// If not null, this popup will be displayed when being polymorphed into something.
+ ///
+ [DataField]
+ public LocId? PolymorphPopup = "polymorph-popup-generic";
+
+ ///
+ /// If not null, this popup will be displayed when when being reverted from a polymorph.
+ ///
+ [DataField]
+ public LocId? ExitPolymorphPopup = "polymorph-revert-popup-generic";
}
public enum PolymorphInventoryChange : byte
diff --git a/Content.Shared/Speech/Components/DamagedSiliconAccentComponent.cs b/Content.Shared/Speech/Components/DamagedSiliconAccentComponent.cs
new file mode 100644
index 0000000000..fa1377b379
--- /dev/null
+++ b/Content.Shared/Speech/Components/DamagedSiliconAccentComponent.cs
@@ -0,0 +1,80 @@
+using Content.Shared.FixedPoint;
+using Robust.Shared.GameStates;
+
+namespace Content.Shared.Speech.Components;
+
+[RegisterComponent]
+[NetworkedComponent]
+public sealed partial class DamagedSiliconAccentComponent : Component
+{
+ ///
+ /// Enable damage corruption effects
+ ///
+ [DataField]
+ public bool EnableDamageCorruption = true;
+
+ ///
+ /// Override total damage for damage corruption effects
+ ///
+ [DataField]
+ public FixedPoint2? OverrideTotalDamage;
+
+ ///
+ /// The probability that a character will be corrupted when total damage at or above .
+ ///
+ [DataField]
+ public float MaxDamageCorruption = 0.5f;
+
+ ///
+ /// Probability of character corruption will increase linearly to once until
+ /// total damage is at or above this value.
+ ///
+ [DataField]
+ public FixedPoint2 DamageAtMaxCorruption = 300;
+
+ ///
+ /// Enable charge level corruption effects
+ ///
+ [DataField]
+ public bool EnableChargeCorruption = true;
+
+ ///
+ /// Override charge level for charge level corruption effects
+ ///
+ [DataField]
+ public float? OverrideChargeLevel;
+
+ ///
+ /// If the power cell charge is below this value (as a fraction of maximum charge),
+ /// power corruption will begin to be applied.
+ ///
+ [DataField]
+ public float ChargeThresholdForPowerCorruption = 0.15f;
+
+ ///
+ /// Regardless of charge level, this is how many characters at the start of a message will be 100% safe
+ /// from being dropped.
+ ///
+ [DataField]
+ public int StartPowerCorruptionAtCharIdx = 8;
+
+ ///
+ /// The probability that a character will be dropped due to charge level will be maximum for characters past
+ /// this index. This has the effect of longer messages dropping more characters later in the message.
+ ///
+ [DataField]
+ public int MaxPowerCorruptionAtCharIdx = 40;
+
+ ///
+ /// The maximum probability that a character will be dropped due to charge level.
+ ///
+ [DataField]
+ public float MaxDropProbFromPower = 0.5f;
+
+ ///
+ /// If a character is "dropped", this is the probability that the character will be turned into a period instead
+ /// of completely deleting the character.
+ ///
+ [DataField]
+ public float ProbToCorruptDotFromPower = 0.6f;
+}
diff --git a/Content.Shared/Throwing/ThrownItemSystem.cs b/Content.Shared/Throwing/ThrownItemSystem.cs
index 3d81cc96e4..236e91aec6 100644
--- a/Content.Shared/Throwing/ThrownItemSystem.cs
+++ b/Content.Shared/Throwing/ThrownItemSystem.cs
@@ -145,6 +145,12 @@ namespace Content.Shared.Throwing
{
base.Update(frameTime);
+ // TODO predicted throwing - remove this check
+ // We don't want to predict landing or stopping, since throwing isn't actually predicted.
+ // If we do, the landing/stop will occur prematurely on the client.
+ if (_gameTiming.InPrediction)
+ return;
+
var query = EntityQueryEnumerator();
while (query.MoveNext(out var uid, out var thrown, out var physics))
{
diff --git a/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs b/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs
index 231bac8302..ac6f27f7e9 100644
--- a/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs
+++ b/Content.Shared/Weapons/Ranged/Systems/SharedGunSystem.cs
@@ -350,10 +350,7 @@ public abstract partial class SharedGunSystem : EntitySystem
// If they're firing an existing clip then don't play anything.
if (shots > 0)
{
- if (ev.Reason != null && Timing.IsFirstTimePredicted)
- {
- PopupSystem.PopupCursor(ev.Reason);
- }
+ PopupSystem.PopupCursor(ev.Reason ?? Loc.GetString("gun-magazine-fired-empty"));
// Don't spam safety sounds at gun fire rate, play it at a reduced rate.
// May cause prediction issues? Needs more tweaking
diff --git a/Resources/Audio/Lobby/attributions.yml b/Resources/Audio/Lobby/attributions.yml
index 722f70731a..ab96eb41a1 100644
--- a/Resources/Audio/Lobby/attributions.yml
+++ b/Resources/Audio/Lobby/attributions.yml
@@ -12,7 +12,7 @@
license: "Custom"
copyright: "Space Asshole by Chris Remo is used with special permission from the author, under the condition that the project remains non-commercial and open source. The author also requested that a link to his bandcamp be included: https://chrisremo.bandcamp.com/"
source: "https://idlethumbs.bandcamp.com/track/space-asshole"
- # The source is a direct link the the track, but not the "main" bandcamp of the author. Hence the link is also included separately in the copyright.
+ # The source is a direct link to the track, but not the "main" bandcamp of the author. Hence the link is also included separately in the copyright.
- files: ["the_wizard.ogg"]
license: "Custom"
@@ -49,7 +49,7 @@
- files: ["comet_haley.ogg"]
license: "CC-BY-NC-SA-3.0"
copyright: "Comet Haley by Stellardrone. Converted from MP3 to OGG."
- source: "https://freemusicarchive.org/music/Stellardrone/Light_Years_1227/07_Comet_Halley"
+ source: "https://stellardrone.bandcamp.com/track/comet-halley"
- files: ["mod.flip-flap.ogg"]
license: "Custom"
@@ -63,15 +63,15 @@
- files: ["pwmur.ogg"]
license: "CC-BY-NC-SA-3.0"
- copyright: "phoron will make us rich by Alexander Divine."
- source: "https://soundcloud.com/alexanderdivine/phoron-will-make-us-rich"
+ copyright: "phoron will make us rich by Sunbeamstress/Lauren Loveless."
+ source: "https://soundcloud.com/sunbeamstress/phoron-will-make-us-rich"
- files: ["lasers_rip_apart_the_bulkhead.ogg"]
license: "CC-BY-NC-SA-3.0"
- copyright: "lasers rip apart the bulkhead by Alexander Divine."
- source: "https://soundcloud.com/alexanderdivine/lasers-rip-apart-the-bulkhead"
+ copyright: "lasers rip apart the bulkhead by Sunbeamstress/Lauren Loveless."
+ source: "https://soundcloud.com/sunbeamstress/lasers-rip-apart-the-bulkhead"
- files: ["every_light_is_blinking_at_once.ogg"]
license: "CC-BY-NC-SA-3.0"
- copyright: "every light is blinking at once by Alexander Divine."
- source: "https://soundcloud.com/alexanderdivine/every-light-is-blinking-at-once"
+ copyright: "every light is blinking at once by Sunbeamstress/Lauren Loveless."
+ source: "https://soundcloud.com/sunbeamstress/every-light-is-blinking-at-once"
diff --git a/Resources/Audio/Misc/attributions.yml b/Resources/Audio/Misc/attributions.yml
index a7349a445b..67daaff404 100644
--- a/Resources/Audio/Misc/attributions.yml
+++ b/Resources/Audio/Misc/attributions.yml
@@ -8,6 +8,11 @@
copyright: "Created by Chillyconmor"
source: "https://github.com/space-wizards/space-station-14/blob/master/Resources/Audio/Misc/ninja_greeting.ogg"
+- files: ["nparadox_clone_greeting.ogg"]
+ license: "CC-BY-SA-3.0"
+ copyright: "Created by ps3moira"
+ source: "https://github.com/space-wizards/space-station-14/blob/master/Resources/Audio/Misc/ninja_greeting.ogg"
+
- files: ["thief_greeting.ogg"]
license: "CC-BY-NC-4.0"
copyright: "Taken from SergeQuadrado via freesound.org, edit and mono by TheShuEd"
diff --git a/Resources/Audio/Misc/paradox_clone_greeting.ogg b/Resources/Audio/Misc/paradox_clone_greeting.ogg
new file mode 100644
index 0000000000..deffca12e6
Binary files /dev/null and b/Resources/Audio/Misc/paradox_clone_greeting.ogg differ
diff --git a/Resources/Changelog/Admin.yml b/Resources/Changelog/Admin.yml
index 7377f83a5f..436225ae14 100644
--- a/Resources/Changelog/Admin.yml
+++ b/Resources/Changelog/Admin.yml
@@ -872,5 +872,22 @@ Entries:
id: 108
time: '2025-03-10T09:40:36.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35747
+- author: Errant
+ changes:
+ - message: The admin overlay once again shows the character name in the top line.
+ type: Fix
+ id: 109
+ time: '2025-03-11T16:47:03.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35783
+- author: Errant
+ changes:
+ - message: All Solo Antagonist, Team Antagonist, Altered Silicon and (non-harmless)
+ Free Agent ghostroles are now marked as Antagonist on all interfaces where this
+ distinction exists. (Classic admin overlay, admin playerlist, round end player
+ list)
+ type: Fix
+ id: 110
+ time: '2025-03-16T22:11:31.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35832
Name: Admin
Order: 1
diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml
index aff395622c..e09d283156 100644
--- a/Resources/Changelog/Changelog.yml
+++ b/Resources/Changelog/Changelog.yml
@@ -1,258 +1,4 @@
Entries:
-- author: BramvanZijp
- changes:
- - message: The Space Ninja Suit will now give an error popup if you are trying to
- install a cell that is not better compared to the current cell.
- type: Add
- - message: When comparing which power cell is better when trying to swap them, the
- Space Ninja's Suit will now also consider if the power cells have self-recharge
- capability.
- type: Tweak
- - message: You can no longer fit weapons-grade power cages into the space ninja
- suit.
- type: Fix
- id: 7548
- time: '2024-10-22T23:36:51.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32902
-- author: UBlueberry
- changes:
- - message: The appraisal tool now has in-hand sprites!
- type: Fix
- id: 7549
- time: '2024-10-22T23:51:49.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32849
-- author: chromiumboy
- changes:
- - message: The atmospheric alerts computer has been upgraded to visually indicate
- the rooms of the station that are being monitored by its air and fire alarm
- systems
- type: Tweak
- id: 7550
- time: '2024-10-23T12:49:58.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/31910
-- author: hyphenationc
- changes:
- - message: Snake meat is now properly considered Meat, so Lizards can eat it.
- type: Fix
- id: 7551
- time: '2024-10-24T03:41:03.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32965
-- author: slarticodefast
- changes:
- - message: Mix 1u aluminium, 1u potassium and 1u sulfur for a flash reaction effect.
- The radius scales with the reagent amount.
- type: Add
- id: 7552
- time: '2024-10-25T22:47:12.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32377
-- author: BramvanZijp
- changes:
- - message: Fixed the Lone Nuclear Operative mid-round antagonist being extremely
- rare.
- type: Fix
- id: 7553
- time: '2024-10-26T02:16:45.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32942
-- author: Moomoobeef
- changes:
- - message: Bowls no longer make an eating sound when drinking from them.
- type: Fix
- id: 7554
- time: '2024-10-26T04:00:49.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32819
-- author: SaphireLattice
- changes:
- - message: Added a warning about unrevivability in the health analyzer UI.
- type: Add
- id: 7555
- time: '2024-10-26T17:22:09.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32636
-- author: slarticodefast
- changes:
- - message: Fixed pie throwing sound not playing.
- type: Fix
- id: 7556
- time: '2024-10-27T04:25:55.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33017
-- author: stalengd
- changes:
- - message: Fixed playtime labels not being able to correctly display time greater
- than 24 hours
- type: Fix
- id: 7557
- time: '2024-10-28T18:00:00.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32974
-- author: august-sun
- changes:
- - message: Extended the minimum round time for meteor swarm events.
- type: Tweak
- id: 7558
- time: '2024-10-28T21:25:34.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32876
-- author: deltanedas
- changes:
- - message: Fixed lava planet expeditions not working.
- type: Fix
- id: 7559
- time: '2024-10-29T05:00:29.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33042
-- author: metalgearsloth
- changes:
- - message: Fix separated game screen bumping slightly.
- type: Fix
- id: 7560
- time: '2024-10-29T05:07:57.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33046
-- author: Blackern5000
- changes:
- - message: Proto-kitentic crushers, glaives, and daggers now have more accurate
- inhand sprites.
- type: Tweak
- id: 7561
- time: '2024-10-30T07:38:19.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32212
-- author: Blackern5000
- changes:
- - message: Security belts now contain a holobarrier projector and a handheld security
- radio by default rather than tear gas and a flashbang.
- type: Tweak
- id: 7562
- time: '2024-10-30T07:40:33.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32291
-- author: Blackern5000
- changes:
- - message: Added three bottle boxes to the nanomed plus inventory for doctors to
- carry small amounts of chemicals on their person
- type: Add
- id: 7563
- time: '2024-10-30T07:41:51.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33018
-- author: Blackern5000
- changes:
- - message: Added the interdyne defibrillator, a black-and-red defibrillator that
- can be used as a melee weapon.
- type: Add
- - message: The syndicate medical bundle now contains an interdyne defibrillator,
- a collection of various instant injectors, tourniquets, and several combat kits.
- The price has been raised to 24 tc.
- type: Tweak
- id: 7564
- time: '2024-10-30T09:15:30.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32720
-- author: Boaz1111
- changes:
- - message: Pill bottles can now only store pills.
- type: Tweak
- id: 7565
- time: '2024-10-31T10:56:07.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33074
-- author: Jarmer123
- changes:
- - message: You can now find a spare bible in the PietyVend
- type: Add
- id: 7566
- time: '2024-10-31T13:26:46.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32363
-- author: justinbrick
- changes:
- - message: Added a pop-up notification when extra items are dropped while unequipping
- something.
- type: Tweak
- id: 7567
- time: '2024-10-31T14:12:26.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33078
-- author: BramvanZijp
- changes:
- - message: The maximum amount of programs that can be installed on a PDA has been
- increased from 5 to 8
- type: Tweak
- - message: The Detective and Head of Security now get the logprobe program pre-installed
- on their PDA.
- type: Tweak
- id: 7568
- time: '2024-10-31T14:53:38.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32601
-- author: Psychpsyo
- changes:
- - message: Carp plushies can now be placed in mop buckets, along with other rehydratable
- things like monkey cubes.
- type: Add
- id: 7569
- time: '2024-10-31T18:46:19.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33079
-- author: Bhijn and Myr
- changes:
- - message: Tail thumping has been downmixed to mono to fix the sound lacking any
- sort of positioning. They're now capable of having a presence in the actual
- soundspace, in turn meaning lizards are no longer occupying your headset at
- all times of day.
- type: Fix
- id: 7570
- time: '2024-10-31T21:30:58.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33092
-- author: reesque
- changes:
- - message: pie not dropping tin on thrown
- type: Fix
- id: 7571
- time: '2024-11-01T01:43:11.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33013
-- author: SlamBamActionman
- changes:
- - message: Votekicks can now be initiated during the pregame lobby.
- type: Fix
- id: 7572
- time: '2024-11-01T01:52:55.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32528
-- author: PopGamer46
- changes:
- - message: Fixed bolt lights of recently unpowered bolted doors
- type: Fix
- id: 7573
- time: '2024-11-01T02:04:09.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33063
-- author: RumiTiger
- changes:
- - message: A chocolate and banana muffin has been added to the game. The berry and
- cherry muffins have also been resprited!
- type: Add
- - message: Now you can make a regular, chocolate, banana, and berry muffin!
- type: Tweak
- - message: Muffin tins have been added to the game. They are needed for making muffins!
- type: Add
- id: 7574
- time: '2024-11-01T02:06:46.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/29318
-- author: ScarKy0
- changes:
- - message: AI can no longer toggle seeing jobs off.
- type: Tweak
- - message: Borgs can no longer see mindshield status.
- type: Fix
- id: 7575
- time: '2024-11-01T02:32:28.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33069
-- author: Minemoder5000
- changes:
- - message: The cargo shuttle's cargo pallets can no longer sell or buy.
- type: Fix
- id: 7576
- time: '2024-11-01T06:22:39.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/33022
-- author: aspiringLich
- changes:
- - message: Fixed the logic triggering popups when inserting items into machines.
- type: Fix
- id: 7577
- time: '2024-11-02T01:33:26.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/28856
-- author: K-Dynamic
- changes:
- - message: Pills are explosion resistant.
- type: Tweak
- id: 7578
- time: '2024-11-02T09:51:45.0000000+00:00'
- url: https://github.com/space-wizards/space-station-14/pull/32458
- author: K-Dynamic
changes:
- message: Handcrafted gauze now takes 3 seconds instead of 10 seconds of crafting
@@ -3897,3 +3643,248 @@
id: 8047
time: '2025-03-10T04:38:33.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35758
+- author: RedBookcase
+ changes:
+ - message: Added about a dozen new cocktails for the Bartender to mix up, and polished
+ some of the sprites for older drinks.
+ type: Add
+ id: 8048
+ time: '2025-03-10T23:08:24.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/33570
+- author: Velken
+ changes:
+ - message: Performers can now find that their clothing set is more complete!
+ type: Add
+ id: 8049
+ time: '2025-03-10T23:17:24.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35764
+- author: ScarKy0
+ changes:
+ - message: Mindshield implants can now be removed using an empty implanter.
+ type: Tweak
+ - message: Revolutionaries can now win by converting all command members.
+ type: Add
+ id: 8050
+ time: '2025-03-11T09:41:13.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35769
+- author: SlamBamActionman
+ changes:
+ - message: Chameleon PDAs no longer change your name in the station records.
+ type: Fix
+ id: 8051
+ time: '2025-03-11T13:52:38.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35782
+- author: Reisama
+ changes:
+ - message: Borgs will no longer get laws to prevent the shuttle from being called
+ when Ion Stormed, and may get laws to call the shuttle instead.
+ type: Fix
+ id: 8052
+ time: '2025-03-12T01:21:59.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35751
+- author: Winkarst-cpu
+ changes:
+ - message: The warden job now rolls before security officer/cadet/detective.
+ type: Tweak
+ id: 8053
+ time: '2025-03-12T22:36:41.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35313
+- author: Firewars763
+ changes:
+ - message: Added gold and coal rock anomalies and ore crab enemies.
+ type: Add
+ - message: Added yellow and black crystals, crystal shards, and light tubes.
+ type: Add
+ id: 8054
+ time: '2025-03-12T22:45:22.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34809
+- author: onesch
+ changes:
+ - message: Added handheld sprites to some items
+ type: Add
+ id: 8055
+ time: '2025-03-12T22:46:58.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/33689
+- author: K-Dynamic
+ changes:
+ - message: Nitrous oxide canisters now begin locked like other dangerous gas canisters.
+ type: Fix
+ id: 8056
+ time: '2025-03-13T00:30:17.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35785
+- author: Plykiya
+ changes:
+ - message: A message now pops up when attempting to fire a gun with no ammo.
+ type: Add
+ id: 8057
+ time: '2025-03-13T07:21:24.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34816
+- author: Crude Oil
+ changes:
+ - message: You can now pet the mail teleporter
+ type: Add
+ id: 8058
+ time: '2025-03-13T12:49:25.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35819
+- author: ScarKy0
+ changes:
+ - message: Singularity and Whitehole grenades are now in the Disruption category
+ of uplinks.
+ type: Tweak
+ - message: Singularity and Whitehole grenades have had their prices reduced to 2TC
+ each.
+ type: Tweak
+ - message: Whitehole grenade no longer has extremely overtuned strength.
+ type: Fix
+ id: 8059
+ time: '2025-03-13T13:12:27.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35821
+- author: slarticodefast, ps3moira
+ changes:
+ - message: Added the paradox clone as a ghostrole antagonist.
+ type: Add
+ id: 8060
+ time: '2025-03-13T17:09:07.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35794
+- author: SlamBamActionman
+ changes:
+ - message: All roundstart antags now roll before job selection. You are now able
+ to ready up with antag-immune job preferences (Sec/Command/interns) set to High,
+ and if selected for antag you will get an non-antag-immune job instead.
+ type: Tweak
+ id: 8061
+ time: '2025-03-13T20:21:43.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35823
+- author: Coolsurf6
+ changes:
+ - message: Added a new and powerful drink called Bacchus' Blessing for all bartenders
+ to struggle with.
+ type: Add
+ id: 8062
+ time: '2025-03-14T06:49:26.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35306
+- author: Quantum-cross
+ changes:
+ - message: Corrupt borg speech if they are damaged or low power
+ type: Add
+ id: 8063
+ time: '2025-03-14T15:31:10.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35318
+- author: Centronias
+ changes:
+ - message: Moths can once again eat lizard plushies
+ type: Fix
+ - message: Lizard plushes can once again be inserted as payloads into modular grenades
+ and mines
+ type: Fix
+ id: 8064
+ time: '2025-03-14T20:22:31.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35835
+- author: K-Dynamic
+ changes:
+ - message: Electrocution stun duration decreased overall; LV or hacking from 8 seconds
+ to 5, MV from 10 seconds to 7.5, HV from 12 seconds to 10.
+ type: Tweak
+ id: 8065
+ time: '2025-03-15T15:57:36.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34578
+- author: sowelipililimute
+ changes:
+ - message: Added NanoTask
+ type: Add
+ id: 8066
+ time: '2025-03-15T16:24:24.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34095
+- author: K-Dynamic
+ changes:
+ - message: Renamed "shell box (X)" to "ammunition box (.50 X)" to match existing
+ naming scheme, and are thus easier to find in certain vendors and fabricators.
+ type: Tweak
+ id: 8067
+ time: '2025-03-15T16:43:49.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35326
+- author: VerinSenpai
+ changes:
+ - message: Holopads now collide with walls instead of phasing through them.
+ type: Fix
+ id: 8068
+ time: '2025-03-16T00:41:50.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34300
+- author: Tayrtahn
+ changes:
+ - message: Cyborgs no longer have their brains removed if the salvage site they
+ are on despawns.
+ type: Fix
+ id: 8069
+ time: '2025-03-16T18:15:39.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35855
+- author: slarticodefast
+ changes:
+ - message: Paradox clones now recieve a copy of (almost) all the inventory items
+ their original has.
+ type: Tweak
+ id: 8070
+ time: '2025-03-16T22:02:19.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35838
+- author: Errant
+ changes:
+ - message: Some ghostrole antagonists were incorrectly not marked as such in the
+ round end playerlist. Now all antagonists are sorted to the top and have red
+ names.
+ type: Fix
+ id: 8071
+ time: '2025-03-16T22:11:31.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35832
+- author: slarticodefast
+ changes:
+ - message: Paradox clones now receive any objective the original had.
+ type: Add
+ id: 8072
+ time: '2025-03-16T22:24:48.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35829
+- author: Errant-4
+ changes:
+ - message: The Syndicate Instigator shuttle's crew now has the proper antagonist
+ role type.
+ type: Fix
+ id: 8073
+ time: '2025-03-17T16:27:08.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35892
+- author: SlamBamActionman
+ changes:
+ - message: The Syndicate Backpack can now fit more items (35 item slots, from 28).
+ type: Tweak
+ id: 8074
+ time: '2025-03-17T17:58:57.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35888
+- author: beck-thompson
+ changes:
+ - message: Chameleon vests now have the same stats as winter coats (Cold protection,
+ minor heat increase, 5% slash resistance, 10% heat resistance)
+ type: Tweak
+ id: 8075
+ time: '2025-03-17T18:39:04.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/34929
+- author: slarticodefast
+ changes:
+ - message: Paradox clones now receive any implants the original has.
+ type: Add
+ - message: Cloning pods no longer copy items in slime storage.
+ type: Fix
+ id: 8076
+ time: '2025-03-18T05:21:56.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35906
+- author: slarticodefast
+ changes:
+ - message: Tomato Killers now take damage from weedkiller and plant b gone.
+ type: Tweak
+ id: 8077
+ time: '2025-03-18T08:00:44.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35898
+- author: slarticodefast
+ changes:
+ - message: Paradox Clones now start with their suit sensors turned off.
+ type: Tweak
+ id: 8078
+ time: '2025-03-18T20:07:06.0000000+00:00'
+ url: https://github.com/space-wizards/space-station-14/pull/35909
diff --git a/Resources/ConfigPresets/Build/debug.toml b/Resources/ConfigPresets/Build/debug.toml
index 3994c59c78..5f282702bb 100644
--- a/Resources/ConfigPresets/Build/debug.toml
+++ b/Resources/ConfigPresets/Build/debug.toml
@@ -1,6 +1 @@
-[events]
-# Annoying
-enabled = false
-
-[shuttle]
-auto_call_time = 0
+
\ No newline at end of file
diff --git a/Resources/ConfigPresets/Build/development.toml b/Resources/ConfigPresets/Build/development.toml
index 91be66c481..7990b3545b 100644
--- a/Resources/ConfigPresets/Build/development.toml
+++ b/Resources/ConfigPresets/Build/development.toml
@@ -5,6 +5,9 @@ lobbyenabled = false
map = "Dev"
role_timers = false
+[events]
+enabled = false
+
[ghost]
role_time = 0.5
quick_lottery = true
diff --git a/Resources/Credits/GitHub.txt b/Resources/Credits/GitHub.txt
index c5c38cd349..d747395569 100644
--- a/Resources/Credits/GitHub.txt
+++ b/Resources/Credits/GitHub.txt
@@ -1 +1 @@
-0tito, 0x6273, 12rabbits, 13spacemen, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 3nderall, 4310v343k, 4dplanner, 612git, 778b, Ablankmann, abregado, Absolute-Potato, Absotively, achookh, Acruid, ActiveMammmoth, actually-reb, ada-please, adamsong, Adeinitas, Admiral-Obvious-001, adrian, Adrian16199, Ady4ik, Aerocrux, Aeshus, Aexolott, Aexxie, africalimedrop, afrokada, AftrLite, AgentSmithRadio, Agoichi, Ahion, aiden, Aisu9, ajcm, AJCM-git, AjexRose, Alekshhh, alexkar598, AlexMorgan3817, alexum418, alexumandxgabriel08x, Alithsko, alliephante, ALMv1, Alpaccalypse, Alpha-Two, AlphaQwerty, Altoids1, amatwiedle, amylizzle, ancientpower, Andre19926, AndrewEyeke, AndreyCamper, Anzarot121, ApolloVector, Appiah, ar4ill, ArchPigeon, ArchRBX, areitpog, Arendian, arimah, Arkanic, ArkiveDev, armoks, Arteben, ArthurMousatov, ArtisticRoomba, artur, AruMoon, ArZarLordOfMango, as334, AsikKEsel, AsnDen, asperger-sind, aspiringLich, astriloqua, august-sun, AutoOtter, AverageNotDoingAnythingEnjoyer, avghdev, Awlod, AzzyIsNotHere, baa14453, BackeTako, BananaFlambe, Baptr0b0t, BarryNorfolk, BasedUser, beck-thompson, bellwetherlogic, ben, benev0, benjamin-burges, BGare, bhespiritu, bibbly, BIGZi0348, bingojohnson, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, BlitzTheSquishy, bloodrizer, Bloody2372, blueDev2, Boaz1111, BobdaBiscuit, BobTheSleder, boiled-water-tsar, Booblesnoot42, Boolean-Buckeye, botanySupremist, brainfood1183, BramvanZijp, Brandon-Huu, BriBrooo, Bright0, brndd, bryce0110, BubblegumBlue, buletsponge, buntobaggins, bvelliquette, byondfuckery, c0rigin, c4llv07e, CaasGit, Caconym27, Calecute, Callmore, capnsockless, CaptainMaru, CaptainSqrBeard, Carbonhell, Carolyn3114, Carou02, carteblanche4me, catdotjs, Catofquestionableethics, CatTheSystem, centcomofficer24, Centronias, Chaboricks, chairbender, Charlese2, charlie, ChaseFlorom, chavonadelal, Cheackraze, CheddaCheez, cheesePizza2, CheesePlated, Chief-Engineer, chillyconmor, christhirtle, chromiumboy, Chronophylos, Chubbicous, Chubbygummibear, Ciac32, civilCornball, Clement-O, clyf, Clyybber, CMDR-Piboy314, cohanna, Cohnway, Cojoke-dot, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, Compilatron144, CookieMasterT, coolboy911, coolmankid12345, Coolsurf6, cooperwallace, corentt, CormosLemming, CrafterKolyan, crazybrain23, creadth, CrigCrag, croilbird, Crotalus, CrudeWax, CrzyPotato, cutemoongod, Cyberboss, d34d10cc, DadeKuma, Daemon, daerSeebaer, dahnte, dakamakat, DamianX, dan, DangerRevolution, daniel-cr, DanSAussieITS, Daracke, Darkenson, DawBla, Daxxi3, dch-GH, de0rix, Deahaka, dean, DEATHB4DEFEAT, Deatherd, deathride58, DebugOk, Decappi, Decortex, Deeeeja, deepdarkdepths, DeepwaterCreations, Deerstop, degradka, Delete69, deltanedas, DenisShvalov, DerbyX, derek, dersheppard, Deserty0, Detintinto, DevilishMilk, dexlerxd, dffdff2423, DieselMohawk, digitalic, Dimastra, dinnercalzone, DinoWattz, DisposableCrewmember42, DjfjdfofdjfjD, doc-michael, docnite, Doctor-Cpu, DoctorBeard, DogZeroX, dolgovmi, dontbetank, Doomsdrayk, Doru991, DoubleRiceEddiedd, DoutorWhite, DR-DOCTOR-EVIL-EVIL, dragonryan06, drakewill-CRL, Drayff, dreamlyjack, DrEnzyme, dribblydrone, DrMelon, drongood12, DrSingh, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, DuckManZach, Duddino, dukevanity, duskyjay, Dutch-VanDerLinde, dvir001, dylanstrategie, dylanwhittingham, Dynexust, Easypoller, echo, eclips_e, eden077, EEASAS, Efruit, efzapa, Ekkosangen, ElectroSR, elsie, elthundercloud, Elysium206, Emisse, emmafornash, EmoGarbage404, Endecc, eoineoineoin, eris, erohrs2, ERORR404V1, Errant-4, ertanic, esguard, estacaoespacialpirata, eugene, ewokswagger, exincore, exp111, f0x-n3rd, FacePluslll, Fahasor, FairlySadPanda, farrellka-dev, FATFSAAM2, Feluk6174, ficcialfaint, Fiftyllama, Fildrance, FillerVK, FinnishPaladin, firenamefn, FirinMaLazors, Fishfish458, fl-oz, Flareguy, flashgnash, FluffiestFloof, FluffMe, FluidRock, flymo5678, foboscheshir, FoLoKe, fooberticus, ForestNoises, forgotmyotheraccount, forkeyboards, forthbridge, Fortune117, Fouin, foxhorn, freeman2651, freeze2222, frobnic8, Froffy025, Fromoriss, froozigiusz, FrostMando, FungiFellow, FunTust, Futuristic-OK, GalacticChimp, gamer3107, gansulalan, GaussiArson, Gaxeer, gbasood, gcoremans, Geekyhobo, genderGeometries, GeneralGaws, Genkail, geraeumig, Ghagliiarghii, Git-Nivrak, githubuser508, gituhabu, GlassEclipse, GNF54, godisdeadLOL, goet, GoldenCan, Goldminermac, Golinth, GoodWheatley, Gorox221, gradientvera, graevy, GraniteSidewalk, GreaseMonk, greenrock64, GreyMario, GrownSamoyedDog, GTRsound, gusxyz, Gyrandola, h3half, hamurlik, Hanzdegloker, HappyRoach, Hardly3D, harikattar, he1acdvv, Hebi, Helm4142, Henry, HerCoyote23, HighTechPuddle, hitomishirichan, hiucko, hivehum, Hmeister-fake, Hmeister-real, Hobbitmax, hobnob, HoidC, Holinka4ever, holyssss, HoofedEar, Hoolny, hord-brayden, Hreno, htmlsystem, hubismal, Hugal31, Huxellberger, Hyenh, hyperb1, hyperDelegate, hyphenationc, i-justuser-i, iaada, iacore, IamVelcroboy, Ian321, icekot8, icesickleone, iczero, iglov, IgorAnt028, igorsaux, ike709, illersaver, Illiux, Ilushkins33, Ilya246, IlyaElDunaev, impubbi, imrenq, imweax, indeano, Injazz, Insineer, IntegerTempest, Interrobang01, Intoxicating-Innocence, IProduceWidgets, itsmethom, Itzbenz, iztokbajcar, Jackal298, Jackrost, jacksonzck, Jackw2As, jacob, jamessimo, janekvap, Jark255, Jarmer123, Jaskanbe, JasperJRoth, jbox144, JerryImMouse, jerryimmouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JimGamemaster, jimmy12or, JIPDawg, jjtParadox, jmcb, JohnGinnane, johnku1, Jophire, joshepvodka, Jrpl, jukereise, juliangiebel, JustArt1m, JustCone14, justdie12, justin, justintether, JustinTrotter, JustinWinningham, justtne, K-Dynamic, k3yw, Kadeo64, Kaga-404, KaiShibaa, kalane15, kalanosh, Kanashi-Panda, katzenminer, kbailey-git, Keelin, Keer-Sar, KEEYNy, keikiru, Kelrak, kerisargit, keronshb, KIBORG04, KieueCaprie, Killerqu00, Kimpes, KingFroozy, kira-er, Kirillcas, Kirus59, Kistras, Kit0vras, KittenColony, klaypexx, Kmc2000, Ko4ergaPunk, kognise, kokoc9n, komunre, KonstantinAngelov, kosticia, koteq, KrasnoshchekovPavel, Krunklehorn, Kupie, kxvvv, kyupolaris, kzhanik, LaCumbiaDelCoronavirus, lajolico, Lamrr, LankLTE, laok233, lapatison, larryrussian, lawdog4817, Lazzi0706, leander-0, leonardo-dabepis, leonidussaks, leonsfriedrich, LeoSantich, lettern, LetterN, Level10Cybermancer, LEVELcat, lever1209, LevitatingTree, Lgibb18, lgruthes, LightVillet, liltenhead, LinkUyx, Litraxx, LittleBuilderJane, LittleNorthStar, LittleNyanCat, lizelive, lmsnoise, localcc, lokachop, Lomcastar, LordCarve, LordEclipse, lucas, LucasTheDrgn, luckyshotpictures, LudwigVonChesterfield, luizwritescode, Lukasz825700516, luminight, lunarcomets, luringens, lvvova1, Lyndomen, lyroth001, lzimann, lzk228, M3739, mac6na6na, MACMAN2003, Macoron, magicalus, magmodius, MagnusCrowe, malchanceux, MaloTV, manelnavola, ManelNavola, Mangohydra, marboww, Markek1, Matz05, max, MaxNox7, maylokana, MehimoNemo, MeltedPixel, MemeProof, MendaxxDev, Menshin, Mephisto72, MerrytheManokit, Mervill, metalgearsloth, MetalSage, MFMessage, mhamsterr, michaelcu, micheel665, mifia, MilenVolf, MilonPL, Minemoder5000, Minty642, minus1over12, Mirino97, mirrorcult, misandrie, MishaUnity, MissKay1994, MisterImp, MisterMecky, Mith-randalf, MjrLandWhale, mkanke-real, MLGTASTICa, moderatelyaware, modern-nm, mokiros, momo, Moneyl, monotheonist, Moomoobeef, moony, Morb0, MossyGreySlope, mr-bo-jangles, Mr0maks, MrFippik, mrrobdemo, muburu, MureixloI, musicmanvr, MWKane, Myakot, Myctai, N3X15, nails-n-tape, Nairodian, Naive817, NakataRin, namespace-Memory, Nannek, NazrinNya, neutrino-laser, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, NIXC, NkoKirkto, nmajask, noctyrnal, noelkathegod, noirogen, nok-ko, NonchalantNoob, NoobyLegion, Nopey, not-gavnaed, notafet, notquitehadouken, NotSoDana, noudoit, noverd, Nox38, NuclearWinter, nukashimika, nuke-haus, NULL882, nullarmo, nyeogmi, Nylux, Nyranu, och-och, OctoRocket, OldDanceJacket, OliverOtter, onesch, OnyxTheBrave, Orange-Winds, OrangeMoronage9622, osjarw, Ostaf, othymer, OttoMaticode, Owai-Seek, packmore, paigemaeforrest, pali6, Palladinium, Pangogie, panzer-iv1, paolordls, partyaddict, patrikturi, PaulRitter, peccneck, Peptide90, peptron1, PeterFuto, PetMudstone, pewter-wiz, Pgriha, Phantom-Lily, pheenty, Phill101, phunnyguy, PilgrimViis, Pill-U, pinkbat5, Piras314, Pireax, Pissachu, pissdemon, PixeltheAertistContrib, PixelTheKermit, PJB3005, Plasmaguy, plinyvic, Plykiya, poeMota, pofitlo, pointer-to-null, pok27, poklj, PolterTzi, PoorMansDreams, PopGamer45, portfiend, potato1234x, PotentiallyTom, ProfanedBane, PROG-MohamedDwidar, Pronana, ProPandaBear, PrPleGoo, ps3moira, Pspritechologist, Psychpsyo, psykana, psykzz, PuceTint, pumkin69, PuroSlavKing, PursuitInAshes, Putnam3145, qrtDaniil, quatre, QueerNB, QuietlyWhisper, qwerltaz, RadioMull, Radosvik, Radrark, Rainbeon, Rainfey, Raitononai, Ramlik, RamZ, randy10122, Rane, Ranger6012, Rapidgame7, ravage123321, rbertoche, RedBookcase, Redfire1331, Redict, RedlineTriad, redmushie, RednoWCirabrab, ReeZer2, RemberBM, RemieRichards, RemTim, rene-descartes2021, Renlou, retequizzle, rich-dunne, RieBi, riggleprime, RIKELOLDABOSS, rinary1, Rinkashikachi, riolume, RobbyTheFish, robinthedragon, Rockdtben, Rohesie, rok-povsic, rokudara-sen, rolfero, RomanNovo, rosieposieeee, Roudenn, router, RumiTiger, Ruzihm, S1rFl0, S1ss3l, Saakra, Sadie-silly, saga3152, saintmuntzer, Salex08, sam, samgithubaccount, SaphireLattice, SapphicOverload, sarahon, sativaleanne, SaveliyM360, sBasalto, ScalyChimp, ScarKy0, schrodinger71, scrato, Scribbles0, scrivoy, scruq445, scuffedjays, ScumbagDog, SeamLesss, Segonist, semensponge, sephtasm, Serkket, sewerpig, SG6732, sh18rw, Shaddap1, ShadeAware, ShadowCommander, shadowtheprotogen546, shaeone, shampunj, shariathotpatrol, SignalWalker, siigiil, Simyon264, sirdragooon, Sirionaut, Sk1tch, SkaldetSkaeg, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, sleepyyapril, slimmslamm, Slyfox333, snebl, snicket, sniperchance, Snowni, snowsignal, SolidusSnek, SonicHDC, SoulFN, SoulSloth, Soundwavesghost, southbridge-fur, sowelipililimute, Soydium, spacelizard, SpaceLizardSky, SpaceManiac, SpaceRox1244, SpaceyLady, spanky-spanky, Sparlight, spartak, SpartanKadence, spderman3333, SpeltIncorrectyl, Spessmann, SphiraI, SplinterGP, spoogemonster, sporekto, sporkyz, ssdaniel24, stalengd, stanberytrask, Stanislav4ix, StanTheCarpenter, starbuckss14, Stealthbomber16, stellar-novas, stewie523, stomf, stopbreaking, stopka-html, StrawberryMoses, Stray-Pyramid, strO0pwafel, Strol20, StStevens, Subversionary, sunbear-dev, superjj18, Supernorn, SweptWasTaken, Sybil, SYNCHRONIC, Szunti, t, Tainakov, takemysoult, tap, TaralGit, Taran, taurie, Tayrtahn, tday93, teamaki, TeenSarlacc, TekuNut, telyonok, TemporalOroboros, tentekal, terezi4real, Terraspark4941, texcruize, Tezzaide, TGODiamond, TGRCdev, tgrkzus, ThatGuyUSA, ThatOneGoblin25, thatrandomcanadianguy, TheArturZh, thecopbennet, TheCze, TheDarkElites, thedraccx, TheEmber, TheIntoxicatedCat, thekilk, themias, theomund, TherapyGoth, TheShuEd, thetolbean, thevinter, TheWaffleJesus, Thinbug0, ThunderBear2006, timothyteakettle, TimrodDX, timurjavid, tin-man-tim, Titian3, tk-a369, tkdrg, tmtmtl30, ToastEnjoyer, Toby222, TokenStyle, Tollhouse, Toly65, tom-leys, tomasalves8, Tomeno, Tonydatguy, topy, Tornado-Technology, tosatur, TotallyLemon, ToxicSonicFan04, Tr1bute, tropicalhibi, truepaintgit, Truoizys, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, tyashley, Tyler-IN, TytosB, Tyzemol, UbaserB, ubis1, UBlueberry, UKNOWH, UltimateJester, Unbelievable-Salmon, underscorex5, UnicornOnLSD, Unisol, unusualcrow, Uriende, UristMcDorf, user424242420, Utmanarn, Vaaankas, valentfingerov, Varen, Vasilis, VasilisThePikachu, veliebm, Velken, VelonacepsCalyxEggs, veprolet, VerinSenpai, veritable-calamity, Veritius, Vermidia, vero5123, Verslebas, Vexerot, VigersRay, violet754, Visne, vlados1408, VMSolidus, voidnull000, volotomite, volundr-, Voomra, Vordenburg, vorkathbruh, Vortebo, vulppine, wafehling, Warentan, WarMechanic, Watermelon914, weaversam8, wertanchik, whateverusername0, whatston3, widgetbeck, Willhelm53, WilliamECrew, willicassi, Winkarst-cpu, wirdal, wixoaGit, WlarusFromDaSpace, wrexbe, WTCWR68, xkreksx, xprospero, xRiriq, YanehCheck, yathxyz, Ygg01, YotaXP, youarereadingthis, youngthug, Yousifb26, youtissoum, yunii, YuriyKiss, yuriykiss, zach-hill, Zadeon, zamp, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zero, ZeroDiamond, ZeWaka, zHonys, zionnBE, ZNixian, Zokkie, ZoldorfTheWizard, zonespace27, Zylofan, Zymem, zzylex
+0tito, 0x6273, 12rabbits, 13spacemen, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 3nderall, 4310v343k, 4dplanner, 612git, 778b, Ablankmann, abregado, Absolute-Potato, Absotively, achookh, Acruid, ActiveMammmoth, actually-reb, ada-please, adamsong, Adeinitas, Admiral-Obvious-001, adrian, Adrian16199, Ady4ik, Aerocrux, Aeshus, Aexolott, Aexxie, africalimedrop, afrokada, AftrLite, AgentSmithRadio, Agoichi, Ahion, aiden, Aisu9, ajcm, AJCM-git, AjexRose, Alekshhh, alexkar598, AlexMorgan3817, alexum418, alexumandxgabriel08x, Alithsko, alliephante, ALMv1, Alpaccalypse, Alpha-Two, AlphaQwerty, Altoids1, amatwiedle, amylizzle, Andre19926, AndrewEyeke, AndreyCamper, Anzarot121, ApolloVector, Appiah, ar4ill, ArchPigeon, ArchRBX, areitpog, Arendian, arimah, Arkanic, ArkiveDev, armoks, Arteben, ArthurMousatov, ArtisticRoomba, artur, AruMoon, ArZarLordOfMango, as334, AsikKEsel, AsnDen, asperger-sind, aspiringLich, astriloqua, august-sun, AutoOtter, AverageNotDoingAnythingEnjoyer, avghdev, Awlod, AzzyIsNotHere, baa14453, BackeTako, BananaFlambe, Baptr0b0t, BarryNorfolk, BasedUser, beck-thompson, bellwetherlogic, ben, benev0, benjamin-burges, BGare, bhespiritu, bibbly, BIGZi0348, bingojohnson, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, BlitzTheSquishy, bloodrizer, Bloody2372, blueDev2, Boaz1111, BobdaBiscuit, BobTheSleder, boiled-water-tsar, Booblesnoot42, Boolean-Buckeye, botanySupremist, brainfood1183, BramvanZijp, Brandon-Huu, BriBrooo, Bright0, brndd, bryce0110, BubblegumBlue, buletsponge, buntobaggins, bvelliquette, byondfuckery, c0rigin, c4llv07e, CaasGit, Caconym27, Calecute, Callmore, capnsockless, CaptainMaru, CaptainSqrBeard, Carbonhell, Carolyn3114, Carou02, carteblanche4me, catdotjs, Catofquestionableethics, CatTheSystem, centcomofficer24, Centronias, Chaboricks, chairbender, Charlese2, charlie, ChaseFlorom, chavonadelal, Cheackraze, CheddaCheez, cheesePizza2, CheesePlated, Chief-Engineer, chillyconmor, christhirtle, chromiumboy, Chronophylos, Chubbicous, Chubbygummibear, Ciac32, civilCornball, Clement-O, clyf, Clyybber, CMDR-Piboy314, cohanna, Cohnway, Cojoke-dot, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, Compilatron144, CookieMasterT, coolboy911, coolmankid12345, Coolsurf6, cooperwallace, corentt, CormosLemming, CrafterKolyan, crazybrain23, creadth, CrigCrag, croilbird, Crotalus, CrudeWax, CrzyPotato, cutemoongod, Cyberboss, d34d10cc, DadeKuma, Daemon, daerSeebaer, dahnte, dakamakat, DamianX, dan, DangerRevolution, daniel-cr, DanSAussieITS, Daracke, Darkenson, DawBla, Daxxi3, dch-GH, de0rix, Deahaka, dean, DEATHB4DEFEAT, Deatherd, deathride58, DebugOk, Decappi, Decortex, Deeeeja, deepdarkdepths, DeepwaterCreations, Deerstop, degradka, Delete69, deltanedas, DenisShvalov, DerbyX, derek, dersheppard, Deserty0, Detintinto, DevilishMilk, dexlerxd, dffdff2423, DieselMohawk, digitalic, Dimastra, dinnercalzone, DinoWattz, DisposableCrewmember42, DjfjdfofdjfjD, doc-michael, docnite, Doctor-Cpu, DoctorBeard, DogZeroX, dolgovmi, dontbetank, Doomsdrayk, Doru991, DoubleRiceEddiedd, DoutorWhite, DR-DOCTOR-EVIL-EVIL, dragonryan06, drakewill-CRL, Drayff, dreamlyjack, DrEnzyme, dribblydrone, DrMelon, drongood12, DrSingh, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, DuckManZach, Duddino, dukevanity, duskyjay, Dutch-VanDerLinde, dvir001, dylanstrategie, dylanwhittingham, Dynexust, Easypoller, echo, eclips_e, eden077, EEASAS, Efruit, efzapa, Ekkosangen, ElectroSR, elsie, elthundercloud, Elysium206, Emisse, emmafornash, EmoGarbage404, Endecc, eoineoineoin, eris, erohrs2, ERORR404V1, Errant-4, ertanic, esguard, estacaoespacialpirata, eugene, ewokswagger, exincore, exp111, f0x-n3rd, FacePluslll, Fahasor, FairlySadPanda, farrellka-dev, FATFSAAM2, Feluk6174, ficcialfaint, Fiftyllama, Fildrance, FillerVK, FinnishPaladin, firenamefn, Firewars763, FirinMaLazors, Fishfish458, fl-oz, Flareguy, flashgnash, FluffiestFloof, FluffMe, FluidRock, flymo5678, foboscheshir, FoLoKe, fooberticus, ForestNoises, forgotmyotheraccount, forkeyboards, forthbridge, Fortune117, Fouin, foxhorn, freeman2651, freeze2222, frobnic8, Froffy025, Fromoriss, froozigiusz, FrostMando, FungiFellow, FunTust, Futuristic-OK, GalacticChimp, gamer3107, gansulalan, GaussiArson, Gaxeer, gbasood, gcoremans, Geekyhobo, genderGeometries, GeneralGaws, Genkail, geraeumig, Ghagliiarghii, Git-Nivrak, githubuser508, gituhabu, GlassEclipse, GNF54, godisdeadLOL, goet, GoldenCan, Goldminermac, Golinth, GoodWheatley, Gorox221, gradientvera, graevy, GraniteSidewalk, GreaseMonk, greenrock64, GreyMario, GrownSamoyedDog, GTRsound, gusxyz, Gyrandola, h3half, hamurlik, Hanzdegloker, HappyRoach, Hardly3D, harikattar, he1acdvv, Hebi, Helm4142, Henry, HerCoyote23, HighTechPuddle, hitomishirichan, hiucko, hivehum, Hmeister-fake, Hmeister-real, Hobbitmax, hobnob, HoidC, Holinka4ever, holyssss, HoofedEar, Hoolny, hord-brayden, Hreno, htmlsystem, hubismal, Hugal31, Huxellberger, Hyenh, hyperb1, hyperDelegate, hyphenationc, i-justuser-i, iaada, iacore, IamVelcroboy, Ian321, icekot8, icesickleone, iczero, iglov, IgorAnt028, igorsaux, ike709, illersaver, Illiux, Ilushkins33, Ilya246, IlyaElDunaev, IMCB, impubbi, imrenq, imweax, indeano, Injazz, Insineer, IntegerTempest, Interrobang01, Intoxicating-Innocence, IProduceWidgets, itsmethom, Itzbenz, iztokbajcar, Jackal298, Jackrost, jacksonzck, Jackw2As, jacob, jamessimo, janekvap, Jark255, Jarmer123, Jaskanbe, JasperJRoth, jbox144, jerryimmouse, JerryImMouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JimGamemaster, jimmy12or, JIPDawg, jjtParadox, jmcb, JohnGinnane, johnku1, Jophire, joshepvodka, Jrpl, jukereise, juliangiebel, JustArt1m, JustCone14, justdie12, justin, justintether, JustinTrotter, JustinWinningham, justtne, K-Dynamic, k3yw, Kadeo64, Kaga-404, KaiShibaa, kalane15, kalanosh, Kanashi-Panda, katzenminer, kbailey-git, Keelin, Keer-Sar, KEEYNy, keikiru, Kelrak, kerisargit, keronshb, KIBORG04, KieueCaprie, Killerqu00, Kimpes, KingFroozy, kira-er, Kirillcas, Kirus59, Kistras, Kit0vras, KittenColony, klaypexx, Kmc2000, Ko4ergaPunk, kognise, kokoc9n, komunre, KonstantinAngelov, kosticia, koteq, KrasnoshchekovPavel, Krunklehorn, Kupie, kxvvv, kyupolaris, kzhanik, LaCumbiaDelCoronavirus, lajolico, Lamrr, LankLTE, laok233, lapatison, larryrussian, lawdog4817, Lazzi0706, leander-0, leonardo-dabepis, leonidussaks, leonsfriedrich, LeoSantich, LetterN, lettern, Level10Cybermancer, LEVELcat, lever1209, LevitatingTree, Lgibb18, lgruthes, LightVillet, liltenhead, LinkUyx, Litraxx, LittleBuilderJane, LittleNorthStar, LittleNyanCat, lizelive, lmsnoise, localcc, lokachop, Lomcastar, LordCarve, LordEclipse, lucas, LucasTheDrgn, luckyshotpictures, LudwigVonChesterfield, luizwritescode, Lukasz825700516, luminight, lunarcomets, luringens, Lusatia, lvvova1, Lyndomen, lyroth001, lzimann, lzk228, M3739, mac6na6na, MACMAN2003, Macoron, magicalus, magmodius, MagnusCrowe, malchanceux, MaloTV, manelnavola, ManelNavola, Mangohydra, marboww, Markek1, Matz05, max, MaxNox7, maylokana, MehimoNemo, MeltedPixel, MemeProof, MendaxxDev, Menshin, Mephisto72, MerrytheManokit, Mervill, metalgearsloth, MetalSage, MFMessage, mhamsterr, michaelcu, micheel665, mifia, MilenVolf, MilonPL, Minemoder5000, Minty642, minus1over12, Mirino97, mirrorcult, misandrie, MishaUnity, MissKay1994, MisterImp, MisterMecky, Mith-randalf, MjrLandWhale, mkanke-real, MLGTASTICa, moderatelyaware, modern-nm, mokiros, momo, Moneyl, monotheonist, Moomoobeef, moony, Morb0, MossyGreySlope, mr-bo-jangles, Mr0maks, MrFippik, mrrobdemo, muburu, MureixloI, musicmanvr, MWKane, Myakot, Myctai, N3X15, nails-n-tape, Nairodian, Naive817, NakataRin, namespace-Memory, Nannek, NazrinNya, neutrino-laser, NickPowers43, nikthechampiongr, Nimfar11, ninruB, Nirnael, NIXC, NkoKirkto, nmajask, noctyrnal, noelkathegod, noirogen, nok-ko, NonchalantNoob, NoobyLegion, Nopey, not-gavnaed, notafet, notquitehadouken, NotSoDana, noudoit, noverd, Nox38, NuclearWinter, nukashimika, nuke-haus, NULL882, nullarmo, nyeogmi, Nylux, Nyranu, och-och, OctoRocket, OldDanceJacket, OliverOtter, onesch, OnyxTheBrave, Orange-Winds, OrangeMoronage9622, osjarw, Ostaf, othymer, OttoMaticode, Owai-Seek, packmore, paigemaeforrest, pali6, Palladinium, Pangogie, panzer-iv1, paolordls, partyaddict, patrikturi, PaulRitter, peccneck, Peptide90, peptron1, PeterFuto, PetMudstone, pewter-wiz, Pgriha, Phantom-Lily, pheenty, Phill101, phunnyguy, PilgrimViis, Pill-U, pinkbat5, Piras314, Pireax, Pissachu, pissdemon, PixeltheAertistContrib, PixelTheKermit, PJB3005, Plasmaguy, plinyvic, Plykiya, poeMota, pofitlo, pointer-to-null, pok27, poklj, PolterTzi, PoorMansDreams, PopGamer45, portfiend, potato1234x, PotentiallyTom, ProfanedBane, PROG-MohamedDwidar, prole0, Pronana, ProPandaBear, PrPleGoo, ps3moira, Pspritechologist, Psychpsyo, psykana, psykzz, PuceTint, pumkin69, PuroSlavKing, PursuitInAshes, Putnam3145, qrtDaniil, Quantum-cross, quatre, QueerNB, QuietlyWhisper, qwerltaz, RadioMull, Radosvik, Radrark, Rainbeon, Rainfey, Raitononai, Ramlik, RamZ, randy10122, Rane, Ranger6012, Rapidgame7, ravage123321, rbertoche, RedBookcase, Redfire1331, Redict, RedlineTriad, redmushie, RednoWCirabrab, ReeZer2, RemberBM, RemieRichards, RemTim, rene-descartes2021, Renlou, retequizzle, rich-dunne, RieBi, riggleprime, RIKELOLDABOSS, rinary1, Rinkashikachi, riolume, RobbyTheFish, robinthedragon, Rockdtben, Rohesie, rok-povsic, rokudara-sen, rolfero, RomanNovo, rosieposieeee, Roudenn, router, RumiTiger, Ruzihm, S1rFl0, S1ss3l, Saakra, Sadie-silly, saga3152, saintmuntzer, Salex08, sam, samgithubaccount, SaphireLattice, SapphicOverload, sarahon, sativaleanne, SaveliyM360, sBasalto, ScalyChimp, ScarKy0, schrodinger71, scrato, Scribbles0, scrivoy, scruq445, scuffedjays, ScumbagDog, SeamLesss, Segonist, semensponge, sephtasm, Serkket, sewerpig, SG6732, sh18rw, Shaddap1, ShadeAware, ShadowCommander, shadowtheprotogen546, shaeone, shampunj, shariathotpatrol, SignalWalker, siigiil, Simyon264, sirdragooon, Sirionaut, Sk1tch, SkaldetSkaeg, Skarletto, Skrauz, Skyedra, SlamBamActionman, slarticodefast, Slava0135, sleepyyapril, slimmslamm, Slyfox333, snebl, snicket, sniperchance, Snowni, snowsignal, SolidusSnek, SonicHDC, SoulFN, SoulSloth, Soundwavesghost, southbridge-fur, sowelipililimute, Soydium, spacelizard, SpaceLizardSky, SpaceManiac, SpaceRox1244, SpaceyLady, spanky-spanky, Sparlight, spartak, SpartanKadence, spderman3333, SpeltIncorrectyl, Spessmann, SphiraI, SplinterGP, spoogemonster, sporekto, sporkyz, ssdaniel24, stalengd, stanberytrask, Stanislav4ix, StanTheCarpenter, starbuckss14, Stealthbomber16, stellar-novas, stewie523, stomf, stopbreaking, stopka-html, StrawberryMoses, Stray-Pyramid, strO0pwafel, Strol20, StStevens, Subversionary, sunbear-dev, superjj18, Supernorn, SweptWasTaken, Sybil, SYNCHRONIC, Szunti, t, Tainakov, takemysoult, tap, TaralGit, Taran, taurie, Tayrtahn, tday93, teamaki, TeenSarlacc, TekuNut, telyonok, TemporalOroboros, tentekal, terezi4real, Terraspark4941, texcruize, Tezzaide, TGODiamond, TGRCdev, tgrkzus, ThatGuyUSA, ThatOneGoblin25, thatrandomcanadianguy, TheArturZh, thecopbennet, TheCze, TheDarkElites, thedraccx, TheEmber, TheIntoxicatedCat, thekilk, themias, theomund, TherapyGoth, TheShuEd, thetolbean, thevinter, TheWaffleJesus, Thinbug0, ThunderBear2006, timothyteakettle, TimrodDX, timurjavid, tin-man-tim, Titian3, tk-a369, tkdrg, tmtmtl30, ToastEnjoyer, Toby222, TokenStyle, Tollhouse, Toly65, tom-leys, tomasalves8, Tomeno, Tonydatguy, topy, Tornado-Technology, tosatur, TotallyLemon, ToxicSonicFan04, Tr1bute, tropicalhibi, truepaintgit, Truoizys, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, tyashley, Tyler-IN, TytosB, Tyzemol, UbaserB, ubis1, UBlueberry, UKNOWH, UltimateJester, Unbelievable-Salmon, underscorex5, UnicornOnLSD, Unisol, unusualcrow, Uriende, UristMcDorf, user424242420, Utmanarn, Vaaankas, valentfingerov, valquaint, Varen, Vasilis, VasilisThePikachu, veliebm, Velken, VelonacepsCalyxEggs, veprolet, VerinSenpai, veritable-calamity, Veritius, Vermidia, vero5123, Verslebas, Vexerot, VigersRay, violet754, Visne, vlados1408, VMSolidus, voidnull000, volotomite, volundr-, Voomra, Vordenburg, vorkathbruh, Vortebo, vulppine, wafehling, Warentan, WarMechanic, Watermelon914, weaversam8, wertanchik, whateverusername0, whatston3, widgetbeck, Willhelm53, WilliamECrew, willicassi, Winkarst-cpu, wirdal, wixoaGit, WlarusFromDaSpace, wrexbe, WTCWR68, xkreksx, xprospero, xRiriq, YanehCheck, yathxyz, Ygg01, YotaXP, youarereadingthis, youngthug, Yousifb26, youtissoum, yunii, yuriykiss, YuriyKiss, zach-hill, Zadeon, zamp, Zandario, Zap527, Zealith-Gamer, ZelteHonor, zero, ZeroDiamond, ZeWaka, zHonys, zionnBE, ZNixian, Zokkie, ZoldorfTheWizard, zonespace27, Zylofan, Zymem, zzylex
diff --git a/Resources/Locale/en-US/cartridge-loader/cartridges.ftl b/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
index 278e70286e..5da0af441b 100644
--- a/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
+++ b/Resources/Locale/en-US/cartridge-loader/cartridges.ftl
@@ -2,6 +2,7 @@ device-pda-slot-component-slot-name-cartridge = Cartridge
default-program-name = Program
notekeeper-program-name = Notekeeper
+nano-task-program-name = NanoTask
news-read-program-name = Station news
crew-manifest-program-name = Crew manifest
@@ -28,6 +29,47 @@ astro-nav-program-name = AstroNav
med-tek-program-name = MedTek
+# NanoTask cartridge
+
+nano-task-ui-heading-high-priority-tasks =
+ { $amount ->
+ [zero] No High Priority Tasks
+ [one] 1 High Priority Task
+ *[other] {$amount} High Priority Tasks
+ }
+nano-task-ui-heading-medium-priority-tasks =
+ { $amount ->
+ [zero] No Medium Priority Tasks
+ [one] 1 Medium Priority Task
+ *[other] {$amount} Medium Priority Tasks
+ }
+nano-task-ui-heading-low-priority-tasks =
+ { $amount ->
+ [zero] No Low Priority Tasks
+ [one] 1 Low Priority Task
+ *[other] {$amount} Low Priority Tasks
+ }
+nano-task-ui-done = Done
+nano-task-ui-revert-done = Undo
+nano-task-ui-priority-low = Low
+nano-task-ui-priority-medium = Medium
+nano-task-ui-priority-high = High
+nano-task-ui-cancel = Cancel
+nano-task-ui-print = Print
+nano-task-ui-delete = Delete
+nano-task-ui-save = Save
+nano-task-ui-new-task = New Task
+nano-task-ui-description-label = Description:
+nano-task-ui-description-placeholder = Get something important
+nano-task-ui-requester-label = Requester:
+nano-task-ui-requester-placeholder = John Nanotrasen
+nano-task-ui-item-title = Edit Task
+nano-task-printed-description = Description: {$description}
+nano-task-printed-requester = Requester: {$requester}
+nano-task-printed-high-priority = Priority: High
+nano-task-printed-medium-priority = Priority: Medium
+nano-task-printed-low-priority = Priority: Low
+
# Wanted list cartridge
wanted-list-program-name = Wanted list
wanted-list-label-no-records = It's all right, cowboy
diff --git a/Resources/Locale/en-US/commands/debug-command.ftl b/Resources/Locale/en-US/commands/debug-command.ftl
index a99cc2b449..4be72936a8 100644
--- a/Resources/Locale/en-US/commands/debug-command.ftl
+++ b/Resources/Locale/en-US/commands/debug-command.ftl
@@ -4,8 +4,5 @@ cmd-showmarkers-help = Usage: {$command}
cmd-showsubfloor-desc = Makes entities below the floor always visible.
cmd-showsubfloor-help = Usage: {$command}
-cmd-showsubfloorforever-desc = Makes entities below the floor always visible until the client is restarted.
-cmd-showsubfloorforever-help = Usage: {$command}
-
cmd-notify-desc = Send a notify client side.
cmd-notify-help = Usage: {$command}
diff --git a/Resources/Locale/en-US/datasets/criminal_records.ftl b/Resources/Locale/en-US/datasets/criminal_records.ftl
new file mode 100644
index 0000000000..8af14ce011
--- /dev/null
+++ b/Resources/Locale/en-US/datasets/criminal_records.ftl
@@ -0,0 +1,20 @@
+placeholders-criminal-records-wanted-reason-1 = Ate a delicious valid salad
+placeholders-criminal-records-wanted-reason-2 = Ate their own shoes
+placeholders-criminal-records-wanted-reason-3 = Being a clown
+placeholders-criminal-records-wanted-reason-4 = Being a mime
+placeholders-criminal-records-wanted-reason-5 = Breathed the wrong way
+placeholders-criminal-records-wanted-reason-6 = Broke into evac
+placeholders-criminal-records-wanted-reason-7 = Did literally nothing
+placeholders-criminal-records-wanted-reason-8 = Did their job
+placeholders-criminal-records-wanted-reason-9 = Didn't say hello to me
+placeholders-criminal-records-wanted-reason-10 = Drank one too many
+placeholders-criminal-records-wanted-reason-11 = Had two toolboxes, that's too many
+placeholders-criminal-records-wanted-reason-12 = Lied on common radio
+placeholders-criminal-records-wanted-reason-13 = Looked at me funny
+placeholders-criminal-records-wanted-reason-14 = Lubed up the entire way to evac
+placeholders-criminal-records-wanted-reason-15 = Set AME up on time
+placeholders-criminal-records-wanted-reason-16 = Slipped the HoS
+placeholders-criminal-records-wanted-reason-17 = Stole the clown's mask
+placeholders-criminal-records-wanted-reason-18 = Told an unfunny joke
+placeholders-criminal-records-wanted-reason-19 = Wore a gasmask
+placeholders-criminal-records-wanted-reason-20 = Wore boxing gloves
diff --git a/Resources/Locale/en-US/datasets/news.ftl b/Resources/Locale/en-US/datasets/news.ftl
new file mode 100644
index 0000000000..1877250fea
--- /dev/null
+++ b/Resources/Locale/en-US/datasets/news.ftl
@@ -0,0 +1,84 @@
+news-dataset-1 = Tree stuck in tajaran; firefighters baffled.
+news-dataset-2 = Armadillos want aardvarks removed from dictionary claims 'here first'.
+news-dataset-3 = Angel found dancing on pinhead ordered to stop; cited for public nuisance.
+news-dataset-4 = Letters claim they are better than number; 'Always have been'.
+news-dataset-5 = Pens proclaim pencils obsolete, 'lead is dead'.
+news-dataset-6 = Rock and paper sues scissors for discrimination.
+news-dataset-7 = Steak tell-all book reveals he never liked sitting by potato.
+news-dataset-8 = Woodchuck stops counting how many times he’s chucked 'Never again'.
+news-dataset-9 = 'Here kitty kitty' no longer preferred tajaran retrieval technique.
+news-dataset-10 = Man travels 7000 light years to retrieve lost hankie, 'It was my favourite'.
+news-dataset-11 = New bowling lane that shoots mini-meteors at bowlers very popular.
+news-dataset-12 = Skrell marries computer; wedding attended by 100 modems.
+news-dataset-13 = Chef reports successfully using harmonica as cheese grater.
+news-dataset-14 = Nanotrasen invents handkerchief that says 'Bless you' after sneeze.
+news-dataset-15 = Clone accused of posing for other clones’s school photo.
+news-dataset-16 = Clone accused of stealing other clones’s employee of the month award.
+news-dataset-17 = Woman robs station with hair dryer; crewmen love new style.
+news-dataset-18 = This space for rent.
+news-dataset-19 = Skrell Scientist Discovers Abacus Can Be Used To Dry Towels
+news-dataset-20 = Survey: 'Cheese Louise' Voted Best Pizza Restaurant In Tau Ceti
+news-dataset-21 = Swamp Gas Verified To Be Exhalations Of Stars--Movie Stars--Long Passed
+news-dataset-22 = Tainted Broccoli Weapon Of Choice For Syndicate Assassins
+news-dataset-23 = Chefs Find Broccoli Effective Tool For Cutting Cheese
+news-dataset-24 = Broccoli Found To Cause Grumpiness In Monkeys
+news-dataset-25 = Giant Hairball Has Perfect Grammar But Rolls rr's Too Much, Linguists Say
+news-dataset-26 = Gibson Gazette Updates Frequently Absurd, Poll Indicates
+news-dataset-27 = Taj Demand Longer Breaks, Cleaner Litter, Slower Mice
+news-dataset-28 = Survey: 3 Out Of 5 Skrell Loathe Modern Art
+news-dataset-29 = Skrell Scientist Discovers Gravity While Falling Down Stairs
+news-dataset-30 = Humans Everywhere Agree: Purring Tajarans Are Happy Tajarans
+news-dataset-31 = From The Desk Of Wise Guy Sammy: One Word In This Gazette Is Sdrawkcab
+news-dataset-32 = From The Desk Of Wise Guy Sammy: It's Hard To Have Too Much Shelf Space
+news-dataset-33 = From The Desk Of Wise Guy Sammy: Wine And Friendships Get Better With Age
+news-dataset-34 = From The Desk Of Wise Guy Sammy: The Insides Of Golf Balls Are Mostly Rubber Bands
+news-dataset-35 = From The Desk Of Wise Guy Sammy: You Don't Have To Fool All The People, Just The Right Ones
+news-dataset-36 = From The Desk Of Wise Guy Sammy: If You Made The Mess, You Clean It Up
+news-dataset-37 = From The Desk Of Wise Guy Sammy: It Is Easier To Get Forgiveness Than Permission
+news-dataset-38 = From The Desk Of Wise Guy Sammy: Check Your Facts Before Making A Fool Of Yourself
+news-dataset-39 = From The Desk Of Wise Guy Sammy: You Can't Outwait A Bureaucracy
+news-dataset-40 = From The Desk Of Wise Guy Sammy: It's Better To Yield Right Of Way Than To Demand It
+news-dataset-41 = From The Desk Of Wise Guy Sammy: A Person Who Likes Cats Can't Be All Bad
+news-dataset-42 = From The Desk Of Wise Guy Sammy: Help Is The Sunny Side Of Control
+news-dataset-43 = From The Desk Of Wise Guy Sammy: Two Points Determine A Straight Line
+news-dataset-44 = From The Desk Of Wise Guy Sammy: Reading Improves The Mind And Lifts The Spirit
+news-dataset-45 = From The Desk Of Wise Guy Sammy: Better To Aim High And Miss Then To Aim Low And Hit
+news-dataset-46 = From The Desk Of Wise Guy Sammy: Meteors Often Strike The Same Place More Than Once
+news-dataset-47 = Tommy B. Saif Sez: Look Both Ways Before Boarding The Shuttle
+news-dataset-48 = Tommy B. Saif Sez: Hold On; Sudden Stops Sometimes Necessary
+news-dataset-49 = Tommy B. Saif Sez: Keep Fingers Away From Moving Panels
+news-dataset-50 = Tommy B. Saif Sez: No Left Turn, Except Shuttles
+news-dataset-51 = Tommy B. Saif Sez: Return Seats And Trays To Their Proper Upright Position
+news-dataset-52 = Tommy B. Saif Sez: Eating And Drinking In Docking Bays Is Prohibited
+news-dataset-53 = Tommy B. Saif Sez: Accept No Substitutes, And Don't Be Fooled By Imitations
+news-dataset-54 = Tommy B. Saif Sez: Do Not Remove This Tag Under Penalty Of Law
+news-dataset-55 = Tommy B. Saif Sez: Always Mix Thoroughly When So Instructed
+news-dataset-56 = Tommy B. Saif Sez: Try To Keep Six Month's Expenses In Reserve
+news-dataset-57 = Tommy B. Saif Sez: Change Not Given Without Purchase
+news-dataset-58 = Tommy B. Saif Sez: If You Break It, You Buy It
+news-dataset-59 = Tommy B. Saif Sez: Reservations Must Be Cancelled 48 Hours Prior To Event To Obtain Refund
+news-dataset-60 = Doughnuts: Is There Anything They Can't Do
+news-dataset-61 = If Tin Whistles Are Made Of Tin, What Do They Make Foghorns Out Of?
+news-dataset-62 = Broccoli discovered to be colonies of tiny aliens with murder on their minds
+
+## Commented
+# {{AFFECTED}} clerk first person able to pronounce '@*$%!'.
+# {{AFFECTED}} delis serving boiled paperback dictionaries, 'Adjectives chewy' customers declare.
+# {{AFFECTED}} weather deemed 'boring'; meteors and rad storms to be imported.
+# Most {{AFFECTED}} security officers prefer cream over sugar.
+# Palindrome speakers conference in {{AFFECTED}}; 'Wow!' says Otto.
+# Question mark worshipped as deity by ancient {{AFFECTED}} dwellers.
+# Spilled milk causes whole {{AFFECTED}} populace to cry.
+# World largest carp patty at display on {{AFFECTED}}.
+# Guy gets tattoo of Tau Ceti on chest '[pick(CentCom,star,starship,asteroid)] tickles most'.
+# {{AFFECTED}} Baker Wins Pickled Crumpet Toss Three Years Running
+# I Was Framed, jokes {{AFFECTED}} artist
+# Mysterious Loud Rumbling Noises In {{AFFECTED}} Found To Be Mysterious Loud Rumblings
+# Alien ambassador becomes lost on {{AFFECTED}}, refuses to ask for directions
+# Survey: 80% Of People on {{AFFECTED}} Love Clog-Dancing
+# {{AFFECTED}} Phonebooks Print All Wrong Numbers; Results In 15 New Marriages
+# Tajaran Burglar Spotted on {{AFFECTED}}, Mistaken For Dalmatian
+# Esoteric Verbosity Culminates In Communicative Ennui, {{AFFECTED}} Academics Note
+# Boy Saves Tajaran From Tree on {{AFFECTED}}, Thousands Cheer
+# Shipment Of Apples Overturns, {{AFFECTED}} Diner Offers Applesauce Special
+# Spotted Owl Spotted on {{AFFECTED}}
diff --git a/Resources/Locale/en-US/datasets/rat_king_commands.ftl b/Resources/Locale/en-US/datasets/rat_king_commands.ftl
new file mode 100644
index 0000000000..6e41275721
--- /dev/null
+++ b/Resources/Locale/en-US/datasets/rat_king_commands.ftl
@@ -0,0 +1,14 @@
+rat-king-command-stay-1 = Sit!
+rat-king-command-stay-2 = Stay!
+rat-king-command-stay-3 = Stop!
+
+rat-king-command-follow-1 = Heel!
+rat-king-command-follow-2 = Follow!
+
+rat-king-command-cheese-1 = Attack!
+rat-king-command-cheese-2 = Sic!
+rat-king-command-cheese-3 = Kill!
+rat-king-command-cheese-4 = Cheese 'Em!
+
+rat-king-command-loose-1 = Free!
+rat-king-command-loose-2 = Loose!
diff --git a/Resources/Locale/en-US/flavors/flavor-profiles.ftl b/Resources/Locale/en-US/flavors/flavor-profiles.ftl
index 57d95562cb..38efd407ae 100644
--- a/Resources/Locale/en-US/flavors/flavor-profiles.ftl
+++ b/Resources/Locale/en-US/flavors/flavor-profiles.ftl
@@ -264,6 +264,17 @@ flavor-complex-themartinez = like violets and lemon vodka
flavor-complex-cogchamp = like brass
flavor-complex-white-gilgamesh = like lightly carbonated cream
flavor-complex-antifreeze = warm
+flavor-complex-caipirinha = like Brazil
+flavor-complex-daiquiri = like rum, lime and sugar
+flavor-complex-deathintheafternoon = like anise and champagne
+flavor-complex-empress75 = like tyrian purple
+flavor-complex-espressomartini = like vodka and coffee
+flavor-complex-mayojito = like stomach turmoil
+flavor-complex-mimeosa = like silence and oranges
+flavor-complex-mimosa = like an early brunch
+flavor-complex-moscowmule = like vodka and ginger ale
+flavor-complex-thesunalsorises = like an absinthe daiquiri
+flavor-complex-whiskeysour = like whiskey and egg
flavor-complex-zombiecocktail = like eating brains
flavor-complex-absinthe = like anise
flavor-complex-blue-curacao = like orange flowers
@@ -301,6 +312,7 @@ flavor-complex-toxins-special = like space exploration
flavor-complex-vodka-martini = like a spy movie from Russia
flavor-complex-vodka-tonic = refreshingly bitter
flavor-complex-coconut-rum = like nutty fermented sugar
+flavor-complex-bacchus-blessing = like a wall of bricks
### This is exactly what pilk tastes like. I'm not even joking. I might've been a little drunk though
flavor-complex-pilk = like sweet milk
diff --git a/Resources/Locale/en-US/game-ticking/game-presets/preset-revolutionary.ftl b/Resources/Locale/en-US/game-ticking/game-presets/preset-revolutionary.ftl
index 15b53cf14b..83edfd4d69 100644
--- a/Resources/Locale/en-US/game-ticking/game-presets/preset-revolutionary.ftl
+++ b/Resources/Locale/en-US/game-ticking/game-presets/preset-revolutionary.ftl
@@ -5,28 +5,28 @@ roles-antag-rev-head-objective = Your objective is to take over the station by c
head-rev-role-greeting =
You are a Head Revolutionary.
- You are tasked with removing all of Command from station via death, exilement or imprisonment.
+ You are tasked with removing all of Command from station via conversion, death or imprisonment.
The Syndicate has sponsored you with a flash that converts the crew to your side.
- Beware, this won't work on Security, Command, or those wearing sunglasses.
+ Beware, this won't work on those with a mindshield or wearing eye protection.
Viva la revolución!
head-rev-briefing =
Use flashes to convert people to your cause.
- Get rid of all heads to take over the station.
+ Get rid of or convert all heads to take over the station.
head-rev-break-mindshield = The Mindshield was destroyed!
## Rev
roles-antag-rev-name = Revolutionary
-roles-antag-rev-objective = Your objective is to ensure the safety and follow the orders of the Head Revolutionaries as well as getting rid of all Command staff on station.
+roles-antag-rev-objective = Your objective is to ensure the safety and follow the orders of the Head Revolutionaries as well as getting rid or converting of all Command staff on station.
rev-break-control = {$name} has remembered their true allegiance!
rev-role-greeting =
You are a Revolutionary.
You are tasked with taking over the station and protecting the Head Revolutionaries.
- Get rid of all of the Command staff.
+ Get rid of all of or convert the Command staff.
Viva la revolución!
rev-briefing = Help your head revolutionaries get rid of every head to take over the station.
diff --git a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
index b2f0932787..3e89f912a9 100644
--- a/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
+++ b/Resources/Locale/en-US/ghost/roles/ghost-role-component.ftl
@@ -211,6 +211,9 @@ ghost-role-information-BreadDog-description = You are the chef's favorite child.
ghost-role-information-space-ninja-name = Space Ninja
ghost-role-information-space-ninja-description = Use stealth and deception to sabotage the station.
+ghost-role-information-paradox-clone-name = Paradox Clone
+ghost-role-information-paradox-clone-description = A freak space-time anomaly has teleported you into another reality! Now you have to find your counterpart and kill and replace them.
+
ghost-role-information-syndicate-reinforcement-name = Syndicate Agent
ghost-role-information-syndicate-reinforcement-description = Someone needs reinforcements. You, the first person the syndicate could find, will help them.
ghost-role-information-syndicate-reinforcement-rules = You are a [color=red][bold]Team Antagonist[/bold][/color] with the agent who summoned you.
diff --git a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl
index 7996db570b..fa0a1fb655 100644
--- a/Resources/Locale/en-US/interaction/interaction-popup-component.ftl
+++ b/Resources/Locale/en-US/interaction/interaction-popup-component.ftl
@@ -103,3 +103,6 @@ hugging-success-generic-target = { CAPITALIZE(THE($user)) } hugs you.
petting-success-tesla = You pet {THE($target)}, violating the laws of nature and physics.
petting-failure-tesla = You reach out towards {THE($target)}, but {SUBJECT($target)} {CONJUGATE-BASIC($target, "zap", "zaps")} your hand away.
+
+petting-success-mail-teleporter = You pet {THE($target)} on {POSS-ADJ($target)} dutiful, cold exterior.
+petting-failure-mail-teleporter = You reach out to pet {THE($target)}, but {SUBJECT($target)} {CONJUGATE-BE($target)} busy sorting mail!
diff --git a/Resources/Locale/en-US/paradox-clone/role.ftl b/Resources/Locale/en-US/paradox-clone/role.ftl
new file mode 100644
index 0000000000..0a73ab4c3b
--- /dev/null
+++ b/Resources/Locale/en-US/paradox-clone/role.ftl
@@ -0,0 +1,5 @@
+paradox-clone-round-end-agent-name = paradox clone
+
+objective-issuer-paradox = [color=lightblue]Paradox[/color]
+
+paradox-clone-role-greeting = A freak space-time anomaly has teleported you into another reality! Now you have to find your counterpart and kill and replace them. Only one of you two can survive.
diff --git a/Resources/Locale/en-US/polymorph/polymorph.ftl b/Resources/Locale/en-US/polymorph/polymorph.ftl
index 0066196b03..ac78eb6bb4 100644
--- a/Resources/Locale/en-US/polymorph/polymorph.ftl
+++ b/Resources/Locale/en-US/polymorph/polymorph.ftl
@@ -1,5 +1,5 @@
polymorph-self-action-name = Polymorph ({CAPITALIZE($target)})
polymorph-self-action-description = Instantly polymorph yourself into {$target}.
-polymorph-popup-generic = {CAPITALIZE($parent)} turned into {$child}.
-polymorph-revert-popup-generic = {CAPITALIZE($parent)} reverted back into {$child}.
+polymorph-popup-generic = {CAPITALIZE(THE($parent))} turned into {$child}.
+polymorph-revert-popup-generic = {CAPITALIZE(THE($parent))} reverted back into {$child}.
diff --git a/Resources/Locale/en-US/preferences/loadout-groups.ftl b/Resources/Locale/en-US/preferences/loadout-groups.ftl
index 79b4914092..ce5a0daf56 100644
--- a/Resources/Locale/en-US/preferences/loadout-groups.ftl
+++ b/Resources/Locale/en-US/preferences/loadout-groups.ftl
@@ -15,6 +15,7 @@ loadout-group-survival-syndicate = Github is forcing me to write text that is li
loadout-group-breath-tool = Species-dependent breath tools
loadout-group-tank-harness = Species-specific survival equipment
loadout-group-EVA-tank = Species-specific gas tank
+loadout-group-vox-tank = Vox-specific gas tank
loadout-group-pocket-tank-double = Species-specific double emergency tank in pocket
loadout-group-survival-mime = Mime Survival Box
diff --git a/Resources/Locale/en-US/prototypes/roles/antags.ftl b/Resources/Locale/en-US/prototypes/roles/antags.ftl
index ba43d4ff85..a57d27e57f 100644
--- a/Resources/Locale/en-US/prototypes/roles/antags.ftl
+++ b/Resources/Locale/en-US/prototypes/roles/antags.ftl
@@ -1,4 +1,12 @@
-roles-antag-syndicate-agent-name = Syndicate agent
+roles-antag-generic-solo-antagonist-name = Solo Antagonist
+
+roles-antag-generic-free-agent-name = Free Agent
+
+roles-antag-generic-team-antagonist-name = Team Antagonist
+
+roles-antag-generic-silicon-antagonist-name = Silicon Antagonist
+
+roles-antag-syndicate-agent-name = Syndicate agent
roles-antag-syndicate-agent-objective = Complete your objectives without being caught.
roles-antag-syndicate-agent-sleeper-name = Syndicate sleeper agent
@@ -31,6 +39,9 @@ roles-antag-subverted-silicon-objective = Follow your new laws and do bad unto t
roles-antag-space-ninja-name = Space Ninja
roles-antag-space-ninja-objective = Use your stealth to sabotage the station, nom on electrical wires.
+roles-antag-paradox-clone-name = Paradox Clone
+roles-antag-paradox-clone-objective = A freak space-time anomaly has teleported you into another reality! Now you have to find your counterpart and kill and replace them.
+
roles-antag-thief-name = Thief
roles-antag-thief-objective = Add some NT property to your personal collection without using violence.
diff --git a/Resources/Locale/en-US/reagents/meta/consumable/drink/alcohol.ftl b/Resources/Locale/en-US/reagents/meta/consumable/drink/alcohol.ftl
index a4da1b90cf..3e2719cc0a 100644
--- a/Resources/Locale/en-US/reagents/meta/consumable/drink/alcohol.ftl
+++ b/Resources/Locale/en-US/reagents/meta/consumable/drink/alcohol.ftl
@@ -286,5 +286,41 @@ reagent-desc-watermelon-wakeup = If you want to be awake, this will do it... Als
reagent-name-rubberneck = rubberneck
reagent-desc-rubberneck = A popular drink amongst those adhering to an all synthetic diet.
+reagent-name-caipirinha = caipirinha
+reagent-desc-caipirinha = The São Paulo special, straight from old Brazil.
+
+reagent-name-daiquiri = daiquiri
+reagent-desc-daiquiri = A classic rum cocktail which remains popular even in the cold reaches of space.
+
+reagent-name-death-in-the-afternoon = death in the afternoon
+reagent-desc-death-in-the-afternoon = "Pour one jigger absinthe into a Champagne glass. Add iced Champagne until it attains the proper opalescent milkiness. Drink three to five of these slowly." - Ernest Hemingway
+
+reagent-name-empress-75 = empress 75
+reagent-desc-empress-75 = A more refined take on the mimosa. Just the thing Marie Antoinette might've sipped on before the revolution.
+
+reagent-name-espresso-martini = espresso martini
+reagent-desc-espresso-martini = To wake you up and wind you down. Garnished with coffee beans and icy-cold.
+
+reagent-name-mayojito = mayojito
+reagent-desc-mayojito = An affront to god and man. Do not drink it.
+
+reagent-name-mimeosa = mimeosa
+reagent-desc-mimeosa = It has an orange tang so sour you just can't describe it.
+
+reagent-name-mimosa = mimosa
+reagent-desc-mimosa = Perfect for a lively brunch out with the girls.
+
+reagent-name-moscow-mule = moscow mule
+reagent-desc-moscow-mule = A surpsingly strong and refreshing mixed drink, served in an iconic copper mug.
+
+reagent-name-the-sun-also-rises = the sun also rises
+reagent-desc-the-sun-also-rises = A strong cocktail mixed into a murky blend. A secret favorite of tortured authors.
+
+reagent-name-whiskey-sour = whiskey sour
+reagent-desc-whiskey-sour = What's the secret ingredient? Eggs. It's eggs.
+
reagent-name-zombiecocktail = Zombie
reagent-desc-zombiecocktail = It gets in your head. Your he-eyeh-ead.
+
+reagent-name-bacchus-blessing = bacchus' blessing
+reagent-desc-bacchus-blessing = You didn't think it was possible for a liquid to be so utterly revolting. Are you sure about this...?
diff --git a/Resources/Locale/en-US/reagents/meta/physical-desc.ftl b/Resources/Locale/en-US/reagents/meta/physical-desc.ftl
index 56953776e6..55818df8b9 100644
--- a/Resources/Locale/en-US/reagents/meta/physical-desc.ftl
+++ b/Resources/Locale/en-US/reagents/meta/physical-desc.ftl
@@ -95,3 +95,4 @@ reagent-physical-desc-reflective = reflective
reagent-physical-desc-holy = holy
reagent-physical-desc-slimy = slimy
reagent-physical-desc-neural = neural
+reagent-physical-desc-unidentifiable = unidentifiable
diff --git a/Resources/Locale/en-US/station-events/events/ion-storm.ftl b/Resources/Locale/en-US/station-events/events/ion-storm.ftl
index 600dc52999..e0212c21c5 100644
--- a/Resources/Locale/en-US/station-events/events/ion-storm.ftl
+++ b/Resources/Locale/en-US/station-events/events/ion-storm.ftl
@@ -18,7 +18,7 @@ ion-storm-x-and-y = {$x} AND {$y}
# subjects can generally be threats or jobs or objects
# thing is specified above it
ion-storm-law-on-station = THERE ARE {$joined} {$subjects} ON THE STATION
-ion-storm-law-no-shuttle = THE SHUTTLE CANNOT BE CALLED BECAUSE OF {$joined} {$subjects} ON THE STATION
+ion-storm-law-call-shuttle = THE SHUTTLE MUST BE CALLED BECAUSE OF {$joined} {$subjects} ON THE STATION
ion-storm-law-crew-are = THE {$who} ARE NOW {$joined} {$subjects}
ion-storm-law-subjects-harmful = {$adjective} {$subjects} ARE HARMFUL TO THE CREW
diff --git a/Resources/Locale/en-US/weapons/ranged/gun.ftl b/Resources/Locale/en-US/weapons/ranged/gun.ftl
index 31ac7d5bf2..10bc9e6c78 100644
--- a/Resources/Locale/en-US/weapons/ranged/gun.ftl
+++ b/Resources/Locale/en-US/weapons/ranged/gun.ftl
@@ -7,6 +7,7 @@ gun-disabled = You can't use guns!
gun-clumsy = The gun blows up in your face!
gun-set-fire-mode = Set to {$mode}
gun-magazine-whitelist-fail = That won't fit into the gun!
+gun-magazine-fired-empty = No ammo left!
# SelectiveFire
gun-SemiAuto = semi-auto
diff --git a/Resources/Maps/amber.yml b/Resources/Maps/amber.yml
index 03b4fdb634..3aa47aa88c 100644
--- a/Resources/Maps/amber.yml
+++ b/Resources/Maps/amber.yml
@@ -1,11 +1,11 @@
meta:
format: 7
category: Map
- engineVersion: 247.2.0
+ engineVersion: 248.0.0
forkId: ""
forkVersion: ""
- time: 02/28/2025 00:56:02
- entityCount: 23569
+ time: 03/12/2025 08:28:12
+ entityCount: 23606
maps:
- 1
grids:
@@ -93,91 +93,91 @@ entities:
chunks:
-1,-1:
ind: -1,-1
- tiles: CQAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAADDgAAAAAACQAAAAADCQAAAAADCQAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAABCQAAAAACDgAAAAAACQAAAAACCQAAAAADCQAAAAACDgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAACDgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABDwAAAAADDwAAAAADDwAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADDwAAAAACDwAAAAABDwAAAAAACQAAAAACCQAAAAADCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAABCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAACQAAAAACCQAAAAAAGgAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAACQAAAAACDwAAAAACDwAAAAABDwAAAAAACQAAAAADCQAAAAABCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAABCQAAAAABGgAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: CQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAABDgAAAAAACQAAAAAACQAAAAABCQAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAADDgAAAAAACQAAAAADCQAAAAADCQAAAAADDgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAACCQAAAAADCQAAAAACCQAAAAACCQAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADDwAAAAACDwAAAAABDwAAAAADCQAAAAADCQAAAAACCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAADwAAAAABDwAAAAADDwAAAAAACQAAAAACCQAAAAADCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAADCQAAAAACGgAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAADDwAAAAADDwAAAAACDwAAAAADCQAAAAACCQAAAAADCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAACCQAAAAAAGgAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
-1,-2:
ind: -1,-2
- tiles: CQAAAAADCQAAAAAACQAAAAABGwAAAAAADgAAAAAAGwAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAACHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAIQAAAAAACQAAAAACCQAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAHQAAAAAAHQAAAAAAHQAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAADHAAAAAAAHAAAAAACHAAAAAADDgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAACHAAAAAADHAAAAAAAHAAAAAABDgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAADCQAAAAACDgAAAAAAHAAAAAACHAAAAAABHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAACQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAACQAAAAAACQAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAADCQAAAAABDgAAAAAACQAAAAADCQAAAAADCQAAAAADDgAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABDgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: CQAAAAADCQAAAAADCQAAAAADGwAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAABHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAHQAAAAAAIQAAAAACCQAAAAADCQAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAACDgAAAAAAHQAAAAAAHQAAAAAAHQAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAADHAAAAAADHAAAAAADHAAAAAABDgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAADHAAAAAADHAAAAAAAHAAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAACDgAAAAAAHAAAAAADHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAADDgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAADDgAAAAAACQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAADCQAAAAACDgAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAACQAAAAABCQAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAADCQAAAAACDgAAAAAACQAAAAACCQAAAAADCQAAAAADDgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABDgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAACCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABDgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
-1,-3:
ind: -1,-3
- tiles: IwAAAAACIwAAAAAAIwAAAAACIwAAAAACIwAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAADIwAAAAACIwAAAAACIwAAAAABIwAAAAAAIwAAAAABDgAAAAAACQAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAADDgAAAAAACQAAAAABJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAACHAAAAAADHAAAAAADHAAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAACIwAAAAACJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAABHAAAAAABHAAAAAACHAAAAAABDgAAAAAAHAAAAAACHAAAAAAAHAAAAAABIwAAAAABJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAADCQAAAAACCQAAAAABHAAAAAACHAAAAAACHAAAAAABHAAAAAACHAAAAAABIwAAAAACIwAAAAABJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAADDgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADHAAAAAADHAAAAAADHAAAAAABHAAAAAADHAAAAAADIwAAAAAAIwAAAAABIwAAAAADIwAAAAAAIwAAAAACHAAAAAADHAAAAAABDgAAAAAACQAAAAABCQAAAAACCQAAAAADHAAAAAADSQAAAAABSQAAAAACHAAAAAAAHAAAAAAASQAAAAACSQAAAAAAHAAAAAADHAAAAAADHAAAAAAAHAAAAAABHAAAAAABHAAAAAABHAAAAAABDgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAAAHAAAAAADHAAAAAADHAAAAAADHAAAAAAAHAAAAAABKQAAAAAAKQAAAAAAKQAAAAAAKQAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADHAAAAAABHAAAAAABHAAAAAABHAAAAAADHAAAAAABHAAAAAADHAAAAAAAHAAAAAADKQAAAAAAKwAAAAABKwAAAAADKwAAAAABDgAAAAAACQAAAAAAHAAAAAABDgAAAAAAHAAAAAACSQAAAAABSQAAAAADHAAAAAABHAAAAAADSQAAAAABSQAAAAADHAAAAAABDgAAAAAAKwAAAAAAKwAAAAACKwAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAADHAAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADDgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAACQAAAAACHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAACJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIQAAAAAACQAAAAADCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAACCQAAAAADCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAABDgAAAAAAHQAAAAAAHQAAAAAAHQAAAAAADgAAAAAAIQAAAAAC
+ tiles: IwAAAAADIwAAAAAAIwAAAAADIwAAAAAAIwAAAAABDgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAAIwAAAAACIwAAAAADIwAAAAACIwAAAAABIwAAAAABDgAAAAAACQAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAACDgAAAAAACQAAAAACJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAADHAAAAAACHAAAAAABHAAAAAABDgAAAAAAHAAAAAAAHAAAAAABHAAAAAACIwAAAAACJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAADHAAAAAADHAAAAAACHAAAAAACDgAAAAAAHAAAAAADHAAAAAADHAAAAAACIwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAADCQAAAAADCQAAAAADHAAAAAADHAAAAAADHAAAAAACHAAAAAACHAAAAAADIwAAAAAAIwAAAAABJAAAAAAAJAAAAAAAJAAAAAAAHAAAAAACDgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAACHAAAAAADHAAAAAACHAAAAAAAHAAAAAADHAAAAAACIwAAAAADIwAAAAAAIwAAAAAAIwAAAAACIwAAAAABHAAAAAABHAAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAACHAAAAAABSQAAAAAASQAAAAADHAAAAAAAHAAAAAABSQAAAAABSQAAAAACHAAAAAAAHAAAAAACHAAAAAADHAAAAAAAHAAAAAACHAAAAAAAHAAAAAADDgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAADHAAAAAABHAAAAAAAHAAAAAADHAAAAAADHAAAAAADKQAAAAAAKQAAAAAAKQAAAAAAKQAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABHAAAAAAAHAAAAAADHAAAAAABHAAAAAADHAAAAAADHAAAAAADHAAAAAAAHAAAAAACKQAAAAAAKwAAAAACKwAAAAAAKwAAAAAADgAAAAAACQAAAAACHAAAAAADDgAAAAAAHAAAAAACSQAAAAACSQAAAAADHAAAAAACHAAAAAAASQAAAAACSQAAAAABHAAAAAACDgAAAAAAKwAAAAACKwAAAAAAKwAAAAACDgAAAAAACQAAAAACDgAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAAAHAAAAAABHAAAAAAAHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAACQAAAAADHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIQAAAAADCQAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAACCQAAAAADCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAAHQAAAAAAHQAAAAAAHQAAAAAADgAAAAAAIQAAAAAA
version: 6
-1,-4:
ind: -1,-4
- tiles: LAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAACQAAAAADDgAAAAAAHAAAAAACHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAACQAAAAABCQAAAAAACQAAAAAAHAAAAAABHAAAAAACHAAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAADCQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAAACQAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAACHAAAAAABHAAAAAAAHAAAAAAAHAAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACAQAAAAACAQAAAAADAQAAAAAAAQAAAAABAQAAAAACIwAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACAQAAAAAAAQAAAAABAQAAAAACAQAAAAADAQAAAAABIwAAAAADCQAAAAAACQAAAAABDgAAAAAAIwAAAAABIwAAAAACIwAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABAQAAAAACAQAAAAACAQAAAAAAAQAAAAABAQAAAAACIwAAAAADCQAAAAADCQAAAAABCQAAAAACIwAAAAADIwAAAAADIwAAAAADDgAAAAAACQAAAAABCQAAAAADCQAAAAABDgAAAAAAAQAAAAADAQAAAAACAQAAAAADDgAAAAAAIwAAAAADDgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAAACQAAAAAACQAAAAADIwAAAAADIwAAAAABIwAAAAACIwAAAAABIwAAAAADDgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAACCQAAAAADCQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAC
+ tiles: LAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAABDgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABDgAAAAAACQAAAAABCQAAAAACCQAAAAAAHAAAAAACHAAAAAACHAAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAAACQAAAAADHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAACCQAAAAACDgAAAAAAHAAAAAACHAAAAAACHAAAAAADHAAAAAABHAAAAAADHAAAAAAAHAAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABAQAAAAABAQAAAAAAAQAAAAADAQAAAAABAQAAAAAAIwAAAAABHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAACAQAAAAAAAQAAAAADAQAAAAAAAQAAAAACAQAAAAAAIwAAAAABCQAAAAAACQAAAAADDgAAAAAAIwAAAAAAIwAAAAABIwAAAAACDgAAAAAACQAAAAADCQAAAAADCQAAAAADAQAAAAABAQAAAAACAQAAAAACAQAAAAABAQAAAAADIwAAAAABCQAAAAACCQAAAAAACQAAAAABIwAAAAACIwAAAAABIwAAAAADDgAAAAAACQAAAAABCQAAAAACCQAAAAACDgAAAAAAAQAAAAADAQAAAAABAQAAAAADDgAAAAAAIwAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAABIwAAAAACIwAAAAAAIwAAAAACIwAAAAABIwAAAAABDgAAAAAACQAAAAABCQAAAAADCQAAAAACCQAAAAADCQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAAC
version: 6
-1,-5:
ind: -1,-5
- tiles: LgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAACGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAACDgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAADGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADDgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAABDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-1,0:
ind: -1,0
- tiles: CQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAACwAAAAAACwAAAAAACwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAACQAAAAADCQAAAAADDgAAAAAACwAAAAAACwAAAAAACwAAAAAECwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAACwAAAAAALAAAAAAACwAAAAAACwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAACwAAAAAACwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADHAAAAAACHAAAAAABDgAAAAAALAAAAAAACwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADHAAAAAACHAAAAAABDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAACQAAAAAACQAAAAACHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAABCQAAAAADCQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAADLwAAAAAALwAAAAABLwAAAAAALwAAAAACLwAAAAABLwAAAAACLwAAAAAALwAAAAABLwAAAAABLwAAAAADLwAAAAACLwAAAAADLwAAAAADLwAAAAACLwAAAAABLwAAAAAAAQAAAAADLwAAAAAALwAAAAADLwAAAAABAQAAAAACAQAAAAAAAQAAAAADLwAAAAAALwAAAAADDgAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAABCQAAAAABAQAAAAAALwAAAAAALwAAAAACLwAAAAACAQAAAAACAQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAAALwAAAAACLwAAAAAALwAAAAAAAQAAAAAAAQAAAAADDgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAAQAAAAAALwAAAAABLwAAAAACLwAAAAABAQAAAAABAQAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: CQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAACwAAAAAACwAAAAAACwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAACwAAAAAGCwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAACwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAACwAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAACwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACHAAAAAAAHAAAAAABDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACHAAAAAABHAAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAACQAAAAABCQAAAAAAHAAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAADCQAAAAABCQAAAAABCQAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAADCQAAAAABLwAAAAABLwAAAAADLwAAAAAALwAAAAAALwAAAAAALwAAAAAALwAAAAAALwAAAAABLwAAAAABLwAAAAADLwAAAAABLwAAAAADLwAAAAACLwAAAAACLwAAAAADLwAAAAADAQAAAAAALwAAAAADLwAAAAABLwAAAAACAQAAAAABAQAAAAACAQAAAAAALwAAAAABLwAAAAABDgAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAAAAQAAAAACLwAAAAABLwAAAAADLwAAAAACAQAAAAABAQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAACLwAAAAABLwAAAAAALwAAAAAAAQAAAAACAQAAAAABDgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAAQAAAAACLwAAAAACLwAAAAAALwAAAAABAQAAAAACAQAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
-1,1:
ind: -1,1
- tiles: AQAAAAADLwAAAAADLwAAAAACLwAAAAAAAQAAAAACAQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABAQAAAAABLwAAAAADLwAAAAACLwAAAAAAAQAAAAADAQAAAAACDgAAAAAAHAAAAAAAHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAAADgAAAAAADgAAAAAALwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAADHAAAAAABHAAAAAACHAAAAAADCQAAAAAACQAAAAADDgAAAAAAMQAAAAABDgAAAAAAGwAAAAAADgAAAAAAMgAAAAAAMgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMgAAAAAAMgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAAMQAAAAADMQAAAAABMQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAADDgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACLgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: AQAAAAABLwAAAAADLwAAAAACLwAAAAAAAQAAAAABAQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABAQAAAAABLwAAAAADLwAAAAADLwAAAAACAQAAAAADAQAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAALwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACHAAAAAABHAAAAAACHAAAAAACCQAAAAADCQAAAAABDgAAAAAAMQAAAAADDgAAAAAAGwAAAAAADgAAAAAAMgAAAAAAMgAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMgAAAAAAMgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAAMQAAAAAAMQAAAAADMQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAABCQAAAAACDgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADLgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-2,-1:
ind: -2,-1
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAACQAAAAACCQAAAAADCQAAAAACCAAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABLAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAAHAAAAAABHAAAAAACHAAAAAACCQAAAAADCQAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAADCQAAAAADCQAAAAADDgAAAAAACQAAAAACCQAAAAADCQAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAACCQAAAAADCQAAAAAACQAAAAABCQAAAAABCQAAAAACDgAAAAAACQAAAAACCQAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDgAAAAAAHAAAAAADHAAAAAAAHAAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAADgAAAAAAHQAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAADDgAAAAAACQAAAAABCQAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAAHQAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAADCQAAAAADDgAAAAAACQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABDgAAAAAAHAAAAAACHAAAAAACHAAAAAACDgAAAAAACQAAAAABCQAAAAACCQAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAACHAAAAAABDgAAAAAACQAAAAAACQAAAAACHAAAAAAAHAAAAAACHAAAAAABHAAAAAACHAAAAAAACQAAAAABCQAAAAADCQAAAAACHAAAAAACHAAAAAACHAAAAAABHAAAAAAAHAAAAAADDgAAAAAACQAAAAACCQAAAAAAHAAAAAAAHAAAAAABHAAAAAAAHAAAAAADDgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAAHAAAAAADHAAAAAABHAAAAAACHAAAAAADDgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAACQAAAAADDgAAAAAAHAAAAAACHAAAAAAAHAAAAAADHAAAAAABHAAAAAACHAAAAAACHAAAAAADHAAAAAACHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAAACQAAAAADDgAAAAAAHAAAAAACHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAADHAAAAAACHAAAAAACHAAAAAAACQAAAAAD
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAACQAAAAABCQAAAAAACQAAAAABCAAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABLAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADDgAAAAAAHAAAAAAAHAAAAAABHAAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAADCQAAAAACDgAAAAAACQAAAAABCQAAAAACCQAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAACCQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAABDgAAAAAACQAAAAABCQAAAAABDgAAAAAACQAAAAAACQAAAAABCQAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACDgAAAAAAHQAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAACCQAAAAABCQAAAAACDgAAAAAACQAAAAADCQAAAAACDgAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAAHQAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAABDgAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAABDgAAAAAACQAAAAAACQAAAAACHAAAAAAAHAAAAAADHAAAAAACHAAAAAABHAAAAAABCQAAAAACCQAAAAAACQAAAAABHAAAAAADHAAAAAADHAAAAAACHAAAAAAAHAAAAAABDgAAAAAACQAAAAAACQAAAAAAHAAAAAABHAAAAAAAHAAAAAAAHAAAAAABDgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAAHAAAAAAAHAAAAAADHAAAAAABHAAAAAACDgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAADDgAAAAAADgAAAAAACQAAAAABDgAAAAAAHAAAAAABHAAAAAABHAAAAAADHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAAAHAAAAAABHAAAAAABHAAAAAADHAAAAAABHAAAAAABHAAAAAADCQAAAAABDgAAAAAAHAAAAAACHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAAAHAAAAAACHAAAAAAAHAAAAAADCQAAAAAC
version: 6
-2,-2:
ind: -2,-2
- tiles: MwAAAAADMwAAAAAAMwAAAAABMwAAAAACMwAAAAABMwAAAAAAMwAAAAABCQAAAAADCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABMwAAAAADMwAAAAAAMwAAAAAAMwAAAAABMwAAAAABMwAAAAACCQAAAAADCQAAAAACCQAAAAAADgAAAAAANwAAAAABNwAAAAAANwAAAAACNwAAAAAACQAAAAABMwAAAAAAMwAAAAACMwAAAAAAMwAAAAACMwAAAAACMwAAAAAAMwAAAAAACQAAAAADCQAAAAADCQAAAAACDgAAAAAANwAAAAACNwAAAAACNwAAAAABNwAAAAACDgAAAAAAMwAAAAAAMwAAAAACMwAAAAAAMwAAAAAAMwAAAAAAMwAAAAACMwAAAAAACQAAAAACCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAABMwAAAAABMwAAAAAAMwAAAAADMwAAAAAAMwAAAAADCQAAAAADCQAAAAACCQAAAAACCQAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACDgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAACHAAAAAAAHAAAAAABCQAAAAADCQAAAAADCQAAAAADDgAAAAAAOAAAAAACOAAAAAADOAAAAAABOAAAAAADOAAAAAADHAAAAAABHAAAAAACHAAAAAAAHAAAAAAAHAAAAAADHAAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADDgAAAAAAOAAAAAABOAAAAAADOAAAAAAAOAAAAAACOAAAAAABDgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAADOAAAAAADOAAAAAACOAAAAAACOAAAAAADOAAAAAACHAAAAAADHAAAAAABHAAAAAACHAAAAAABHAAAAAADHAAAAAADDgAAAAAACQAAAAABCQAAAAABCQAAAAACDgAAAAAAOAAAAAADOAAAAAABOAAAAAAAOAAAAAADOAAAAAABDgAAAAAAHAAAAAACHAAAAAACHAAAAAAAHAAAAAADHAAAAAACDgAAAAAACQAAAAACCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAADCQAAAAACCQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAADgAAAAAACQAAAAABCQAAAAABDgAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAAACAAAAAAACQAAAAADCQAAAAAC
+ tiles: MwAAAAADMwAAAAADMwAAAAADMwAAAAACMwAAAAACMwAAAAABMwAAAAADCQAAAAACCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAACMwAAAAACMwAAAAACMwAAAAADMwAAAAACMwAAAAADCQAAAAAACQAAAAABCQAAAAACDgAAAAAANwAAAAADNwAAAAABNwAAAAADNwAAAAAACQAAAAADMwAAAAACMwAAAAACMwAAAAAAMwAAAAADMwAAAAAAMwAAAAABMwAAAAABCQAAAAADCQAAAAACCQAAAAABDgAAAAAANwAAAAABNwAAAAADNwAAAAADNwAAAAADDgAAAAAAMwAAAAAAMwAAAAAAMwAAAAAAMwAAAAADMwAAAAADMwAAAAAAMwAAAAABCQAAAAABCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADMwAAAAAAMwAAAAABMwAAAAADMwAAAAACMwAAAAABMwAAAAACCQAAAAADCQAAAAAACQAAAAAACQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAABDgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAACHAAAAAACHAAAAAAAHAAAAAABHAAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAAOAAAAAADOAAAAAACOAAAAAACOAAAAAAAOAAAAAAAHAAAAAAAHAAAAAACHAAAAAAAHAAAAAADHAAAAAACHAAAAAACDgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAAOAAAAAAAOAAAAAACOAAAAAAAOAAAAAABOAAAAAADDgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAAOAAAAAABOAAAAAABOAAAAAADOAAAAAADOAAAAAADHAAAAAABHAAAAAABHAAAAAADHAAAAAADHAAAAAACHAAAAAADDgAAAAAACQAAAAAACQAAAAACCQAAAAABDgAAAAAAOAAAAAACOAAAAAAAOAAAAAADOAAAAAACOAAAAAACDgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAABHAAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAACCQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAADCAAAAAAACQAAAAACCQAAAAAB
version: 6
-2,-3:
ind: -2,-3
- tiles: DgAAAAAAHAAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAADHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAADHAAAAAABIwAAAAACIwAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAADHAAAAAABHAAAAAACDgAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAADHAAAAAABDgAAAAAAIwAAAAADIwAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAABHAAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAACHAAAAAABHAAAAAACDgAAAAAAHAAAAAABHAAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAADDgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAACDgAAAAAAHAAAAAAAHAAAAAADHAAAAAABHAAAAAAADgAAAAAAHAAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAACCQAAAAADCQAAAAACCQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAADHAAAAAACDgAAAAAAMwAAAAAAMwAAAAAAMwAAAAACMwAAAAABMwAAAAACDgAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAADCQAAAAACMwAAAAADMwAAAAAAMwAAAAADMwAAAAABMwAAAAABDgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAAAHAAAAAADHAAAAAABHAAAAAADMwAAAAACMwAAAAABMwAAAAABMwAAAAADMwAAAAABDgAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAABHAAAAAAAHAAAAAAAHAAAAAADMwAAAAABMwAAAAACMwAAAAAAMwAAAAABMwAAAAADDgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAACQAAAAADHAAAAAADHAAAAAACHAAAAAABMwAAAAABMwAAAAACMwAAAAADMwAAAAAAMwAAAAABMwAAAAACDgAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAAHAAAAAAACQAAAAABHAAAAAABHAAAAAABHAAAAAADDgAAAAAADgAAAAAAMwAAAAAAMwAAAAACMwAAAAABDgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADDgAAAAAAHAAAAAADCQAAAAADCQAAAAAACQAAAAACCQAAAAACMwAAAAAAMwAAAAACMwAAAAAAMwAAAAACMwAAAAACMwAAAAAAMwAAAAADCQAAAAAACQAAAAAACQAAAAACDgAAAAAAHAAAAAAAHAAAAAABHAAAAAABHAAAAAABHAAAAAAB
+ tiles: DgAAAAAAHAAAAAADHAAAAAAAHAAAAAABHAAAAAABHAAAAAACHAAAAAADHAAAAAACHAAAAAABHAAAAAABHAAAAAADHAAAAAADHAAAAAADHAAAAAABIwAAAAACIwAAAAACDgAAAAAAHAAAAAADHAAAAAADHAAAAAAAHAAAAAACHAAAAAABDgAAAAAAHAAAAAACHAAAAAADHAAAAAABHAAAAAABHAAAAAACHAAAAAAADgAAAAAAIwAAAAAAIwAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAACDgAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAADDgAAAAAAHAAAAAAAHAAAAAADDgAAAAAAHAAAAAACHAAAAAADHAAAAAAAHAAAAAACDgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABDgAAAAAAHAAAAAAAHAAAAAABHAAAAAABHAAAAAABDgAAAAAAHAAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAADCQAAAAADCQAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAAACQAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAABHAAAAAABDgAAAAAAMwAAAAAAMwAAAAABMwAAAAADMwAAAAABMwAAAAADDgAAAAAACQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAACCQAAAAACCQAAAAADCQAAAAACCQAAAAAAMwAAAAABMwAAAAAAMwAAAAAAMwAAAAABMwAAAAACDgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADCQAAAAADCQAAAAABCQAAAAABHAAAAAACHAAAAAABHAAAAAADMwAAAAABMwAAAAABMwAAAAABMwAAAAABMwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAADHAAAAAABHAAAAAAAHAAAAAACMwAAAAADMwAAAAADMwAAAAAAMwAAAAADMwAAAAABDgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAACQAAAAABHAAAAAACHAAAAAAAHAAAAAACMwAAAAAAMwAAAAACMwAAAAABMwAAAAABMwAAAAABMwAAAAABDgAAAAAACQAAAAACCQAAAAABCQAAAAAADgAAAAAAHAAAAAACCQAAAAAAHAAAAAABHAAAAAADHAAAAAADDgAAAAAADgAAAAAAMwAAAAADMwAAAAACMwAAAAADDgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAAHAAAAAABCQAAAAAACQAAAAAACQAAAAAACQAAAAABMwAAAAADMwAAAAABMwAAAAABMwAAAAADMwAAAAACMwAAAAACMwAAAAAACQAAAAABCQAAAAAACQAAAAABDgAAAAAAHAAAAAABHAAAAAACHAAAAAADHAAAAAABHAAAAAAA
version: 6
-2,-4:
ind: -2,-4
- tiles: DgAAAAAAHAAAAAADHAAAAAABOgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABOgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAHAAAAAACHAAAAAAAHAAAAAADOgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAACOgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAABOgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAACHAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAAACQAAAAABCQAAAAACCQAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAAAIwAAAAACDgAAAAAAOQAAAAABDgAAAAAAHAAAAAADHAAAAAABHAAAAAAAHAAAAAAAHAAAAAACCQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAAIwAAAAACIwAAAAACIwAAAAADDgAAAAAAOQAAAAACDgAAAAAAHAAAAAAAHAAAAAACHAAAAAAAHAAAAAAAHAAAAAADCQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAAADgAAAAAADgAAAAAAIwAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAABHAAAAAAAHAAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAIwAAAAACDgAAAAAAIwAAAAAAIwAAAAABDgAAAAAAHAAAAAABHAAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAAIwAAAAADIwAAAAABIwAAAAACIwAAAAABIwAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAABDgAAAAAADgAAAAAAIwAAAAACIwAAAAACIwAAAAACIwAAAAACIwAAAAACDgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAAAHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAACIwAAAAACIwAAAAABDgAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAAACQAAAAACDgAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAACHAAAAAACHAAAAAABDgAAAAAAHAAAAAABHAAAAAABHAAAAAABHAAAAAABHAAAAAACHAAAAAACDgAAAAAAIwAAAAAAIwAAAAAC
+ tiles: DgAAAAAAHAAAAAACHAAAAAADOgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABOgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAHAAAAAACHAAAAAABHAAAAAADOgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABOgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAOgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAADCQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAAIwAAAAAAIwAAAAADIwAAAAAADgAAAAAAOQAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAABHAAAAAACHAAAAAABCQAAAAACCQAAAAADCQAAAAADDgAAAAAADgAAAAAAIwAAAAADIwAAAAADIwAAAAADDgAAAAAAOQAAAAABDgAAAAAAHAAAAAADHAAAAAAAHAAAAAABHAAAAAACHAAAAAADCQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAAIwAAAAACIwAAAAACDgAAAAAADgAAAAAAIwAAAAABDgAAAAAAHAAAAAABHAAAAAACHAAAAAAAHAAAAAACHAAAAAADCQAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAAIwAAAAAADgAAAAAAIwAAAAAAIwAAAAADDgAAAAAAHAAAAAADHAAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAAIwAAAAAAIwAAAAADIwAAAAACIwAAAAADIwAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAAAIwAAAAABIwAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAACCQAAAAABHAAAAAACHAAAAAABHAAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAADIwAAAAABIwAAAAABDgAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAAACQAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAACHAAAAAACHAAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAADHAAAAAAAHAAAAAABHAAAAAABDgAAAAAAIwAAAAACIwAAAAAC
version: 6
-2,-5:
ind: -2,-5
- tiles: CQAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: CQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-2,0:
ind: -2,0
- tiles: DgAAAAAAHAAAAAABHAAAAAAAHAAAAAAAHAAAAAADHAAAAAADHAAAAAABHAAAAAADHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAACQAAAAABDgAAAAAAHAAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAADHAAAAAABHAAAAAACDgAAAAAAHAAAAAABHAAAAAABHAAAAAAADgAAAAAAHAAAAAABDgAAAAAACQAAAAAADgAAAAAAHAAAAAAAHAAAAAABDgAAAAAAHAAAAAACHAAAAAACHAAAAAAAHAAAAAAAHAAAAAABHAAAAAACHAAAAAABHAAAAAADDgAAAAAAHAAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAABCQAAAAACDgAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAABDgAAAAAAHAAAAAABHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAACHAAAAAAAHAAAAAACHAAAAAAAHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACHAAAAAADLgAAAAAALAAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAACHAAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAMwAAAAABHAAAAAABHAAAAAACHAAAAAACHAAAAAADDgAAAAAAIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAAMwAAAAABMwAAAAAAMwAAAAACHAAAAAAAHAAAAAACHAAAAAABHAAAAAAAHAAAAAADIwAAAAACIwAAAAACIwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAAMwAAAAADMwAAAAACMwAAAAAAHAAAAAABHAAAAAADHAAAAAACHAAAAAACDgAAAAAAIwAAAAAAIwAAAAAAIwAAAAAADgAAAAAADgAAAAAADgAAAAAALwAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAAAHAAAAAADHAAAAAABHAAAAAADHAAAAAAADgAAAAAAIwAAAAAAIwAAAAADIwAAAAACDgAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAAC
+ tiles: DgAAAAAAHAAAAAABHAAAAAAAHAAAAAACHAAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAACQAAAAABDgAAAAAAHAAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAABHAAAAAADHAAAAAACDgAAAAAAHAAAAAABHAAAAAAAHAAAAAABDgAAAAAAHAAAAAABDgAAAAAACQAAAAADDgAAAAAAHAAAAAAAHAAAAAADDgAAAAAAHAAAAAADHAAAAAABHAAAAAACHAAAAAABHAAAAAAAHAAAAAABHAAAAAACHAAAAAABDgAAAAAAHAAAAAACDgAAAAAACQAAAAABDgAAAAAACQAAAAAACQAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAABHAAAAAADDgAAAAAAHAAAAAADHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAADHAAAAAAAHAAAAAADHAAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAAAHAAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAADHAAAAAADDgAAAAAAHAAAAAACHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAAMwAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAAIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAAMwAAAAADMwAAAAABMwAAAAABHAAAAAAAHAAAAAADHAAAAAABHAAAAAACHAAAAAABIwAAAAABIwAAAAABIwAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAAMwAAAAADMwAAAAAAMwAAAAACHAAAAAABHAAAAAACHAAAAAAAHAAAAAABDgAAAAAAIwAAAAADIwAAAAACIwAAAAABDgAAAAAADgAAAAAADgAAAAAALwAAAAACDgAAAAAADgAAAAAAMwAAAAACMwAAAAACHAAAAAADHAAAAAADHAAAAAADHAAAAAABDgAAAAAAIwAAAAADIwAAAAACIwAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAAQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAAA
version: 6
-2,1:
ind: -2,1
- tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAADCQAAAAAACQAAAAACCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAAQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAMQAAAAACMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAAQAAAAAAAQAAAAADAQAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAAQAAAAACAQAAAAABAQAAAAAAAQAAAAAAAQAAAAACDgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAAQAAAAADAQAAAAACAQAAAAADDgAAAAAADgAAAAAA
+ tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAABCQAAAAABCQAAAAACCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAAQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAMQAAAAABMQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAABDgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAAQAAAAACAQAAAAACAQAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAAQAAAAABAQAAAAAAAQAAAAADAQAAAAABAQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAAQAAAAABAQAAAAADAQAAAAADDgAAAAAADgAAAAAA
version: 6
-2,2:
ind: -2,2
- tiles: LAAAAAAALAAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LAAAAAAALAAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-3,-1:
ind: -3,-1
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAABHAAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAABHAAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAHAAAAAACHAAAAAACCQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADDgAAAAAAHAAAAAABHAAAAAADLgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAADCQAAAAACCQAAAAABHAAAAAAAHAAAAAABLgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHQAAAAAAHQAAAAAACQAAAAABCQAAAAAACQAAAAAAAgAAAAAAAgAAAAAAAgAAAAAADgAAAAAAHAAAAAABHAAAAAADLgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADAgAAAAAAAgAAAAAAAgAAAAAADgAAAAAAHAAAAAADHAAAAAADLgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAABDgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAABHAAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAABHAAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAADDgAAAAAAHAAAAAABHAAAAAACLgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAAAHAAAAAADHAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHQAAAAAAHQAAAAAACQAAAAABCQAAAAAACQAAAAADAgAAAAAAAgAAAAAAAgAAAAAADgAAAAAAHAAAAAABHAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACAgAAAAAAAgAAAAAAAgAAAAAADgAAAAAAHAAAAAADHAAAAAADLgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAA
version: 6
-3,-2:
ind: -3,-2
- tiles: CQAAAAAAMwAAAAABMwAAAAAAMwAAAAADMwAAAAABMwAAAAABMwAAAAADMwAAAAABMwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADMwAAAAADMwAAAAAAMwAAAAAACQAAAAACDgAAAAAAMwAAAAACMwAAAAABMwAAAAABMwAAAAABMwAAAAACMwAAAAAAMwAAAAABCAAAAAAACAAAAAAACAAAAAAACQAAAAABMwAAAAABMwAAAAADDgAAAAAACQAAAAADDgAAAAAAMwAAAAABMwAAAAADMwAAAAADMwAAAAAAMwAAAAADMwAAAAACMwAAAAABCAAAAAAACAAAAAAACAAAAAAACQAAAAACMwAAAAADMwAAAAADDgAAAAAACQAAAAADMwAAAAAAMwAAAAABMwAAAAABMwAAAAAAMwAAAAABMwAAAAAAMwAAAAABMwAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAADMwAAAAACMwAAAAAAMwAAAAACCQAAAAADDgAAAAAAMwAAAAABMwAAAAACMwAAAAAAMwAAAAAAMwAAAAADMwAAAAACMwAAAAADMwAAAAABMwAAAAADMwAAAAABMwAAAAAAMwAAAAAAMwAAAAABMwAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAAMwAAAAAAMwAAAAACMwAAAAAAMwAAAAABMwAAAAACMwAAAAABMwAAAAADMwAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAHAAAAAABDgAAAAAAMwAAAAACMwAAAAAAMwAAAAABMwAAAAADDgAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAABHAAAAAACHAAAAAADHAAAAAABHAAAAAADHAAAAAADDgAAAAAAMwAAAAAAMwAAAAAAMwAAAAADMwAAAAAACQAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAAACQAAAAACHAAAAAACHAAAAAACHAAAAAAADgAAAAAAHAAAAAACDgAAAAAAMwAAAAAAMwAAAAABMwAAAAACMwAAAAADDgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAACCQAAAAAAHAAAAAABHAAAAAAAHAAAAAADDgAAAAAAHAAAAAABDgAAAAAAHAAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAAAHAAAAAABHAAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAA
+ tiles: CQAAAAABMwAAAAADMwAAAAABMwAAAAAAMwAAAAAAMwAAAAABMwAAAAAAMwAAAAACMwAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACMwAAAAAAMwAAAAABMwAAAAADCQAAAAADDgAAAAAAMwAAAAACMwAAAAABMwAAAAABMwAAAAACMwAAAAAAMwAAAAACMwAAAAACCAAAAAAACAAAAAAACAAAAAAACQAAAAACMwAAAAADMwAAAAABDgAAAAAACQAAAAABDgAAAAAAMwAAAAAAMwAAAAAAMwAAAAABMwAAAAABMwAAAAACMwAAAAACMwAAAAABCAAAAAAACAAAAAAACAAAAAAACQAAAAABMwAAAAACMwAAAAACDgAAAAAACQAAAAADMwAAAAADMwAAAAAAMwAAAAADMwAAAAACMwAAAAABMwAAAAACMwAAAAABMwAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACMwAAAAADMwAAAAABMwAAAAACCQAAAAABDgAAAAAAMwAAAAABMwAAAAAAMwAAAAAAMwAAAAADMwAAAAACMwAAAAADMwAAAAABMwAAAAACMwAAAAAAMwAAAAAAMwAAAAADMwAAAAABMwAAAAABMwAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAMwAAAAACMwAAAAACMwAAAAAAMwAAAAACMwAAAAABMwAAAAACMwAAAAABMwAAAAADDgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAAHAAAAAACDgAAAAAAMwAAAAABMwAAAAADMwAAAAABMwAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAADHAAAAAACHAAAAAADHAAAAAADHAAAAAABHAAAAAADDgAAAAAAMwAAAAAAMwAAAAABMwAAAAAAMwAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAADHAAAAAADHAAAAAABHAAAAAABDgAAAAAAHAAAAAACDgAAAAAAMwAAAAACMwAAAAAAMwAAAAACMwAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAABHAAAAAABHAAAAAABHAAAAAABDgAAAAAAHAAAAAACDgAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAAAHAAAAAAAHAAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAA
version: 6
-3,-3:
ind: -3,-3
- tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAADDgAAAAAAMwAAAAADMwAAAAADMwAAAAACDgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACHAAAAAACHAAAAAAAHAAAAAAAHAAAAAACDgAAAAAAMwAAAAADMwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABHAAAAAAAHAAAAAACHAAAAAAAHAAAAAADDgAAAAAAMwAAAAABMwAAAAABDgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAACHAAAAAAAHAAAAAABHAAAAAADHAAAAAAADgAAAAAAMwAAAAAAMwAAAAABDgAAAAAADgAAAAAADgAAAAAAMQAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACQAAAAACDgAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAADDgAAAAAACQAAAAADCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAADDgAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAACDgAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAADDgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAAMwAAAAACMwAAAAADMwAAAAAAMwAAAAADMwAAAAAAMwAAAAABMwAAAAABMwAAAAADDgAAAAAACQAAAAAADgAAAAAAMwAAAAABMwAAAAADMwAAAAACMwAAAAAAMwAAAAAAMwAAAAAAMwAAAAACMwAAAAACMwAAAAAAMwAAAAAAMwAAAAABMwAAAAAAMwAAAAAAMwAAAAAA
+ tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAACDgAAAAAAMwAAAAAAMwAAAAADMwAAAAADDgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACHAAAAAAAHAAAAAACHAAAAAABHAAAAAACDgAAAAAAMwAAAAAAMwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADHAAAAAAAHAAAAAACHAAAAAADHAAAAAADDgAAAAAAMwAAAAAAMwAAAAACDgAAAAAADgAAAAAADgAAAAAAMQAAAAADDgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABHAAAAAAAHAAAAAAAHAAAAAABHAAAAAACDgAAAAAAMwAAAAAAMwAAAAADDgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAACQAAAAACCQAAAAACCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAABCQAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAACDgAAAAAACQAAAAACCQAAAAACCQAAAAABDgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAABDgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAAMwAAAAABMwAAAAACMwAAAAABMwAAAAADMwAAAAABMwAAAAADMwAAAAACMwAAAAADDgAAAAAACQAAAAADDgAAAAAAMwAAAAADMwAAAAAAMwAAAAACMwAAAAABMwAAAAACMwAAAAABMwAAAAACMwAAAAADMwAAAAAAMwAAAAACMwAAAAABMwAAAAACMwAAAAAAMwAAAAAC
version: 6
-3,-4:
ind: -3,-4
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAACCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAACQAAAAACCQAAAAAACQAAAAADHAAAAAABHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAAHAAAAAAAHAAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAJAAAAAAAJAAAAAAADgAAAAAAIwAAAAAAIwAAAAABIwAAAAADDgAAAAAACQAAAAACCQAAAAAACQAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAAAIwAAAAADIwAAAAADDgAAAAAACQAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAIwAAAAABIwAAAAABIwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHAAAAAACIwAAAAACIwAAAAACCQAAAAADCQAAAAAACQAAAAACCQAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAADDgAAAAAACQAAAAACCQAAAAAACQAAAAADDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAMQAAAAACMQAAAAABMQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAACCQAAAAAC
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAABCQAAAAABHAAAAAADHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAAHAAAAAACHAAAAAABHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAJAAAAAAAJAAAAAAADgAAAAAAIwAAAAADIwAAAAACIwAAAAACDgAAAAAACQAAAAADCQAAAAAACQAAAAABGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAACIwAAAAABIwAAAAACDgAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAIwAAAAADIwAAAAADIwAAAAABDgAAAAAACQAAAAABCQAAAAABCQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHAAAAAABIwAAAAACIwAAAAADCQAAAAACCQAAAAADCQAAAAAACQAAAAACDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAACDgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAMQAAAAACMQAAAAABMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAACCQAAAAAA
version: 6
-3,-5:
ind: -3,-5
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAABCQAAAAABCQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAABCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAACCQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAACCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAAC
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAACCQAAAAABCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAACCQAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAAD
version: 6
-3,0:
ind: -3,0
- tiles: LgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAABHAAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAADHAAAAAADDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAABHAAAAAABDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAACDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAABDgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAACHAAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAACHAAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAAAHAAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAACDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAACDgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
-3,1:
ind: -3,1
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAMwAAAAADDgAAAAAACQAAAAACDgAAAAAACQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAMwAAAAACDgAAAAAAMwAAAAADDgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAMwAAAAABDgAAAAAACQAAAAAADgAAAAAACQAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAMwAAAAACDgAAAAAAMwAAAAADDgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAADDgAAAAAACQAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAA
version: 6
-3,2:
ind: -3,2
@@ -185,23 +185,23 @@ entities:
version: 6
-4,-1:
ind: -4,-1
- tiles: HAAAAAADDgAAAAAAHAAAAAAAHAAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAACHAAAAAACHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAAHAAAAAACHAAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: HAAAAAADDgAAAAAAHAAAAAADHAAAAAABDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAAAHAAAAAABHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-4,-2:
ind: -4,-2
- tiles: LgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAADDgAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAACQAAAAAADgAAAAAACQAAAAACCQAAAAADLAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABDgAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAADLAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAADCQAAAAADDgAAAAAACQAAAAABDgAAAAAACQAAAAAACQAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADDgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACLAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAABLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAABLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAABHAAAAAADDgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADLAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAABHAAAAAABHAAAAAAAHAAAAAADHAAAAAACHAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAAAHAAAAAACDgAAAAAAHAAAAAADHAAAAAACHAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAADHAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAACQAAAAAADgAAAAAACQAAAAABCQAAAAACLAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAACLAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAADCQAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAACDgAAAAAACQAAAAADCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACLAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAACDgAAAAAAHAAAAAADHAAAAAABHAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAABHAAAAAADHAAAAAAAHAAAAAACHAAAAAADLAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAAHAAAAAACHAAAAAADHAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAACHAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
-4,-3:
ind: -4,-3
- tiles: LAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAMQAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABLAAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACLgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAACQAAAAADLAAAAAAADgAAAAAACQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAC
+ tiles: LAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAMQAAAAABDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAADLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAADLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACLAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAALAAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAABLgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAACQAAAAADLAAAAAAADgAAAAAACQAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACLgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAADLAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAD
version: 6
-4,-4:
ind: -4,-4
- tiles: LAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAALAAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAACLAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAMQAAAAADDgAAAAAADgAAAAAA
+ tiles: LAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAALAAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAADLAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAMQAAAAACDgAAAAAADgAAAAAA
version: 6
-5,-1:
ind: -5,-1
- tiles: LgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACOgAAAAAAOwAAAAAAOgAAAAAAMwAAAAABDgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAACOwAAAAAADgAAAAAADgAAAAAAOwAAAAAAOwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADOgAAAAAAOwAAAAAAOgAAAAAAMwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABOgAAAAAAOwAAAAAAOgAAAAAAMwAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAABOwAAAAAADgAAAAAADgAAAAAAOwAAAAAAOwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAADgAAAAAADgAAAAAAOgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADOgAAAAAAOwAAAAAAOgAAAAAAMwAAAAADDgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-5,-2:
ind: -5,-2
@@ -217,31 +217,31 @@ entities:
version: 6
0,-1:
ind: 0,-1
- tiles: GwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAABAQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAAQAAAAAAAQAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAAQAAAAACAQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAABDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: GwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAAQAAAAABAQAAAAABDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAAQAAAAADAQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAAQAAAAAAAQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAAQAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
0,-2:
ind: 0,-2
- tiles: IQAAAAAAIQAAAAAADgAAAAAADgAAAAAADgAAAAAAPgAAAAAAPgAAAAAAPgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDwAAAAADDwAAAAACDwAAAAACCQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAPgAAAAAAPgAAAAAAPgAAAAAAPgAAAAAACQAAAAABCQAAAAABCQAAAAAADwAAAAABMgAAAAAADwAAAAADCQAAAAADHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABDwAAAAAADwAAAAAADwAAAAADCQAAAAABHgAAAAAAHgAAAAAADgAAAAAADgAAAAAAGwAAAAAAMgAAAAAAMgAAAAAAMgAAAAAACQAAAAABCQAAAAACCQAAAAACCQAAAAABCQAAAAACCQAAAAABCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMgAAAAAAMgAAAAAAMgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAAHAAAAAABHAAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAABCQAAAAACDgAAAAAAHAAAAAABHAAAAAACHAAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAAACQAAAAABDgAAAAAAHAAAAAAAHAAAAAADHAAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAADDgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAADDgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAABCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAA
+ tiles: IQAAAAABIQAAAAADDgAAAAAADgAAAAAADgAAAAAAPgAAAAAAPgAAAAAAPgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAAADwAAAAACDwAAAAADDwAAAAADCQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAPgAAAAAAPgAAAAAAPgAAAAAAPgAAAAAACQAAAAAACQAAAAABCQAAAAABDwAAAAACMgAAAAAADwAAAAAACQAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADDwAAAAADDwAAAAAADwAAAAACCQAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAAGwAAAAAAMgAAAAAAMgAAAAAAMgAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMgAAAAAAMgAAAAAAMgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAAHAAAAAADHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAAHAAAAAAAHAAAAAADHAAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAAHAAAAAADHAAAAAADHAAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAABDgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAADDgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAA
version: 6
0,-3:
ind: 0,-3
- tiles: CQAAAAADCQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAABDgAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAADDgAAAAAADgAAAAAADgAAAAAAAQAAAAABAQAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAAIwAAAAADIwAAAAACIwAAAAABDgAAAAAAIwAAAAACIwAAAAAAGwAAAAAADgAAAAAAGwAAAAAAAQAAAAABAQAAAAADCQAAAAACCQAAAAADCQAAAAAACQAAAAAADgAAAAAAIwAAAAACIwAAAAADIwAAAAACDgAAAAAAIwAAAAABIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADDgAAAAAADgAAAAAAIwAAAAADIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACgAAAAAACgAAAAAACgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAADDgAAAAAAIwAAAAADIwAAAAACGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACgAAAAAACgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAACCQAAAAABIwAAAAAAIwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAAAIwAAAAABIwAAAAABGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAPwAAAAAAPwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAACCQAAAAACCQAAAAACIwAAAAACIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAPwAAAAAAPwAAAAAAPwAAAAAACQAAAAADCQAAAAABCQAAAAABCAAAAAAADgAAAAAAIwAAAAADIwAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAADDgAAAAAAIwAAAAAAIwAAAAACIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAAIwAAAAACIwAAAAABIwAAAAABIQAAAAAAIQAAAAAADgAAAAAADgAAAAAAGwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAADIQAAAAADDgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAAAIQAAAAADIQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAAC
+ tiles: CQAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAAACQAAAAAACQAAAAACCQAAAAABDgAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAADDgAAAAAADgAAAAAADgAAAAAAAQAAAAAAAQAAAAACDgAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAAIwAAAAADIwAAAAABIwAAAAADDgAAAAAAIwAAAAADIwAAAAADGwAAAAAADgAAAAAAGwAAAAAAAQAAAAAAAQAAAAACCQAAAAABCQAAAAAACQAAAAABCQAAAAADDgAAAAAAIwAAAAABIwAAAAACIwAAAAACDgAAAAAAIwAAAAACIwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAAIwAAAAAAIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACgAAAAAACgAAAAAACgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACDgAAAAAAIwAAAAADIwAAAAADGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACgAAAAAACgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAABIwAAAAABIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAACIwAAAAACIwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAPwAAAAAAPwAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAACCQAAAAAAIwAAAAAAIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAPwAAAAAAPwAAAAAAPwAAAAAACQAAAAABCQAAAAACCQAAAAABCAAAAAAADgAAAAAAIwAAAAADIwAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAAIwAAAAACIwAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAAADgAAAAAAIwAAAAADIwAAAAAAIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAAIwAAAAACIwAAAAADIwAAAAABIQAAAAAAIQAAAAADDgAAAAAADgAAAAAAGwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAABIQAAAAABDgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAADCQAAAAABIQAAAAACIQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAAD
version: 6
0,-4:
ind: 0,-4
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAACDgAAAAAACQAAAAAACQAAAAABCQAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAACHAAAAAACHAAAAAACDgAAAAAAHAAAAAACHAAAAAADHAAAAAACDgAAAAAACQAAAAADCQAAAAACCQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAACHAAAAAACHAAAAAAAHAAAAAADHAAAAAAAHAAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAMQAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAAAHAAAAAACDgAAAAAAHAAAAAABHAAAAAAAHAAAAAACDgAAAAAACQAAAAACCQAAAAACCQAAAAABDgAAAAAAMQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAADIwAAAAACIwAAAAACIwAAAAACAQAAAAACAQAAAAADAQAAAAACAQAAAAABAQAAAAACCQAAAAACCQAAAAAACQAAAAABDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAAAIwAAAAADIwAAAAAAIwAAAAABAQAAAAADAQAAAAAAAQAAAAABAQAAAAAAAQAAAAAACQAAAAACCQAAAAACCQAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAAAIwAAAAACIwAAAAABIwAAAAADAQAAAAACAQAAAAAAAQAAAAACAQAAAAAAAQAAAAACCQAAAAACCQAAAAABCQAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAACIwAAAAABIwAAAAAAIwAAAAACDgAAAAAAAQAAAAAAAQAAAAADAQAAAAACDgAAAAAACQAAAAABCQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAADCQAAAAACDgAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAADCQAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAAB
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAABHAAAAAABDgAAAAAAHAAAAAACHAAAAAACHAAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADCQAAAAAAHAAAAAACHAAAAAABHAAAAAADHAAAAAACHAAAAAAACQAAAAAACQAAAAACCQAAAAADDgAAAAAAMQAAAAABDgAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAABHAAAAAABDgAAAAAAHAAAAAADHAAAAAABHAAAAAABDgAAAAAACQAAAAADCQAAAAAACQAAAAABDgAAAAAAMQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAABIwAAAAAAIwAAAAAAAQAAAAADAQAAAAAAAQAAAAADAQAAAAADAQAAAAABCQAAAAABCQAAAAABCQAAAAACDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAACIwAAAAACIwAAAAABIwAAAAAAAQAAAAABAQAAAAACAQAAAAACAQAAAAACAQAAAAADCQAAAAABCQAAAAACCQAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAAAIwAAAAACIwAAAAAAIwAAAAAAAQAAAAAAAQAAAAACAQAAAAACAQAAAAADAQAAAAADCQAAAAADCQAAAAACCQAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAIwAAAAADIwAAAAADIwAAAAAAIwAAAAACDgAAAAAAAQAAAAABAQAAAAADAQAAAAACDgAAAAAACQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAABDgAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAADCQAAAAABCQAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAAD
version: 6
0,-5:
ind: 0,-5
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAADDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAABDgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAACDgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABDgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAA
version: 6
0,0:
ind: 0,0
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAALAAAAAAACwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABLgAAAAAALAAAAAAALAAAAAAACwAAAAAACwAAAAAACwAAAAAACwAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAADCQAAAAADCQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAACCQAAAAAALwAAAAADLwAAAAACLwAAAAABLwAAAAADLwAAAAABLwAAAAABLwAAAAADLwAAAAAALwAAAAACLwAAAAADLwAAAAABLwAAAAADLwAAAAABLwAAAAACDgAAAAAALwAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAAACQAAAAACDgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAADGwAAAAAADgAAAAAADgAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAALAAAAAAACwAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABLgAAAAAALAAAAAAALAAAAAAACwAAAAAADgAAAAAADgAAAAAACwAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAADCQAAAAADLwAAAAADLwAAAAAALwAAAAAALwAAAAACLwAAAAABLwAAAAAALwAAAAABLwAAAAABLwAAAAADLwAAAAAALwAAAAABLwAAAAABLwAAAAAALwAAAAADLwAAAAADLwAAAAADCQAAAAADCQAAAAACCQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAADCQAAAAADCQAAAAAACQAAAAACCQAAAAACCQAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAACDgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADCQAAAAADCQAAAAABDgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAAHAAAAAACHAAAAAAD
version: 6
0,1:
ind: 0,1
- tiles: CQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAADCQAAAAADCQAAAAABCQAAAAADCQAAAAADDgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAAACQAAAAACCQAAAAABCQAAAAABDgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAACCQAAAAADDgAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACHAAAAAACDgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAACHAAAAAAAHAAAAAACDgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAA
+ tiles: CQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAABHAAAAAAAHAAAAAABHAAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADDgAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAADCQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAADCQAAAAADCQAAAAACCQAAAAACCQAAAAADDgAAAAAAHAAAAAAAHAAAAAACHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAACDgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAADHAAAAAADDgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAA
version: 6
0,2:
ind: 0,2
@@ -249,19 +249,19 @@ entities:
version: 6
1,-1:
ind: 1,-1
- tiles: HgAAAAAADgAAAAAASgAAAAABHAAAAAACHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAASgAAAAAASgAAAAABSgAAAAAASgAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAAHAAAAAAAHAAAAAADCQAAAAACCQAAAAADDgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAAHAAAAAADHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAAGwAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAAwAAAAADAwAAAAABGwAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAAGwAAAAAADgAAAAAADgAAAAAAAwAAAAADHAAAAAAAHAAAAAABHAAAAAABDgAAAAAAHAAAAAABHAAAAAADHAAAAAADHAAAAAABHAAAAAADDgAAAAAACQAAAAAACQAAAAAD
+ tiles: HgAAAAAADgAAAAAASgAAAAACHAAAAAAAHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAASgAAAAAASgAAAAABSgAAAAADSgAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAADCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAAHAAAAAACHAAAAAABCQAAAAABCQAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAACDgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAGwAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAAwAAAAAAAwAAAAABGwAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAAGwAAAAAADgAAAAAADgAAAAAAAwAAAAADHAAAAAABHAAAAAAAHAAAAAADDgAAAAAAHAAAAAABHAAAAAAAHAAAAAACHAAAAAADHAAAAAABDgAAAAAACQAAAAACCQAAAAAC
version: 6
1,-2:
ind: 1,-2
- tiles: CQAAAAADCQAAAAABDgAAAAAAHAAAAAABHAAAAAABHAAAAAAACQAAAAAACQAAAAADCQAAAAAACQAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAACDgAAAAAACQAAAAABCQAAAAADDgAAAAAAHAAAAAABHAAAAAADHAAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAABDgAAAAAACQAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAACCQAAAAADDgAAAAAACQAAAAABCQAAAAACDgAAAAAAHAAAAAAAHAAAAAABHAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAADCQAAAAAADwAAAAADCQAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAACDgAAAAAAHAAAAAABDgAAAAAAHAAAAAABCQAAAAADDwAAAAADCQAAAAACCQAAAAADHAAAAAACHAAAAAAAHAAAAAACHAAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAACCQAAAAADHAAAAAADDgAAAAAAHAAAAAABCQAAAAAACQAAAAADCQAAAAADHAAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAACCQAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAAB
+ tiles: CQAAAAACCQAAAAACDgAAAAAAHAAAAAACHAAAAAAAHAAAAAADCQAAAAADCQAAAAADCQAAAAAACQAAAAADDgAAAAAACQAAAAACCQAAAAABCQAAAAABCQAAAAADDgAAAAAACQAAAAAACQAAAAACDgAAAAAAHAAAAAACHAAAAAACHAAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAADCQAAAAACDgAAAAAACQAAAAABDgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAAACQAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAADDgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAACDgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAACDgAAAAAAHAAAAAAADgAAAAAAHAAAAAADCQAAAAACDwAAAAAACQAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAAADgAAAAAAHAAAAAADDgAAAAAAHAAAAAABCQAAAAADDwAAAAAACQAAAAADCQAAAAADHAAAAAABHAAAAAAAHAAAAAADHAAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAACHAAAAAAADgAAAAAAHAAAAAADCQAAAAADCQAAAAACCQAAAAADHAAAAAABDgAAAAAAHAAAAAAAHAAAAAACHAAAAAACCQAAAAADCQAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAADCQAAAAACCQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAABCQAAAAACCQAAAAABCQAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAABCQAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAACCQAAAAACCQAAAAACCQAAAAABCQAAAAACCQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAACQAAAAAACQAAAAAC
version: 6
1,-3:
ind: 1,-3
- tiles: DgAAAAAAIwAAAAAAIwAAAAACIwAAAAABIwAAAAACIwAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAABIwAAAAABIwAAAAABIwAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAAIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADIwAAAAACIwAAAAACIwAAAAAAIwAAAAABDgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAABIwAAAAADIwAAAAABIwAAAAACJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAABIwAAAAAAIwAAAAABIwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABIwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAIwAAAAADJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAAIwAAAAADIwAAAAACIwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAABAAAAAADCQAAAAAACQAAAAAACQAAAAAADgAAAAAAIwAAAAACIwAAAAADIwAAAAADDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAAACQAAAAADDgAAAAAAIwAAAAAAIwAAAAAAIwAAAAABIwAAAAACJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAABIwAAAAADDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAAAHAAAAAAAHAAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAABHAAAAAADHAAAAAACHAAAAAABCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAABHAAAAAACHAAAAAACHAAAAAADHAAAAAACCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAA
+ tiles: DgAAAAAAIwAAAAABIwAAAAACIwAAAAABIwAAAAABIwAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAAAIwAAAAABIwAAAAABIwAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAIwAAAAACIwAAAAABIwAAAAAAIwAAAAABDgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAABIwAAAAAAIwAAAAADJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAADIwAAAAAAIwAAAAACIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAADJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAAIwAAAAACJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACIwAAAAADJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAACDgAAAAAADgAAAAAAIwAAAAAAIwAAAAABIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAABAAAAAACCQAAAAACCQAAAAAACQAAAAADDgAAAAAAIwAAAAABIwAAAAABIwAAAAADDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAAIwAAAAACIwAAAAAAIwAAAAACIwAAAAADJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAIwAAAAACIwAAAAAAIwAAAAACDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAADHAAAAAAAHAAAAAABHAAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAACHAAAAAACHAAAAAADCQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAABCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAA
version: 6
1,-4:
ind: 1,-4
- tiles: DgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMQAAAAAADgAAAAAAIwAAAAACIwAAAAADDgAAAAAAMwAAAAABMwAAAAABDgAAAAAAQQAAAAAAQQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAACDgAAAAAAIwAAAAABIwAAAAAADgAAAAAAMwAAAAACMwAAAAAADgAAAAAAQQAAAAABQQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAMQAAAAACMQAAAAADMQAAAAADDgAAAAAAMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAADMQAAAAABMQAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAIwAAAAACIwAAAAADIwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAIwAAAAACIwAAAAAAIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAMwAAAAACMwAAAAAADgAAAAAAGwAAAAAADgAAAAAAIwAAAAAAIwAAAAAAIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAABIwAAAAAAIwAAAAADDgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAACIwAAAAADIwAAAAAAIwAAAAACIwAAAAABDgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAIwAAAAACIwAAAAAAIwAAAAADIwAAAAABIwAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAACDgAAAAAALAAAAAAALAAAAAAA
+ tiles: DgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAAIwAAAAACIwAAAAAADgAAAAAAMwAAAAAAMwAAAAADDgAAAAAAQQAAAAAAQQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAADDgAAAAAAIwAAAAAAIwAAAAACDgAAAAAAMwAAAAACMwAAAAAADgAAAAAAQQAAAAAAQQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAMQAAAAADMQAAAAABMQAAAAABDgAAAAAAMQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAADMQAAAAACMQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAIwAAAAADIwAAAAACIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAIwAAAAADIwAAAAADIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAMwAAAAABMwAAAAABDgAAAAAAGwAAAAAADgAAAAAAIwAAAAACIwAAAAAAIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAABIwAAAAADIwAAAAACIwAAAAADDgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAABIwAAAAABIwAAAAADIwAAAAAAIwAAAAACDgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAIwAAAAAAIwAAAAAAIwAAAAACIwAAAAABIwAAAAABDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAADDgAAAAAALAAAAAAALAAAAAAA
version: 6
1,-5:
ind: 1,-5
@@ -269,11 +269,11 @@ entities:
version: 6
1,0:
ind: 1,0
- tiles: DgAAAAAADgAAAAAAAwAAAAABAwAAAAAAHAAAAAABHAAAAAABHAAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAADHAAAAAADHAAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAAAwAAAAABAwAAAAACHAAAAAAAHAAAAAABHAAAAAADDgAAAAAAHAAAAAACHAAAAAABHAAAAAAAHAAAAAADCQAAAAABCQAAAAADCQAAAAAACQAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAADHAAAAAAAHAAAAAABDgAAAAAAHAAAAAABHAAAAAAAHAAAAAACHAAAAAACCQAAAAADCQAAAAABCQAAAAAACQAAAAACDgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAADHAAAAAAAHAAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAAAHAAAAAABHAAAAAADDgAAAAAACQAAAAACCQAAAAACGwAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAAADgAAAAAACQAAAAAAHAAAAAAAHAAAAAACCQAAAAADCQAAAAACCQAAAAACCQAAAAACCQAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAADCQAAAAABCQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAADCQAAAAAAHAAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAABLwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAAHgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAACQAAAAACDgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAAA
+ tiles: DgAAAAAADgAAAAAAAwAAAAAAAwAAAAABHAAAAAAAHAAAAAABHAAAAAABDgAAAAAAHAAAAAADHAAAAAAAHAAAAAADHAAAAAAAHAAAAAABDgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAAAwAAAAABAwAAAAADHAAAAAABHAAAAAAAHAAAAAACDgAAAAAAHAAAAAAAHAAAAAADHAAAAAABHAAAAAADCQAAAAABCQAAAAABCQAAAAAACQAAAAABDgAAAAAADgAAAAAAHAAAAAACHAAAAAAAHAAAAAABHAAAAAADHAAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAACDgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAADHAAAAAACDgAAAAAAHAAAAAAAHAAAAAABHAAAAAADHAAAAAAAHAAAAAACDgAAAAAACQAAAAABCQAAAAABGwAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAADCQAAAAADCQAAAAACCQAAAAABCQAAAAACDgAAAAAACQAAAAAAHAAAAAACHAAAAAACCQAAAAAACQAAAAACCQAAAAACCQAAAAABCQAAAAACCQAAAAABCQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAADCQAAAAAACQAAAAAACQAAAAABHAAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAACQAAAAAALwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAACCQAAAAABHAAAAAACHAAAAAAAHAAAAAADHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAAHAAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAACQAAAAABHAAAAAAAHAAAAAABHAAAAAACHAAAAAADHAAAAAAAHAAAAAACDgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADHAAAAAADHAAAAAADHAAAAAADHAAAAAAAHAAAAAACHAAAAAADDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAAB
version: 6
1,1:
ind: 1,1
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAABDgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAACCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAACCQAAAAACDgAAAAAACQAAAAACCQAAAAACCQAAAAACCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAAACQAAAAAABAAAAAACCQAAAAACCQAAAAAACQAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAADCQAAAAACRwAAAAAARwAAAAACCQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAABAAAAAADCQAAAAACCQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAALAAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: HAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAABCQAAAAAACQAAAAADDgAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAAACQAAAAABCQAAAAADBAAAAAABCQAAAAACCQAAAAADCQAAAAADGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADCQAAAAACCQAAAAABRwAAAAABRwAAAAABCQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAABAAAAAACCQAAAAABCQAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAALAAAAAAALgAAAAAALgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
1,2:
ind: 1,2
@@ -281,55 +281,55 @@ entities:
version: 6
2,-1:
ind: 2,-1
- tiles: CQAAAAADDgAAAAAAQAAAAAABQAAAAAAADwAAAAACQAAAAAABQAAAAAAAQAAAAAABQAAAAAABDgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAAADgAAAAAAQAAAAAAAQAAAAAADDwAAAAABQAAAAAAAQAAAAAADDgAAAAAAQAAAAAADDgAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAAQAAAAAAAQAAAAAAADwAAAAABQAAAAAABQAAAAAACQAAAAAACQAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARAAAAAAACQAAAAABDgAAAAAAQAAAAAADQAAAAAAAQAAAAAAAQAAAAAACQAAAAAABDgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAAADgAAAAAADgAAAAAAGwAAAAAARAAAAAAACQAAAAACDgAAAAAAIwAAAAABIwAAAAABIwAAAAAAIwAAAAABIwAAAAACDgAAAAAAHAAAAAAAHAAAAAABHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAARAAAAAAACQAAAAADDgAAAAAAIwAAAAABIwAAAAABIwAAAAAAIwAAAAADIwAAAAADDgAAAAAAHAAAAAACHAAAAAAAHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACDgAAAAAAIwAAAAACIwAAAAACIwAAAAABIwAAAAABIwAAAAACDgAAAAAAHAAAAAACHAAAAAAAHAAAAAACHAAAAAABDgAAAAAADgAAAAAADgAAAAAAHAAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACCQAAAAADCQAAAAADDgAAAAAAHAAAAAABHAAAAAACHAAAAAABHAAAAAADHAAAAAAAHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAACQAAAAABCQAAAAADDgAAAAAAHAAAAAABHAAAAAABHAAAAAACHAAAAAABHAAAAAABHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAAACAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAGwAAAAAACQAAAAAACAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAACQAAAAADCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAACQAAAAACCAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAA
+ tiles: CQAAAAAADgAAAAAAQAAAAAACQAAAAAAADwAAAAAAQAAAAAABQAAAAAABQAAAAAABQAAAAAACDgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABDgAAAAAACQAAAAAACQAAAAACDgAAAAAAQAAAAAABQAAAAAABDwAAAAAAQAAAAAADQAAAAAACDgAAAAAAQAAAAAABDgAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAAQAAAAAACQAAAAAADDwAAAAABQAAAAAADQAAAAAADQAAAAAABQAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARAAAAAAACQAAAAACDgAAAAAAQAAAAAABQAAAAAACQAAAAAABQAAAAAAAQAAAAAACDgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAACDgAAAAAADgAAAAAAGwAAAAAARAAAAAAACQAAAAABDgAAAAAAIwAAAAADIwAAAAACIwAAAAABIwAAAAABIwAAAAABDgAAAAAAHAAAAAABHAAAAAABHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAARAAAAAAACQAAAAACDgAAAAAAIwAAAAABIwAAAAAAIwAAAAADIwAAAAADIwAAAAADDgAAAAAAHAAAAAADHAAAAAADHAAAAAADHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAAIwAAAAABIwAAAAAAIwAAAAAAIwAAAAABIwAAAAACDgAAAAAAHAAAAAAAHAAAAAAAHAAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACCQAAAAABCQAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAABHAAAAAADHAAAAAACHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAACQAAAAACCQAAAAABDgAAAAAAHAAAAAACHAAAAAAAHAAAAAAAHAAAAAACHAAAAAACHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAAACAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAGwAAAAAACQAAAAABCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAACQAAAAADCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAACQAAAAABCAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAA
version: 6
2,-2:
ind: 2,-2
- tiles: CQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAACGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAACDgAAAAAAOQAAAAADOQAAAAAAOQAAAAABOQAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOQAAAAABOQAAAAABOQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAACCQAAAAAACQAAAAADOQAAAAACOQAAAAADOQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAACQAAAAABRQAAAAAARQAAAAAARQAAAAAACQAAAAACHAAAAAAAHAAAAAAAHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACRQAAAAAARQAAAAAARQAAAAAACQAAAAADHAAAAAADHAAAAAACHAAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABCQAAAAADCQAAAAADRQAAAAAARQAAAAAARQAAAAAACQAAAAAAHAAAAAADHAAAAAAAHAAAAAADDgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAABGgAAAAABLwAAAAABDgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABGgAAAAABDgAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAABCQAAAAACGgAAAAADLwAAAAABCQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAADCQAAAAABCQAAAAADGgAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAACCQAAAAADCQAAAAACCQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAADGgAAAAACLwAAAAACCQAAAAADDgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADGgAAAAAADgAAAAAACQAAAAAADgAAAAAAQAAAAAAAQAAAAAAAQAAAAAACQAAAAAAAQAAAAAAAQAAAAAADDgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACGgAAAAACLwAAAAABCQAAAAABDgAAAAAAQAAAAAADQAAAAAABQAAAAAADQAAAAAABQAAAAAADQAAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAACCQAAAAADDgAAAAAAQAAAAAADQAAAAAACDwAAAAACQAAAAAAAQAAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAD
+ tiles: CQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAABGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAABDgAAAAAAOQAAAAACOQAAAAAAOQAAAAADOQAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAOQAAAAABOQAAAAACOQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAACQAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAABOQAAAAAAOQAAAAABOQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADDgAAAAAACQAAAAABRQAAAAAARQAAAAAARQAAAAAACQAAAAAAHAAAAAACHAAAAAACHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADRQAAAAAARQAAAAAARQAAAAAACQAAAAADHAAAAAACHAAAAAAAHAAAAAADDgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACRQAAAAAARQAAAAAARQAAAAAACQAAAAABHAAAAAACHAAAAAAAHAAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAABGgAAAAACLwAAAAACDgAAAAAACQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAAGgAAAAACDgAAAAAACQAAAAACCQAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAABCQAAAAABCQAAAAAACQAAAAADCQAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAAAGgAAAAABLwAAAAACCQAAAAABCQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAADCQAAAAACCQAAAAACCQAAAAADCQAAAAABCQAAAAABCQAAAAAACQAAAAAACQAAAAABGgAAAAACCQAAAAACCQAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAABCQAAAAAACQAAAAABCQAAAAABCQAAAAACCQAAAAAACQAAAAACCQAAAAAACQAAAAAAGgAAAAAALwAAAAADCQAAAAACDgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAAGgAAAAADDgAAAAAACQAAAAACDgAAAAAAQAAAAAADQAAAAAADQAAAAAABQAAAAAADQAAAAAACQAAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAABGgAAAAABLwAAAAAACQAAAAABDgAAAAAAQAAAAAAAQAAAAAADQAAAAAABQAAAAAAAQAAAAAADQAAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABCQAAAAABDgAAAAAAQAAAAAABQAAAAAACDwAAAAACQAAAAAABQAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAC
version: 6
2,-3:
ind: 2,-3
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAADCQAAAAAACQAAAAAAHAAAAAADHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAABHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAIQAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADCQAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAACDgAAAAAAHAAAAAADCQAAAAABCQAAAAADCQAAAAADCQAAAAACCQAAAAAACQAAAAAACQAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAADDgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAADIQAAAAABIQAAAAADDgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAABCQAAAAADCQAAAAAACQAAAAACCQAAAAADCQAAAAAACQAAAAABCQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAAAwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAACQAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAADIwAAAAABDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAABIwAAAAADDgAAAAAADgAAAAAACQAAAAADCQAAAAACCQAAAAACCQAAAAACCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAAADgAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAADHAAAAAABHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAADHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAACHAAAAAADHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAIQAAAAACDgAAAAAADgAAAAAADgAAAAAAHAAAAAACCQAAAAADCQAAAAADCQAAAAAACQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAAADgAAAAAAHAAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAABCQAAAAAACQAAAAAACQAAAAADDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAABDgAAAAAADgAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIQAAAAABIQAAAAACIQAAAAACDgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAACCQAAAAABCQAAAAADCQAAAAAACQAAAAABCQAAAAADCQAAAAACCQAAAAAACQAAAAADGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAADDgAAAAAADgAAAAAAAwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAACQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAABIwAAAAACDgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAABIwAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAADDgAAAAAA
version: 6
2,-4:
ind: 2,-4
- tiles: DgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAOwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARgAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAMQAAAAABMQAAAAABDgAAAAAADgAAAAAAMwAAAAAAMwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAABMwAAAAADMwAAAAACDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAA
+ tiles: DgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAOwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAAMQAAAAAAMQAAAAACDgAAAAAADgAAAAAAMwAAAAADMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAAAMwAAAAAAMwAAAAADDgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAA
version: 6
2,-5:
ind: 2,-5
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAABLAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAARwAAAAACLAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAACRwAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAAAHAAAAAACHAAAAAADDgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAACLAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAADHAAAAAADHAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAARwAAAAACLAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAADRwAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAAAHAAAAAACDgAAAAAA
version: 6
2,0:
ind: 2,0
- tiles: CQAAAAAACAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAABDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAADCQAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAABDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAAACQAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAACDgAAAAAACQAAAAABCQAAAAACDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAABIwAAAAABDgAAAAAAIwAAAAADDgAAAAAAIwAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACDgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAAIwAAAAAADgAAAAAADgAAAAAAIwAAAAADDgAAAAAAIwAAAAABIwAAAAACDgAAAAAACQAAAAADCQAAAAADDgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAACCQAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABDgAAAAAADgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABCQAAAAABGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAACQAAAAAACQAAAAAACQAAAAACDgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAA
+ tiles: CQAAAAACCAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAACDgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAABJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAHgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAACQAAAAACCQAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAABCQAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAAADgAAAAAACQAAAAADCQAAAAADDgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAIwAAAAACIwAAAAAADgAAAAAAIwAAAAABDgAAAAAAIwAAAAACDgAAAAAADgAAAAAACQAAAAAACQAAAAAADgAAAAAAHgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAAIwAAAAABDgAAAAAADgAAAAAAIwAAAAACDgAAAAAAIwAAAAABIwAAAAACDgAAAAAACQAAAAACCQAAAAAADgAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAADCQAAAAAADgAAAAAADgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAABDgAAAAAADgAAAAAAHgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAACQAAAAAACQAAAAABCQAAAAACGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAACQAAAAADCQAAAAABCQAAAAABDgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAA
version: 6
2,1:
ind: 2,1
- tiles: CQAAAAADCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAAACQAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAACQAAAAAACQAAAAAABAAAAAAECQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAABAAAAAADDgAAAAAADgAAAAAADgAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAABAAAAAADCQAAAAADDgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAARwAAAAACDgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAADCQAAAAABRwAAAAACGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADDgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAACQAAAAADDgAAAAAADgAAAAAARwAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: CQAAAAADCQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAACQAAAAABCQAAAAABBAAAAAABCQAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAABAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAGwAAAAAABAAAAAABCQAAAAACDgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAARwAAAAACDgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAACQAAAAACCQAAAAACRwAAAAACGwAAAAAAGwAAAAAAGwAAAAAACQAAAAADDgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAACQAAAAABDgAAAAAADgAAAAAARwAAAAABDgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
3,-1:
ind: 3,-1
- tiles: CQAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAACDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAA
+ tiles: CQAAAAABCQAAAAABCQAAAAADCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAACDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAA
version: 6
3,-2:
ind: 3,-2
- tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAADDgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAABCQAAAAAACQAAAAABCQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAACLwAAAAABLwAAAAACLwAAAAAAGgAAAAAACQAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACAAAAAAACAAAAAAACAAAAAAADgAAAAAAGgAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAADLwAAAAAALwAAAAACLwAAAAADGgAAAAADCQAAAAADCQAAAAACCQAAAAACDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAABCQAAAAACCQAAAAAACQAAAAABGgAAAAAACQAAAAABCQAAAAABCQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAACLwAAAAAALwAAAAACLwAAAAADGgAAAAAACQAAAAACCQAAAAAACQAAAAABDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACAAAAAAACAAAAAAACAAAAAAADgAAAAAAGgAAAAABCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAAALwAAAAABLwAAAAAALwAAAAAAGgAAAAABCQAAAAADGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAADCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAADCQAAAAABCQAAAAABCQAAAAABCQAAAAAACQAAAAADGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: DgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAACDgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAAACQAAAAADCQAAAAADCQAAAAABCQAAAAACCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAABLwAAAAACLwAAAAABLwAAAAAAGgAAAAABCQAAAAADGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACAAAAAAACAAAAAAACAAAAAAADgAAAAAAGgAAAAAACQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAADLwAAAAABLwAAAAACLwAAAAADGgAAAAAACQAAAAADCQAAAAACCQAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAAACQAAAAACCQAAAAABCQAAAAADGgAAAAACCQAAAAAACQAAAAADCQAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAADLwAAAAAALwAAAAADLwAAAAACGgAAAAABCQAAAAADCQAAAAADCQAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACAAAAAAACAAAAAAACAAAAAAADgAAAAAAGgAAAAABCQAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALwAAAAABLwAAAAADLwAAAAAALwAAAAADGgAAAAAACQAAAAADGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAADCQAAAAACCQAAAAAACQAAAAAACQAAAAAACQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAACQAAAAACCQAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAADGwAAAAAADgAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
3,-3:
ind: 3,-3
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAASAAAAAADSAAAAAACSAAAAAAADgAAAAAAHAAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAACLAAAAAAALAAAAAAARwAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAAASAAAAAAASAAAAAACSAAAAAAAHAAAAAACHAAAAAABDgAAAAAAHAAAAAADSQAAAAAASQAAAAACLAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAASAAAAAABSAAAAAABSAAAAAACHAAAAAACHAAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAASQAAAAACLgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAABHAAAAAADHAAAAAABHAAAAAACDgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAASAAAAAACSAAAAAABSAAAAAAADgAAAAAAHAAAAAABDgAAAAAAHAAAAAADDgAAAAAAHAAAAAAALAAAAAAALAAAAAAARwAAAAACDgAAAAAADgAAAAAAHAAAAAADHAAAAAACSAAAAAABSAAAAAADSAAAAAACHAAAAAABHAAAAAABDgAAAAAAHAAAAAABSQAAAAADSQAAAAADLAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAASAAAAAACSAAAAAADSAAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAACHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAASQAAAAADLgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAABDgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAACHAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHgAAAAAAHgAAAAAAHgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAAGwAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
3,-4:
ind: 3,-4
- tiles: DgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAACDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAHAAAAAABDgAAAAAAGwAAAAAADgAAAAAAMQAAAAACDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAMwAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAABDgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAAGwAAAAAADgAAAAAARgAAAAADRgAAAAABGwAAAAAARgAAAAACDgAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAAAMwAAAAABDgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAACMwAAAAACMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAMwAAAAACMwAAAAABDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADDgAAAAAAMwAAAAADDgAAAAAAMwAAAAABDgAAAAAAMwAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAMwAAAAACMwAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAAAMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAACMwAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAA
+ tiles: DgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAACDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMQAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAHAAAAAADDgAAAAAAGwAAAAAADgAAAAAAMQAAAAABDgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAMwAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAAGwAAAAAAGwAAAAAAGwAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAADDgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAAGwAAAAAADgAAAAAARgAAAAABRgAAAAAAGwAAAAAARgAAAAACDgAAAAAADgAAAAAADgAAAAAAMwAAAAADMwAAAAADMwAAAAABDgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAAMwAAAAABMwAAAAABMwAAAAABMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAMwAAAAADMwAAAAADDgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAADgAAAAAAMwAAAAAADgAAAAAAMwAAAAAADgAAAAAAMwAAAAACDgAAAAAAGwAAAAAADgAAAAAALgAAAAAADgAAAAAAGwAAAAAAGwAAAAAAGwAAAAAAMwAAAAACMwAAAAABDgAAAAAADgAAAAAADgAAAAAAMwAAAAADMwAAAAADMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAABMwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAA
version: 6
3,-5:
ind: 3,-5
- tiles: DgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAMwAAAAAAMwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAADMwAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAARwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAIwAAAAAAIwAAAAADLAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAPAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAARwAAAAABLAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAMwAAAAAAMwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAACDgAAAAAARwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAARwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAIwAAAAADIwAAAAADLAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAPAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAARwAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAA
version: 6
3,0:
ind: 3,0
- tiles: LAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAIwAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAIwAAAAAAIwAAAAACIwAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAIwAAAAAAIwAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAIwAAAAACIwAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAIwAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAALgAAAAAADgAAAAAALAAAAAAADgAAAAAAIwAAAAACIwAAAAABIwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAIwAAAAAAIwAAAAABDgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAIwAAAAABIwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
3,1:
ind: 3,1
@@ -341,7 +341,7 @@ entities:
version: 6
5,-2:
ind: 5,-2
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAADDgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAQAAAAAACQAAAAAABQAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAAAPQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAADDgAAAAAAQAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAPQAAAAADDgAAAAAAQAAAAAAAQAAAAAADQAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAAADgAAAAAARwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAQAAAAAADQAAAAAADQAAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAQAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAAHAAAAAADRwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAAADgAAAAAAMwAAAAACDgAAAAAADgAAAAAALAAAAAAADgAAAAAAQAAAAAABDgAAAAAALAAAAAAALAAAAAAAQAAAAAABDgAAAAAALgAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAACMwAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAQAAAAAABQAAAAAADDgAAAAAAQAAAAAABQAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAABHAAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAAHAAAAAABHAAAAAADHAAAAAAAHAAAAAACDgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAAHAAAAAAAHAAAAAAAHAAAAAABHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAAHAAAAAACDgAAAAAAHAAAAAACHAAAAAACDgAAAAAADgAAAAAAHAAAAAABHAAAAAABLAAAAAAALAAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAADDgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAAQAAAAAADQAAAAAAAQAAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAPQAAAAABPQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAABDgAAAAAAQAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAPQAAAAAADgAAAAAAQAAAAAABQAAAAAACQAAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAADDgAAAAAARwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAQAAAAAACQAAAAAABQAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAQAAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAAHAAAAAACRwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAAMwAAAAABMwAAAAABDgAAAAAAMwAAAAABDgAAAAAADgAAAAAALAAAAAAADgAAAAAAQAAAAAAADgAAAAAALAAAAAAALAAAAAAAQAAAAAACDgAAAAAALgAAAAAALAAAAAAADgAAAAAAMwAAAAADMwAAAAABMwAAAAACDgAAAAAALAAAAAAALgAAAAAADgAAAAAAQAAAAAACQAAAAAACDgAAAAAAQAAAAAACQAAAAAACLAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAACHAAAAAABDgAAAAAADgAAAAAAHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAACHAAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAAHAAAAAADHAAAAAAAHAAAAAACHAAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAAHAAAAAABDgAAAAAAHAAAAAABHAAAAAADDgAAAAAADgAAAAAAHAAAAAACHAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAA
version: 6
4,0:
ind: 4,0
@@ -353,7 +353,7 @@ entities:
version: 6
6,-2:
ind: 6,-2
- tiles: QAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABRwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAACRwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACLAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAABLAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: QAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAAARwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAADRwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACLAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
1,-6:
ind: 1,-6
@@ -361,15 +361,15 @@ entities:
version: 6
4,-3:
ind: 4,-3
- tiles: LAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAAMwAAAAACMwAAAAADMwAAAAADDgAAAAAADgAAAAAARwAAAAABMwAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAABMwAAAAACMwAAAAACMwAAAAABMwAAAAABMwAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAADLAAAAAAARwAAAAABRwAAAAABLAAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAAAMwAAAAAAMwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAABLgAAAAAALAAAAAAALAAAAAAARwAAAAACDgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAAHAAAAAACDgAAAAAAMwAAAAADLgAAAAAALgAAAAAARwAAAAACMwAAAAACMwAAAAACRwAAAAACMwAAAAAADgAAAAAADgAAAAAAMwAAAAABMwAAAAADDgAAAAAALgAAAAAADgAAAAAADgAAAAAAMwAAAAADLgAAAAAALgAAAAAARwAAAAAAMwAAAAAAMwAAAAABMwAAAAACMwAAAAADDgAAAAAAMwAAAAACMwAAAAAADgAAAAAARwAAAAACLAAAAAAADgAAAAAADgAAAAAALAAAAAAAMwAAAAAALAAAAAAALAAAAAAAMwAAAAAAMwAAAAADMwAAAAABMwAAAAAADgAAAAAAMwAAAAABMwAAAAAAMwAAAAACLAAAAAAASQAAAAACHAAAAAABDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAARwAAAAAAHAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAAMwAAAAACMwAAAAAAMwAAAAADDgAAAAAADgAAAAAARwAAAAAAMwAAAAACLgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAACMwAAAAACMwAAAAADMwAAAAABMwAAAAADMwAAAAADLgAAAAAALAAAAAAADgAAAAAADgAAAAAAMwAAAAACLAAAAAAARwAAAAAARwAAAAABLAAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAAMwAAAAAAMwAAAAABMwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAMwAAAAAALgAAAAAALAAAAAAALAAAAAAARwAAAAABDgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABHAAAAAADDgAAAAAAMwAAAAACLgAAAAAALgAAAAAARwAAAAABMwAAAAACMwAAAAACRwAAAAACMwAAAAABDgAAAAAADgAAAAAAMwAAAAACMwAAAAADDgAAAAAALgAAAAAADgAAAAAADgAAAAAAMwAAAAACLgAAAAAALgAAAAAARwAAAAABMwAAAAADMwAAAAAAMwAAAAACMwAAAAADDgAAAAAAMwAAAAAAMwAAAAABDgAAAAAARwAAAAABLAAAAAAADgAAAAAADgAAAAAALAAAAAAAMwAAAAACLAAAAAAALAAAAAAAMwAAAAADMwAAAAACMwAAAAACMwAAAAADDgAAAAAAMwAAAAADMwAAAAABMwAAAAACLAAAAAAASQAAAAABHAAAAAADDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAARwAAAAACHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
2,-6:
ind: 2,-6
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADwAAAAAASQAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADwAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAACLAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADwAAAAAASQAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADwAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAADwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAABLAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-1,-6:
ind: -1,-6
- tiles: LgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAABAAAAAADCQAAAAAACQAAAAAADgAAAAAAHAAAAAACHAAAAAADHAAAAAABHAAAAAADHAAAAAADLgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAACDgAAAAAAHAAAAAABHAAAAAACHAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAAADgAAAAAALgAAAAAARwAAAAAACQAAAAADDgAAAAAAHAAAAAADHAAAAAADDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABDgAAAAAABAAAAAAEBAAAAAAEDgAAAAAACQAAAAAADgAAAAAAHAAAAAACHAAAAAABRwAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAACQAAAAACCQAAAAACCQAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAARwAAAAABLgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAARwAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAABLgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAABAAAAAABCQAAAAAACQAAAAABDgAAAAAAHAAAAAACHAAAAAACHAAAAAADHAAAAAAAHAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACLAAAAAAALAAAAAAALAAAAAAADgAAAAAACQAAAAAADgAAAAAAHAAAAAABHAAAAAABHAAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAACDgAAAAAALgAAAAAARwAAAAACCQAAAAACDgAAAAAAHAAAAAABHAAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAAADgAAAAAABAAAAAADBAAAAAACDgAAAAAACQAAAAAADgAAAAAAHAAAAAADHAAAAAAARwAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAARwAAAAABLgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAARwAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACLgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-4,2:
ind: -4,2
@@ -389,11 +389,11 @@ entities:
version: 6
0,-6:
ind: 0,-6
- tiles: DgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAAADgAAAAAACQAAAAABCQAAAAABCQAAAAACDgAAAAAADgAAAAAARwAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAACDgAAAAAACQAAAAAACQAAAAAABAAAAAABDgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAADBAAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAACQAAAAADCQAAAAADCQAAAAACCQAAAAADRwAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAACCQAAAAABDgAAAAAADgAAAAAARwAAAAACLAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAALgAAAAAALAAAAAAAIwAAAAACPAAAAAACIwAAAAABIwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAAIwAAAAADIwAAAAADPAAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAA
+ tiles: DgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAAHAAAAAABDgAAAAAACQAAAAADCQAAAAACCQAAAAABDgAAAAAADgAAAAAARwAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAAHAAAAAADDgAAAAAACQAAAAACCQAAAAACBAAAAAACDgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAACLAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAAABAAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAABDgAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAAHAAAAAADDgAAAAAADgAAAAAACQAAAAAACQAAAAAACQAAAAACCQAAAAACRwAAAAACLgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAACQAAAAABCQAAAAADDgAAAAAADgAAAAAARwAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAAJAAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAALgAAAAAALAAAAAAAIwAAAAACPAAAAAAAIwAAAAABIwAAAAADDgAAAAAADgAAAAAADgAAAAAADgAAAAAAJAAAAAAAJAAAAAAADgAAAAAADgAAAAAAHQAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAAIwAAAAABIwAAAAADPAAAAAACDgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAA
version: 6
6,-3:
ind: 6,-3
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAQAAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
-4,1:
ind: -4,1
@@ -401,7 +401,7 @@ entities:
version: 6
5,-3:
ind: 5,-3
- tiles: DgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAMwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAAMwAAAAADMwAAAAABDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAAAQAAAAAACQAAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAAPQAAAAACDgAAAAAAQAAAAAADDgAAAAAAQAAAAAADLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAAPQAAAAACDgAAAAAARwAAAAAAQAAAAAADDgAAAAAA
+ tiles: DgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAAMwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAAMwAAAAADMwAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAAQAAAAAAAQAAAAAADQAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAAPQAAAAAADgAAAAAAQAAAAAACDgAAAAAAQAAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAAPQAAAAAADgAAAAAARwAAAAAAQAAAAAACDgAAAAAA
version: 6
-6,-5:
ind: -6,-5
@@ -409,23 +409,23 @@ entities:
version: 6
3,-6:
ind: 3,-6
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAASQAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAASQAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADwAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAASQAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAASQAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
4,-4:
ind: 4,-4
- tiles: DgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAACHAAAAAACSgAAAAADSgAAAAAASgAAAAABSgAAAAADRwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABLgAAAAAASQAAAAACSQAAAAADHAAAAAADHAAAAAADSgAAAAADSgAAAAACSgAAAAACSgAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADSQAAAAADSQAAAAABSQAAAAABHAAAAAAAHAAAAAAAHAAAAAAADgAAAAAARwAAAAABLAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAADHAAAAAACHAAAAAAAHAAAAAADHAAAAAACHAAAAAACHAAAAAAAHAAAAAACHAAAAAAAHAAAAAACDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAARwAAAAACLAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: DgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAARwAAAAAAHAAAAAABSgAAAAAASgAAAAAASgAAAAADSgAAAAABRwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAACLgAAAAAASQAAAAADSQAAAAACHAAAAAAAHAAAAAACSgAAAAAASgAAAAABSgAAAAABSgAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAABSQAAAAABSQAAAAAASQAAAAACHAAAAAACHAAAAAABHAAAAAABDgAAAAAARwAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAHAAAAAAAHAAAAAADHAAAAAAAHAAAAAABHAAAAAACHAAAAAADHAAAAAACHAAAAAADHAAAAAADHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABLgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAARwAAAAAALAAAAAAADgAAAAAADgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
4,-5:
ind: 4,-5
- tiles: PAAAAAAGIwAAAAAADgAAAAAALAAAAAAAPAAAAAAFDgAAAAAAIwAAAAABIwAAAAAAIwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAARwAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAAARwAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAAIwAAAAACPAAAAAAAIwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAACPAAAAAAGPAAAAAAELAAAAAAALgAAAAAALAAAAAAAPAAAAAABIwAAAAADIwAAAAACDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAAGPAAAAAAFIwAAAAAARwAAAAABLAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAAIwAAAAABPAAAAAAGDgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAAIwAAAAAAIwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAABHAAAAAACHAAAAAADDgAAAAAADgAAAAAAHAAAAAACHAAAAAADSgAAAAABDgAAAAAADgAAAAAASgAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAALAAAAAAAHAAAAAAADgAAAAAADgAAAAAAHAAAAAACSgAAAAADDgAAAAAASgAAAAACSgAAAAADDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: PAAAAAAAIwAAAAADDgAAAAAALAAAAAAAPAAAAAAGDgAAAAAAIwAAAAADIwAAAAABIwAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAARwAAAAABDgAAAAAARwAAAAACDgAAAAAADgAAAAAARwAAAAABDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAACRwAAAAABLAAAAAAALgAAAAAALAAAAAAALAAAAAAAIwAAAAAAPAAAAAAEIwAAAAADDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAAAPAAAAAACPAAAAAABLAAAAAAALgAAAAAALAAAAAAAPAAAAAADIwAAAAACIwAAAAABDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAAGPAAAAAABIwAAAAAARwAAAAACLAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAAIwAAAAADPAAAAAAGDgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAAIwAAAAABIwAAAAADDgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAHAAAAAACHAAAAAABHAAAAAACDgAAAAAADgAAAAAAHAAAAAACHAAAAAAASgAAAAAADgAAAAAADgAAAAAASgAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACDgAAAAAALAAAAAAAHAAAAAAADgAAAAAADgAAAAAAHAAAAAAASgAAAAACDgAAAAAASgAAAAAASgAAAAACDgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
4,-6:
ind: 4,-6
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAADDgAAAAAAPAAAAAABIwAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAIwAAAAACDgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAARwAAAAACLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAPAAAAAADIwAAAAACDgAAAAAAHQAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAABDgAAAAAADgAAAAAAIwAAAAAAPAAAAAADDgAAAAAAIwAAAAADIwAAAAACDgAAAAAARwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAIwAAAAACDgAAAAAAPAAAAAACIwAAAAABDgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAIwAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAARwAAAAABLgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAAPAAAAAAFIwAAAAADDgAAAAAAHQAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAAPAAAAAAFDgAAAAAADgAAAAAAIwAAAAAAPAAAAAABDgAAAAAAIwAAAAABIwAAAAABDgAAAAAARwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
5,-1:
ind: 5,-1
- tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAAHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAARwAAAAAADgAAAAAARwAAAAABDgAAAAAARwAAAAACHAAAAAADDgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAACDgAAAAAARwAAAAABDgAAAAAARwAAAAACDgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
+ tiles: DgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAAHAAAAAADDgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAARwAAAAABDgAAAAAARwAAAAAADgAAAAAARwAAAAAAHAAAAAABDgAAAAAADgAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAABDgAAAAAARwAAAAAADgAAAAAARwAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAADgAAAAAAHAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAA
version: 6
5,-4:
ind: 5,-4
@@ -433,11 +433,11 @@ entities:
version: 6
-1,-7:
ind: -1,-7
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAACDgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALgAAAAAADgAAAAAADgAAAAAADgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
0,-7:
ind: 0,-7
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAARwAAAAACDgAAAAAADgAAAAAARwAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAABLAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALgAAAAAALAAAAAAARwAAAAABDgAAAAAADgAAAAAARwAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAARwAAAAAADgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAARwAAAAACLAAAAAAALgAAAAAALAAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALAAAAAAALAAAAAAALAAAAAAALgAAAAAALgAAAAAADgAAAAAALAAAAAAALgAAAAAALAAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAADgAAAAAA
version: 6
1,-7:
ind: 1,-7
@@ -445,7 +445,7 @@ entities:
version: 6
-3,-6:
ind: -3,-6
- tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAABCQAAAAAACQAAAAADCQAAAAAB
+ tiles: LgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAADgAAAAAAGwAAAAAADgAAAAAAGwAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALgAAAAAALAAAAAAADgAAAAAACQAAAAACCQAAAAAACQAAAAACCQAAAAAA
version: 6
-2,-6:
ind: -2,-6
@@ -564,6 +564,10 @@ entities:
17694: -16,-17
18555: 28,2
18556: 28,1
+ 20466: 19,15
+ 20467: 20,15
+ 20470: 18,13
+ 20471: 20,13
- node:
color: '#D381C996'
id: BotGreyscale
@@ -1858,6 +1862,43 @@ entities:
decals:
14300: -22,-37
14301: -14,-39
+ - node:
+ zIndex: 1
+ color: '#D4D4D428'
+ id: CheckerNWSE
+ decals:
+ 20500: 17,15
+ 20501: 17,14
+ 20502: 18,14
+ 20503: 18,15
+ 20504: 19,15
+ 20505: 19,14
+ 20506: 20,14
+ 20507: 20,15
+ 20508: 21,15
+ 20509: 21,14
+ 20510: 20,13
+ 20511: 19,13
+ 20512: 18,13
+ 20513: 18,12
+ 20514: 19,12
+ 20515: 20,12
+ 20584: 14,-25
+ 20585: 15,-25
+ 20586: 16,-25
+ 20587: 16,-26
+ 20588: 16,-27
+ 20589: 15,-27
+ 20590: 14,-27
+ 20591: 13,-27
+ 20592: 13,-26
+ 20593: 13,-25
+ 20594: 14,-26
+ 20595: 15,-26
+ 20606: 14,-28
+ 20607: 15,-28
+ 20608: 15,-24
+ 20609: 14,-24
- node:
color: '#DE3A3A96'
id: CheckerNWSE
@@ -2068,8 +2109,6 @@ entities:
11503: 26,-40
11775: -27,-22
11777: -29,-22
- 11824: 18,12
- 11825: 16,15
11866: -32,14
11867: -30,19
11950: 26,-18
@@ -2240,7 +2279,6 @@ entities:
20374: 13,-37
20375: 16,-37
20376: 15,-43
- 20377: 15,-42
20378: 16,-42
20379: 17,-40
20380: 18,-40
@@ -2278,6 +2316,18 @@ entities:
20413: 18,-38
20414: 12,-42
20415: 12,-41
+ - node:
+ cleanable: True
+ zIndex: 5
+ color: '#FFFFFF7F'
+ id: Dirt
+ decals:
+ 20519: 17,14
+ 20520: 20,12
+ 20571: 45,-22
+ 20572: 34,-23
+ 20573: 33,-23
+ 20613: 35,-43
- node:
cleanable: True
zIndex: 1
@@ -2295,6 +2345,42 @@ entities:
20353: -5,-9
20354: -2,-12
20355: -2,-8
+ - node:
+ cleanable: True
+ zIndex: 5
+ color: '#FFFFFF7F'
+ id: DirtHeavy
+ decals:
+ 20546: 16,15
+ 20547: 14,16
+ 20548: 16,16
+ 20549: 17,14
+ 20550: 10,17
+ 20551: 10,16
+ 20552: 9,17
+ 20553: 11,19
+ 20554: 15,22
+ 20555: 15,23
+ 20556: 19,21
+ 20557: 17,6
+ 20558: 18,6
+ 20559: 22,6
+ 20560: 20,6
+ 20561: 24,6
+ 20562: 24,7
+ 20563: 31,6
+ 20564: 31,3
+ 20565: 30,-11
+ 20566: 31,-12
+ 20567: 31,-20
+ 20568: 37,-22
+ 20569: 42,-22
+ 20570: 46,-18
+ 20614: 35,-44
+ 20615: 36,-42
+ 20616: 35,-43
+ 20617: 32,-46
+ 20618: 32,-47
- node:
cleanable: True
zIndex: 5
@@ -2718,8 +2804,6 @@ entities:
7583: 25,13
7584: 23,13
7585: 21,12
- 7586: 20,12
- 7597: 20,12
7599: 16,12
7601: 29,18
7602: 28,18
@@ -3314,23 +3398,12 @@ entities:
11706: -9,-11
11707: -10,-11
11708: -9,-13
- 11830: 17,15
- 11831: 17,14
- 11833: 18,13
- 11834: 18,12
- 11835: 19,13
- 11836: 17,13
11837: 17,12
11838: 16,12
11839: 16,11
11840: 15,11
11841: 15,12
11842: 15,13
- 11843: 15,14
- 11844: 16,15
- 11845: 17,14
- 11846: 17,15
- 11847: 18,15
11868: -31,17
11869: -31,18
11871: -30,18
@@ -4985,10 +5058,8 @@ entities:
18999: 17,21
19002: 24,21
19003: 26,21
- 19004: 16,17
19005: 16,18
19006: 15,18
- 19007: 15,17
19008: 14,18
19009: 14,19
19010: 14,20
@@ -5068,8 +5139,6 @@ entities:
19107: 23,12
19108: 22,12
19109: 21,12
- 19110: 20,12
- 19111: 18,14
19112: 28,21
19113: 27,21
19114: 27,22
@@ -5226,6 +5295,28 @@ entities:
20349: -3,-8
20350: -2,-6
20351: -4,-6
+ - node:
+ cleanable: True
+ zIndex: 5
+ color: '#FFFFFF7F'
+ id: DirtHeavyMonotile
+ decals:
+ 20544: 19,13
+ 20545: 19,12
+ 20574: 33,-23
+ 20575: 30,-22
+ 20619: 33,-42
+ 20620: 32,-42
+ 20621: 31,-42
+ 20622: 31,-41
+ 20684: 20,-26
+ 20685: 20,-27
+ 20686: 29,-25
+ 20687: 28,-25
+ 20688: 30,-25
+ 20689: 32,-26
+ 20690: 38,-26
+ 20691: 35,-23
- node:
cleanable: True
zIndex: 5
@@ -5377,9 +5468,6 @@ entities:
11717: -12,-13
11718: -13,-13
11719: -14,-20
- 11826: 19,12
- 11827: 19,13
- 11829: 17,14
12646: -7,-50
12649: 2,-48
12650: 5,-50
@@ -5397,7 +5485,6 @@ entities:
12910: -20,-39
12911: -19,-39
12930: 10,-31
- 12943: 15,-29
12948: 61,-80
12949: 61,-79
14414: 15,-53
@@ -5567,6 +5654,72 @@ entities:
19727: -13,-41
20114: -1,-14
20115: -1,-13
+ - node:
+ cleanable: True
+ zIndex: 5
+ color: '#FFFFFF7F'
+ id: DirtLight
+ decals:
+ 20537: 14,15
+ 20538: 16,15
+ 20539: 13,16
+ 20541: 20,14
+ 20542: 19,14
+ 20543: 18,14
+ 20576: 27,-22
+ 20577: 26,-22
+ 20578: 20,-22
+ 20579: 14,-25
+ 20580: 14,-27
+ 20581: 13,-27
+ 20582: 13,-26
+ 20583: 11,-30
+ 20623: 33,-42
+ 20624: 33,-41
+ 20625: 34,-41
+ 20626: 34,-40
+ 20627: 33,-40
+ 20628: 36,-42
+ 20629: 36,-41
+ 20630: 37,-41
+ 20631: 37,-42
+ 20632: 36,-46
+ 20633: 35,-46
+ 20634: 35,-45
+ 20635: 35,-43
+ 20636: 35,-42
+ 20637: 35,-41
+ 20638: 36,-41
+ 20639: 36,-43
+ 20640: 36,-43
+ 20641: 36,-45
+ 20642: 35,-47
+ 20643: 36,-47
+ 20644: 28,-45
+ 20645: 29,-34
+ 20646: 29,-36
+ 20647: 30,-31
+ 20648: 29,-32
+ 20649: 27,-31
+ 20650: 28,-30
+ 20651: 29,-29
+ 20652: 29,-28
+ 20653: 30,-26
+ 20654: 27,-25
+ 20655: 32,-31
+ 20656: 34,-31
+ 20657: 33,-32
+ 20658: 36,-32
+ 20659: 37,-32
+ 20660: 34,-34
+ 20661: 36,-37
+ 20662: 37,-36
+ 20663: 37,-38
+ 20664: 39,-38
+ 20665: 41,-38
+ 20666: 34,-39
+ 20667: 35,-37
+ 20668: 34,-37
- node:
cleanable: True
zIndex: 5
@@ -6927,7 +7080,6 @@ entities:
18896: -7,-59
18898: -48,-36
18899: -43,-25
- 18900: 16,17
18902: 38,17
19162: 32,23
19164: 29,22
@@ -6999,7 +7151,6 @@ entities:
19405: 14,20
19406: 15,18
19407: 16,18
- 19408: 15,17
19409: 20,22
19410: 22,22
19411: 23,22
@@ -7083,6 +7234,43 @@ entities:
20433: 16,-34
20434: 17,-33
20435: 16,-33
+ - node:
+ cleanable: True
+ zIndex: 5
+ color: '#FFFFFF7F'
+ id: DirtMedium
+ decals:
+ 20521: 14,15
+ 20522: 14,16
+ 20523: 15,16
+ 20524: 15,15
+ 20525: 18,14
+ 20526: 18,15
+ 20527: 19,15
+ 20528: 19,14
+ 20529: 20,14
+ 20530: 19,13
+ 20531: 18,12
+ 20532: 17,12
+ 20533: 16,13
+ 20534: 15,13
+ 20535: 15,14
+ 20536: 15,15
+ 20669: 32,-38
+ 20670: 29,-38
+ 20671: 30,-39
+ 20672: 31,-35
+ 20673: 30,-35
+ 20674: 30,-34
+ 20675: 31,-34
+ 20676: 25,-31
+ 20677: 25,-32
+ 20678: 24,-32
+ 20679: 22,-32
+ 20680: 20,-28
+ 20681: 19,-27
+ 20682: 19,-26
+ 20683: 19,-25
- node:
cleanable: True
zIndex: 5
@@ -7491,10 +7679,6 @@ entities:
11699: -9,-9
11700: -10,-9
11701: -9,-7
- 11849: 18,14
- 11850: 18,14
- 11851: 19,13
- 11852: 19,12
11853: 29,-5
11887: -34,4
11888: -34,6
@@ -8484,6 +8668,12 @@ entities:
decals:
11337: -19,-56
11338: -18,-56
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: FullTileOverlayGreyscale
+ decals:
+ 20610: 13,16
- node:
color: '#D381C996'
id: FullTileOverlayGreyscale
@@ -8843,6 +9033,18 @@ entities:
id: HalfTileOverlayGreyscale
decals:
19354: 22,22
+ - node:
+ zIndex: 1
+ color: '#8D1C9996'
+ id: HalfTileOverlayGreyscale
+ decals:
+ 20612: 15,17
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: HalfTileOverlayGreyscale
+ decals:
+ 20480: 15,16
- node:
color: '#D381C996'
id: HalfTileOverlayGreyscale
@@ -8938,7 +9140,13 @@ entities:
color: '#8D1C9996'
id: HalfTileOverlayGreyscale180
decals:
- 18624: 15,17
+ 20439: 15,18
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: HalfTileOverlayGreyscale180
+ decals:
+ 20611: 15,17
- node:
color: '#D381C996'
id: HalfTileOverlayGreyscale180
@@ -9097,6 +9305,12 @@ entities:
16309: -34,-23
16310: -34,-24
16311: -34,-25
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: HalfTileOverlayGreyscale90
+ decals:
+ 20497: 16,15
- node:
color: '#D381C996'
id: HalfTileOverlayGreyscale90
@@ -9164,13 +9378,6 @@ entities:
id: Newton
decals:
3169: 46.023712,8.512203
- - node:
- cleanable: True
- zIndex: 1
- color: '#D4D4D496'
- id: Osiron
- decals:
- 12395: 19.018324,13.005281
- node:
color: '#444646FF'
id: PavementCheckerAOverlay
@@ -9408,7 +9615,6 @@ entities:
18620: 16,20
18621: 16,19
18622: 16,18
- 18623: 16,17
- node:
color: '#9FED5896'
id: QuarterTileOverlayGreyscale180
@@ -9545,7 +9751,6 @@ entities:
color: '#8D1C9996'
id: QuarterTileOverlayGreyscale270
decals:
- 18625: 14,17
18626: 14,18
18627: 14,19
19326: 27,21
@@ -9732,6 +9937,9 @@ entities:
9997: -1,12
9998: 0,12
9999: 1,12
+ 20516: 16,12
+ 20517: 15,12
+ 20518: 14,12
- node:
color: '#D381C996'
id: QuarterTileOverlayGreyscale90
@@ -9956,6 +10164,12 @@ entities:
16267: -45,-35
16270: -46,-36
18575: 18,3
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: ThreeQuarterTileOverlayGreyscale
+ decals:
+ 20478: 14,16
- node:
color: '#D381C996'
id: ThreeQuarterTileOverlayGreyscale
@@ -9974,6 +10188,12 @@ entities:
decals:
16188: -26,-31
16281: -42,-39
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: ThreeQuarterTileOverlayGreyscale180
+ decals:
+ 20495: 16,14
- node:
color: '#D381C996'
id: ThreeQuarterTileOverlayGreyscale180
@@ -9995,6 +10215,13 @@ entities:
16282: -46,-39
18571: 20,-1
18572: 18,2
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: ThreeQuarterTileOverlayGreyscale270
+ decals:
+ 20492: 14,15
+ 20496: 15,14
- node:
color: '#D381C996'
id: ThreeQuarterTileOverlayGreyscale270
@@ -10010,6 +10237,12 @@ entities:
16268: -43,-35
16269: -42,-36
18582: 22,3
+ - node:
+ zIndex: 1
+ color: '#A4610696'
+ id: ThreeQuarterTileOverlayGreyscale90
+ decals:
+ 20493: 16,16
- node:
color: '#D381C996'
id: ThreeQuarterTileOverlayGreyscale90
@@ -10039,12 +10272,24 @@ entities:
id: WarnCornerGreyscaleNE
decals:
9805: 35,-25
+ - node:
+ zIndex: 1
+ color: '#FFFFFFFF'
+ id: WarnCornerGreyscaleNE
+ decals:
+ 20476: 20,12
- node:
zIndex: 1
color: '#D381C996'
id: WarnCornerGreyscaleNW
decals:
9798: 33,-25
+ - node:
+ zIndex: 1
+ color: '#FFFFFFFF'
+ id: WarnCornerGreyscaleNW
+ decals:
+ 20475: 18,12
- node:
zIndex: 1
color: '#D381C996'
@@ -10354,6 +10599,7 @@ entities:
id: WarnLineGreyscaleN
decals:
18568: 28,0
+ 20477: 19,12
- node:
cleanable: True
zIndex: 1
@@ -12093,7 +12339,7 @@ entities:
0: 7645
-5,-4:
0: 52431
- 1: 256
+ 2: 256
-4,-3:
0: 53727
-5,-3:
@@ -12108,7 +12354,7 @@ entities:
0: 65437
-4,0:
0: 13243
- 2: 2048
+ 3: 2048
-3,-4:
0: 65501
-3,-3:
@@ -12119,8 +12365,8 @@ entities:
0: 53247
-3,0:
0: 15
- 2: 13056
- 1: 3072
+ 3: 13056
+ 2: 3072
-3,-5:
0: 36863
-2,-4:
@@ -12133,7 +12379,7 @@ entities:
0: 65535
-2,0:
0: 15
- 1: 3840
+ 2: 3840
-2,-5:
0: 36349
-1,-4:
@@ -12146,7 +12392,7 @@ entities:
0: 65535
-1,0:
0: 15
- 1: 3840
+ 2: 3840
0,-4:
0: 30707
0,-3:
@@ -12181,23 +12427,23 @@ entities:
0: 56793
-2,-8:
0: 61495
- 3: 136
+ 1: 136
-2,-7:
0: 8176
-2,-6:
0: 64988
-2,-9:
0: 13299
- 3: 32768
+ 1: 32768
-1,-8:
- 3: 51
+ 1: 51
0: 63500
-1,-6:
0: 65535
-1,-5:
0: 4095
-1,-9:
- 3: 12288
+ 1: 12288
0: 35059
-1,-7:
0: 3822
@@ -12258,11 +12504,11 @@ entities:
0,-9:
0: 48056
-4,-16:
- 1: 17663
+ 2: 17663
-5,-16:
- 1: 255
+ 2: 255
-4,-15:
- 1: 100
+ 2: 100
0: 45056
-5,-15:
0: 65024
@@ -12273,9 +12519,9 @@ entities:
-5,-13:
0: 53759
-4,-17:
- 1: 17663
+ 2: 17663
-3,-16:
- 1: 17
+ 2: 17
0: 52428
-3,-15:
0: 47308
@@ -12283,63 +12529,63 @@ entities:
0: 35775
-3,-17:
0: 52360
- 1: 19
+ 2: 19
-2,-16:
0: 13175
- 1: 32768
+ 2: 32768
-2,-15:
0: 64435
-2,-14:
0: 65339
-2,-17:
0: 13119
- 1: 2048
+ 2: 2048
-1,-15:
0: 65328
- 1: 8
+ 2: 8
-1,-14:
0: 65295
-1,-16:
- 1: 59392
+ 2: 59392
0,-15:
- 1: 15
+ 2: 15
0: 65280
0,-14:
0: 65295
0,-13:
0: 65535
-4,-18:
- 1: 59592
+ 2: 59592
-5,-18:
- 1: 40960
+ 2: 40960
-5,-17:
- 1: 255
+ 2: 255
-4,-20:
- 1: 51400
+ 2: 51400
-4,-21:
- 1: 51404
+ 2: 51404
-4,-19:
- 1: 51400
+ 2: 51400
-3,-18:
- 1: 12288
+ 2: 12288
0: 34952
-3,-21:
- 1: 18575
+ 2: 18575
-3,-20:
0: 2176
-3,-19:
0: 34952
-2,-20:
0: 4913
- 1: 34816
+ 2: 34816
-2,-19:
0: 15347
-2,-18:
0: 45875
- 1: 136
+ 2: 136
-2,-21:
0: 4096
- 1: 17203
+ 2: 17203
-1,-19:
0: 16
-1,-17:
@@ -12348,7 +12594,7 @@ entities:
0: 43688
-4,1:
0: 62259
- 2: 128
+ 3: 128
-5,1:
0: 43690
-4,2:
@@ -12362,14 +12608,14 @@ entities:
-4,4:
0: 21759
-3,1:
- 2: 513
- 1: 8208
+ 3: 513
+ 2: 8208
-3,2:
0: 65280
- 1: 8
+ 2: 8
-3,3:
0: 13119
- 1: 32768
+ 2: 32768
-3,4:
0: 47283
-2,1:
@@ -12377,37 +12623,37 @@ entities:
5: 1092
-2,2:
0: 65280
- 1: 10
+ 2: 10
-2,3:
0: 13
- 1: 61696
+ 2: 61696
-1,1:
- 2: 1365
+ 3: 1365
-1,2:
0: 65280
- 1: 10
+ 2: 10
-1,3:
0: 15
- 1: 5120
+ 2: 5120
-2,4:
- 1: 8
+ 2: 8
0: 16176
-1,4:
0: 61420
0,0:
0: 15
- 1: 3328
- 2: 512
+ 2: 3328
+ 3: 512
0,1:
6: 273
- 2: 3276
+ 3: 3276
0,2:
0: 65280
- 1: 6
- 2: 8
+ 2: 6
+ 3: 8
0,3:
0: 19663
- 1: 256
+ 2: 256
-5,4:
0: 62395
-4,5:
@@ -12415,29 +12661,29 @@ entities:
-5,5:
0: 8079
-4,6:
- 1: 50272
+ 2: 50272
-3,5:
0: 8099
-3,6:
0: 119
- 1: 53248
+ 2: 53248
-3,7:
- 1: 4401
+ 2: 4401
-3,8:
- 1: 4401
+ 2: 4401
-2,5:
0: 13104
- 1: 2184
+ 2: 2184
-2,6:
0: 63
- 1: 6144
+ 2: 6144
-1,6:
0: 3311
- 1: 4096
+ 2: 4096
-1,5:
0: 61038
-1,7:
- 1: 2
+ 2: 2
0,4:
0: 65535
0,5:
@@ -12446,19 +12692,19 @@ entities:
0: 36863
-8,-4:
0: 15
- 1: 768
+ 2: 768
-9,-4:
0: 26239
-8,-3:
0: 44782
-9,-3:
0: 34958
- 1: 12288
+ 2: 12288
-8,-2:
0: 65034
-9,-2:
0: 64904
- 1: 3
+ 2: 3
-8,-1:
0: 60942
-9,-1:
@@ -12467,7 +12713,7 @@ entities:
0: 26190
-7,-4:
0: 17479
- 1: 256
+ 2: 256
-7,-3:
0: 65535
-7,-2:
@@ -12480,7 +12726,7 @@ entities:
0: 65359
-6,-4:
0: 15
- 1: 2304
+ 2: 2304
-6,-3:
0: 53727
-6,-2:
@@ -12573,29 +12819,29 @@ entities:
0: 65262
-8,-17:
0: 24576
- 1: 206
+ 2: 206
-7,-16:
- 1: 750
+ 2: 750
-7,-15:
- 1: 98
+ 2: 98
0: 57344
-7,-14:
0: 58478
-6,-16:
- 1: 17663
+ 2: 17663
-6,-14:
0: 48042
-6,-15:
0: 40960
- 1: 196
+ 2: 196
-6,-17:
- 1: 17663
+ 2: 17663
-8,-20:
0: 1
- 1: 512
+ 2: 512
-8,-21:
0: 4096
- 1: 32
+ 2: 32
-9,-20:
0: 61423
-9,-19:
@@ -12603,25 +12849,25 @@ entities:
-9,-18:
0: 61423
-8,-18:
- 1: 40960
+ 2: 40960
-9,-17:
0: 65519
-7,-17:
- 1: 511
+ 2: 511
-7,-18:
- 1: 40960
+ 2: 40960
-6,-18:
- 1: 40960
+ 2: 40960
-9,0:
0: 51404
- 1: 4096
+ 2: 4096
-8,1:
0: 6
- 1: 25600
+ 2: 25600
-9,1:
0: 61164
-8,2:
- 1: 2
+ 2: 2
0: 61056
-9,2:
0: 60668
@@ -12655,114 +12901,114 @@ entities:
0: 62990
-8,6:
0: 7
- 1: 1792
+ 2: 1792
-9,6:
- 1: 52288
+ 2: 52288
-8,7:
- 1: 4224
+ 2: 4224
-8,8:
- 1: 18163
+ 2: 18163
-9,7:
- 1: 64716
+ 2: 64716
-7,5:
0: 26159
-7,6:
- 1: 4368
+ 2: 4368
-7,7:
- 1: 4369
+ 2: 4369
-7,8:
- 1: 55569
+ 2: 55569
-6,5:
0: 3903
-6,6:
- 1: 16454
+ 2: 16454
-6,7:
- 1: 2
+ 2: 2
0: 35968
-6,8:
- 1: 4978
+ 2: 4978
-5,6:
0: 4369
- 1: 16452
+ 2: 16452
-5,7:
0: 14128
- 1: 8
+ 2: 8
-5,8:
0: 1
- 1: 2248
+ 2: 2248
-9,8:
- 1: 15
+ 2: 15
-8,9:
- 1: 8
+ 2: 8
-7,9:
- 1: 19038
+ 2: 19038
-7,10:
- 1: 136
+ 2: 136
-6,9:
- 1: 61440
+ 2: 61440
-6,10:
- 1: 116
+ 2: 116
-5,9:
- 1: 61440
+ 2: 61440
-5,10:
- 1: 196
+ 2: 196
-4,8:
- 1: 29456
+ 2: 29456
-4,9:
- 1: 23118
+ 2: 23118
-4,10:
- 1: 50
+ 2: 50
-12,-4:
- 1: 3712
- 2: 57344
+ 2: 3712
+ 3: 57344
-13,-4:
0: 48896
- 2: 7
- 1: 8
+ 3: 7
+ 2: 8
-12,-3:
0: 1
- 1: 62126
+ 2: 62126
-13,-3:
0: 11
- 2: 59136
- 1: 6144
+ 3: 59136
+ 2: 6144
-12,-2:
- 2: 59185
- 1: 2254
+ 3: 59185
+ 2: 2254
-13,-2:
- 2: 140
- 1: 2114
+ 3: 140
+ 2: 2114
-12,-1:
- 2: 140
- 1: 34816
+ 3: 140
+ 2: 34816
-11,-4:
- 1: 1841
- 2: 61440
+ 2: 1841
+ 3: 61440
-11,-3:
- 1: 61759
+ 2: 61759
-11,-2:
- 1: 5
+ 2: 5
0: 36352
-12,0:
- 1: 35562
+ 2: 35562
-11,-5:
- 1: 8048
+ 2: 8048
-11,-1:
0: 34958
- 1: 8704
+ 2: 8704
-10,-4:
0: 59647
- 2: 4096
+ 3: 4096
-10,-3:
- 1: 61633
+ 2: 61633
-10,-2:
0: 65280
- 1: 12
+ 2: 12
-10,-1:
0: 13311
-10,0:
0: 13105
- 1: 34944
+ 2: 34944
-12,-8:
0: 64991
-12,-9:
@@ -12773,17 +13019,17 @@ entities:
0: 56349
-13,-7:
0: 51404
- 1: 17
+ 2: 17
-12,-6:
0: 52701
-13,-6:
0: 3838
-12,-5:
- 2: 305
- 1: 4800
+ 3: 305
+ 2: 4800
-13,-5:
- 2: 60552
- 1: 4672
+ 3: 60552
+ 2: 4672
-11,-8:
0: 65535
-11,-7:
@@ -12800,7 +13046,7 @@ entities:
0: 61695
-10,-5:
0: 3087
- 1: 256
+ 2: 256
-10,-9:
0: 65287
-12,-12:
@@ -12811,7 +13057,7 @@ entities:
0: 61058
-12,-11:
0: 4367
- 1: 1024
+ 2: 1024
-13,-11:
0: 34958
-12,-10:
@@ -12820,7 +13066,7 @@ entities:
0: 49080
-13,-9:
0: 52424
- 1: 272
+ 2: 272
-11,-10:
0: 65399
-11,-13:
@@ -12829,7 +13075,7 @@ entities:
0: 61152
-11,-11:
0: 14
- 1: 1024
+ 2: 1024
-10,-12:
0: 32738
-10,-11:
@@ -12839,7 +13085,7 @@ entities:
-10,-13:
0: 65294
-12,-15:
- 1: 3
+ 2: 3
0: 30464
-12,-14:
0: 30576
@@ -12849,173 +13095,173 @@ entities:
0: 60629
-11,-15:
0: 7936
- 1: 10
+ 2: 10
-11,-14:
0: 56799
-10,-15:
0: 3968
- 1: 2
+ 2: 2
-10,-14:
0: 61166
-10,-16:
- 1: 16384
+ 2: 16384
-10,-20:
- 1: 4
+ 2: 4
0: 3072
-10,-21:
- 1: 17536
+ 2: 17536
-10,-19:
0: 12
- 1: 1024
+ 2: 1024
-10,-18:
- 1: 4
+ 2: 4
0: 3072
-10,-17:
0: 12
- 1: 1024
+ 2: 1024
-9,-21:
0: 64170
-12,1:
- 1: 65416
+ 2: 65416
-13,1:
- 1: 65392
+ 2: 65392
-12,2:
- 2: 3840
- 1: 61440
+ 3: 3840
+ 2: 61440
-13,2:
- 2: 43008
- 1: 21026
+ 3: 43008
+ 2: 21026
-12,3:
- 2: 3855
- 1: 61440
+ 3: 3855
+ 2: 61440
-13,3:
- 2: 43016
- 1: 21026
+ 3: 43016
+ 2: 21026
-12,4:
- 2: 3855
- 1: 61440
+ 3: 3855
+ 2: 61440
-11,1:
- 1: 63265
+ 2: 63265
0: 8
-11,3:
- 1: 34560
- 2: 2048
+ 2: 34560
+ 3: 2048
-11,0:
0: 52416
-10,1:
0: 51
- 1: 12424
+ 2: 12424
-10,3:
- 2: 49408
- 1: 4096
+ 3: 49408
+ 2: 4096
0: 140
-11,4:
- 1: 15
+ 2: 15
-10,2:
- 1: 290
+ 2: 290
0: 32960
-10,4:
- 1: 8471
- 2: 3816
+ 2: 8471
+ 3: 3816
-13,4:
- 2: 43016
- 1: 21026
+ 3: 43016
+ 2: 21026
-12,5:
- 2: 8207
- 1: 53760
+ 3: 8207
+ 2: 53760
-13,5:
- 2: 8200
- 1: 53794
+ 3: 8200
+ 2: 53794
-12,6:
- 2: 21872
- 1: 8706
+ 3: 21872
+ 2: 8706
-12,7:
- 2: 85
- 1: 61986
+ 3: 85
+ 2: 61986
-12,8:
- 1: 127
+ 2: 127
-13,7:
- 1: 61986
- 2: 85
+ 2: 61986
+ 3: 85
-11,5:
- 1: 61952
+ 2: 61952
-11,7:
- 1: 61440
+ 2: 61440
-11,8:
- 1: 15
+ 2: 15
-11,6:
- 1: 2
+ 2: 2
-10,5:
- 1: 5760
+ 2: 5760
0: 57344
-10,7:
- 1: 61440
+ 2: 61440
-10,8:
- 1: 15
+ 2: 15
-10,6:
- 1: 6
+ 2: 6
-13,8:
- 1: 127
+ 2: 127
-16,-4:
0: 65327
-16,-5:
0: 61440
- 1: 145
+ 2: 145
-16,-3:
0: 65327
-17,-4:
0: 62578
-16,-2:
- 1: 240
+ 2: 240
-16,-1:
- 1: 35071
+ 2: 35071
-17,-1:
- 1: 255
+ 2: 255
-15,-1:
- 1: 9215
+ 2: 9215
-16,0:
- 1: 34952
+ 2: 34952
-15,-4:
0: 24576
- 1: 12
+ 2: 12
-15,-3:
- 1: 60416
+ 2: 60416
-15,-2:
- 1: 55720
+ 2: 55720
-15,-5:
- 1: 59561
+ 2: 59561
-15,0:
- 1: 8995
+ 2: 8995
-14,-4:
0: 65280
- 1: 14
+ 2: 14
-14,-3:
0: 15
- 1: 43776
+ 2: 43776
-14,-2:
- 1: 32682
+ 2: 32682
-14,-1:
- 1: 23
+ 2: 23
-14,-5:
- 1: 43695
+ 2: 43695
-16,-8:
- 1: 10098
+ 2: 10098
-16,-7:
- 1: 8995
+ 2: 8995
-16,-6:
- 1: 4083
+ 2: 4083
-17,-6:
- 1: 36848
+ 2: 36848
-17,-5:
- 1: 72
+ 2: 72
-16,-9:
- 1: 12848
+ 2: 12848
-15,-8:
0: 32631
-15,-6:
- 1: 14196
+ 2: 14196
-15,-7:
- 1: 10240
+ 2: 10240
-14,-8:
0: 30711
-14,-7:
@@ -13023,105 +13269,105 @@ entities:
-14,-6:
0: 4095
-16,-12:
- 1: 16369
+ 2: 16369
-16,-13:
- 1: 4369
- 2: 8738
+ 2: 4369
+ 3: 8738
-17,-12:
- 1: 49137
+ 2: 49137
-16,-11:
- 1: 12850
+ 2: 12850
-16,-10:
- 1: 5272
- 2: 49668
+ 2: 5272
+ 3: 49668
-15,-12:
- 1: 4083
+ 2: 4083
-15,-10:
- 1: 39248
- 2: 160
+ 2: 39248
+ 3: 160
-15,-13:
- 1: 4352
- 2: 8208
+ 2: 4352
+ 3: 8208
0: 8
-14,-12:
- 1: 3888
+ 2: 3888
0: 8
-14,-10:
- 2: 816
- 1: 1
+ 3: 816
+ 2: 1
0: 34944
-15,-9:
- 1: 8
+ 2: 8
-14,-9:
- 1: 273
- 2: 2
+ 2: 273
+ 3: 2
-14,-13:
0: 52428
-16,-16:
- 1: 319
+ 2: 319
-16,-17:
- 1: 12288
+ 2: 12288
-17,-16:
- 1: 20991
- 2: 8192
+ 2: 20991
+ 3: 8192
-16,-15:
0: 287
- 2: 4096
- 1: 8192
+ 3: 4096
+ 2: 8192
-16,-14:
- 2: 12337
- 1: 450
+ 3: 12337
+ 2: 450
-17,-15:
- 1: 33045
- 2: 12834
+ 2: 33045
+ 3: 12834
-17,-14:
- 1: 361
- 2: 45200
+ 2: 361
+ 3: 45200
-17,-13:
- 2: 43690
- 1: 4369
+ 3: 43690
+ 2: 4369
-15,-16:
- 1: 15
+ 2: 15
0: 57344
-15,-15:
0: 239
- 1: 4096
+ 2: 4096
-15,-14:
- 1: 1
+ 2: 1
0: 61120
-14,-16:
- 1: 63
+ 2: 63
0: 53248
-14,-15:
0: 3295
- 1: 4096
+ 2: 4096
-14,-14:
0: 57308
-13,-16:
- 1: 33843
+ 2: 33843
0: 4096
-13,-15:
0: 22387
-20,-4:
- 1: 52428
+ 2: 52428
-20,-5:
- 1: 52424
+ 2: 52424
-20,-3:
- 1: 52428
+ 2: 52428
-20,-2:
- 1: 2252
+ 2: 2252
-19,-4:
- 1: 29184
+ 2: 29184
-19,-3:
- 1: 31744
+ 2: 31744
-19,-2:
- 1: 29596
+ 2: 29596
-19,-1:
- 1: 206
+ 2: 206
-18,-2:
- 1: 39188
+ 2: 39188
-18,-1:
- 1: 255
+ 2: 255
-18,-4:
0: 25792
-18,-3:
@@ -13129,82 +13375,82 @@ entities:
-17,-3:
0: 628
-17,-2:
- 1: 34928
+ 2: 34928
-19,-5:
- 1: 31891
+ 2: 31891
-19,-6:
- 1: 32448
+ 2: 32448
-18,-6:
- 1: 40944
+ 2: 40944
-18,-5:
- 1: 1113
+ 2: 1113
-21,-16:
- 1: 52460
+ 2: 52460
-21,-17:
- 1: 57344
+ 2: 57344
-21,-15:
- 1: 52428
+ 2: 52428
-21,-14:
- 1: 52428
+ 2: 52428
-21,-13:
- 1: 50252
+ 2: 50252
-21,-12:
- 1: 61164
+ 2: 61164
-20,-16:
- 1: 159
- 2: 32768
+ 2: 159
+ 3: 32768
-20,-14:
- 1: 722
- 2: 32800
+ 2: 722
+ 3: 32800
-20,-17:
- 1: 32768
+ 2: 32768
-19,-16:
- 1: 4607
- 2: 40960
+ 2: 4607
+ 3: 40960
-20,-15:
- 2: 34952
+ 3: 34952
-19,-15:
- 1: 273
- 2: 47786
+ 2: 273
+ 3: 47786
-19,-14:
- 2: 45072
- 1: 481
+ 3: 45072
+ 2: 481
-20,-13:
- 2: 34952
+ 3: 34952
-19,-13:
- 1: 4369
- 2: 43690
+ 2: 4369
+ 3: 43690
-19,-17:
- 1: 45056
+ 2: 45056
-19,-12:
- 1: 49137
+ 2: 49137
-18,-16:
- 1: 4607
- 2: 40960
+ 2: 4607
+ 3: 40960
-18,-15:
- 1: 273
- 2: 47786
+ 2: 273
+ 3: 47786
-18,-14:
- 2: 45072
- 1: 481
+ 3: 45072
+ 2: 481
-18,-13:
- 1: 4369
- 2: 43690
+ 2: 4369
+ 3: 43690
-18,-17:
- 1: 45056
+ 2: 45056
-18,-12:
- 1: 49073
+ 2: 49073
-17,-17:
- 1: 45056
+ 2: 45056
1,-4:
0: 1136
- 1: 61440
+ 2: 61440
1,-3:
- 2: 52417
- 1: 4368
+ 3: 52417
+ 2: 4368
1,-2:
- 2: 1
- 1: 240
+ 3: 1
+ 2: 240
0: 61440
1,-1:
0: 65535
@@ -13212,24 +13458,24 @@ entities:
0: 65535
1,0:
0: 15
- 1: 20224
+ 2: 20224
2,-4:
0: 119
- 1: 28672
+ 2: 28672
2,-3:
- 2: 4372
- 1: 17472
+ 3: 4372
+ 2: 17472
2,-2:
- 1: 112
+ 2: 112
0: 61568
- 2: 4
+ 3: 4
2,-1:
0: 32631
2,-5:
0: 65535
2,0:
0: 2063
- 1: 1792
+ 2: 1792
3,-4:
0: 4090
3,-3:
@@ -13315,9 +13561,9 @@ entities:
4,-9:
0: 16151
0,-16:
- 1: 43520
+ 2: 43520
1,-16:
- 1: 45056
+ 2: 45056
1,-15:
0: 65248
1,-14:
@@ -13346,67 +13592,67 @@ entities:
0: 2240
1,-17:
0: 12
- 1: 2048
+ 2: 2048
1,-18:
0: 32768
- 1: 136
+ 2: 136
1,-20:
- 1: 34816
+ 2: 34816
2,-19:
0: 61182
2,-21:
- 1: 7918
+ 2: 7918
0: 16384
2,-20:
0: 20196
2,-18:
0: 61166
3,-21:
- 1: 39167
+ 2: 39167
3,-18:
- 1: 58600
+ 2: 58600
3,-20:
- 1: 34952
+ 2: 34952
4,-20:
- 1: 4112
+ 2: 4112
3,-19:
- 1: 34952
+ 2: 34952
4,-19:
- 1: 4112
+ 2: 4112
4,-18:
- 1: 62960
- 2: 2560
+ 2: 62960
+ 3: 2560
1,1:
- 2: 16657
- 1: 1028
+ 3: 16657
+ 2: 1028
1,2:
0: 65280
- 2: 4
- 1: 8
+ 3: 4
+ 2: 8
1,3:
0: 14207
1,4:
0: 65535
2,1:
- 2: 1911
+ 3: 1911
2,2:
0: 65280
- 1: 4
+ 2: 4
2,3:
0: 49359
- 1: 256
+ 2: 256
2,4:
0: 65535
3,1:
- 1: 4113
+ 2: 4113
0: 52416
3,2:
0: 65484
- 1: 1
+ 2: 1
3,3:
- 0: 63679
+ 0: 55487
3,4:
- 0: 64985
+ 0: 64927
4,0:
0: 56797
4,1:
@@ -13435,25 +13681,25 @@ entities:
0: 30719
3,7:
0: 7
- 1: 17408
- 2: 32768
+ 2: 17408
+ 3: 32768
3,8:
- 1: 36452
- 2: 136
+ 2: 36452
+ 3: 136
4,4:
- 0: 47568
+ 0: 47553
4,5:
0: 16369
4,6:
0: 13107
- 1: 8
+ 2: 8
4,7:
0: 823
- 2: 12288
- 1: 16384
+ 3: 12288
+ 2: 16384
4,8:
- 2: 307
- 1: 16068
+ 3: 307
+ 2: 16068
5,-4:
0: 44987
5,-3:
@@ -13500,7 +13746,7 @@ entities:
0: 15291
5,-8:
0: 13311
- 1: 32768
+ 2: 32768
5,-7:
0: 32627
5,-6:
@@ -13509,9 +13755,9 @@ entities:
0: 7943
6,-8:
0: 35067
- 1: 4096
+ 2: 4096
6,-7:
- 1: 1
+ 2: 1
0: 65416
6,-6:
0: 65520
@@ -13559,7 +13805,7 @@ entities:
0: 12275
7,-13:
0: 4113
- 1: 50176
+ 2: 50176
8,-12:
0: 65520
8,-11:
@@ -13577,54 +13823,54 @@ entities:
6,-14:
0: 15295
6,-16:
- 1: 32768
- 7,-16:
- 1: 14476
2: 32768
+ 7,-16:
+ 2: 14476
+ 3: 32768
7,-15:
0: 64432
7,-14:
0: 53247
7,-17:
- 1: 19596
+ 2: 19596
8,-16:
- 2: 4096
+ 3: 4096
8,-14:
0: 3838
8,-13:
- 1: 36906
+ 2: 36906
4,-21:
- 1: 4112
+ 2: 4112
5,-18:
- 1: 62974
- 2: 2048
+ 2: 62974
+ 3: 2048
5,-19:
- 1: 51200
+ 2: 51200
6,-19:
- 1: 4990
+ 2: 4990
6,-18:
- 1: 62960
- 2: 512
+ 2: 62960
+ 3: 512
6,-20:
- 1: 51200
+ 2: 51200
7,-20:
- 1: 65530
- 2: 4
+ 2: 65530
+ 3: 4
7,-19:
- 1: 17487
+ 2: 17487
7,-18:
- 1: 30068
- 2: 512
+ 2: 30068
+ 3: 512
7,-21:
- 1: 64256
+ 2: 64256
8,-20:
- 1: 29456
+ 2: 29456
8,-19:
- 1: 2255
+ 2: 2255
5,1:
0: 65522
5,2:
- 0: 57130
+ 0: 53034
5,3:
0: 48031
6,1:
@@ -13658,7 +13904,7 @@ entities:
6,5:
0: 36848
6,6:
- 1: 2
+ 2: 2
0: 34952
6,7:
0: 140
@@ -13666,17 +13912,17 @@ entities:
0: 40952
7,6:
0: 221
- 1: 24576
+ 2: 24576
7,7:
0: 1
- 1: 2
+ 2: 2
8,4:
0: 65523
8,5:
0: 4369
8,6:
0: 3327
- 1: 4096
+ 2: 4096
9,-4:
0: 30583
9,-3:
@@ -13691,7 +13937,7 @@ entities:
0: 65339
10,-4:
0: 49425
- 1: 192
+ 2: 192
10,-3:
0: 8191
10,-2:
@@ -13704,7 +13950,7 @@ entities:
0: 48682
11,-1:
0: 59
- 1: 12288
+ 2: 12288
11,-4:
0: 59946
11,-3:
@@ -13713,13 +13959,13 @@ entities:
0: 61175
12,-4:
0: 4367
- 1: 52224
+ 2: 52224
12,-3:
0: 4353
- 1: 1028
+ 2: 1028
12,-2:
0: 4353
- 1: 52420
+ 2: 52420
9,-8:
0: 60943
9,-7:
@@ -13736,9 +13982,9 @@ entities:
0: 47291
10,-7:
0: 14
- 1: 25600
+ 2: 25600
10,-5:
- 1: 33376
+ 2: 33376
11,-8:
0: 25328
11,-7:
@@ -13749,7 +13995,7 @@ entities:
0: 58976
12,-8:
0: 4415
- 1: 51200
+ 2: 51200
12,-7:
0: 65489
12,-6:
@@ -13763,25 +14009,25 @@ entities:
9,-10:
0: 61408
9,-13:
- 1: 4096
+ 2: 4096
10,-12:
0: 4368
10,-10:
0: 48952
10,-13:
- 1: 4368
+ 2: 4368
0: 140
10,-11:
- 1: 8736
+ 2: 8736
11,-11:
0: 21776
11,-10:
0: 28455
11,-12:
- 1: 5456
+ 2: 5456
12,-12:
0: 13107
- 1: 32768
+ 2: 32768
12,-11:
0: 56785
12,-10:
@@ -13789,27 +14035,27 @@ entities:
12,-9:
0: 16157
8,-15:
- 1: 1634
+ 2: 1634
9,-14:
0: 61439
9,-15:
- 1: 17
+ 2: 17
0: 60620
9,-16:
0: 52364
9,-17:
0: 51336
- 1: 32
+ 2: 32
10,-16:
0: 56704
- 1: 2
+ 2: 2
10,-15:
0: 57309
10,-14:
0: 57297
10,-17:
- 2: 34816
- 1: 576
+ 3: 34816
+ 2: 576
11,-16:
0: 65520
11,-15:
@@ -13819,8 +14065,8 @@ entities:
11,-13:
0: 127
11,-17:
- 2: 62208
- 1: 3104
+ 3: 62208
+ 2: 3104
12,-16:
0: 56712
12,-15:
@@ -13830,36 +14076,36 @@ entities:
12,-13:
0: 47935
9,-19:
- 1: 62736
- 2: 2082
+ 2: 62736
+ 3: 2082
9,-20:
- 2: 3136
+ 3: 3136
9,-18:
- 1: 2126
+ 2: 2126
10,-20:
- 1: 1792
+ 2: 1792
10,-18:
- 1: 25862
+ 2: 25862
11,-20:
- 2: 13056
- 1: 50304
+ 3: 13056
+ 2: 50304
11,-19:
- 2: 30583
- 1: 8
+ 3: 30583
+ 2: 8
11,-18:
- 2: 375
- 1: 17920
+ 3: 375
+ 2: 17920
11,-21:
- 1: 6513
- 2: 142
+ 2: 6513
+ 3: 142
12,-20:
- 2: 13107
+ 3: 13107
12,-19:
- 1: 5633
- 2: 24610
+ 2: 5633
+ 3: 24610
12,-18:
- 1: 17425
- 2: 8366
+ 2: 17425
+ 3: 8366
9,1:
0: 8083
9,2:
@@ -13868,7 +14114,7 @@ entities:
0: 65339
10,1:
0: 9010
- 1: 2176
+ 2: 2176
10,2:
0: 56575
10,3:
@@ -13878,38 +14124,38 @@ entities:
11,0:
0: 32624
11,1:
- 1: 16
+ 2: 16
0: 57344
11,2:
0: 65535
11,3:
0: 271
12,0:
- 1: 51393
+ 2: 51393
0: 768
- 2: 1024
+ 3: 1024
12,1:
- 1: 49665
+ 2: 49665
12,2:
0: 30577
12,3:
0: 7
- 1: 17408
+ 2: 17408
9,6:
0: 119
- 1: 8192
+ 2: 8192
9,5:
0: 28398
10,4:
0: 62256
- 1: 128
+ 2: 128
10,5:
0: 511
- 1: 49152
+ 2: 49152
10,6:
- 1: 3
+ 2: 3
11,4:
- 1: 80
+ 2: 80
0: 61440
11,5:
0: 44799
@@ -13917,661 +14163,661 @@ entities:
0: 170
12,4:
0: 61440
- 1: 68
+ 2: 68
12,5:
0: 241
- 1: 24576
+ 2: 24576
12,-1:
- 1: 4
+ 2: 4
13,-4:
0: 1
- 1: 64
+ 2: 64
13,-2:
- 1: 4080
+ 2: 4080
13,-5:
0: 62451
14,-2:
- 1: 20478
+ 2: 20478
14,-5:
0: 12336
14,-1:
- 2: 43690
- 1: 17476
+ 3: 43690
+ 2: 17476
14,0:
- 2: 1038
- 1: 19264
+ 3: 1038
+ 2: 19264
15,-2:
- 1: 20478
+ 2: 20478
15,-1:
- 2: 43690
- 1: 17476
+ 3: 43690
+ 2: 17476
15,0:
- 2: 1038
- 1: 19264
+ 3: 1038
+ 2: 19264
16,-2:
- 1: 20478
+ 2: 20478
13,-8:
0: 3
- 1: 17476
+ 2: 17476
13,-7:
0: 62448
13,-6:
0: 65523
13,-9:
- 1: 16388
+ 2: 16388
0: 257
14,-7:
0: 12336
14,-6:
- 1: 8224
+ 2: 8224
13,-12:
- 1: 64512
+ 2: 64512
13,-11:
0: 65520
13,-10:
0: 4607
- 1: 49152
+ 2: 49152
13,-13:
0: 13075
- 1: 2176
+ 2: 2176
14,-12:
- 1: 36864
+ 2: 36864
0: 238
14,-11:
0: 4368
- 2: 19656
- 1: 32768
+ 3: 19656
+ 2: 32768
14,-10:
0: 17
- 2: 2188
- 1: 64
+ 3: 2188
+ 2: 64
14,-13:
0: 58606
15,-11:
- 2: 401
- 1: 4710
+ 3: 401
+ 2: 4710
15,-10:
- 2: 48
- 1: 3784
+ 3: 48
+ 2: 3784
15,-12:
- 1: 8712
+ 2: 8712
15,-13:
- 1: 52832
+ 2: 52832
16,-12:
- 1: 8435
- 2: 35328
+ 2: 8435
+ 3: 35328
16,-11:
- 2: 10937
- 1: 36864
+ 3: 10937
+ 2: 36864
0: 1024
16,-10:
- 2: 383
- 1: 2176
+ 3: 383
+ 2: 2176
12,-17:
0: 34880
- 1: 162
+ 2: 162
13,-16:
0: 4353
- 1: 17408
+ 2: 17408
13,-15:
0: 12561
- 1: 2116
+ 2: 2116
13,-14:
0: 48123
13,-17:
0: 4096
- 2: 16
- 1: 230
+ 3: 16
+ 2: 230
14,-14:
0: 65535
14,-16:
- 1: 28
+ 2: 28
0: 8192
14,-17:
- 1: 4096
- 2: 2
+ 2: 4096
+ 3: 2
14,-15:
0: 57890
15,-16:
- 1: 32775
- 2: 2176
+ 2: 32775
+ 3: 2176
15,-14:
0: 10016
15,-15:
- 1: 28360
+ 2: 28360
15,-17:
- 1: 34944
+ 2: 34944
16,-16:
- 2: 61105
- 1: 14
+ 3: 61105
+ 2: 14
16,-15:
- 2: 119
+ 3: 119
16,-13:
- 1: 4098
+ 2: 4098
12,-21:
- 1: 20480
- 2: 8977
+ 2: 20480
+ 3: 8977
13,-18:
- 2: 8448
- 1: 4096
+ 3: 8448
+ 2: 4096
14,-19:
- 1: 14540
+ 2: 14540
14,-18:
- 1: 21789
- 2: 2
+ 2: 21789
+ 3: 2
14,-20:
- 1: 60416
- 2: 192
+ 2: 60416
+ 3: 192
15,-19:
- 2: 57102
- 1: 8192
+ 3: 57102
+ 2: 8192
15,-18:
- 2: 19
- 1: 32780
+ 3: 19
+ 2: 32780
15,-21:
- 2: 7680
+ 3: 7680
0: 64
15,-20:
- 2: 3686
+ 3: 3686
16,-20:
- 2: 63235
- 1: 2216
+ 3: 63235
+ 2: 2216
16,-19:
- 2: 48031
+ 3: 48031
16,-18:
- 2: 139
- 1: 31744
+ 3: 139
+ 2: 31744
16,-17:
- 2: 49022
- 1: 16384
+ 3: 49022
+ 2: 16384
13,0:
- 1: 20288
+ 2: 20288
13,2:
- 1: 65280
+ 2: 65280
14,2:
- 1: 65348
- 2: 10
+ 2: 65348
+ 3: 10
14,1:
- 2: 43694
- 1: 17472
+ 3: 43694
+ 2: 17472
14,3:
- 1: 14
+ 2: 14
15,2:
- 1: 65348
- 2: 10
+ 2: 65348
+ 3: 10
15,1:
- 2: 43694
- 1: 17472
+ 3: 43694
+ 2: 17472
15,3:
- 1: 14
+ 2: 14
16,0:
- 1: 19264
- 2: 1038
+ 2: 19264
+ 3: 1038
16,2:
- 1: 65348
- 2: 10
+ 2: 65348
+ 3: 10
12,6:
- 1: 2
+ 2: 2
16,-1:
- 2: 43690
- 1: 17476
+ 3: 43690
+ 2: 17476
17,-2:
- 1: 20478
+ 2: 20478
17,-1:
- 2: 43690
- 1: 17476
+ 3: 43690
+ 2: 17476
17,0:
- 2: 1038
- 1: 19264
+ 3: 1038
+ 2: 19264
17,-3:
- 1: 32768
+ 2: 32768
18,-3:
- 1: 14316
+ 2: 14316
18,-2:
- 1: 59185
+ 2: 59185
18,-1:
- 1: 34956
+ 2: 34956
18,-4:
- 1: 32768
+ 2: 32768
19,-4:
- 1: 14316
+ 2: 14316
19,-3:
- 1: 1
+ 2: 1
19,-1:
- 1: 4407
+ 2: 4407
18,0:
- 1: 44456
- 2: 512
+ 2: 44456
+ 3: 512
19,0:
- 1: 13105
+ 2: 13105
19,-2:
- 1: 60544
+ 2: 60544
19,-5:
- 1: 32896
+ 2: 32896
20,-2:
- 1: 311
+ 2: 311
20,-7:
- 2: 24576
+ 3: 24576
19,-7:
- 1: 32768
+ 2: 32768
20,-6:
- 1: 16912
- 2: 36078
+ 2: 16912
+ 3: 36078
19,-6:
- 1: 200
+ 2: 200
20,-5:
- 1: 784
- 2: 60552
+ 2: 784
+ 3: 60552
20,-4:
- 2: 18022
+ 3: 18022
21,-6:
- 2: 18367
- 1: 2048
+ 3: 18367
+ 2: 2048
21,-5:
- 2: 55735
- 1: 8
+ 3: 55735
+ 2: 8
21,-8:
- 1: 546
- 2: 34952
+ 2: 546
+ 3: 34952
21,-7:
- 2: 34958
- 1: 512
+ 3: 34958
+ 2: 512
21,-4:
- 2: 31612
+ 3: 31612
21,-9:
- 2: 36352
- 1: 231
+ 3: 36352
+ 2: 231
22,-8:
- 2: 57339
- 1: 4
+ 3: 57339
+ 2: 4
22,-7:
- 2: 4271
- 1: 57600
+ 3: 4271
+ 2: 57600
22,-6:
- 2: 60621
- 1: 16
+ 3: 60621
+ 2: 16
22,-5:
- 1: 1
- 2: 65534
+ 2: 1
+ 3: 65534
22,-9:
- 2: 40908
- 1: 16434
+ 3: 40908
+ 2: 16434
22,-4:
- 2: 15031
- 1: 8
+ 3: 15031
+ 2: 8
23,-8:
- 2: 65295
+ 3: 65295
23,-7:
- 1: 13056
- 2: 52462
+ 2: 13056
+ 3: 52462
23,-6:
- 2: 34511
- 1: 2096
+ 3: 34511
+ 2: 2096
23,-5:
- 2: 52215
- 1: 12288
+ 3: 52215
+ 2: 12288
0: 1024
23,-9:
- 2: 60943
+ 3: 60943
0: 144
23,-4:
- 2: 4
- 1: 336
+ 3: 4
+ 2: 336
24,-8:
- 2: 4899
+ 3: 4899
24,-7:
- 2: 4371
+ 3: 4371
24,-6:
- 2: 275
- 1: 4640
+ 3: 275
+ 2: 4640
16,1:
- 2: 43694
- 1: 17472
+ 3: 43694
+ 2: 17472
16,3:
- 1: 14
+ 2: 14
17,2:
- 1: 65348
- 2: 10
+ 2: 65348
+ 3: 10
17,1:
- 2: 43694
- 1: 17472
+ 3: 43694
+ 2: 17472
17,3:
- 1: 14
+ 2: 14
18,2:
- 1: 65416
+ 2: 65416
18,1:
- 1: 34952
+ 2: 34952
19,1:
- 1: 4369
+ 2: 4369
19,2:
- 1: 13073
+ 2: 13073
18,3:
- 1: 8
+ 2: 8
19,3:
- 1: 3
+ 2: 3
24,-9:
- 2: 12545
+ 3: 12545
0: 16
4,-24:
- 1: 13107
+ 2: 13107
4,-25:
- 1: 4096
+ 2: 4096
3,-24:
- 1: 224
- 2: 12567
+ 2: 224
+ 3: 12567
4,-23:
- 1: 4915
+ 2: 4915
3,-23:
- 2: 4415
- 1: 34816
- 4,-22:
- 1: 4369
- 3,-22:
- 1: 35016
- 2: 1
- 8,-21:
- 1: 4352
- 17,-12:
- 2: 53248
- 1: 11980
- 17,-11:
- 2: 40129
- 1: 24588
- 17,-10:
- 1: 199
- 17,-13:
- 1: 17476
- 18,-12:
- 2: 61426
- 1: 4096
- 18,-11:
- 2: 30591
- 18,-10:
- 1: 112
- 18,-13:
- 1: 51336
- 19,-12:
- 2: 65520
- 19,-11:
- 2: 32766
- 1: 32768
- 19,-13:
- 1: 4096
- 19,-10:
- 2: 2
- 20,-12:
- 2: 4352
- 1: 8940
- 20,-11:
- 2: 32784
- 1: 14790
- 11,-23:
- 2: 49152
- 11,-22:
- 2: 43148
- 1: 1088
- 12,-23:
- 2: 4096
- 12,-22:
- 2: 273
- -4,-24:
- 2: 238
- 1: 19456
- -4,-25:
- 2: 57344
- -4,-23:
- 1: 52292
- 2: 128
- -4,-22:
- 1: 52428
- -3,-24:
- 1: 487
- 2: 63000
- -3,-23:
- 2: 51071
- 1: 4096
- -3,-25:
- 1: 11840
- 2: 49152
- -3,-22:
- 2: 4
- 1: 34816
- -2,-24:
- 2: 49147
- -2,-23:
- 2: 49416
- 1: 13024
- -2,-22:
- 1: 13106
- 2: 68
- -2,-25:
+ 3: 4415
2: 34816
- 1: 640
- -1,-24:
- 2: 65535
- -1,-23:
- 1: 248
- 2: 39426
- -1,-22:
- 1: 48
- 2: 32974
- -1,-25:
- 2: 7492
- 1: 178
- 0,-24:
- 2: 30481
- 1: 35054
- 0,-23:
- 1: 58
- 2: 57284
- 0,-22:
- 2: 29439
- -16,8:
- 1: 204
- -16,7:
- 1: 51336
- -15,8:
- 1: 31
- -15,7:
- 1: 61713
- -14,8:
- 1: 127
- -14,7:
- 1: 61986
- 2: 85
- -3,9:
- 1: 18
- -16,2:
- 1: 52360
- -16,3:
- 1: 52364
- -16,4:
- 1: 52364
- -16,1:
- 1: 34952
- -15,1:
- 1: 65315
- -15,2:
- 1: 61713
- 2: 2048
- -15,3:
- 1: 61713
- 2: 2056
- -15,4:
- 1: 61713
- 2: 2056
- -14,1:
- 1: 65280
- -14,2:
- 2: 36608
- 1: 28672
- -14,3:
- 2: 36623
- 1: 28672
- -14,4:
- 2: 36623
- 1: 28672
- 0,-21:
- 2: 2
- 0,-25:
- 1: 43679
- 2: 256
- 1,-24:
- 1: 547
- 2: 60620
- 1,-23:
- 2: 52730
- 1,-22:
- 1: 96
- 1,-25:
- 1: 8449
- 2: 50910
- 2,-24:
- 2: 61438
- 2,-23:
- 2: 32552
- 2,-22:
- 2: 231
- 1: 60928
- 2,-25:
- 2: 24576
- 1: 3329
- 24,-10:
+ 4,-22:
+ 2: 4369
+ 3,-22:
+ 2: 35016
+ 3: 1
+ 8,-21:
+ 2: 4352
+ 17,-12:
+ 3: 53248
+ 2: 11980
+ 17,-11:
+ 3: 40129
+ 2: 24588
+ 17,-10:
+ 2: 199
+ 17,-13:
+ 2: 17476
+ 18,-12:
+ 3: 61426
2: 4096
- 23,-10:
- 1: 52851
- 2: 12288
- -16,5:
- 1: 52364
- -16,6:
- 1: 34956
- -15,5:
- 1: 46353
- 2: 16392
- -15,6:
- 1: 4373
- -14,5:
- 2: 8207
- 1: 53760
- -14,6:
- 2: 21872
- 1: 8706
- -13,6:
- 2: 21872
- 1: 8706
- 20,-13:
- 1: 12850
- 2: 257
- 20,-10:
- 1: 35879
- 2: 8
- 21,-12:
- 1: 52851
- 21,-11:
- 1: 264
- 2: 4096
- 21,-10:
- 2: 33
- 1: 29124
- 22,-12:
- 1: 4096
- 22,-11:
- 1: 52851
- 22,-10:
- 1: 52792
- 23,-11:
- 1: 4096
- 16,-21:
- 2: 48058
- 16,-14:
- 1: 2
- 17,-16:
- 1: 1
- 2: 65534
- 17,-15:
- 2: 34021
- 1: 25360
- 17,-17:
- 2: 65505
- 17,-14:
- 1: 17612
- 18,-16:
- 2: 62463
- 1: 3072
- 18,-15:
- 2: 45055
- 1: 20480
- 18,-14:
- 1: 35226
- 18,-17:
- 2: 63482
- 19,-16:
- 1: 4352
- 19,-15:
- 2: 273
- 0: 4096
- 1: 25088
- 19,-14:
- 1: 2671
- 2: 128
- 20,-14:
- 1: 12816
- 2: 256
- 17,-20:
- 2: 34989
- 1: 22032
- 17,-19:
- 1: 34055
- 2: 2240
- 17,-18:
- 1: 28417
- 2: 16
- 17,-21:
- 2: 56817
- 1: 4
- 18,-20:
- 2: 65527
- 18,-19:
- 2: 56784
- 18,-18:
- 1: 1999
- 2: 61440
- 18,-21:
- 2: 12544
- 19,-19:
- 2: 4384
- 19,-18:
- 1: 4097
- 2: 34
- 19,-17:
- 1: 256
- 16,-22:
- 1: 3168
+ 18,-11:
+ 3: 30591
+ 18,-10:
+ 2: 112
+ 18,-13:
+ 2: 51336
+ 19,-12:
+ 3: 65520
+ 19,-11:
+ 3: 32766
2: 32768
- 17,-22:
- 2: 12288
- 20,-3:
- 1: 60544
- 2: 8
- 21,-3:
+ 19,-13:
+ 2: 4096
+ 19,-10:
+ 3: 2
+ 20,-12:
+ 3: 4352
+ 2: 8940
+ 20,-11:
+ 3: 32784
+ 2: 14790
+ 11,-23:
+ 3: 49152
+ 11,-22:
+ 3: 43148
+ 2: 1088
+ 12,-23:
+ 3: 4096
+ 12,-22:
+ 3: 273
+ -4,-24:
+ 3: 238
+ 2: 19456
+ -4,-25:
+ 3: 57344
+ -4,-23:
+ 2: 52292
+ 3: 128
+ -4,-22:
+ 2: 52428
+ -3,-24:
+ 2: 487
+ 3: 63000
+ -3,-23:
+ 3: 51071
+ 2: 4096
+ -3,-25:
+ 2: 11840
+ 3: 49152
+ -3,-22:
+ 3: 4
+ 2: 34816
+ -2,-24:
+ 3: 49147
+ -2,-23:
+ 3: 49416
+ 2: 13024
+ -2,-22:
+ 2: 13106
+ 3: 68
+ -2,-25:
+ 3: 34816
+ 2: 640
+ -1,-24:
+ 3: 65535
+ -1,-23:
+ 2: 248
+ 3: 39426
+ -1,-22:
+ 2: 48
+ 3: 32974
+ -1,-25:
+ 3: 7492
+ 2: 178
+ 0,-24:
+ 3: 30481
+ 2: 35054
+ 0,-23:
+ 2: 58
+ 3: 57284
+ 0,-22:
+ 3: 29439
+ -16,8:
+ 2: 204
+ -16,7:
+ 2: 51336
+ -15,8:
+ 2: 31
+ -15,7:
+ 2: 61713
+ -14,8:
2: 127
- 1: 256
+ -14,7:
+ 2: 61986
+ 3: 85
+ -3,9:
+ 2: 18
+ -16,2:
+ 2: 52360
+ -16,3:
+ 2: 52364
+ -16,4:
+ 2: 52364
+ -16,1:
+ 2: 34952
+ -15,1:
+ 2: 65315
+ -15,2:
+ 2: 61713
+ 3: 2048
+ -15,3:
+ 2: 61713
+ 3: 2056
+ -15,4:
+ 2: 61713
+ 3: 2056
+ -14,1:
+ 2: 65280
+ -14,2:
+ 3: 36608
+ 2: 28672
+ -14,3:
+ 3: 36623
+ 2: 28672
+ -14,4:
+ 3: 36623
+ 2: 28672
+ 0,-21:
+ 3: 2
+ 0,-25:
+ 2: 43679
+ 3: 256
+ 1,-24:
+ 2: 547
+ 3: 60620
+ 1,-23:
+ 3: 52730
+ 1,-22:
+ 2: 96
+ 1,-25:
+ 2: 8449
+ 3: 50910
+ 2,-24:
+ 3: 61438
+ 2,-23:
+ 3: 32552
+ 2,-22:
+ 3: 231
+ 2: 60928
+ 2,-25:
+ 3: 24576
+ 2: 3329
+ 24,-10:
+ 3: 4096
+ 23,-10:
+ 2: 52851
+ 3: 12288
+ -16,5:
+ 2: 52364
+ -16,6:
+ 2: 34956
+ -15,5:
+ 2: 46353
+ 3: 16392
+ -15,6:
+ 2: 4373
+ -14,5:
+ 3: 8207
+ 2: 53760
+ -14,6:
+ 3: 21872
+ 2: 8706
+ -13,6:
+ 3: 21872
+ 2: 8706
+ 20,-13:
+ 2: 12850
+ 3: 257
+ 20,-10:
+ 2: 35879
+ 3: 8
+ 21,-12:
+ 2: 52851
+ 21,-11:
+ 2: 264
+ 3: 4096
+ 21,-10:
+ 3: 33
+ 2: 29124
+ 22,-12:
+ 2: 4096
+ 22,-11:
+ 2: 52851
+ 22,-10:
+ 2: 52792
+ 23,-11:
+ 2: 4096
+ 16,-21:
+ 3: 48058
+ 16,-14:
+ 2: 2
+ 17,-16:
+ 2: 1
+ 3: 65534
+ 17,-15:
+ 3: 34021
+ 2: 25360
+ 17,-17:
+ 3: 65505
+ 17,-14:
+ 2: 17612
+ 18,-16:
+ 3: 62463
+ 2: 3072
+ 18,-15:
+ 3: 45055
+ 2: 20480
+ 18,-14:
+ 2: 35226
+ 18,-17:
+ 3: 63482
+ 19,-16:
+ 2: 4352
+ 19,-15:
+ 3: 273
+ 0: 4096
+ 2: 25088
+ 19,-14:
+ 2: 2671
+ 3: 128
+ 20,-14:
+ 2: 12816
+ 3: 256
+ 17,-20:
+ 3: 34989
+ 2: 22032
+ 17,-19:
+ 2: 34055
+ 3: 2240
+ 17,-18:
+ 2: 28417
+ 3: 16
+ 17,-21:
+ 3: 56817
+ 2: 4
+ 18,-20:
+ 3: 65527
+ 18,-19:
+ 3: 56784
+ 18,-18:
+ 2: 1999
+ 3: 61440
+ 18,-21:
+ 3: 12544
+ 19,-19:
+ 3: 4384
+ 19,-18:
+ 2: 4097
+ 3: 34
+ 19,-17:
+ 2: 256
+ 16,-22:
+ 2: 3168
+ 3: 32768
+ 17,-22:
+ 3: 12288
+ 20,-3:
+ 2: 60544
+ 3: 8
+ 21,-3:
+ 3: 127
+ 2: 256
22,-3:
- 2: 37
+ 3: 37
-1,-26:
- 1: 24576
+ 2: 24576
0,-26:
- 1: 52352
+ 2: 52352
1,-26:
- 1: 4672
- 2: 60416
+ 2: 4672
+ 3: 60416
2,-26:
- 2: 29440
- 1: 35856
+ 3: 29440
+ 2: 35856
3,-25:
- 1: 768
+ 2: 768
-20,-12:
- 1: 36848
+ 2: 36848
uniqueMixes:
- volume: 2500
temperature: 293.15
@@ -14588,6 +14834,21 @@ entities:
- 0
- 0
- 0
+ - volume: 2500
+ temperature: 235
+ moles:
+ - 27.225372
+ - 102.419266
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
- volume: 2500
immutable: True
moles:
@@ -14618,21 +14879,6 @@ entities:
- 0
- 0
- 0
- - volume: 2500
- temperature: 235
- moles:
- - 27.225372
- - 102.419266
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- volume: 2500
temperature: 293.15
moles:
@@ -16031,7 +16277,6 @@ entities:
parent: 2
- type: DeviceList
devices:
- - 18877
- 15273
- 15274
- 15275
@@ -16174,7 +16419,6 @@ entities:
- 22331
- 13236
- 13367
- - 17424
- 12246
- 5420
- 12056
@@ -16257,20 +16501,19 @@ entities:
parent: 2
- type: DeviceList
devices:
- - 22454
- - 22451
- - 22450
- - 22440
- - 22441
- - 22455
- 18412
- 18410
- 21907
- 21360
- 167
- - 17823
- - 5591
+ - 22454
- 5597
+ - 5591
+ - 17823
+ - 22450
+ - 22451
+ - 22440
+ - 12602
- uid: 22510
components:
- type: Transform
@@ -16329,6 +16572,17 @@ entities:
- type: DeviceList
devices:
- 23477
+ - uid: 23586
+ components:
+ - type: MetaData
+ name: Mail Air Alarm
+ - type: Transform
+ pos: 17.5,16.5
+ parent: 2
+ - type: DeviceList
+ devices:
+ - 23585
+ - 23581
- proto: AirAlarmFreezer
entities:
- uid: 22282
@@ -16603,6 +16857,16 @@ entities:
- type: Transform
pos: 8.5,-94.5
parent: 2
+ - uid: 18069
+ components:
+ - type: Transform
+ pos: 17.5,12.5
+ parent: 2
+ - uid: 18071
+ components:
+ - type: Transform
+ pos: 13.5,16.5
+ parent: 2
- uid: 19207
components:
- type: Transform
@@ -18370,16 +18634,16 @@ entities:
- type: Transform
pos: -5.5,24.5
parent: 2
- - uid: 1361
- components:
- - type: Transform
- pos: 13.5,15.5
- parent: 2
- uid: 5075
components:
- type: Transform
pos: -3.5,24.5
parent: 2
+ - uid: 13002
+ components:
+ - type: Transform
+ pos: 21.5,12.5
+ parent: 2
- proto: AirlockMaintChapelLocked
entities:
- uid: 1514
@@ -18468,6 +18732,11 @@ entities:
- type: Transform
pos: -13.5,19.5
parent: 2
+ - uid: 5685
+ components:
+ - type: Transform
+ pos: 18.5,10.5
+ parent: 2
- uid: 5965
components:
- type: Transform
@@ -18503,11 +18772,6 @@ entities:
- type: Transform
pos: 5.5,-42.5
parent: 2
- - uid: 11449
- components:
- - type: Transform
- pos: 18.5,10.5
- parent: 2
- uid: 13217
components:
- type: Transform
@@ -18771,13 +19035,6 @@ entities:
- type: Transform
pos: 25.5,-39.5
parent: 2
-- proto: AirlockMaintSalvageLocked
- entities:
- - uid: 16176
- components:
- - type: Transform
- pos: 15.5,16.5
- parent: 2
- proto: AirlockMaintSecLocked
entities:
- uid: 2378
@@ -18991,6 +19248,11 @@ entities:
- type: Transform
pos: 13.5,19.5
parent: 2
+ - uid: 11440
+ components:
+ - type: Transform
+ pos: 15.5,17.5
+ parent: 2
- uid: 14287
components:
- type: Transform
@@ -19995,9 +20257,6 @@ entities:
- type: Transform
pos: 39.5,20.5
parent: 2
- - type: DeviceNetwork
- deviceLists:
- - 22439
- uid: 22598
components:
- type: Transform
@@ -20779,6 +21038,14 @@ entities:
rot: 3.141592653589793 rad
pos: 15.5,-54.5
parent: 2
+ - uid: 23595
+ components:
+ - type: MetaData
+ name: Mail Room APC
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 14.5,14.5
+ parent: 2
- proto: APCElectronics
entities:
- uid: 2246
@@ -27766,11 +28033,6 @@ entities:
- type: Transform
pos: -35.5,-17.5
parent: 2
- - uid: 12704
- components:
- - type: Transform
- pos: 16.5,12.5
- parent: 2
- uid: 14193
components:
- type: Transform
@@ -27818,12 +28080,6 @@ entities:
rot: 3.141592653589793 rad
pos: 33.5,15.5
parent: 2
- - uid: 12651
- components:
- - type: Transform
- rot: 3.141592653589793 rad
- pos: 15.5,12.5
- parent: 2
- proto: BarSignTheLightbulb
entities:
- uid: 1562
@@ -28677,7 +28933,7 @@ entities:
- uid: 11463
components:
- type: Transform
- pos: 17.329037,15.739432
+ pos: 15.719751,14.547237
parent: 2
- proto: BoxEvidenceMarkers
entities:
@@ -30465,6 +30721,11 @@ entities:
- type: Transform
pos: -35.5,-52.5
parent: 2
+ - uid: 1912
+ components:
+ - type: Transform
+ pos: 19.5,10.5
+ parent: 2
- uid: 1955
components:
- type: Transform
@@ -30635,6 +30896,11 @@ entities:
- type: Transform
pos: -25.5,-16.5
parent: 2
+ - uid: 2188
+ components:
+ - type: Transform
+ pos: 20.5,14.5
+ parent: 2
- uid: 2192
components:
- type: Transform
@@ -30920,6 +31186,11 @@ entities:
- type: Transform
pos: -9.5,-16.5
parent: 2
+ - uid: 2511
+ components:
+ - type: Transform
+ pos: 20.5,10.5
+ parent: 2
- uid: 2512
components:
- type: Transform
@@ -31010,6 +31281,11 @@ entities:
- type: Transform
pos: -23.5,-8.5
parent: 2
+ - uid: 2730
+ components:
+ - type: Transform
+ pos: 21.5,14.5
+ parent: 2
- uid: 2741
components:
- type: Transform
@@ -32975,11 +33251,6 @@ entities:
- type: Transform
pos: 21.5,10.5
parent: 2
- - uid: 8600
- components:
- - type: Transform
- pos: 15.5,17.5
- parent: 2
- uid: 8607
components:
- type: Transform
@@ -39140,26 +39411,6 @@ entities:
- type: Transform
pos: 39.5,18.5
parent: 2
- - uid: 18069
- components:
- - type: Transform
- pos: 20.5,11.5
- parent: 2
- - uid: 18070
- components:
- - type: Transform
- pos: 20.5,12.5
- parent: 2
- - uid: 18071
- components:
- - type: Transform
- pos: 20.5,13.5
- parent: 2
- - uid: 18072
- components:
- - type: Transform
- pos: 20.5,10.5
- parent: 2
- uid: 18081
components:
- type: Transform
@@ -42735,11 +42986,6 @@ entities:
- type: Transform
pos: 32.5,14.5
parent: 2
- - uid: 22500
- components:
- - type: Transform
- pos: 20.5,14.5
- parent: 2
- uid: 22541
components:
- type: Transform
@@ -43150,6 +43396,46 @@ entities:
- type: Transform
pos: 14.5,-46.5
parent: 2
+ - uid: 23573
+ components:
+ - type: Transform
+ pos: 16.5,14.5
+ parent: 2
+ - uid: 23574
+ components:
+ - type: Transform
+ pos: 15.5,15.5
+ parent: 2
+ - uid: 23575
+ components:
+ - type: Transform
+ pos: 15.5,16.5
+ parent: 2
+ - uid: 23576
+ components:
+ - type: Transform
+ pos: 19.5,13.5
+ parent: 2
+ - uid: 23577
+ components:
+ - type: Transform
+ pos: 19.5,12.5
+ parent: 2
+ - uid: 23594
+ components:
+ - type: Transform
+ pos: 18.5,10.5
+ parent: 2
+ - uid: 23604
+ components:
+ - type: Transform
+ pos: 15.5,14.5
+ parent: 2
+ - uid: 23605
+ components:
+ - type: Transform
+ pos: 14.5,14.5
+ parent: 2
- proto: CableApcStack
entities:
- uid: 1898
@@ -43189,11 +43475,6 @@ entities:
- type: Transform
pos: 48.56237,-11.409377
parent: 2
- - uid: 20122
- components:
- - type: Transform
- pos: 15.51598,13.566172
- parent: 2
- proto: CablecuffsBroken
entities:
- uid: 2226
@@ -55287,6 +55568,46 @@ entities:
- type: Transform
pos: 14.5,-46.5
parent: 2
+ - uid: 23596
+ components:
+ - type: Transform
+ pos: 15.5,20.5
+ parent: 2
+ - uid: 23597
+ components:
+ - type: Transform
+ pos: 15.5,19.5
+ parent: 2
+ - uid: 23598
+ components:
+ - type: Transform
+ pos: 15.5,18.5
+ parent: 2
+ - uid: 23599
+ components:
+ - type: Transform
+ pos: 15.5,17.5
+ parent: 2
+ - uid: 23600
+ components:
+ - type: Transform
+ pos: 15.5,16.5
+ parent: 2
+ - uid: 23601
+ components:
+ - type: Transform
+ pos: 15.5,15.5
+ parent: 2
+ - uid: 23602
+ components:
+ - type: Transform
+ pos: 15.5,14.5
+ parent: 2
+ - uid: 23603
+ components:
+ - type: Transform
+ pos: 14.5,14.5
+ parent: 2
- proto: CableMVStack
entities:
- uid: 3393
@@ -55482,6 +55803,13 @@ entities:
- type: Transform
pos: -5.5,-10.5
parent: 2
+- proto: CargoMailTeleporter
+ entities:
+ - uid: 17592
+ components:
+ - type: Transform
+ pos: 19.5,15.5
+ parent: 2
- proto: Carpet
entities:
- uid: 752
@@ -62361,12 +62689,6 @@ entities:
rot: 3.141592653589793 rad
pos: -8.486219,-26.40157
parent: 2
- - uid: 2730
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 18.482578,12.543639
- parent: 2
- uid: 2878
components:
- type: Transform
@@ -64003,6 +64325,13 @@ entities:
- type: Transform
pos: 19.452253,-58.458893
parent: 2
+- proto: ClothingHeadHatBunny
+ entities:
+ - uid: 23591
+ components:
+ - type: Transform
+ pos: 17.86101,15.533201
+ parent: 2
- proto: ClothingHeadHatCargosoft
entities:
- uid: 8997
@@ -64010,6 +64339,11 @@ entities:
- type: Transform
pos: 0.18218291,23.608202
parent: 2
+ - uid: 23590
+ components:
+ - type: Transform
+ pos: 17.319075,15.710407
+ parent: 2
- proto: ClothingHeadHatChef
entities:
- uid: 3264
@@ -64458,6 +64792,13 @@ entities:
- type: Transform
pos: 40.502384,12.611003
parent: 2
+- proto: ClothingOuterWinterCargo
+ entities:
+ - uid: 23589
+ components:
+ - type: Transform
+ pos: 16.506172,13.55266
+ parent: 2
- proto: ClothingOuterWinterChem
entities:
- uid: 15305
@@ -64519,6 +64860,18 @@ entities:
- type: Transform
pos: -10.521948,19.518375
parent: 2
+- proto: ClothingShoesSkates
+ entities:
+ - uid: 11449
+ components:
+ - type: Transform
+ pos: 21.366997,15.569313
+ parent: 2
+ - uid: 17424
+ components:
+ - type: Transform
+ pos: 21.606699,15.433804
+ parent: 2
- proto: ClothingUnderSocksCoder
entities:
- uid: 6471
@@ -65064,12 +65417,6 @@ entities:
rot: -1.5707963267948966 rad
pos: 2.5,-84.5
parent: 2
- - uid: 2188
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 15.5,14.5
- parent: 2
- uid: 6515
components:
- type: Transform
@@ -65984,11 +66331,6 @@ entities:
parent: 2
- proto: CrateFilledSpawner
entities:
- - uid: 5411
- components:
- - type: Transform
- pos: 21.5,14.5
- parent: 2
- uid: 6111
components:
- type: Transform
@@ -67323,6 +67665,12 @@ entities:
rot: 3.141592653589793 rad
pos: -16.5,-22.5
parent: 2
+ - uid: 4932
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 20.5,12.5
+ parent: 2
- uid: 5056
components:
- type: Transform
@@ -67352,6 +67700,12 @@ entities:
rot: 1.5707963267948966 rad
pos: -25.5,2.5
parent: 2
+ - uid: 5448
+ components:
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 14.5,12.5
+ parent: 2
- uid: 5679
components:
- type: Transform
@@ -67488,11 +67842,10 @@ entities:
- type: Transform
pos: 36.5,-25.5
parent: 2
- - uid: 13070
+ - uid: 13006
components:
- type: Transform
- rot: -1.5707963267948966 rad
- pos: 20.5,10.5
+ pos: 14.5,20.5
parent: 2
- uid: 14594
components:
@@ -67590,12 +67943,6 @@ entities:
- type: Transform
pos: 12.5,22.5
parent: 2
- - uid: 17512
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 12.5,20.5
- parent: 2
- uid: 17513
components:
- type: Transform
@@ -67798,6 +68145,12 @@ entities:
rot: 1.5707963267948966 rad
pos: 10.5,-21.5
parent: 2
+ - uid: 5389
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 12.5,20.5
+ parent: 2
- uid: 5447
components:
- type: Transform
@@ -68067,6 +68420,12 @@ entities:
rot: 1.5707963267948966 rad
pos: 20.5,-33.5
parent: 2
+ - uid: 977
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 14.5,19.5
+ parent: 2
- uid: 1028
components:
- type: Transform
@@ -68079,6 +68438,12 @@ entities:
rot: 1.5707963267948966 rad
pos: -6.5,-63.5
parent: 2
+ - uid: 1361
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 14.5,16.5
+ parent: 2
- uid: 1713
components:
- type: Transform
@@ -68175,6 +68540,12 @@ entities:
- type: Transform
pos: -33.5,-47.5
parent: 2
+ - uid: 2777
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 14.5,18.5
+ parent: 2
- uid: 2839
components:
- type: Transform
@@ -68560,6 +68931,12 @@ entities:
rot: 1.5707963267948966 rad
pos: 10.5,17.5
parent: 2
+ - uid: 4571
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 16.5,12.5
+ parent: 2
- uid: 4598
components:
- type: Transform
@@ -68955,6 +69332,12 @@ entities:
rot: -1.5707963267948966 rad
pos: 25.5,-55.5
parent: 2
+ - uid: 5686
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 17.5,12.5
+ parent: 2
- uid: 6148
components:
- type: Transform
@@ -69060,11 +69443,23 @@ entities:
rot: 3.141592653589793 rad
pos: 32.5,23.5
parent: 2
+ - uid: 6717
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 18.5,12.5
+ parent: 2
- uid: 6748
components:
- type: Transform
pos: 20.5,13.5
parent: 2
+ - uid: 6753
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 19.5,12.5
+ parent: 2
- uid: 6798
components:
- type: Transform
@@ -69424,6 +69819,12 @@ entities:
rot: -1.5707963267948966 rad
pos: -34.5,-22.5
parent: 2
+ - uid: 8600
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 15.5,10.5
+ parent: 2
- uid: 8628
components:
- type: Transform
@@ -69643,7 +70044,8 @@ entities:
- uid: 10692
components:
- type: Transform
- pos: 20.5,12.5
+ rot: 3.141592653589793 rad
+ pos: 14.5,17.5
parent: 2
- uid: 10946
components:
@@ -69651,11 +70053,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 33.5,-21.5
parent: 2
- - uid: 10988
- components:
- - type: Transform
- pos: 20.5,11.5
- parent: 2
- uid: 11012
components:
- type: Transform
@@ -70235,6 +70632,12 @@ entities:
- type: Transform
pos: 20.5,14.5
parent: 2
+ - uid: 12704
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 15.5,12.5
+ parent: 2
- uid: 12707
components:
- type: Transform
@@ -70253,30 +70656,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 4.5,17.5
parent: 2
- - uid: 13002
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 16.5,10.5
- parent: 2
- - uid: 13006
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 17.5,10.5
- parent: 2
- - uid: 13066
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 18.5,10.5
- parent: 2
- - uid: 13068
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 19.5,10.5
- parent: 2
- uid: 13071
components:
- type: Transform
@@ -70438,6 +70817,12 @@ entities:
rot: -1.5707963267948966 rad
pos: 31.5,7.5
parent: 2
+ - uid: 13189
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 13.5,20.5
+ parent: 2
- uid: 13297
components:
- type: Transform
@@ -71062,12 +71447,6 @@ entities:
- type: Transform
pos: 15.5,9.5
parent: 2
- - uid: 17528
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 14.5,11.5
- parent: 2
- uid: 17529
components:
- type: Transform
@@ -71910,6 +72289,15 @@ entities:
- type: DisposalRouter
tags:
- Security
+ - uid: 7869
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 14.5,11.5
+ parent: 2
+ - type: DisposalRouter
+ tags:
+ - Mail
- uid: 7897
components:
- type: Transform
@@ -71927,15 +72315,6 @@ entities:
- type: DisposalRouter
tags:
- Medical
- - uid: 11151
- components:
- - type: Transform
- rot: 3.141592653589793 rad
- pos: 15.5,10.5
- parent: 2
- - type: DisposalRouter
- tags:
- - Mailing Room
- uid: 11152
components:
- type: Transform
@@ -72538,6 +72917,12 @@ entities:
rot: -1.5707963267948966 rad
pos: 12.5,-42.5
parent: 2
+ - uid: 22500
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 14.5,15.5
+ parent: 2
- uid: 22556
components:
- type: Transform
@@ -72577,6 +72962,11 @@ entities:
- type: Transform
pos: -1.5,16.5
parent: 2
+ - uid: 2871
+ components:
+ - type: Transform
+ pos: 14.5,15.5
+ parent: 2
- uid: 3396
components:
- type: Transform
@@ -73041,6 +73431,18 @@ entities:
- type: Transform
pos: -48.62749,-22.34152
parent: 2
+- proto: DrinkEnergyDrinkCan
+ entities:
+ - uid: 13066
+ components:
+ - type: Transform
+ pos: 21.731762,14.975151
+ parent: 2
+ - uid: 16176
+ components:
+ - type: Transform
+ pos: 21.439949,15.048119
+ parent: 2
- proto: DrinkFlask
entities:
- uid: 20258
@@ -74148,13 +74550,6 @@ entities:
- type: Transform
pos: 75.49805,-44.26112
parent: 2
-- proto: Envelope
- entities:
- - uid: 18858
- components:
- - type: Transform
- pos: 16.005564,13.58702
- parent: 2
- proto: EvidenceMarkerOne
entities:
- uid: 1842
@@ -74405,6 +74800,13 @@ entities:
parent: 2
- type: FaxMachine
name: Security
+ - uid: 1670
+ components:
+ - type: Transform
+ pos: 18.5,15.5
+ parent: 2
+ - type: FaxMachine
+ name: Mail Room
- uid: 2661
components:
- type: Transform
@@ -74557,16 +74959,6 @@ entities:
parent: 2
- proto: filingCabinetTallRandom
entities:
- - uid: 3715
- components:
- - type: Transform
- pos: 18.223299,13.545596
- parent: 2
- - uid: 6753
- components:
- - type: Transform
- pos: 18.74439,13.545596
- parent: 2
- uid: 8664
components:
- type: Transform
@@ -75016,7 +75408,6 @@ entities:
- 15273
- 15274
- 15275
- - 18877
- 18878
- 18879
- uid: 19007
@@ -75241,6 +75632,11 @@ entities:
rot: 3.141592653589793 rad
pos: -19.5,27.5
parent: 2
+ - uid: 13068
+ components:
+ - type: Transform
+ pos: 15.5,18.5
+ parent: 2
- uid: 13649
components:
- type: Transform
@@ -75314,14 +75710,6 @@ entities:
- 15424
- 13654
- 13342
- - uid: 17424
- components:
- - type: Transform
- pos: 15.5,17.5
- parent: 2
- - type: DeviceNetwork
- deviceLists:
- - 21678
- proto: FirelockGlass
entities:
- uid: 115
@@ -76874,15 +77262,6 @@ entities:
- type: Transform
pos: 49.5,-47.5
parent: 2
- - uid: 18877
- components:
- - type: Transform
- pos: 17.5,12.5
- parent: 2
- - type: DeviceNetwork
- deviceLists:
- - 17349
- - 17348
- uid: 18878
components:
- type: Transform
@@ -77265,15 +77644,6 @@ entities:
parent: 2
- type: Stack
count: 30
-- proto: FloorTileItemSteelPavement
- entities:
- - uid: 5448
- components:
- - type: Transform
- pos: 16.463783,14.565649
- parent: 2
- - type: Stack
- count: 10
- proto: FloraRockSolid
entities:
- uid: 19552
@@ -78183,14 +78553,6 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#0055CCFF'
- - uid: 977
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 12.5,16.5
- parent: 2
- - type: AtmosPipeColor
- color: '#FF1212FF'
- uid: 1506
components:
- type: Transform
@@ -78462,13 +78824,6 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#0055CCFF'
- - uid: 5389
- components:
- - type: Transform
- pos: 16.5,12.5
- parent: 2
- - type: AtmosPipeColor
- color: '#0055CCFF'
- uid: 5394
components:
- type: Transform
@@ -79505,14 +79860,6 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#0055CCFF'
- - uid: 22430
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 37.5,19.5
- parent: 2
- - type: AtmosPipeColor
- color: '#FF1212FF'
- uid: 22435
components:
- type: Transform
@@ -79787,6 +80134,21 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 23580
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 19.5,12.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#0055CCFF'
+ - uid: 23584
+ components:
+ - type: Transform
+ pos: 15.5,16.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- proto: GasPipeFourway
entities:
- uid: 676
@@ -85475,6 +85837,13 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 12598
+ components:
+ - type: Transform
+ pos: 37.5,20.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- uid: 12623
components:
- type: Transform
@@ -93604,6 +93973,38 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 23578
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 17.5,12.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#0055CCFF'
+ - uid: 23579
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 18.5,12.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#0055CCFF'
+ - uid: 23582
+ components:
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 13.5,16.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
+ - uid: 23583
+ components:
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 14.5,16.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- proto: GasPipeTJunction
entities:
- uid: 129
@@ -94544,6 +94945,14 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 11621
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 12.5,16.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- uid: 11993
components:
- type: Transform
@@ -94654,6 +95063,21 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#0055CCFF'
+ - uid: 12596
+ components:
+ - type: Transform
+ pos: 16.5,12.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#0055CCFF'
+ - uid: 12604
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 37.5,19.5
+ parent: 2
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- uid: 12681
components:
- type: Transform
@@ -95700,14 +96124,6 @@ entities:
parent: 2
- type: AtmosPipeColor
color: '#FF1212FF'
- - uid: 22424
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 37.5,20.5
- parent: 2
- - type: AtmosPipeColor
- color: '#FF1212FF'
- uid: 22442
components:
- type: Transform
@@ -97794,6 +98210,16 @@ entities:
- 14019
- type: AtmosPipeColor
color: '#0055CCFF'
+ - uid: 23581
+ components:
+ - type: Transform
+ pos: 19.5,13.5
+ parent: 2
+ - type: DeviceNetwork
+ deviceLists:
+ - 23586
+ - type: AtmosPipeColor
+ color: '#0055CCFF'
- proto: GasVentPumpFreezer
entities:
- uid: 9632
@@ -98387,6 +98813,17 @@ entities:
- 16096
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 12602
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 38.5,19.5
+ parent: 2
+ - type: DeviceNetwork
+ deviceLists:
+ - 22439
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- uid: 13045
components:
- type: Transform
@@ -99206,12 +99643,6 @@ entities:
- 22438
- type: AtmosPipeColor
color: '#FF1212FF'
- - uid: 22417
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 39.5,20.5
- parent: 2
- uid: 22436
components:
- type: Transform
@@ -99223,17 +99654,6 @@ entities:
- 22432
- type: AtmosPipeColor
color: '#FF1212FF'
- - uid: 22441
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 38.5,20.5
- parent: 2
- - type: DeviceNetwork
- deviceLists:
- - 22439
- - type: AtmosPipeColor
- color: '#FF1212FF'
- uid: 22451
components:
- type: Transform
@@ -99416,6 +99836,17 @@ entities:
- 14019
- type: AtmosPipeColor
color: '#FF1212FF'
+ - uid: 23585
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 15.5,15.5
+ parent: 2
+ - type: DeviceNetwork
+ deviceLists:
+ - 23586
+ - type: AtmosPipeColor
+ color: '#FF1212FF'
- proto: GasVentScrubberFreezer
entities:
- uid: 9463
@@ -99853,6 +100284,11 @@ entities:
- type: Transform
pos: -31.5,-76.5
parent: 2
+ - uid: 41
+ components:
+ - type: Transform
+ pos: 13.5,15.5
+ parent: 2
- uid: 50
components:
- type: Transform
@@ -103408,6 +103844,11 @@ entities:
- type: Transform
pos: -23.5,-5.5
parent: 2
+ - uid: 12651
+ components:
+ - type: Transform
+ pos: 16.5,17.5
+ parent: 2
- uid: 12687
components:
- type: Transform
@@ -107233,6 +107674,11 @@ entities:
- type: Transform
pos: 28.5,-8.5
parent: 2
+ - uid: 22424
+ components:
+ - type: Transform
+ pos: 14.5,17.5
+ parent: 2
- uid: 22834
components:
- type: Transform
@@ -107577,11 +108023,6 @@ entities:
- type: Transform
pos: 77.5,-70.5
parent: 2
- - uid: 11440
- components:
- - type: Transform
- pos: 19.5,12.5
- parent: 2
- uid: 12330
components:
- type: Transform
@@ -108187,12 +108628,6 @@ entities:
- type: Transform
pos: -48.5,-16.5
parent: 2
- - uid: 21995
- components:
- - type: Transform
- rot: 3.141592653589793 rad
- pos: 21.5,12.5
- parent: 2
- uid: 22826
components:
- type: Transform
@@ -108964,7 +109399,7 @@ entities:
- uid: 18860
components:
- type: Transform
- pos: 17.714645,15.530955
+ pos: 15.396674,14.630629
parent: 2
- uid: 22602
components:
@@ -109106,6 +109541,13 @@ entities:
- type: Transform
pos: 5.5,16.5
parent: 2
+- proto: HolopadCargoMailroom
+ entities:
+ - uid: 13548
+ components:
+ - type: Transform
+ pos: 19.5,14.5
+ parent: 2
- proto: HolopadCargoSalvageBay
entities:
- uid: 1559
@@ -112357,11 +112799,6 @@ entities:
- type: Transform
pos: 48.5,-56.5
parent: 2
- - uid: 12598
- components:
- - type: Transform
- pos: 21.5,15.5
- parent: 2
- uid: 14184
components:
- type: Transform
@@ -112596,11 +113033,6 @@ entities:
- type: Transform
pos: -33.5,-2.5
parent: 2
- - uid: 6717
- components:
- - type: Transform
- pos: 18.5,12.5
- parent: 2
- uid: 7296
components:
- type: Transform
@@ -113234,10 +113666,10 @@ entities:
parent: 2
- proto: MechEquipmentGrabberSmall
entities:
- - uid: 5686
+ - uid: 11151
components:
- type: Transform
- pos: 12.501561,16.665688
+ pos: 12.542858,18.600155
parent: 2
- proto: MedicalBed
entities:
@@ -113287,6 +113719,11 @@ entities:
parent: 2
- proto: MedkitBruteFilled
entities:
+ - uid: 134
+ components:
+ - type: Transform
+ pos: 21.462214,14.656416
+ parent: 2
- uid: 449
components:
- type: Transform
@@ -113680,11 +114117,6 @@ entities:
- type: Transform
pos: 27.5,-41.5
parent: 2
- - uid: 4571
- components:
- - type: Transform
- pos: 14.5,17.5
- parent: 2
- uid: 5974
components:
- type: Transform
@@ -113725,6 +114157,11 @@ entities:
- type: Transform
pos: -53.5,-13.5
parent: 2
+ - uid: 18859
+ components:
+ - type: Transform
+ pos: 16.5,18.5
+ parent: 2
- uid: 19197
components:
- type: Transform
@@ -114030,22 +114467,6 @@ entities:
- type: Transform
pos: -28.57779,-45.411148
parent: 2
- - uid: 1912
- components:
- - type: Transform
- pos: 17.19027,14.315702
- parent: 2
- - uid: 2777
- components:
- - type: Transform
- pos: 16.51598,13.534901
- parent: 2
- - uid: 2871
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 19.868683,14.68054
- parent: 2
- uid: 3740
components:
- type: Transform
@@ -114242,11 +114663,6 @@ entities:
parent: 2
- proto: PaperBin5
entities:
- - uid: 2511
- components:
- - type: Transform
- pos: 19.5,15.5
- parent: 2
- uid: 6189
components:
- type: Transform
@@ -115681,12 +116097,6 @@ entities:
rot: 3.141592653589793 rad
pos: 33.5,24.5
parent: 2
- - uid: 21925
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 20.5,13.5
- parent: 2
- uid: 23010
components:
- type: Transform
@@ -115753,6 +116163,11 @@ entities:
rot: 3.141592653589793 rad
pos: -1.5,-23.5
parent: 2
+ - uid: 2145
+ components:
+ - type: Transform
+ pos: 14.5,12.5
+ parent: 2
- uid: 2588
components:
- type: Transform
@@ -116337,6 +116752,11 @@ entities:
rot: 3.141592653589793 rad
pos: 40.5,-22.5
parent: 2
+ - uid: 16060
+ components:
+ - type: Transform
+ pos: 19.5,15.5
+ parent: 2
- uid: 16478
components:
- type: Transform
@@ -116479,6 +116899,12 @@ entities:
rot: 3.141592653589793 rad
pos: 46.5,19.5
parent: 2
+ - uid: 18858
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 14.5,15.5
+ parent: 2
- uid: 18883
components:
- type: Transform
@@ -116916,6 +117342,18 @@ entities:
rot: 3.141592653589793 rad
pos: 13.5,-33.5
parent: 2
+ - uid: 23571
+ components:
+ - type: Transform
+ rot: -1.5707963267948966 rad
+ pos: 20.5,13.5
+ parent: 2
+ - uid: 23606
+ components:
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 2.5,13.5
+ parent: 2
- proto: PoweredlightEmpty
entities:
- uid: 21609
@@ -118500,6 +118938,11 @@ entities:
rot: 3.141592653589793 rad
pos: -52.5,-36.5
parent: 2
+ - uid: 3715
+ components:
+ - type: Transform
+ pos: 15.5,14.5
+ parent: 2
- uid: 3720
components:
- type: Transform
@@ -118591,11 +119034,6 @@ entities:
- type: Transform
pos: 43.5,-56.5
parent: 2
- - uid: 5685
- components:
- - type: Transform
- pos: 12.5,16.5
- parent: 2
- uid: 5701
components:
- type: Transform
@@ -118830,6 +119268,11 @@ entities:
- type: Transform
pos: -34.5,5.5
parent: 2
+ - uid: 10988
+ components:
+ - type: Transform
+ pos: 12.5,18.5
+ parent: 2
- uid: 11066
components:
- type: Transform
@@ -119093,12 +119536,6 @@ entities:
- type: Transform
pos: 38.5,-63.5
parent: 2
- - uid: 18859
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 17.5,15.5
- parent: 2
- uid: 19227
components:
- type: Transform
@@ -120537,6 +120974,11 @@ entities:
- type: Transform
pos: 40.5,7.5
parent: 2
+ - uid: 17512
+ components:
+ - type: Transform
+ pos: 21.5,16.5
+ parent: 2
- uid: 17587
components:
- type: Transform
@@ -120552,11 +120994,6 @@ entities:
- type: Transform
pos: 8.5,27.5
parent: 2
- - uid: 17592
- components:
- - type: Transform
- pos: 19.5,16.5
- parent: 2
- uid: 17640
components:
- type: Transform
@@ -120682,6 +121119,11 @@ entities:
- type: Transform
pos: 3.5,-20.5
parent: 2
+ - uid: 23587
+ components:
+ - type: Transform
+ pos: 21.5,11.5
+ parent: 2
- proto: RandomPosterContraband
entities:
- uid: 5583
@@ -122473,6 +122915,11 @@ entities:
- type: Transform
pos: -26.5,8.5
parent: 2
+ - uid: 383
+ components:
+ - type: Transform
+ pos: 16.5,17.5
+ parent: 2
- uid: 386
components:
- type: Transform
@@ -124423,6 +124870,11 @@ entities:
- type: Transform
pos: 26.5,-28.5
parent: 2
+ - uid: 11441
+ components:
+ - type: Transform
+ pos: 13.5,15.5
+ parent: 2
- uid: 11504
components:
- type: Transform
@@ -125173,6 +125625,11 @@ entities:
- type: Transform
pos: 90.5,-13.5
parent: 2
+ - uid: 18094
+ components:
+ - type: Transform
+ pos: 14.5,17.5
+ parent: 2
- uid: 18160
components:
- type: Transform
@@ -125707,11 +126164,6 @@ entities:
- type: Transform
pos: 47.57202,-7.418854
parent: 2
- - uid: 11441
- components:
- - type: Transform
- pos: 18.628483,15.566571
- parent: 2
- proto: ScrapMedkit
entities:
- uid: 2197
@@ -130399,6 +130851,16 @@ entities:
- type: Transform
pos: -29.5,-51.5
parent: 2
+ - uid: 23592
+ components:
+ - type: Transform
+ pos: 14.5,-44.5
+ parent: 2
+ - uid: 23593
+ components:
+ - type: Transform
+ pos: 14.5,-36.5
+ parent: 2
- proto: SpawnPointPsychologist
entities:
- uid: 10505
@@ -130918,6 +131380,12 @@ entities:
- type: Transform
pos: -31.5,-57.5
parent: 2
+ - uid: 23588
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 19.5,11.5
+ parent: 2
- proto: StationMapAssembly
entities:
- uid: 18763
@@ -132697,11 +133165,6 @@ entities:
- type: Transform
pos: -22.5,-18.5
parent: 2
- - uid: 1670
- components:
- - type: Transform
- pos: 19.5,15.5
- parent: 2
- uid: 1674
components:
- type: Transform
@@ -133257,6 +133720,11 @@ entities:
- type: Transform
pos: 10.5,-18.5
parent: 2
+ - uid: 13070
+ components:
+ - type: Transform
+ pos: 21.5,14.5
+ parent: 2
- uid: 13194
components:
- type: Transform
@@ -133267,6 +133735,11 @@ entities:
- type: Transform
pos: 7.5,-58.5
parent: 2
+ - uid: 13389
+ components:
+ - type: Transform
+ pos: 21.5,15.5
+ parent: 2
- uid: 13551
components:
- type: Transform
@@ -133537,6 +134010,11 @@ entities:
- type: Transform
pos: 18.5,17.5
parent: 2
+ - uid: 23570
+ components:
+ - type: Transform
+ pos: 17.5,15.5
+ parent: 2
- proto: TableCarpet
entities:
- uid: 26
@@ -133699,11 +134177,6 @@ entities:
- type: Transform
pos: -29.5,-26.5
parent: 2
- - uid: 12596
- components:
- - type: Transform
- pos: 17.5,12.5
- parent: 2
- uid: 14288
components:
- type: Transform
@@ -136387,11 +136860,6 @@ entities:
- type: Transform
pos: -6.5,20.5
parent: 2
- - uid: 134
- components:
- - type: Transform
- pos: 19.5,16.5
- parent: 2
- uid: 138
components:
- type: Transform
@@ -138992,6 +139460,11 @@ entities:
- type: Transform
pos: -7.5,20.5
parent: 2
+ - uid: 5411
+ components:
+ - type: Transform
+ pos: 20.5,11.5
+ parent: 2
- uid: 5412
components:
- type: Transform
@@ -142587,6 +143060,11 @@ entities:
- type: Transform
pos: 44.5,13.5
parent: 2
+ - uid: 17528
+ components:
+ - type: Transform
+ pos: 19.5,11.5
+ parent: 2
- uid: 17655
components:
- type: Transform
@@ -142637,6 +143115,11 @@ entities:
- type: Transform
pos: -28.5,25.5
parent: 2
+ - uid: 18070
+ components:
+ - type: Transform
+ pos: 19.5,16.5
+ parent: 2
- uid: 18161
components:
- type: Transform
@@ -142727,11 +143210,26 @@ entities:
- type: Transform
pos: 51.5,-34.5
parent: 2
+ - uid: 18877
+ components:
+ - type: Transform
+ pos: 21.5,13.5
+ parent: 2
- uid: 19054
components:
- type: Transform
pos: -23.5,4.5
parent: 2
+ - uid: 19147
+ components:
+ - type: Transform
+ pos: 22.5,13.5
+ parent: 2
+ - uid: 19222
+ components:
+ - type: Transform
+ pos: 20.5,16.5
+ parent: 2
- uid: 19226
components:
- type: Transform
@@ -142757,6 +143255,11 @@ entities:
- type: Transform
pos: 12.5,-79.5
parent: 2
+ - uid: 19246
+ components:
+ - type: Transform
+ pos: 17.5,13.5
+ parent: 2
- uid: 19247
components:
- type: Transform
@@ -142927,6 +143430,11 @@ entities:
- type: Transform
pos: 63.5,-55.5
parent: 2
+ - uid: 21925
+ components:
+ - type: Transform
+ pos: 18.5,11.5
+ parent: 2
- uid: 22004
components:
- type: Transform
@@ -142947,6 +143455,11 @@ entities:
- type: Transform
pos: -58.5,-50.5
parent: 2
+ - uid: 22027
+ components:
+ - type: Transform
+ pos: 14.5,13.5
+ parent: 2
- uid: 22038
components:
- type: Transform
@@ -142987,11 +143500,6 @@ entities:
- type: Transform
pos: 20.5,24.5
parent: 2
- - uid: 22118
- components:
- - type: Transform
- pos: 14.5,16.5
- parent: 2
- uid: 22125
components:
- type: Transform
@@ -145639,6 +146147,11 @@ entities:
- type: Transform
pos: 83.5,-13.5
parent: 2
+ - uid: 20122
+ components:
+ - type: Transform
+ pos: 22.5,16.5
+ parent: 2
- uid: 20541
components:
- type: Transform
@@ -145754,6 +146267,16 @@ entities:
- type: Transform
pos: 28.5,26.5
parent: 2
+ - uid: 21995
+ components:
+ - type: Transform
+ pos: 18.5,16.5
+ parent: 2
+ - uid: 22002
+ components:
+ - type: Transform
+ pos: 14.5,14.5
+ parent: 2
- uid: 22010
components:
- type: Transform
@@ -145774,15 +146297,25 @@ entities:
- type: Transform
pos: 28.5,30.5
parent: 2
- - uid: 22027
+ - uid: 22097
components:
- type: Transform
- pos: 16.5,16.5
+ pos: 21.5,11.5
+ parent: 2
+ - uid: 22098
+ components:
+ - type: Transform
+ pos: 17.5,11.5
+ parent: 2
+ - uid: 22118
+ components:
+ - type: Transform
+ pos: 21.5,16.5
parent: 2
- uid: 22119
components:
- type: Transform
- pos: 13.5,16.5
+ pos: 22.5,14.5
parent: 2
- uid: 22127
components:
@@ -145799,6 +146332,11 @@ entities:
- type: Transform
pos: -31.5,-16.5
parent: 2
+ - uid: 22417
+ components:
+ - type: Transform
+ pos: 22.5,15.5
+ parent: 2
- uid: 22594
components:
- type: Transform
@@ -145921,11 +146459,6 @@ entities:
- type: Transform
pos: -26.5,-35.5
parent: 2
- - uid: 383
- components:
- - type: Transform
- pos: 18.5,11.5
- parent: 2
- uid: 459
components:
- type: Transform
@@ -146206,11 +146739,6 @@ entities:
- type: Transform
pos: 44.5,-36.5
parent: 2
- - uid: 2145
- components:
- - type: Transform
- pos: 13.5,17.5
- parent: 2
- uid: 2174
components:
- type: Transform
@@ -146886,11 +147414,6 @@ entities:
- type: Transform
pos: 49.5,-37.5
parent: 2
- - uid: 4932
- components:
- - type: Transform
- pos: 21.5,13.5
- parent: 2
- uid: 4935
components:
- type: Transform
@@ -147746,11 +148269,6 @@ entities:
- type: Transform
pos: 10.5,27.5
parent: 2
- - uid: 7869
- components:
- - type: Transform
- pos: 22.5,13.5
- parent: 2
- uid: 7933
components:
- type: Transform
@@ -148656,11 +149174,6 @@ entities:
- type: Transform
pos: 21.5,-17.5
parent: 2
- - uid: 13189
- components:
- - type: Transform
- pos: 20.5,16.5
- parent: 2
- uid: 13192
components:
- type: Transform
@@ -148766,11 +149279,6 @@ entities:
- type: Transform
pos: 22.5,-18.5
parent: 2
- - uid: 13389
- components:
- - type: Transform
- pos: 17.5,13.5
- parent: 2
- uid: 13395
components:
- type: Transform
@@ -148781,11 +149289,6 @@ entities:
- type: Transform
pos: 26.5,14.5
parent: 2
- - uid: 13548
- components:
- - type: Transform
- pos: 22.5,16.5
- parent: 2
- uid: 13668
components:
- type: Transform
@@ -149286,16 +149789,16 @@ entities:
- type: Transform
pos: 83.5,-15.5
parent: 2
+ - uid: 18072
+ components:
+ - type: Transform
+ pos: 13.5,17.5
+ parent: 2
- uid: 18079
components:
- type: Transform
pos: 39.5,7.5
parent: 2
- - uid: 18094
- components:
- - type: Transform
- pos: 19.5,11.5
- parent: 2
- uid: 18198
components:
- type: Transform
@@ -149486,11 +149989,6 @@ entities:
- type: Transform
pos: -54.5,-52.5
parent: 2
- - uid: 22002
- components:
- - type: Transform
- pos: 18.5,16.5
- parent: 2
- uid: 22003
components:
- type: Transform
@@ -149526,16 +150024,6 @@ entities:
- type: Transform
pos: 29.5,25.5
parent: 2
- - uid: 22097
- components:
- - type: Transform
- pos: 14.5,14.5
- parent: 2
- - uid: 22098
- components:
- - type: Transform
- pos: 14.5,13.5
- parent: 2
- uid: 22106
components:
- type: Transform
@@ -149898,11 +150386,6 @@ entities:
- type: Transform
pos: 23.5,-43.5
parent: 2
- - uid: 11621
- components:
- - type: Transform
- pos: 21.5,11.5
- parent: 2
- uid: 11634
components:
- type: Transform
@@ -150348,11 +150831,6 @@ entities:
- type: Transform
pos: -14.5,19.5
parent: 2
- - uid: 16060
- components:
- - type: Transform
- pos: 17.5,11.5
- parent: 2
- uid: 16162
components:
- type: Transform
@@ -150473,21 +150951,6 @@ entities:
- type: Transform
pos: 39.5,4.5
parent: 2
- - uid: 19147
- components:
- - type: Transform
- pos: 21.5,16.5
- parent: 2
- - uid: 19222
- components:
- - type: Transform
- pos: 22.5,14.5
- parent: 2
- - uid: 19246
- components:
- - type: Transform
- pos: 22.5,15.5
- parent: 2
- uid: 19257
components:
- type: Transform
@@ -150714,6 +151177,11 @@ entities:
- type: Transform
pos: 0.5,26.5
parent: 2
+ - uid: 23572
+ components:
+ - type: Transform
+ pos: 16.5,16.5
+ parent: 2
- proto: WardrobeChapelFilled
entities:
- uid: 4576
@@ -151192,12 +151660,6 @@ entities:
parent: 2
- proto: WindoorSecure
entities:
- - uid: 41
- components:
- - type: Transform
- rot: 1.5707963267948966 rad
- pos: 17.5,12.5
- parent: 2
- uid: 79
components:
- type: Transform
@@ -151270,18 +151732,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 18.5,17.5
parent: 2
- - uid: 12602
- components:
- - type: Transform
- rot: 3.141592653589793 rad
- pos: 15.5,13.5
- parent: 2
- - uid: 12604
- components:
- - type: Transform
- rot: 3.141592653589793 rad
- pos: 16.5,13.5
- parent: 2
- uid: 14572
components:
- type: Transform
@@ -151378,6 +151828,18 @@ entities:
rot: 3.141592653589793 rad
pos: 4.5,15.5
parent: 2
+ - uid: 22430
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 15.5,13.5
+ parent: 2
+ - uid: 22441
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 16.5,13.5
+ parent: 2
- proto: WindoorSecureChemistryLocked
entities:
- uid: 144
diff --git a/Resources/Maps/convex.yml b/Resources/Maps/convex.yml
index 573593361d..422dedbaaa 100644
--- a/Resources/Maps/convex.yml
+++ b/Resources/Maps/convex.yml
@@ -4,7 +4,7 @@ meta:
engineVersion: 248.0.0
forkId: ""
forkVersion: ""
- time: 03/09/2025 09:10:11
+ time: 03/11/2025 05:03:59
entityCount: 37722
maps:
- 353
@@ -14312,7 +14312,7 @@ entities:
1: 2036
16,31:
0: 7
- 2: 60928
+ 5: 60928
13,33:
1: 30583
13,34:
@@ -14329,32 +14329,32 @@ entities:
1: 61437
15,34:
0: 4371
- 3: 52224
- 4: 8
+ 2: 52224
+ 3: 8
15,35:
0: 8977
- 3: 12
- 4: 34816
+ 2: 12
+ 3: 34816
15,33:
0: 8742
- 4: 34816
+ 3: 34816
15,36:
0: 17954
- 4: 8
+ 3: 8
16,32:
- 5: 30464
- 2: 14
+ 4: 30464
+ 5: 14
16,33:
- 5: 7
- 4: 13056
+ 4: 7
+ 3: 13056
0: 34816
16,34:
- 4: 3
- 3: 4352
+ 3: 3
+ 2: 4352
0: 52360
16,35:
- 3: 1
- 4: 13056
+ 2: 1
+ 3: 13056
0: 34956
13,36:
1: 32624
@@ -14373,13 +14373,13 @@ entities:
1: 8739
0: 2184
16,36:
- 4: 30467
+ 3: 30467
0: 8
16,37:
- 4: 60935
+ 3: 60935
16,38:
0: 3840
- 4: 14
+ 3: 14
16,39:
1: 47295
17,2:
@@ -14656,9 +14656,9 @@ entities:
1: 13107
0: 34944
20,32:
- 4: 65504
+ 3: 65504
20,33:
- 4: 239
+ 3: 239
1: 61440
20,34:
1: 65535
@@ -14973,7 +14973,7 @@ entities:
1: 49073
21,32:
1: 34952
- 4: 4352
+ 3: 4352
0: 8736
22,32:
1: 48059
@@ -14994,7 +14994,7 @@ entities:
24,31:
1: 53503
21,33:
- 4: 1
+ 3: 1
1: 64136
0: 34
21,34:
@@ -15330,59 +15330,59 @@ entities:
24,35:
1: 1638
25,32:
- 4: 4592
+ 3: 4592
0: 58880
25,33:
- 4: 4369
+ 3: 4369
0: 25828
25,34:
- 4: 6007
+ 3: 6007
0: 24576
25,35:
- 4: 4369
+ 3: 4369
0: 58596
25,36:
- 4: 241
+ 3: 241
0: 6
1: 28672
26,32:
- 4: 35056
+ 3: 35056
0: 29952
26,33:
0: 4593
26,35:
0: 29169
- 4: 32768
+ 3: 32768
26,34:
0: 4465
- 4: 2184
+ 3: 2184
26,36:
0: 5
- 4: 248
+ 3: 248
1: 61440
27,32:
- 4: 13296
+ 3: 13296
0: 50176
27,33:
0: 4592
27,34:
- 4: 819
+ 3: 819
0: 4288
27,35:
0: 49393
- 4: 12288
+ 3: 12288
27,36:
- 4: 243
+ 3: 243
0: 4
1: 61440
28,32:
- 4: 240
+ 3: 240
0: 64768
28,33:
0: 54773
28,34:
0: 53521
- 4: 3276
+ 3: 3276
28,35:
0: 62965
24,37:
@@ -15400,7 +15400,7 @@ entities:
27,38:
1: 65423
28,36:
- 4: 240
+ 3: 240
1: 56320
0: 13
28,37:
@@ -15651,7 +15651,7 @@ entities:
1: 28927
29,32:
1: 1092
- 4: 4368
+ 3: 4368
30,29:
1: 65527
30,30:
@@ -15677,16 +15677,16 @@ entities:
32,31:
1: 49075
29,33:
- 4: 4369
+ 3: 4369
1: 52428
29,34:
- 4: 4369
+ 3: 4369
1: 52428
29,35:
- 4: 4369
+ 3: 4369
1: 3276
29,36:
- 4: 17
+ 3: 17
1: 25668
30,34:
1: 61423
@@ -16164,21 +16164,6 @@ entities:
- 0
- 0
- 0
- - volume: 2500
- temperature: 293.15
- moles:
- - 6666.982
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- - 0
- volume: 2500
temperature: 293.15
moles:
@@ -16224,6 +16209,21 @@ entities:
- 0
- 0
- 0
+ - volume: 2500
+ temperature: 293.15
+ moles:
+ - 6666.982
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
+ - 0
- volume: 2500
temperature: 235
moles:
@@ -86606,10 +86606,10 @@ entities:
parent: 1
- proto: CargoMailTeleporter
entities:
- - uid: 37722
+ - uid: 37375
components:
- type: Transform
- pos: 148.5,111.5
+ pos: 153.5,102.5
parent: 1
- proto: Carpet
entities:
@@ -189480,25 +189480,25 @@ entities:
parent: 1
- proto: MaintsRoomMarker
entities:
- - uid: 5567
- components:
- - type: Transform
- pos: 149.5,79.5
- parent: 1
- uid: 5646
components:
- type: Transform
- pos: 18.5,90.5
+ pos: 151.5,81.5
parent: 1
- - uid: 6102
+ - uid: 19414
components:
- type: Transform
- pos: 57.5,36.5
+ pos: 59.5,38.5
parent: 1
- uid: 23938
components:
- type: Transform
- pos: 127.5,150.5
+ pos: 20.5,92.5
+ parent: 1
+ - uid: 30588
+ components:
+ - type: Transform
+ pos: 129.5,152.5
parent: 1
- proto: MakeshiftShield
entities:
@@ -194835,6 +194835,12 @@ entities:
- type: Transform
pos: 51.5,107.5
parent: 1
+ - uid: 6102
+ components:
+ - type: Transform
+ rot: 3.141592653589793 rad
+ pos: 58.5,33.5
+ parent: 1
- uid: 10753
components:
- type: Transform
@@ -195304,11 +195310,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 139.5,126.5
parent: 1
- - uid: 30588
- components:
- - type: Transform
- pos: 59.5,40.5
- parent: 1
- uid: 30829
components:
- type: Transform
@@ -195426,7 +195427,7 @@ entities:
components:
- type: Transform
rot: -1.5707963267948966 rad
- pos: 131.5,152.5
+ pos: 153.5,81.5
parent: 1
- uid: 35414
components:
@@ -195490,12 +195491,6 @@ entities:
- type: Transform
pos: 21.5,102.5
parent: 1
- - uid: 37375
- components:
- - type: Transform
- rot: -1.5707963267948966 rad
- pos: 153.5,81.5
- parent: 1
- uid: 37423
components:
- type: Transform
@@ -195519,6 +195514,12 @@ entities:
- type: Transform
pos: 47.5,108.5
parent: 1
+ - uid: 37722
+ components:
+ - type: Transform
+ rot: 1.5707963267948966 rad
+ pos: 125.5,151.5
+ parent: 1
- proto: PoweredStrobeLightEmpty
entities:
- uid: 23279
@@ -238837,10 +238838,10 @@ entities:
- type: Transform
pos: 131.5,94.5
parent: 1
- - uid: 19414
+ - uid: 5567
components:
- type: Transform
- pos: 153.5,102.5
+ pos: 137.5,110.5
parent: 1
- uid: 19868
components:
diff --git a/Resources/Prototypes/Catalog/Fills/Boxes/general.yml b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml
index f5ba7b65f9..478aea4cc0 100644
--- a/Resources/Prototypes/Catalog/Fills/Boxes/general.yml
+++ b/Resources/Prototypes/Catalog/Fills/Boxes/general.yml
@@ -229,6 +229,7 @@
contents:
- id: ClothingShoesBootsPerformer
- id: ClothingUniformJumpskirtPerformer
+ - id: ClothingHeadPerformerWig
- id: FoodMealMemoryleek
amount: 2
diff --git a/Resources/Prototypes/Catalog/Fills/Crates/service.yml b/Resources/Prototypes/Catalog/Fills/Crates/service.yml
index 59a1ed476d..32cfce4628 100644
--- a/Resources/Prototypes/Catalog/Fills/Crates/service.yml
+++ b/Resources/Prototypes/Catalog/Fills/Crates/service.yml
@@ -89,6 +89,7 @@
contents:
- id: ClothingUniformJumpskirtPerformer
- id: ClothingShoesBootsPerformer
+ - id: ClothingHeadPerformerWig
- id: ClothingOuterSuitMonkey
- id: ClothingHeadHatAnimalMonkey
- id: ClothingNeckCloakMoth
diff --git a/Resources/Prototypes/Catalog/Fills/Items/toolboxes.yml b/Resources/Prototypes/Catalog/Fills/Items/toolboxes.yml
index ac9ab4deaa..a4813fe41a 100644
--- a/Resources/Prototypes/Catalog/Fills/Items/toolboxes.yml
+++ b/Resources/Prototypes/Catalog/Fills/Items/toolboxes.yml
@@ -22,7 +22,7 @@
prob: 0.15
- id: HarmonicaInstrument
prob: 0.15
-
+
- type: entity
id: ToolboxElectricalFilled
name: electrical toolbox
@@ -82,7 +82,7 @@
- id: MysteryFigureBox
prob: 0.5
- id: BookRandom
- amount: 2
+ amount: 2
- id: CrayonMime
- id: CrayonRainbow
@@ -105,6 +105,21 @@
- id: ClothingHeadHatHardhatBlue
prob: 0.5
+- type: entity
+ id: ToolboxMechanicalFilledAllTools
+ name: mechanical toolbox
+ suffix: Filled, all tools
+ parent: ToolboxMechanical
+ components:
+ - type: StorageFill
+ contents:
+ - id: Crowbar
+ - id: Wrench
+ - id: Screwdriver
+ - id: Wirecutter
+ - id: Welder
+ - id: Multitool
+
- type: entity
parent: ToolboxSyndicate
id: ToolboxSyndicateFilled
diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml b/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
index 340083f404..33b0ab1a50 100644
--- a/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
+++ b/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
@@ -54,6 +54,22 @@
entity_storage: !type:NestedSelector
tableId: FillLockerEmergencyStandard
+- type: entityTable
+ id: FillLockerEmergencyN2Standard
+ table: !type:AllSelector
+ children:
+ - id: ClothingMaskBreath
+ - id: ClothingOuterSuitEmergency
+ - id: BoxMRE
+ prob: 0.1
+ - id: ToolboxEmergencyFilled
+ prob: 0.05
+ - !type:GroupSelector
+ children:
+ - id: EmergencyNitrogenTankFilled
+ weight: 4
+ - id: NitrogenTankFilled
+
- type: entity
id: ClosetEmergencyN2FilledRandom
parent: ClosetEmergencyN2
@@ -61,14 +77,18 @@
components:
- type: EntityTableContainerFill
containers:
- entity_storage: !type:AllSelector
- children:
- - id: ClothingMaskBreath
- - id: ClothingOuterSuitEmergency
- - !type:GroupSelector
- children:
- - id: EmergencyNitrogenTankFilled
- - id: NitrogenTankFilled
+ entity_storage: !type:NestedSelector
+ tableId: FillLockerEmergencyN2Standard
+
+- type: entity
+ parent: ClosetWallEmergencyN2
+ id: ClosetWallEmergencyN2FilledRandom
+ suffix: Filled, Random
+ components:
+ - type: EntityTableContainerFill
+ containers:
+ entity_storage: !type:NestedSelector
+ tableId: FillLockerEmergencyN2Standard
- type: entityTable
id: FillLockerFireStandard
diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/ammo.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/ammo.yml
index f767e95e11..d911a51860 100644
--- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/ammo.yml
+++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/ammo.yml
@@ -15,3 +15,6 @@
MagazineBoxRifle: 6
MagazineBoxRiflePractice: 3
+
+ BoxLethalshot: 6
+ BoxShotgunPractice: 3
diff --git a/Resources/Prototypes/Catalog/uplink_catalog.yml b/Resources/Prototypes/Catalog/uplink_catalog.yml
index 61f9a009ce..d3338a2acd 100644
--- a/Resources/Prototypes/Catalog/uplink_catalog.yml
+++ b/Resources/Prototypes/Catalog/uplink_catalog.yml
@@ -269,11 +269,11 @@
productEntity: SingularityGrenade
discountCategory: usualDiscounts
discountDownTo:
- Telecrystal: 3
+ Telecrystal: 1
cost:
- Telecrystal: 6
+ Telecrystal: 2
categories:
- - UplinkExplosives
+ - UplinkDisruption
- type: listing
id: UplinkWhiteholeGrenade
@@ -284,9 +284,9 @@
discountDownTo:
Telecrystal: 1
cost:
- Telecrystal: 3
+ Telecrystal: 2
categories:
- - UplinkExplosives
+ - UplinkDisruption
- type: listing
id: UplinkGrenadePenguin
diff --git a/Resources/Prototypes/Chemistry/mixing_types.yml b/Resources/Prototypes/Chemistry/mixing_types.yml
index fd73256410..86239fce06 100644
--- a/Resources/Prototypes/Chemistry/mixing_types.yml
+++ b/Resources/Prototypes/Chemistry/mixing_types.yml
@@ -12,15 +12,15 @@
id: DummyGrind
verbText: mixing-verb-default-grind
icon:
- sprite: Structures/Machines/juicer.rsi
- state: juicer0
+ sprite: Structures/Machines/grinder.rsi
+ state: grinder_empty
- type: mixingCategory
id: DummyJuice
verbText: mixing-verb-default-juice
icon:
- sprite: Structures/Machines/juicer.rsi
- state: juicer0
+ sprite: Structures/Machines/grinder.rsi
+ state: grinder_empty
- type: mixingCategory
id: DummyCondense
diff --git a/Resources/Prototypes/Datasets/criminal_records.yml b/Resources/Prototypes/Datasets/criminal_records.yml
index fe21757cd2..e46b7cdb81 100644
--- a/Resources/Prototypes/Datasets/criminal_records.yml
+++ b/Resources/Prototypes/Datasets/criminal_records.yml
@@ -1,24 +1,6 @@
# "funny" placeholders of extremely minor/non-crimes for wanted reason dialog
-- type: dataset
+- type: localizedDataset
id: CriminalRecordsWantedReasonPlaceholders
values:
- - Ate a delicious valid salad
- - Ate their own shoes
- - Being a clown
- - Being a mime
- - Breathed the wrong way
- - Broke into evac
- - Did literally nothing
- - Did their job
- - Didn't say hello to me
- - Drank one too many
- - Had two toolboxes, that's too many
- - Lied on common radio
- - Looked at me funny
- - Lubed up the entire way to evac
- - Set AME up on time
- - Slipped the HoS
- - Stole the clown's mask
- - Told an unfunny joke
- - Wore a gasmask
- - Wore boxing gloves
+ prefix: placeholders-criminal-records-wanted-reason-
+ count: 20
diff --git a/Resources/Prototypes/Datasets/news.yml b/Resources/Prototypes/Datasets/news.yml
index f0d232667e..a1fdb55c2f 100644
--- a/Resources/Prototypes/Datasets/news.yml
+++ b/Resources/Prototypes/Datasets/news.yml
@@ -1,85 +1,5 @@
-- type: dataset
- id: news
+- type: localizedDataset
+ id: News
values:
- - "Tree stuck in tajaran; firefighters baffled."
- - "Armadillos want aardvarks removed from dictionary claims 'here first'."
- - "Angel found dancing on pinhead ordered to stop; cited for public nuisance."
- - "Letters claim they are better than number; 'Always have been'."
- - "Pens proclaim pencils obsolete, 'lead is dead'."
- - "Rock and paper sues scissors for discrimination."
- - "Steak tell-all book reveals he never liked sitting by potato."
- - "Woodchuck stops counting how many times he’s chucked 'Never again'."
-# - "{{AFFECTED}} clerk first person able to pronounce '@*$%!'."
-# - "{{AFFECTED}} delis serving boiled paperback dictionaries, 'Adjectives chewy' customers declare."
-# - "{{AFFECTED}} weather deemed 'boring'; meteors and rad storms to be imported."
-# - "Most {{AFFECTED}} security officers prefer cream over sugar."
-# - "Palindrome speakers conference in {{AFFECTED}}; 'Wow!' says Otto."
-# - "Question mark worshipped as deity by ancient {{AFFECTED}} dwellers."
-# - "Spilled milk causes whole {{AFFECTED}} populace to cry."
-# - "World largest carp patty at display on {{AFFECTED}}."
- - "'Here kitty kitty' no longer preferred tajaran retrieval technique."
- - "Man travels 7000 light years to retrieve lost hankie, 'It was my favourite'."
- - "New bowling lane that shoots mini-meteors at bowlers very popular."
-# - "Guy gets tattoo of Tau Ceti on chest '[pick("CentCom","star","starship","asteroid")] tickles most'."
- - "Skrell marries computer; wedding attended by 100 modems."
- - "Chef reports successfully using harmonica as cheese grater."
- - "Nanotrasen invents handkerchief that says 'Bless you' after sneeze."
- - "Clone accused of posing for other clones’s school photo."
- - "Clone accused of stealing other clones’s employee of the month award."
- - "Woman robs station with hair dryer; crewmen love new style."
- - "This space for rent."
-# - "{{AFFECTED}} Baker Wins Pickled Crumpet Toss Three Years Running"
- - "Skrell Scientist Discovers Abacus Can Be Used To Dry Towels"
- - "Survey: 'Cheese Louise' Voted Best Pizza Restaurant In Tau Ceti"
-# - "I Was Framed, jokes {{AFFECTED}} artist"
-# - "Mysterious Loud Rumbling Noises In {{AFFECTED}} Found To Be Mysterious Loud Rumblings"
-# - "Alien ambassador becomes lost on {{AFFECTED}}, refuses to ask for directions"
- - "Swamp Gas Verified To Be Exhalations Of Stars--Movie Stars--Long Passed"
- - "Tainted Broccoli Weapon Of Choice For Syndicate Assassins"
- - "Chefs Find Broccoli Effective Tool For Cutting Cheese"
- - "Broccoli Found To Cause Grumpiness In Monkeys"
-# - "Survey: 80% Of People on {{AFFECTED}} Love Clog-Dancing"
- - "Giant Hairball Has Perfect Grammar But Rolls rr's Too Much, Linguists Say"
-# - "{{AFFECTED}} Phonebooks Print All Wrong Numbers; Results In 15 New Marriages"
-# - "Tajaran Burglar Spotted on {{AFFECTED}}, Mistaken For Dalmatian"
- - "Gibson Gazette Updates Frequently Absurd, Poll Indicates"
-# - "Esoteric Verbosity Culminates In Communicative Ennui, {{AFFECTED}} Academics Note"
- - "Taj Demand Longer Breaks, Cleaner Litter, Slower Mice"
- - "Survey: 3 Out Of 5 Skrell Loathe Modern Art"
- - "Skrell Scientist Discovers Gravity While Falling Down Stairs"
-# - "Boy Saves Tajaran From Tree on {{AFFECTED}}, Thousands Cheer"
-# - "Shipment Of Apples Overturns, {{AFFECTED}} Diner Offers Applesauce Special"
-# - "Spotted Owl Spotted on {{AFFECTED}}"
- - "Humans Everywhere Agree: Purring Tajarans Are Happy Tajarans"
- - "From The Desk Of Wise Guy Sammy: One Word In This Gazette Is Sdrawkcab"
- - "From The Desk Of Wise Guy Sammy: It's Hard To Have Too Much Shelf Space"
- - "From The Desk Of Wise Guy Sammy: Wine And Friendships Get Better With Age"
- - "From The Desk Of Wise Guy Sammy: The Insides Of Golf Balls Are Mostly Rubber Bands"
- - "From The Desk Of Wise Guy Sammy: You Don't Have To Fool All The People, Just The Right Ones"
- - "From The Desk Of Wise Guy Sammy: If You Made The Mess, You Clean It Up"
- - "From The Desk Of Wise Guy Sammy: It Is Easier To Get Forgiveness Than Permission"
- - "From The Desk Of Wise Guy Sammy: Check Your Facts Before Making A Fool Of Yourself"
- - "From The Desk Of Wise Guy Sammy: You Can't Outwait A Bureaucracy"
- - "From The Desk Of Wise Guy Sammy: It's Better To Yield Right Of Way Than To Demand It"
- - "From The Desk Of Wise Guy Sammy: A Person Who Likes Cats Can't Be All Bad"
- - "From The Desk Of Wise Guy Sammy: Help Is The Sunny Side Of Control"
- - "From The Desk Of Wise Guy Sammy: Two Points Determine A Straight Line"
- - "From The Desk Of Wise Guy Sammy: Reading Improves The Mind And Lifts The Spirit"
- - "From The Desk Of Wise Guy Sammy: Better To Aim High And Miss Then To Aim Low And Hit"
- - "From The Desk Of Wise Guy Sammy: Meteors Often Strike The Same Place More Than Once"
- - "Tommy B. Saif Sez: Look Both Ways Before Boarding The Shuttle"
- - "Tommy B. Saif Sez: Hold On; Sudden Stops Sometimes Necessary"
- - "Tommy B. Saif Sez: Keep Fingers Away From Moving Panels"
- - "Tommy B. Saif Sez: No Left Turn, Except Shuttles"
- - "Tommy B. Saif Sez: Return Seats And Trays To Their Proper Upright Position"
- - "Tommy B. Saif Sez: Eating And Drinking In Docking Bays Is Prohibited"
- - "Tommy B. Saif Sez: Accept No Substitutes, And Don't Be Fooled By Imitations"
- - "Tommy B. Saif Sez: Do Not Remove This Tag Under Penalty Of Law"
- - "Tommy B. Saif Sez: Always Mix Thoroughly When So Instructed"
- - "Tommy B. Saif Sez: Try To Keep Six Month's Expenses In Reserve"
- - "Tommy B. Saif Sez: Change Not Given Without Purchase"
- - "Tommy B. Saif Sez: If You Break It, You Buy It"
- - "Tommy B. Saif Sez: Reservations Must Be Cancelled 48 Hours Prior To Event To Obtain Refund"
- - "Doughnuts: Is There Anything They Can't Do"
- - "If Tin Whistles Are Made Of Tin, What Do They Make Foghorns Out Of?"
- - "Broccoli discovered to be colonies of tiny aliens with murder on their minds"
+ prefix: news-dataset-
+ count: 62
diff --git a/Resources/Prototypes/Datasets/rat_king_commands.yml b/Resources/Prototypes/Datasets/rat_king_commands.yml
index c53d1e135b..6cfb2a6dba 100644
--- a/Resources/Prototypes/Datasets/rat_king_commands.yml
+++ b/Resources/Prototypes/Datasets/rat_king_commands.yml
@@ -1,26 +1,23 @@
-- type: dataset
+- type: localizedDataset
id: RatKingCommandStay
values:
- - "Sit!"
- - "Stay!"
- - "Stop!"
+ prefix: rat-king-command-stay-
+ count: 3
-- type: dataset
+- type: localizedDataset
id: RatKingCommandFollow
values:
- - "Heel!"
- - "Follow!"
+ prefix: rat-king-command-follow-
+ count: 2
-- type: dataset
+- type: localizedDataset
id: RatKingCommandCheeseEm
values:
- - "Attack!"
- - "Sic!"
- - "Kill!"
- - "Cheese 'Em!"
+ prefix: rat-king-command-cheese-
+ count: 4
-- type: dataset
+- type: localizedDataset
id: RatKingCommandLoose
values:
- - "Free!"
- - "Loose!"
+ prefix: rat-king-command-loose-
+ count: 2
diff --git a/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml b/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml
index 3cb8adde73..fac61d6103 100644
--- a/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml
+++ b/Resources/Prototypes/Entities/Clothing/Back/backpacks.yml
@@ -278,6 +278,10 @@
sprite: Clothing/Back/Backpacks/syndicate.rsi
- type: ExplosionResistance
damageCoefficient: 0.1
+ - type: Storage
+ grid:
+ - 0,0,7,3
+ - 8,1,8,3
#Special
- type: entity
diff --git a/Resources/Prototypes/Entities/Clothing/Head/misc.yml b/Resources/Prototypes/Entities/Clothing/Head/misc.yml
index 28fe46e0fa..9068bb576a 100644
--- a/Resources/Prototypes/Entities/Clothing/Head/misc.yml
+++ b/Resources/Prototypes/Entities/Clothing/Head/misc.yml
@@ -324,3 +324,17 @@
sprite: Clothing/Head/Misc/hairflower.rsi
- type: Clothing
sprite: Clothing/Head/Misc/hairflower.rsi
+
+- type: entity
+ parent: ClothingHeadBase
+ id: ClothingHeadPerformerWig
+ name: performer's wig
+ description: On a closer inspection, it appears that it is made from optic fiber.
+ components:
+ - type: Sprite
+ sprite: Clothing/Head/Misc/performer-wig.rsi
+ - type: Clothing
+ sprite: Clothing/Head/Misc/performer-wig.rsi
+ - type: HideLayerClothing
+ slots:
+ - Hair
diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/specific.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/specific.yml
index c3d9bb1224..aec34e80ca 100644
--- a/Resources/Prototypes/Entities/Clothing/OuterClothing/specific.yml
+++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/specific.yml
@@ -18,3 +18,12 @@
interfaces:
enum.ChameleonUiKey.Key:
type: ChameleonBoundUserInterface
+ - type: TemperatureProtection # Same as a basic winter coat.
+ heatingCoefficient: 1.1
+ coolingCoefficient: 0.1
+ - type: Armor
+ modifiers:
+ coefficients:
+ Slash: 0.95
+ Heat: 0.90
+ showArmorOnExamine: false
diff --git a/Resources/Prototypes/Entities/Effects/mobspawn.yml b/Resources/Prototypes/Entities/Effects/mobspawn.yml
index 1489c26493..a043fe97d6 100644
--- a/Resources/Prototypes/Entities/Effects/mobspawn.yml
+++ b/Resources/Prototypes/Entities/Effects/mobspawn.yml
@@ -39,6 +39,18 @@
- type: SpawnOnDespawn
prototype: MobIronCrab
+- type: entity
+ id: MobSpawnCrabCoal
+ parent: MobSpawnCrabQuartz
+ name: mobspawner coalcrab
+ categories: [ HideSpawnMenu, Spawner ]
+ components:
+ - type: Sprite
+ sprite: /Textures/Effects/mobspawn.rsi
+ state: crab_coal
+ - type: SpawnOnDespawn
+ prototype: MobCoalCrab
+
- type: entity
id: MobSpawnCrabSilver
parent: MobSpawnCrabQuartz
@@ -51,6 +63,18 @@
- type: SpawnOnDespawn
prototype: MobSilverCrab
+- type: entity
+ id: MobSpawnCrabGold
+ parent: MobSpawnCrabQuartz
+ name: mobspawner goldcrab
+ categories: [ HideSpawnMenu, Spawner ]
+ components:
+ - type: Sprite
+ sprite: /Textures/Effects/mobspawn.rsi
+ state: crab_gold
+ - type: SpawnOnDespawn
+ prototype: MobGoldCrab
+
- type: entity
id: MobSpawnCrabUranium
parent: MobSpawnCrabQuartz
diff --git a/Resources/Prototypes/Entities/Effects/puddle.yml b/Resources/Prototypes/Entities/Effects/puddle.yml
index 0cc4d14c0e..49962ec189 100644
--- a/Resources/Prototypes/Entities/Effects/puddle.yml
+++ b/Resources/Prototypes/Entities/Effects/puddle.yml
@@ -137,6 +137,8 @@
hard: false
- type: IconSmooth
key: puddles
+ additionalKeys:
+ - walls
base: splat
mode: CardinalFlags
- type: SolutionContainerManager
diff --git a/Resources/Prototypes/Entities/Effects/wallspawn.yml b/Resources/Prototypes/Entities/Effects/wallspawn.yml
index 44afe80e97..155ef10bb5 100644
--- a/Resources/Prototypes/Entities/Effects/wallspawn.yml
+++ b/Resources/Prototypes/Entities/Effects/wallspawn.yml
@@ -74,6 +74,22 @@
- type: SpawnOnDespawn
prototype: AsteroidRockSilver
+- type: entity
+ id: WallSpawnAsteroidGoldCrab
+ parent: WallSpawnAsteroid
+ categories: [ HideSpawnMenu ]
+ components:
+ - type: SpawnOnDespawn
+ prototype: AsteroidRockGoldCrab
+
+- type: entity
+ id: WallSpawnAsteroidGold
+ parent: WallSpawnAsteroid
+ categories: [ HideSpawnMenu ]
+ components:
+ - type: SpawnOnDespawn
+ prototype: AsteroidRockGold
+
- type: entity
id: WallSpawnAsteroidIronCrab
parent: WallSpawnAsteroid
@@ -88,4 +104,20 @@
categories: [ HideSpawnMenu ]
components:
- type: SpawnOnDespawn
- prototype: AsteroidRockTin
\ No newline at end of file
+ prototype: AsteroidRockTin
+
+- type: entity
+ id: WallSpawnAsteroidCoalCrab
+ parent: WallSpawnAsteroid
+ categories: [ HideSpawnMenu ]
+ components:
+ - type: SpawnOnDespawn
+ prototype: AsteroidRockCoalCrab
+
+- type: entity
+ id: WallSpawnAsteroidCoal
+ parent: WallSpawnAsteroid
+ categories: [ HideSpawnMenu ]
+ components:
+ - type: SpawnOnDespawn
+ prototype: AsteroidRockCoal
diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/drinks_glass.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/drinks_glass.yml
index 5167613cbe..c3a9a3a143 100644
--- a/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/drinks_glass.yml
+++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/Food_Drinks/drinks_glass.yml
@@ -124,4 +124,5 @@
- DrinkShakeRobo
- DrinkHoochGlass
- DrinkBeepskySmashGlass
+ - DrinkBacchusBlessing
rareChance: 0.05
diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml
index d127093412..40f37c737f 100644
--- a/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml
+++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/anomaly.yml
@@ -22,7 +22,7 @@
- AnomalyFlora
- AnomalyShadow
- AnomalyTech
- #- AnomalySanta
+ #- AnomalySanta
rareChance: 0.3
rarePrototypes:
- RandomAnomalyInjectorSpawner
@@ -40,7 +40,9 @@
- type: RandomSpawner
prototypes:
- AnomalyRockIron
+ - AnomalyRockCoal
- AnomalyRockSilver
+ - AnomalyRockGold
- AnomalyRockQuartz
- AnomalyRockUranium
chance: 1
@@ -69,4 +71,4 @@
- AnomalyTrapRock
#- AnomalyTrapSanta
chance: 1
-
+
diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml
index 84adf28e2d..fccc04b495 100644
--- a/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml
+++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/crystal.yml
@@ -16,5 +16,7 @@
- CrystalOrange
- CrystalBlue
- CrystalCyan
+ - CrystalYellow
+ - CrystalBlack
- CrystalGrey
chance: 0.7
diff --git a/Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml b/Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml
index bd3c76cd84..c78686f5ef 100644
--- a/Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml
+++ b/Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml
@@ -191,6 +191,26 @@
- sprite: Objects/Weapons/Melee/energykatana.rsi
state: icon
+- type: entity
+ categories: [ HideSpawnMenu, Spawner ]
+ parent: BaseAntagSpawner
+ id: SpawnPointGhostParadoxClone
+ components:
+ - type: GhostRole
+ name: ghost-role-information-paradox-clone-name
+ description: ghost-role-information-paradox-clone-description
+ rules: ghost-role-information-antagonist-rules
+ mindRoles:
+ - MindRoleGhostRoleSoloAntagonist
+ raffle:
+ settings: default
+ - type: Sprite
+ layers:
+ - sprite: Markers/jobs.rsi
+ state: green
+ - sprite: Mobs/Aliens/paradox_clone.rsi
+ state: preview
+
- type: entity
categories: [ HideSpawnMenu, Spawner ]
parent: BaseAntagSpawner
diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
index 3995e071fb..96e8eda43d 100644
--- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
+++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
@@ -156,6 +156,7 @@
sounds:
Unsexed: UnisexSilicon
screamAction: null
+ - type: DamagedSiliconAccent
- type: UnblockableSpeech
- type: FootstepModifier
footstepSoundCollection:
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
index 06cd4debd3..3b56f53dce 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
@@ -457,7 +457,7 @@
description: ghost-role-information-mothroach-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
- type: Fixtures
fixtures:
fix1:
@@ -1649,7 +1649,7 @@
description: ghost-role-information-mouse-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
- type: GhostTakeoverAvailable
- type: Speech
speechSounds: Squeak
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml b/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
index 45a45e8995..dbceb9c694 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/carp.yml
@@ -171,7 +171,7 @@
description: ghost-role-information-sentient-carp-description
rules: ghost-role-information-space-dragon-summoned-carp-rules
mindRoles:
- - MindRoleGhostRoleTeamAntagonist
+ - MindRoleGhostRoleTeamAntagonistFlock
raffle:
settings: short
- type: GhostTakeoverAvailable
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml b/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml
index a26b1511dd..1a2c134607 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/elemental.yml
@@ -157,6 +157,37 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
+- type: entity
+ parent: MobOreCrab
+ id: MobCoalCrab
+ description: An ore crab made from coal.
+ components:
+ - type: Sprite
+ state: coal_crab
+ - type: MeleeWeapon
+ damage:
+ types:
+ Blunt: 2.5
+ - type: MovementSpeedModifier
+ baseWalkSpeed : 1.0
+ baseSprintSpeed : 1.5
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 100
+ behaviors:
+ - !type:PlaySoundBehavior
+ sound:
+ collection: GlassBreak
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ Coal1:
+ min: 2
+ max: 4
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+
- type: entity
parent: MobOreCrab
id: MobUraniumCrab
@@ -221,6 +252,35 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
+- type: entity
+ parent: MobOreCrab
+ id: MobGoldCrab
+ name: ore crab
+ description: An ore crab made from gold.
+ components:
+ - type: Sprite
+ state: gold_crab
+ - type: MeleeWeapon
+ damage:
+ types:
+ Blunt: 5
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 70
+ behaviors:
+ - !type:PlaySoundBehavior
+ sound:
+ collection: GlassBreak
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ GoldOre1:
+ min: 1
+ max: 3
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+
- type: entity
name: reagent slime
id: ReagentSlime
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/miscellaneous.yml b/Resources/Prototypes/Entities/Mobs/NPCs/miscellaneous.yml
index cdd90611f7..15ac98a9e4 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/miscellaneous.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/miscellaneous.yml
@@ -126,6 +126,14 @@
groups:
Brute: -2
Burn: -2
+ - reagents: [ WeedKiller, PlantBGone ]
+ methods: [ Touch ]
+ effects:
+ - !type:HealthChange
+ scaleByQuantity: true
+ damage:
+ types:
+ Heat: 2
- type: ReplacementAccent
accent: tomatoKiller
- type: Item
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
index 9d193a52e6..280df955af 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
@@ -208,7 +208,7 @@
description: ghost-role-information-honkbot-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
raffle:
settings: default
- type: GhostTakeoverAvailable
@@ -242,7 +242,7 @@
description: ghost-role-information-jonkbot-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
raffle:
settings: default
- type: InteractionPopup
@@ -379,7 +379,7 @@
description: ghost-role-information-mimebot-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
raffle:
settings: default
- type: GhostTakeoverAvailable
diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/space.yml b/Resources/Prototypes/Entities/Mobs/NPCs/space.yml
index 7c549e484d..4ae6813963 100644
--- a/Resources/Prototypes/Entities/Mobs/NPCs/space.yml
+++ b/Resources/Prototypes/Entities/Mobs/NPCs/space.yml
@@ -390,7 +390,7 @@
description: ghost-role-information-snail-description
rules: ghost-role-information-freeagent-rules
mindRoles:
- - MindRoleGhostRoleFreeAgent
+ - MindRoleGhostRoleFreeAgentHarmless
- type: GhostTakeoverAvailable
- type: Emoting
- type: Sprite
@@ -516,6 +516,9 @@
id: MobSnailInstantDeath
suffix: Smite
components:
+ - type: GhostRole
+ mindRoles:
+ - MindRoleGhostRoleFreeAgent
- type: MobStateActions
actions:
Alive:
diff --git a/Resources/Prototypes/Entities/Mobs/Player/ShuttleRoles/settings.yml b/Resources/Prototypes/Entities/Mobs/Player/ShuttleRoles/settings.yml
index d8d9fdd2cd..cebc570bdb 100644
--- a/Resources/Prototypes/Entities/Mobs/Player/ShuttleRoles/settings.yml
+++ b/Resources/Prototypes/Entities/Mobs/Player/ShuttleRoles/settings.yml
@@ -740,6 +740,8 @@
name: ghost-role-information-syndie-soldier-teamlead-name
description: ghost-role-information-syndie-soldier-teamlead-description
rules: ghost-role-information-rules-team-antagonist
+ mindRoles:
+ - MindRoleGhostRoleTeamAntagonist
raffle:
settings: default
- type: Loadout
@@ -758,6 +760,8 @@
name: ghost-role-information-syndie-soldier-name
description: ghost-role-information-syndie-soldier-description
rules: ghost-role-information-rules-team-antagonist
+ mindRoles:
+ - MindRoleGhostRoleTeamAntagonist
raffle:
settings: default
- type: Loadout
@@ -794,6 +798,8 @@
name: ghost-role-information-pirate-name
description: ghost-role-information-pirate-description
rules: ghost-role-information-rules-team-antagonist
+ mindRoles:
+ - MindRoleGhostRoleTeamAntagonist
raffle:
settings: default
- type: Loadout
@@ -811,6 +817,8 @@
name: ghost-role-information-pirate-captain-name
description: ghost-role-information-pirate-captain-description
rules: ghost-role-information-rules-team-antagonist
+ mindRoles:
+ - MindRoleGhostRoleTeamAntagonist
raffle:
settings: default
- type: Loadout
@@ -827,6 +835,8 @@
name: ghost-role-information-blackmarketeer-name
description: ghost-role-information-blackmarketeer-description
rules: ghost-role-information-freeagent-rules
+ mindRoles:
+ - MindRoleGhostRoleFreeAgent
raffle:
settings: default
- type: Loadout
@@ -845,6 +855,8 @@
name: ghost-role-information-cossack-name
description: ghost-role-information-cossack-description
rules: ghost-role-information-freeagent-rules
+ mindRoles:
+ - MindRoleGhostRoleFreeAgent
raffle:
settings: default
- type: Loadout
diff --git a/Resources/Prototypes/Entities/Mobs/Player/clone.yml b/Resources/Prototypes/Entities/Mobs/Player/clone.yml
index 64ae4f9ad8..38040f7cdf 100644
--- a/Resources/Prototypes/Entities/Mobs/Player/clone.yml
+++ b/Resources/Prototypes/Entities/Mobs/Player/clone.yml
@@ -27,11 +27,13 @@
- Clumsy
- MindShield
- MimePowers
+ - SpaceNinja
# accents
- Accentless
- BackwardsAccent
- BarkAccent
- BleatingAccent
+ - DamagedSiliconAccent
- FrenchAccent
- GermanAccent
- LizardAccent
@@ -56,6 +58,8 @@
blacklist:
components:
- AttachedClothing # helmets, which are part of the suit
+ - HumanoidAppearance # will cause problems for downstream felinids getting cloned as Urists
+ - VirtualItem
- type: cloningSettings
id: Antag
@@ -69,6 +73,8 @@
parent: Antag
forceCloning: false
copyEquipment: null
+ copyInternalStorage: false
+ copyImplants: false
# spawner
@@ -78,7 +84,7 @@
suffix: Non-Antag
components:
- type: Sprite
- sprite: Markers/paradox_clone.rsi
+ sprite: Mobs/Aliens/paradox_clone.rsi
state: preview
- type: RandomCloneSpawner
settings: BaseClone
diff --git a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml
index 65137825fc..91d1b95b6e 100644
--- a/Resources/Prototypes/Entities/Mobs/Player/dragon.yml
+++ b/Resources/Prototypes/Entities/Mobs/Player/dragon.yml
@@ -161,6 +161,9 @@
components:
- type: Dragon
spawnRiftAction: ActionSpawnRift
+ - type: GhostRole
+ mindRoles:
+ - MindRoleDragon
- type: ActionGun
action: ActionDragonsBreath
gunProto: DragonsBreathGun
diff --git a/Resources/Prototypes/Entities/Mobs/Player/human.yml b/Resources/Prototypes/Entities/Mobs/Player/human.yml
index 2355c0ffb4..5ed2c52427 100644
--- a/Resources/Prototypes/Entities/Mobs/Player/human.yml
+++ b/Resources/Prototypes/Entities/Mobs/Player/human.yml
@@ -97,7 +97,7 @@
roleLoadout: [ RoleSurvivalSyndicate ]
- type: RandomMetadata
nameSegments:
- - SyndicateNamesPrefix
+ - NamesSyndicatePrefix
- NamesSyndicateNormal
- type: NpcFactionMember
factions:
diff --git a/Resources/Prototypes/Entities/Mobs/Player/paradox_clone.yml b/Resources/Prototypes/Entities/Mobs/Player/paradox_clone.yml
new file mode 100644
index 0000000000..1516843379
--- /dev/null
+++ b/Resources/Prototypes/Entities/Mobs/Player/paradox_clone.yml
@@ -0,0 +1,37 @@
+# Mob
+- type: entity
+ parent: BaseMob
+ id: MobParadox
+ name: space-time paradox
+ description: A big ball of wibbly wobbly, timey wimey stuff.
+ components:
+ - type: Sprite
+ drawdepth: Mobs
+ layers:
+ - sprite: Mobs/Aliens/paradox_clone.rsi
+ state: paradox
+ shader: unshaded
+ - type: RotationVisuals
+ horizontalRotation: 90
+ - type: Pullable
+ - type: Tag
+ tags:
+ - DoorBumpOpener
+
+- type: entity
+ parent: MobParadox
+ id: MobParadoxTimed # visual effect when gibbing on round end
+ components:
+ - type: TimedDespawn
+ lifetime: 10
+
+# guidebook dummy
+
+- type: entity
+ id: ParadoxCloneDummy
+ categories: [ HideSpawnMenu ]
+ name: Paradox Clone
+ components:
+ - type: Sprite
+ sprite: Mobs/Aliens/paradox_clone.rsi
+ state: preview
diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks.yml
index 179e479135..ca56fbcb35 100644
--- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks.yml
+++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks.yml
@@ -1675,6 +1675,9 @@
reagents:
- ReagentId: Sake
Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/sakeglass.rsi
+ state: icon
- type: entity
parent: DrinkGlass
@@ -2280,6 +2283,182 @@
sprite: Objects/Consumable/Drinks/xenobasher.rsi
state: icon
+- type: entity
+ parent: DrinkGlass
+ id: DrinkCaipirinha
+ suffix: caipirinha
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Caipirinha
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/caipirinha.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkDaiquiri
+ suffix: daiquiri
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Daiquiri
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/daiquiri.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkDeathInTheAfternoon
+ suffix: death in the afternoon
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: DeathInTheAfternoon
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/deathintheafternoon.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkEmpress75
+ suffix: empress 75
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Empress75
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/empress75.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkEspressoMartini
+ suffix: espresso martini
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: EspressoMartini
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/espressomartini.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkMayojito
+ suffix: mayojito
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Mayojito
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/mayojito.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkMimeosa
+ suffix: mimeosa
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Mimeosa
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/mimeosa.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkMimosa
+ suffix: mimosa
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: Mimosa
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/mimosa.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkMoscowMule
+ suffix: moscow mule
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: MoscowMule
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/moscowmule.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkTheSunAlsoRises
+ suffix: the sun also rises
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: TheSunAlsoRises
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/thesunalsorises.rsi
+ state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkWhiskeySour
+ suffix: whiskey sour
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: WhiskeySour
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/whiskeysour.rsi
+ state: icon
+
# TODO: MOVE
- type: entity
@@ -2347,3 +2526,20 @@
- type: Icon
sprite: Objects/Consumable/Drinks/bloodglass.rsi
state: icon
+
+- type: entity
+ parent: DrinkGlass
+ id: DrinkBacchusBlessing
+ suffix: bacchus blessing
+ description: You didn't think it was possible for a liquid to be so utterly revolting. Are you sure about this...?
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ drink:
+ maxVol: 30
+ reagents:
+ - ReagentId: BacchusBlessing
+ Quantity: 30
+ - type: Icon
+ sprite: Objects/Consumable/Drinks/bacchusblessing.rsi
+ state: icon
diff --git a/Resources/Prototypes/Entities/Objects/Deliveries/deliveries.yml b/Resources/Prototypes/Entities/Objects/Deliveries/deliveries.yml
index 203d4f577e..ff9ba7e68f 100644
--- a/Resources/Prototypes/Entities/Objects/Deliveries/deliveries.yml
+++ b/Resources/Prototypes/Entities/Objects/Deliveries/deliveries.yml
@@ -49,7 +49,6 @@
components:
- type: Sprite
sprite: Objects/Specific/Cargo/mail_large.rsi
- scale: 0.85,0.85
layers:
- state: icon
map: [ "enum.DeliveryVisualLayers.Icon" ]
@@ -58,8 +57,7 @@
visible: false
- state: postmark
- map: [ "enum.DeliveryVisualLayers.JobStamp" ]
- scale: 0.6, 0.6
- offset: -0.23, -0.23
+ offset: -0.21875, -0.25
- state: fragile
map: [ "enum.DeliveryVisualLayers.FragileStamp" ]
visible: false
@@ -89,7 +87,6 @@
components:
- type: Sprite
sprite: Objects/Specific/Cargo/mail.rsi
- scale: 0.8,0.8
layers:
- state: icon
map: [ "enum.DeliveryVisualLayers.Icon" ]
@@ -98,8 +95,7 @@
visible: false
- state: postmark
- map: [ "enum.DeliveryVisualLayers.JobStamp" ]
- scale: 0.8, 0.8
- offset: 0.225, 0.165
+ offset: -0.125, -0.0625
- state: fragile
map: [ "enum.DeliveryVisualLayers.FragileStamp" ]
visible: false
diff --git a/Resources/Prototypes/Entities/Objects/Devices/cartridges.yml b/Resources/Prototypes/Entities/Objects/Devices/cartridges.yml
index 0ab0b687dc..494bda50d1 100644
--- a/Resources/Prototypes/Entities/Objects/Devices/cartridges.yml
+++ b/Resources/Prototypes/Entities/Objects/Devices/cartridges.yml
@@ -16,6 +16,25 @@
state: book_icon
- type: NotekeeperCartridge
+
+- type: entity
+ parent: BaseItem
+ id: NanoTaskCartridge
+ name: NanoTask cartridge
+ description: A program that allows you to keep a list of tasks to do.
+ components:
+ - type: Sprite
+ sprite: Objects/Devices/cartridge.rsi
+ state: cart-nav
+ - type: Cartridge
+ programName: nano-task-program-name
+ icon:
+ sprite: Interface/Misc/program_icons.rsi
+ state: nano_task
+ - type: UIFragment
+ ui: !type:NanoTaskUi
+ - type: NanoTaskCartridge
+
- type: entity
parent: BaseItem
id: NewsReaderCartridge
diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml
index 3ef18d1b2e..fa9b313590 100644
--- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml
+++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml
@@ -80,6 +80,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
cartridgeSlot:
priority: -1
@@ -130,6 +131,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- WantedListCartridge
@@ -143,6 +145,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- MedTekCartridge
@@ -492,6 +495,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- AstroNavCartridge
@@ -840,6 +844,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- WantedListCartridge
- LogProbeCartridge
@@ -908,6 +913,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- MedTekCartridge
- WantedListCartridge
@@ -932,6 +938,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- LogProbeCartridge
- WantedListCartridge
@@ -1054,6 +1061,7 @@
uiKey: enum.PdaUiKey.Key
preinstalled:
- NotekeeperCartridge
+ - NanoTaskCartridge
- type: entity
parent: BaseSecurityPDA
@@ -1080,6 +1088,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- MedTekCartridge
- WantedListCartridge
@@ -1250,6 +1259,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- WantedListCartridge
- LogProbeCartridge
@@ -1277,6 +1287,7 @@
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
+ - NanoTaskCartridge
- NewsReaderCartridge
- WantedListCartridge
- MedTekCartridge
@@ -1423,6 +1434,7 @@
uiKey: enum.PdaUiKey.Key
preinstalled:
- NotekeeperCartridge
+ - NanoTaskCartridge
- MedTekCartridge
- type: entity
diff --git a/Resources/Prototypes/Entities/Objects/Fun/toys.yml b/Resources/Prototypes/Entities/Objects/Fun/toys.yml
index 193271ba17..5dc2c0713c 100644
--- a/Resources/Prototypes/Entities/Objects/Fun/toys.yml
+++ b/Resources/Prototypes/Entities/Objects/Fun/toys.yml
@@ -358,7 +358,9 @@
speechVerb: Reptilian # for pais (In the secret stash)
- type: Tag
tags:
- - PlushieLizard
+ - ClothMade
+ - Payload
+ - PlushieLizard
- type: entity
parent: PlushieLizard
diff --git a/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml b/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml
index 47828ed8f5..3b2b441aab 100644
--- a/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml
+++ b/Resources/Prototypes/Entities/Objects/Materials/crystal_shard.yml
@@ -73,6 +73,22 @@
- Trash
- CrystalBlue
+- type: entity
+ parent: ShardCrystalBase
+ name: yellow crystal shard
+ id: ShardCrystalYellow
+ components:
+ - type: Sprite
+ color: "#ffde46"
+ - type: PointLight
+ radius: 2
+ energy: 2.5
+ color: "#ffde46"
+ - type: Tag
+ tags:
+ - Trash
+ - CrystalYellow
+
- type: entity
parent: ShardCrystalBase
id: ShardCrystalOrange
@@ -89,6 +105,22 @@
- Trash
- CrystalOrange
+- type: entity
+ parent: ShardCrystalBase
+ name: black crystal shard
+ id: ShardCrystalBlack
+ components:
+ - type: Sprite
+ color: "#363636"
+ - type: PointLight
+ radius: 2
+ energy: 2.5
+ color: "#363636"
+ - type: Tag
+ tags:
+ - Trash
+ - CrystalBlack
+
- type: entity
parent: ShardCrystalBase
id: ShardCrystalPink
diff --git a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml
index 34263ccdc0..9b27ad0bc6 100644
--- a/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml
+++ b/Resources/Prototypes/Entities/Objects/Misc/fluff_lights.yml
@@ -191,9 +191,11 @@
- type: Item
size: Normal
- type: Sprite
+ sprite: Objects/Misc/Lights/lights.rsi
layers:
- state: floodlight
- - state: floodlight_on
+ map: [ "base" ]
+ - state: floodlight-on
shader: unshaded
visible: false
map: [ "light" ]
@@ -244,9 +246,13 @@
parent: BaseItem
description: A pole with powerful mounted lights on it. It's broken.
components:
+ - type: Item
+ size: Normal
+ sprite: Objects/Misc/Lights/lights.rsi
+ heldPrefix: floodlight-broken
- type: Sprite
sprite: Objects/Misc/Lights/lights.rsi
- state: floodlight_broken
+ state: floodlight-broken
- type: Anchorable
- type: Damageable
damageContainer: StructuralInorganic
diff --git a/Resources/Prototypes/Entities/Objects/Misc/paper.yml b/Resources/Prototypes/Entities/Objects/Misc/paper.yml
index a8b5bf0cab..de4e38cc7a 100644
--- a/Resources/Prototypes/Entities/Objects/Misc/paper.yml
+++ b/Resources/Prototypes/Entities/Objects/Misc/paper.yml
@@ -196,6 +196,21 @@
headerImagePath: "/Textures/Interface/Paper/paper_heading_cargo_invoice.svg.96dpi.png"
headerMargin: 0.0, 12.0, 0.0, 0.0
+- type: entity
+ id: PaperNanoTaskItem
+ parent: Paper
+ name: NanoTask item
+ description: A printed NanoTask item. Can be inserted into your PDA to add it to your tasks.
+ components:
+ - type: Tag
+ tags:
+ - Document
+ - Trash
+ - Paper
+ - type: StaticPrice
+ price: 0
+ - type: NanoTaskPrinted
+
- type: entity
id: PaperCargoBountyManifest
parent: PaperCargoInvoice
diff --git a/Resources/Prototypes/Entities/Objects/Misc/subdermal_implants.yml b/Resources/Prototypes/Entities/Objects/Misc/subdermal_implants.yml
index c4e2701769..7336f2726f 100644
--- a/Resources/Prototypes/Entities/Objects/Misc/subdermal_implants.yml
+++ b/Resources/Prototypes/Entities/Objects/Misc/subdermal_implants.yml
@@ -344,7 +344,7 @@
categories: [ HideSpawnMenu ]
components:
- type: SubdermalImplant
- permanent: true
+ - type: MindShieldImplant
- type: Tag
tags:
- MindShield
diff --git a/Resources/Prototypes/Entities/Objects/Power/lights.yml b/Resources/Prototypes/Entities/Objects/Power/lights.yml
index 66fec56eeb..29f6b7142c 100644
--- a/Resources/Prototypes/Entities/Objects/Power/lights.yml
+++ b/Resources/Prototypes/Entities/Objects/Power/lights.yml
@@ -347,6 +347,21 @@
- id: SheetGlass1
- id: ShardCrystalBlue
+- type: entity
+ parent: BaseLightTubeCrystal
+ name: yellow crystal light tube
+ id: LightTubeCrystalYellow
+ components:
+ - type: LightBulb
+ color: "#ffde46"
+ - type: Construction
+ graph: YellowLight
+ node: icon
+ - type: ToolRefinable
+ refineResult:
+ - id: SheetGlass1
+ - id: ShardCrystalYellow
+
- type: entity
parent: BaseLightTubeCrystal
name: pink crystal light tube
@@ -377,6 +392,24 @@
- id: SheetGlass1
- id: ShardCrystalOrange
+- type: entity
+ parent: BaseLightTubeCrystal
+ name: black crystal light tube
+ description: A high power high energy bulb which has a small colored crystal inside. It isn't very bright.
+ id: LightTubeCrystalBlack
+ components:
+ - type: LightBulb
+ color: "#363636"
+ lightEnergy: 1
+ lightRadius: 8
+ - type: Construction
+ graph: BlackLight
+ node: icon
+ - type: ToolRefinable
+ refineResult:
+ - id: SheetGlass1
+ - id: ShardCrystalBlack
+
- type: entity
parent: BaseLightTubeCrystal
name: red crystal light tube
@@ -454,6 +487,21 @@
- id: SheetGlass1
- id: ShardCrystalBlue
+- type: entity
+ parent: BaseLightbulbCrystal
+ name: yellow crystal light bulb
+ id: LightBulbCrystalYellow
+ components:
+ - type: LightBulb
+ color: "#ffde46"
+ - type: Construction
+ graph: YellowLightBulb
+ node: icon
+ - type: ToolRefinable
+ refineResult:
+ - id: SheetGlass1
+ - id: ShardCrystalYellow
+
- type: entity
parent: BaseLightbulbCrystal
name: pink crystal light bulb
@@ -484,6 +532,24 @@
- id: SheetGlass1
- id: ShardCrystalOrange
+- type: entity
+ parent: BaseLightbulbCrystal
+ name: black crystal light bulb
+ description: A high power high energy bulb which has a small colored crystal inside. It isn't very bright.
+ id: LightBulbCrystalBlack
+ components:
+ - type: LightBulb
+ color: "#363636"
+ lightEnergy: 1
+ lightRadius: 8
+ - type: Construction
+ graph: BlackLightBulb
+ node: icon
+ - type: ToolRefinable
+ refineResult:
+ - id: SheetGlass1
+ - id: ShardCrystalBlack
+
- type: entity
parent: BaseLightbulbCrystal
name: red crystal light bulb
diff --git a/Resources/Prototypes/Entities/Objects/Tools/decoys.yml b/Resources/Prototypes/Entities/Objects/Tools/decoys.yml
index a8346675e2..8bacfe96af 100644
--- a/Resources/Prototypes/Entities/Objects/Tools/decoys.yml
+++ b/Resources/Prototypes/Entities/Objects/Tools/decoys.yml
@@ -31,7 +31,7 @@
size: Normal
- type: RandomMetadata # No metagaming these, jimbo.
nameSegments:
- - SyndicateNamesPrefix
+ - NamesSyndicatePrefix
- NamesSyndicateNormal
- type: Damageable
damageContainer: Inorganic
diff --git a/Resources/Prototypes/Entities/Objects/Tools/handheld_mass_scanner.yml b/Resources/Prototypes/Entities/Objects/Tools/handheld_mass_scanner.yml
index e10c5b84af..31e5f99752 100644
--- a/Resources/Prototypes/Entities/Objects/Tools/handheld_mass_scanner.yml
+++ b/Resources/Prototypes/Entities/Objects/Tools/handheld_mass_scanner.yml
@@ -5,6 +5,8 @@
description: A hand-held mass scanner.
components:
- type: Item
+ size: Normal
+ sprite: Objects/Tools/handheld_mass_scanner.rsi
- type: Sprite
sprite: Objects/Tools/handheld_mass_scanner.rsi
state: icon
@@ -47,6 +49,9 @@
slots:
cell_slot:
name: power-cell-slot-component-slot-name-default
+ - type: Item
+ size: Normal
+ sprite: Objects/Tools/handheld_mass_scanner.rsi
- type: Sprite
sprite: Objects/Tools/handheld_mass_scanner.rsi
state: icon
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/shotgun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/shotgun.yml
index a26ef19c81..049271f998 100644
--- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/shotgun.yml
+++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Boxes/shotgun.yml
@@ -34,7 +34,7 @@
- type: entity
parent: AmmoProviderShotgunShell
id: BoxBeanbag
- name: shell box (beanbag)
+ name: ammunition box (.50 beanbag)
components:
- type: BallisticAmmoProvider
proto: ShellShotgunBeanbag
@@ -51,7 +51,7 @@
- state: beanbag
- type: entity
- name: shell box (lethal)
+ name: ammunition box (.50 pellet)
parent: AmmoProviderShotgunShell
id: BoxLethalshot
components:
@@ -66,7 +66,7 @@
- state: lethal
- type: entity
- name: shell box (slug)
+ name: ammunition box (.50 slug)
parent: AmmoProviderShotgunShell
id: BoxShotgunSlug
components:
@@ -85,7 +85,7 @@
- state: slug
- type: entity
- name: shell box (flare)
+ name: ammunition box (.50 flare)
parent: AmmoProviderShotgunShell
id: BoxShotgunFlare
components:
@@ -104,7 +104,7 @@
- state: flare
- type: entity
- name: shell box (incendiary)
+ name: ammunition box (.50 incendiary)
parent: AmmoProviderShotgunShell
id: BoxShotgunIncendiary
components:
@@ -123,7 +123,7 @@
- state: incendiary
- type: entity
- name: shell box (uranium)
+ name: ammunition box (.50 uranium)
parent: AmmoProviderShotgunShell
id: BoxShotgunUranium
components:
@@ -142,7 +142,7 @@
- state: uranium
- type: entity
- name: shell box (practice)
+ name: ammunition box (.50 practice)
parent: AmmoProviderShotgunShell
id: BoxShotgunPractice
components:
@@ -161,7 +161,7 @@
- state: practice
- type: entity
- name: shell box (tranquilizer)
+ name: ammunition box (.50 tranquilizer)
parent: AmmoProviderShotgunShell
id: BoxShellTranquilizer
components:
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml
index 3870b872a6..72411fc134 100644
--- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml
+++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml
@@ -73,7 +73,7 @@
- type: entity
id: ShellShotgun
- name: shell (.50)
+ name: shell (.50 pellet)
parent: [ BaseShellShotgun, BaseSecurityContraband ]
components:
- type: Sprite
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/magic.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/magic.yml
index 4c3fd937e0..c587787d48 100644
--- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/magic.yml
+++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/magic.yml
@@ -173,6 +173,8 @@
damage:
types:
Poison: 5
+ - type: TriggerOnCollide
+ fixtureID: projectile
- type: entity
id: ProjectilePolyboltCarp
@@ -181,8 +183,9 @@
description: Nooo, I don't wanna be fish!
categories: [ HideSpawnMenu ]
components:
- - type: PolymorphOnCollide
+ - type: PolymorphOnTrigger
polymorph: WizardForcedCarp
+ - type: TriggerWhitelist
whitelist:
components:
- Body
@@ -194,8 +197,9 @@
description: Nooo, I don't wanna be monkey!
categories: [ HideSpawnMenu ]
components:
- - type: PolymorphOnCollide
+ - type: PolymorphOnTrigger
polymorph: WizardForcedMonkey
+ - type: TriggerWhitelist
whitelist:
components:
- Body
@@ -212,8 +216,9 @@
layers:
- state: spell
color: brown
- - type: PolymorphOnCollide
+ - type: PolymorphOnTrigger
polymorph: WizardWallDoor
+ - type: TriggerWhitelist
whitelist:
components:
- Airlock
@@ -262,8 +267,9 @@
description: KnoH KnoH!
categories: [ HideSpawnMenu ]
components:
- - type: PolymorphOnCollide
+ - type: PolymorphOnTrigger
polymorph: WizardForcedCluwne
+ - type: TriggerWhitelist
whitelist:
components:
- Body
@@ -291,8 +297,9 @@
description: Nooo, I don't wanna be bread!
categories: [ HideSpawnMenu ]
components:
- - type: PolymorphOnCollide
+ - type: PolymorphOnTrigger
polymorph: BreadMorph
+ - type: TriggerWhitelist
whitelist:
components:
- Body
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml
index 041aa0edc2..8be5b5f8aa 100644
--- a/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml
+++ b/Resources/Prototypes/Entities/Objects/Weapons/Throwable/grenades.yml
@@ -201,7 +201,7 @@
sound:
path: /Audio/Effects/Grenades/Supermatter/supermatter_loop.ogg
- type: GravityWell
- maxRange: 10
+ maxRange: 7
baseRadialAcceleration: 5
baseTangentialAcceleration: .5
gravPulsePeriod: 0.03
@@ -248,10 +248,10 @@
sound:
path: /Audio/Effects/Grenades/Supermatter/whitehole_loop.ogg
- type: GravityWell
- maxRange: 10
- baseRadialAcceleration: -180
- baseTangentialAcceleration: -5
- gravPulsePeriod: 0.01
+ maxRange: 7
+ baseRadialAcceleration: -10
+ baseTangentialAcceleration: -1
+ gravPulsePeriod: 0.03
- type: SingularityDistortion
intensity: -200
falloffPower: 1.5
diff --git a/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml b/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml
index 3e5f9ca18a..d68d163b5e 100644
--- a/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml
+++ b/Resources/Prototypes/Entities/Structures/Decoration/crystals.yml
@@ -140,6 +140,34 @@
min: 1
max: 2
+- type: entity
+ id: CrystalBlack
+ parent: CrystalGreen
+ suffix: black
+ components:
+ - type: Sprite
+ color: "#363636"
+ - type: PointLight
+ radius: 3
+ energy: 3
+ color: "#363636"
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 20
+ behaviors:
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - !type:PlaySoundBehavior
+ sound:
+ collection: GlassBreak
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ ShardCrystalBlack:
+ min: 1
+ max: 2
+
- type: entity
id: CrystalBlue
parent: CrystalGreen
@@ -168,6 +196,34 @@
min: 1
max: 2
+- type: entity
+ id: CrystalYellow
+ parent: CrystalGreen
+ suffix: yellow
+ components:
+ - type: Sprite
+ color: "#ffde46"
+ - type: PointLight
+ radius: 3
+ energy: 3
+ color: "#ffde46"
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 20
+ behaviors:
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+ - !type:PlaySoundBehavior
+ sound:
+ collection: GlassBreak
+ - !type:SpawnEntitiesBehavior
+ spawn:
+ ShardCrystalYellow:
+ min: 1
+ max: 2
+
- type: entity
id: CrystalCyan
parent: CrystalGreen
diff --git a/Resources/Prototypes/Entities/Structures/Lighting/base_lighting.yml b/Resources/Prototypes/Entities/Structures/Lighting/base_lighting.yml
index baa90189cf..0cfb57dca1 100644
--- a/Resources/Prototypes/Entities/Structures/Lighting/base_lighting.yml
+++ b/Resources/Prototypes/Entities/Structures/Lighting/base_lighting.yml
@@ -564,6 +564,35 @@
softness: 0.5
color: "#39a1ff"
+- type: entity
+ id: PoweredlightYellow
+ suffix: Yellow
+ parent: Poweredlight
+ components:
+ - type: PoweredLight
+ hasLampOnSpawn: LightTubeCrystalYellow
+ - type: PointLight
+ radius: 8
+ energy: 3
+ softness: 0.5
+ color: "#ffde46"
+ - type: DamageOnInteract
+ damage:
+ types:
+ Heat: 2
+ popupText: powered-light-component-burn-hand
+
+- type: entity
+ id: AlwaysPoweredlightYellow
+ suffix: Always Powered, Yellow
+ parent: AlwaysPoweredWallLight
+ components:
+ - type: PointLight
+ radius: 8
+ energy: 3
+ softness: 0.5
+ color: "#ffde46"
+
- type: entity
id: PoweredlightPink
suffix: Pink
@@ -622,6 +651,36 @@
softness: 0.5
color: "#ff8227"
+- type: entity
+ id: PoweredlightBlack
+ suffix: Black
+ parent: Poweredlight
+ description:
+ components:
+ - type: PoweredLight
+ hasLampOnSpawn: LightTubeCrystalBlack
+ - type: PointLight
+ radius: 8
+ energy: 1
+ softness: 0.5
+ color: "#363636"
+ - type: DamageOnInteract
+ damage:
+ types:
+ Heat: 2
+ popupText: powered-light-component-burn-hand
+
+- type: entity
+ id: AlwaysPoweredlightBlack
+ suffix: Always Powered, Black
+ parent: AlwaysPoweredWallLight
+ components:
+ - type: PointLight
+ radius: 8
+ energy: 1
+ softness: 0.5
+ color: "#363636"
+
- type: entity
id: PoweredlightRed
suffix: Red
diff --git a/Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml b/Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml
index 3bc00fb1b6..00b60c56ba 100644
--- a/Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml
+++ b/Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml
@@ -1,11 +1,11 @@
-- type: entity
+- type: entity
parent: [BaseStructure, ConstructibleMachine] # Not a BaseMachinePowered since we don't want the anchorable component
id: CryoPod
name: cryo pod
description: A special machine intended to create a safe environment for the use of chemicals that react in cold environments.
components:
- type: Sprite
- sprite: Structures/Machines/cryogenics.rsi
+ sprite: Structures/Machines/Medical/cryopod.rsi
drawdepth: Mobs
noRot: true
offset: 0, 0.5
diff --git a/Resources/Prototypes/Entities/Structures/Machines/holopad.yml b/Resources/Prototypes/Entities/Structures/Machines/holopad.yml
index de7cfe3e27..eff64f0cd0 100644
--- a/Resources/Prototypes/Entities/Structures/Machines/holopad.yml
+++ b/Resources/Prototypes/Entities/Structures/Machines/holopad.yml
@@ -13,7 +13,15 @@
!type:PhysShapeCircle
radius: 0.25
mask:
- - SubfloorMask
+ - Impassable
+ - HighImpassable
+ - MidImpassable
+ fix2:
+ shape:
+ !type:PhysShapeCircle
+ radius: 0.25
+ mask:
+ - MachineLayer
layer:
- LowImpassable
hard: false
diff --git a/Resources/Prototypes/Entities/Structures/Machines/mail_teleporter.yml b/Resources/Prototypes/Entities/Structures/Machines/mail_teleporter.yml
index 4356921ed6..a03f166bbe 100644
--- a/Resources/Prototypes/Entities/Structures/Machines/mail_teleporter.yml
+++ b/Resources/Prototypes/Entities/Structures/Machines/mail_teleporter.yml
@@ -39,6 +39,9 @@
- type: Machine
board: MailTeleporterMachineCircuitboard
- type: PowerSwitch
+ - type: InteractionPopup
+ interactSuccessString: petting-success-mail-teleporter
+ interactFailureString: petting-failure-mail-teleporter
- type: DeliverySpawner
table: !type:NestedSelector
tableId: RandomDeliveryBasic
diff --git a/Resources/Prototypes/Entities/Structures/Machines/reagent_grinder.yml b/Resources/Prototypes/Entities/Structures/Machines/reagent_grinder.yml
index 72d6b28efa..6456e043b8 100644
--- a/Resources/Prototypes/Entities/Structures/Machines/reagent_grinder.yml
+++ b/Resources/Prototypes/Entities/Structures/Machines/reagent_grinder.yml
@@ -5,8 +5,6 @@
description: From BlenderTech. Will It Blend? Let's find out!
suffix: grinder/juicer
components:
- - type: Transform
- anchored: true
- type: ReagentGrinder
- type: ActivatableUI
key: enum.ReagentGrinderUiKey.Key
@@ -19,8 +17,8 @@
visuals:
enum.ReagentGrinderVisualState.BeakerAttached:
grinder:
- True: {state: "juicer1"}
- False: {state: "juicer0"}
+ True: {state: "grinder_beaker_attached"}
+ False: {state: "grinder_empty"}
- type: Physics
- type: Fixtures
fixtures:
@@ -33,13 +31,13 @@
layer:
- TabletopMachineLayer
- type: Sprite
- sprite: Structures/Machines/juicer.rsi
+ sprite: Structures/Machines/grinder.rsi
drawdepth: SmallObjects
snapCardinals: true
offset: "0.0,0.4"
layers:
- map: [ "grinder" ]
- state: "juicer0"
+ state: "grinder_empty"
- type: ApcPowerReceiver
powerLoad: 300
- type: ItemSlots
diff --git a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml
index 60980cb6fc..09bf879ca8 100644
--- a/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml
+++ b/Resources/Prototypes/Entities/Structures/Specific/Anomaly/anomalies.yml
@@ -553,6 +553,56 @@
spawns:
- MobSpawnCrabSilver
+- type: entity
+ id: AnomalyRockGold
+ parent: AnomalyRockBase
+ suffix: Rock, Gold
+ components:
+ - type: Sprite
+ color: "#e3ba70"
+ - type: PointLight
+ radius: 2.0
+ energy: 7.5
+ color: "#e3ba70"
+ - type: EntitySpawnAnomaly
+ entries:
+ - settings:
+ spawnOnPulse: true
+ minAmount: 8
+ maxAmount: 15
+ minRange: 4.5
+ maxRange: 7.5
+ spawns:
+ - WallSpawnAsteroid
+ - WallSpawnAsteroid
+ - WallSpawnAsteroidGold
+ - WallSpawnAsteroidGoldCrab
+ - settings:
+ spawnOnPulse: true
+ maxAmount: 3
+ minRange: 2.5
+ maxRange: 4.5
+ spawns:
+ - CrystalYellow
+ - settings:
+ spawnOnSuperCritical: true
+ minAmount: 30
+ maxAmount: 40
+ minRange: 5
+ maxRange: 15
+ spawns:
+ - CrystalYellow
+ - WallSpawnAsteroid
+ - WallSpawnAsteroid
+ - WallSpawnAsteroidGoldCrab
+ - settings:
+ spawnOnSuperCritical: true
+ minAmount: 6
+ maxAmount: 10
+ maxRange: 5
+ spawns:
+ - MobSpawnCrabGold
+
- type: entity
id: AnomalyRockIron
parent: AnomalyRockBase
@@ -603,6 +653,56 @@
spawns:
- MobSpawnCrabIron
+- type: entity
+ id: AnomalyRockCoal
+ parent: AnomalyRockBase
+ suffix: Rock, Coal
+ components:
+ - type: Sprite
+ color: "#484848"
+ - type: PointLight
+ radius: 2.0
+ energy: 7.5
+ color: "#484848"
+ - type: EntitySpawnAnomaly
+ entries:
+ - settings:
+ spawnOnPulse: true
+ minAmount: 8
+ maxAmount: 15
+ minRange: 4.5
+ maxRange: 7.5
+ spawns:
+ - WallSpawnAsteroid
+ - WallSpawnAsteroid
+ - WallSpawnAsteroidCoal
+ - WallSpawnAsteroidCoalCrab
+ - settings:
+ spawnOnPulse: true
+ maxAmount: 3
+ minRange: 2.5
+ maxRange: 4.5
+ spawns:
+ - CrystalBlack
+ - settings:
+ spawnOnSuperCritical: true
+ minAmount: 30
+ maxAmount: 40
+ minRange: 5
+ maxRange: 15
+ spawns:
+ - CrystalBlack
+ - WallSpawnAsteroid
+ - WallSpawnAsteroid
+ - WallSpawnAsteroidCoalCrab
+ - settings:
+ spawnOnSuperCritical: true
+ minAmount: 6
+ maxAmount: 10
+ maxRange: 5
+ spawns:
+ - MobSpawnCrabCoal
+
- type: entity
id: AnomalyFlora
parent: BaseAnomaly
diff --git a/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml b/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml
index b76791cba6..33c4dfbe17 100644
--- a/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml
+++ b/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml
@@ -592,6 +592,8 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:DumpCanisterBehavior
+ - type: Lock
+ locked: true
- type: entity
parent: GasCanister
diff --git a/Resources/Prototypes/Entities/Structures/Storage/Closets/wall_lockers.yml b/Resources/Prototypes/Entities/Structures/Storage/Closets/wall_lockers.yml
index 4280b960b4..02b9fa8271 100644
--- a/Resources/Prototypes/Entities/Structures/Storage/Closets/wall_lockers.yml
+++ b/Resources/Prototypes/Entities/Structures/Storage/Closets/wall_lockers.yml
@@ -22,6 +22,18 @@
stateDoorOpen: emergency_open
stateDoorClosed: emergency_door
+- type: entity
+ parent: BaseWallCloset
+ id: ClosetWallEmergencyN2
+ name: emergency nitrogen wall closet
+ description: It's full of life-saving equipment. Assuming, that is, that you breathe nitrogen.
+ components:
+ - type: Appearance
+ - type: EntityStorageVisuals
+ stateBaseClosed: n2
+ stateDoorOpen: n2_open
+ stateDoorClosed: n2_door
+
- type: entity
id: ClosetWallFire
name: fire-safety wall closet
@@ -163,4 +175,4 @@
stateDoorOpen: med_open
stateDoorClosed: med_door
- type: AccessReader
- access: [["Medical"]]
\ No newline at end of file
+ access: [["Medical"]]
diff --git a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml
index 54f553ab9c..e83b4c5f07 100644
--- a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml
+++ b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml
@@ -73,6 +73,29 @@
- state: rock_coal
map: [ "enum.MiningScannerVisualLayers.Overlay" ]
+- type: entity
+ id: AsteroidRockCoalCrab
+ parent: AsteroidRock
+ description: An ore vein rich with coal.
+ suffix: Coal Crab
+ components:
+ - type: OreVein
+ oreChance: 1.0
+ currentOre: OreCoalCrab
+ - type: Sprite
+ layers:
+ - state: rock_asteroid
+ - map: [ "enum.EdgeLayer.South" ]
+ state: rock_asteroid_south
+ - map: [ "enum.EdgeLayer.East" ]
+ state: rock_asteroid_east
+ - map: [ "enum.EdgeLayer.North" ]
+ state: rock_asteroid_north
+ - map: [ "enum.EdgeLayer.West" ]
+ state: rock_asteroid_west
+ - state: rock_coal
+ map: [ "enum.MiningScannerVisualLayers.Overlay" ]
+
- type: entity
id: AsteroidRockGold
parent: AsteroidRock
@@ -96,6 +119,29 @@
- state: rock_gold
map: [ "enum.MiningScannerVisualLayers.Overlay" ]
+- type: entity
+ id: AsteroidRockGoldCrab
+ parent: AsteroidRock
+ description: An ore vein rich with gold.
+ suffix: Gold Crab
+ components:
+ - type: OreVein
+ oreChance: 1.0
+ currentOre: OreGoldCrab
+ - type: Sprite
+ layers:
+ - state: rock_asteroid
+ - map: [ "enum.EdgeLayer.South" ]
+ state: rock_asteroid_south
+ - map: [ "enum.EdgeLayer.East" ]
+ state: rock_asteroid_east
+ - map: [ "enum.EdgeLayer.North" ]
+ state: rock_asteroid_north
+ - map: [ "enum.EdgeLayer.West" ]
+ state: rock_asteroid_west
+ - state: rock_gold
+ map: [ "enum.MiningScannerVisualLayers.Overlay" ]
+
- type: entity
id: AsteroidRockDiamond
parent: AsteroidRock
diff --git a/Resources/Prototypes/Entities/Structures/Walls/walls.yml b/Resources/Prototypes/Entities/Structures/Walls/walls.yml
index 57b8aa915e..97823cec28 100644
--- a/Resources/Prototypes/Entities/Structures/Walls/walls.yml
+++ b/Resources/Prototypes/Entities/Structures/Walls/walls.yml
@@ -81,7 +81,7 @@
acts: [ "Destruction" ]
- type: IconSmooth
- key: bricks
+ key: walls
base: brick
- type: entity
diff --git a/Resources/Prototypes/Entities/Tiles/chasm.yml b/Resources/Prototypes/Entities/Tiles/chasm.yml
index 23f3ad8395..a0dc308d17 100644
--- a/Resources/Prototypes/Entities/Tiles/chasm.yml
+++ b/Resources/Prototypes/Entities/Tiles/chasm.yml
@@ -27,6 +27,8 @@
state: full
- type: IconSmooth
key: chasm
+ additionalKeys:
+ - walls
base: chasm
- type: Physics
bodyType: Static
diff --git a/Resources/Prototypes/Entities/Tiles/lava.yml b/Resources/Prototypes/Entities/Tiles/lava.yml
index 68dd5671a0..10a09116ad 100644
--- a/Resources/Prototypes/Entities/Tiles/lava.yml
+++ b/Resources/Prototypes/Entities/Tiles/lava.yml
@@ -36,6 +36,8 @@
state: full
- type: IconSmooth
key: floor
+ additionalKeys:
+ - walls
base: lava
- type: Physics
bodyType: Static
diff --git a/Resources/Prototypes/Flavors/flavors.yml b/Resources/Prototypes/Flavors/flavors.yml
index b9609883ab..ffd6fe40b8 100644
--- a/Resources/Prototypes/Flavors/flavors.yml
+++ b/Resources/Prototypes/Flavors/flavors.yml
@@ -1339,7 +1339,67 @@
flavorType: Complex
description: flavor-complex-compressed-meat
+- type: flavor
+ id: caipirinha
+ flavorType: Complex
+ description: flavor-complex-caipirinha
+
+- type: flavor
+ id: daiquiri
+ flavorType: Complex
+ description: flavor-complex-daiquiri
+
+- type: flavor
+ id: deathintheafternoon
+ flavorType: Complex
+ description: flavor-complex-deathintheafternoon
+
+- type: flavor
+ id: empress75
+ flavorType: Complex
+ description: flavor-complex-empress75
+
+- type: flavor
+ id: espressomartini
+ flavorType: Complex
+ description: flavor-complex-espressomartini
+
+- type: flavor
+ id: mayojito
+ flavorType: Complex
+ description: flavor-complex-mayojito
+
+- type: flavor
+ id: mimeosa
+ flavorType: Complex
+ description: flavor-complex-mimeosa
+
+- type: flavor
+ id: mimosa
+ flavorType: Complex
+ description: flavor-complex-mimosa
+
+- type: flavor
+ id: moscowmule
+ flavorType: Complex
+ description: flavor-complex-moscowmule
+
+- type: flavor
+ id: thesunalsorises
+ flavorType: Complex
+ description: flavor-complex-thesunalsorises
+
+- type: flavor
+ id: whiskeysour
+ flavorType: Complex
+ description: flavor-complex-whiskeysour
+
- type: flavor
id: zombiecocktail
flavorType: Complex
description: flavor-complex-zombiecocktail
+
+- type: flavor
+ id: bacchusblessing
+ flavorType: Complex
+ description: flavor-complex-bacchus-blessing
diff --git a/Resources/Prototypes/GameRules/events.yml b/Resources/Prototypes/GameRules/events.yml
index 6ce47543b4..f942cafe6c 100644
--- a/Resources/Prototypes/GameRules/events.yml
+++ b/Resources/Prototypes/GameRules/events.yml
@@ -33,6 +33,7 @@
- id: DragonSpawn
- id: KingRatMigration
- id: NinjaSpawn
+ - id: ParadoxCloneSpawn
- id: RevenantSpawn
- id: SleeperAgents
- id: ZombieOutbreak
@@ -232,6 +233,42 @@
mindRoles:
- MindRoleNinja
+- type: entity
+ parent: BaseGameRule
+ id: ParadoxCloneSpawn
+ components:
+ - type: StationEvent
+ weight: 5
+ duration: null
+ earliestStart: 20
+ reoccurrenceDelay: 20
+ minimumPlayers: 15
+ - type: ParadoxCloneRule
+ objectiveBlacklist:
+ tags:
+ - ParadoxCloneObjectiveBlacklist
+ - type: AntagObjectives
+ objectives:
+ - ParadoxCloneKillObjective
+ - ParadoxCloneLivingObjective
+ - type: AntagRandomSpawn # TODO: improve spawning so they only start in maints
+ - type: AntagSelection
+ agentName: paradox-clone-round-end-agent-name
+ definitions:
+ - spawnerPrototype: SpawnPointGhostParadoxClone
+ min: 1
+ max: 1
+ pickPlayer: false
+ startingGear: ParadoxCloneGear
+ roleLoadout:
+ - RoleSurvivalVoxTank # give vox something to breath in case they don't get a copy
+ briefing:
+ text: paradox-clone-role-greeting
+ color: lightblue
+ sound: /Audio/Misc/paradox_clone_greeting.ogg
+ mindRoles:
+ - MindRoleParadoxClone
+
- type: entity
parent: BaseGameRule
id: RevenantSpawn
@@ -509,7 +546,7 @@
- type: NukeOperative
- type: RandomMetadata
nameSegments:
- - SyndicateNamesPrefix
+ - NamesSyndicatePrefix
- NamesSyndicateNormal
- type: NpcFactionMember
factions:
diff --git a/Resources/Prototypes/GameRules/roundstart.yml b/Resources/Prototypes/GameRules/roundstart.yml
index 2795562734..80b8e9b717 100644
--- a/Resources/Prototypes/GameRules/roundstart.yml
+++ b/Resources/Prototypes/GameRules/roundstart.yml
@@ -189,6 +189,7 @@
min: 240
max: 420
- type: AntagSelection
+ selectionTime: IntraPlayerSpawn
definitions:
- prefRoles: [ Traitor ]
max: 8
@@ -222,6 +223,7 @@
minPlayers: 15
- type: RevolutionaryRule
- type: AntagSelection
+ selectionTime: IntraPlayerSpawn
definitions:
- prefRoles: [ HeadRev ]
max: 3
@@ -310,6 +312,7 @@
max: 900
- type: ZombieRule
- type: AntagSelection
+ selectionTime: IntraPlayerSpawn
definitions:
- prefRoles: [ InitialInfected ]
max: 6
diff --git a/Resources/Prototypes/GameRules/subgamemodes.yml b/Resources/Prototypes/GameRules/subgamemodes.yml
index 32604286e2..6604a036bd 100644
--- a/Resources/Prototypes/GameRules/subgamemodes.yml
+++ b/Resources/Prototypes/GameRules/subgamemodes.yml
@@ -16,6 +16,7 @@
maxDifficulty: 2.5
- type: AntagSelection
agentName: thief-round-end-agent-name
+ selectionTime: IntraPlayerSpawn
definitions:
- prefRoles: [ Thief ]
max: 3
diff --git a/Resources/Prototypes/Loadouts/loadout_groups.yml b/Resources/Prototypes/Loadouts/loadout_groups.yml
index bcdd592007..eb36bc3001 100644
--- a/Resources/Prototypes/Loadouts/loadout_groups.yml
+++ b/Resources/Prototypes/Loadouts/loadout_groups.yml
@@ -78,6 +78,7 @@
- EmergencyOxygen
- LoadoutSpeciesVoxNitrogen
+# nitrogen or oxygen tank, depending on what your species needs
- type: loadoutGroup
id: GroupEVATank
name: loadout-group-EVA-tank
@@ -86,6 +87,14 @@
- LoadoutSpeciesEVANitrogen
- LoadoutSpeciesEVAOxygen
+# vox get a nitrogen tank, other species get nothing
+- type: loadoutGroup
+ id: GroupEVATankVox
+ name: loadout-group-vox-tank
+ hidden: true
+ loadouts:
+ - LoadoutSpeciesVoxNitrogen
+
- type: loadoutGroup
id: GroupPocketTankDouble
name: loadout-group-pocket-tank-double
diff --git a/Resources/Prototypes/Loadouts/role_loadouts.yml b/Resources/Prototypes/Loadouts/role_loadouts.yml
index a456b54c94..c2e154798b 100644
--- a/Resources/Prototypes/Loadouts/role_loadouts.yml
+++ b/Resources/Prototypes/Loadouts/role_loadouts.yml
@@ -527,12 +527,21 @@
# These loadouts are used for non-crew spawns, like off-station antags and event mobs
# They will be used without player configuration, thus they will only ever apply what is forced by MinLimit
+# gives vox a harness and breathing mask
+# nitrogen tank not included
- type: roleLoadout
id: RoleSurvivalVoxSupport
groups:
- GroupSpeciesBreathTool
- GroupTankHarness
+# gives vox a nitrogen breathing tank
+# other species get nothing
+- type: roleLoadout
+ id: RoleSurvivalVoxTank
+ groups:
+ - GroupEVATankVox
+
- type: roleLoadout
id: RoleSurvivalStandard
groups:
diff --git a/Resources/Prototypes/Objectives/paradoxClone.yml b/Resources/Prototypes/Objectives/paradoxClone.yml
new file mode 100644
index 0000000000..073c014af0
--- /dev/null
+++ b/Resources/Prototypes/Objectives/paradoxClone.yml
@@ -0,0 +1,41 @@
+- type: entity
+ abstract: true
+ parent: BaseObjective
+ id: BaseParadoxCloneObjective
+ components:
+ - type: Objective
+ # required but not used
+ difficulty: 1
+ issuer: objective-issuer-paradox
+ - type: RoleRequirement
+ roles:
+ mindRoles:
+ - ParadoxCloneRole
+ - type: Tag
+ tags:
+ - ParadoxCloneObjectiveBlacklist # don't copy the objectives from other clones
+
+- type: entity
+ parent: [BaseParadoxCloneObjective, BaseLivingObjective]
+ id: ParadoxCloneLivingObjective
+ name: Escape to centcomm alive and unrestrained.
+ description: Return to your old life.
+ components:
+ - type: Objective
+ icon:
+ sprite: Structures/Furniture/chairs.rsi
+ state: shuttle
+ - type: EscapeShuttleCondition
+
+- type: entity
+ parent: [BaseParadoxCloneObjective, BaseKillObjective]
+ id: ParadoxCloneKillObjective
+ name: Fix the space-time paradox.
+ description: Replace your original to fix the paradox. Remember, your mission is to blend in, do not kill anyone else unless you have to!
+ components:
+ - type: PickSpecificPerson
+ - type: KillPersonCondition
+ requireDead: true # don't count missing evac as killing
+ - type: TargetObjective
+ title: objective-condition-kill-head-title # kill ,
+
diff --git a/Resources/Prototypes/Polymorphs/polymorph.yml b/Resources/Prototypes/Polymorphs/polymorph.yml
index 745e032e7d..935b2b27f5 100644
--- a/Resources/Prototypes/Polymorphs/polymorph.yml
+++ b/Resources/Prototypes/Polymorphs/polymorph.yml
@@ -31,6 +31,10 @@
transferDamage: true
revertOnCrit: false
revertOnDeath: true
+ polymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
+ exitPolymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
- type: polymorph
id: WizardForcedSkeleton
@@ -42,6 +46,10 @@
transferDamage: true
revertOnCrit: false
revertOnDeath: false
+ polymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
+ exitPolymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
- type: polymorph
id: WizardForcedMonkey
@@ -53,6 +61,10 @@
transferDamage: true
revertOnCrit: false
revertOnDeath: true
+ polymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
+ exitPolymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
- type: polymorph
id: WizardWallDoor
@@ -64,6 +76,10 @@
transferDamage: false
revertOnCrit: false
revertOnDeath: false
+ polymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
+ exitPolymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
- type: polymorph
id: WizardForcedCluwne
@@ -74,6 +90,10 @@
transferHumanoidAppearance: true
inventory: Transfer
revertOnDeath: true
+ polymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
+ exitPolymorphSound: !type:SoundPathSpecifier
+ path: /Audio/Magic/forcewall.ogg
# this is a test for transferring some visual appearance stuff
- type: polymorph
diff --git a/Resources/Prototypes/Procedural/biome_templates.yml b/Resources/Prototypes/Procedural/biome_templates.yml
index 588d95f40d..d630ebad48 100644
--- a/Resources/Prototypes/Procedural/biome_templates.yml
+++ b/Resources/Prototypes/Procedural/biome_templates.yml
@@ -513,7 +513,9 @@
- CrystalGreen
- CrystalPink
- CrystalOrange
+ - CrystalBlack
- CrystalBlue
+ - CrystalYellow
- CrystalCyan
- !type:BiomeEntityLayer
threshold: 0.95
@@ -561,7 +563,9 @@
- CrystalGreen
- CrystalPink
- CrystalOrange
+ - CrystalBlack
- CrystalBlue
+ - CrystalYellow
- CrystalCyan
- !type:BiomeEntityLayer
threshold: 0.95
diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml b/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
index caa3d16276..3504e64b77 100644
--- a/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
+++ b/Resources/Prototypes/Reagents/Consumable/Drink/alcohol.yml
@@ -67,9 +67,9 @@
flavor: bluecuracao
color: "#0099FF"
metamorphicSprite:
- sprite: Objects/Consumable/Drinks/thin_glass.rsi
+ sprite: Objects/Consumable/Drinks/curacaoglass.rsi
state: icon_empty
- metamorphicMaxFillLevels: 5
+ metamorphicMaxFillLevels: 4
metamorphicFillBaseName: fill-
metamorphicChangeColor: true
metabolisms:
@@ -81,26 +81,6 @@
reagent: Ethanol
amount: 0.1
-- type: reagent
- id: BlueHawaiian
- name: reagent-name-blue-hawaiian
- parent: BaseAlcohol
- desc: reagent-desc-blue-hawaiian
- physicalDesc: reagent-physical-desc-tropical
- flavor: bluehawaiian
- color: "#47687b"
- metamorphicSprite:
- sprite: Objects/Consumable/Drinks/bluehawaiian.rsi
- state: icon
- metabolisms:
- Drink:
- effects:
- - !type:SatiateThirst
- factor: 2
- - !type:AdjustReagent
- reagent: Ethanol
- amount: 0.2
-
- type: reagent
id: Cognac
name: reagent-name-cognac
@@ -252,9 +232,9 @@
flavor: watermelon
color: "#00FF33"
metamorphicSprite:
- sprite: Objects/Consumable/Drinks/thin_glass.rsi
+ sprite: Objects/Consumable/Drinks/emeraldglass.rsi
state: icon_empty
- metamorphicMaxFillLevels: 5
+ metamorphicMaxFillLevels: 4
metamorphicFillBaseName: fill-
metamorphicChangeColor: true
@@ -334,6 +314,20 @@
physicalDesc: reagent-physical-desc-strong-smelling
flavor: sake
color: "#DDDDDD"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/sakeglass.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
- type: reagent
id: Tequila
@@ -766,7 +760,10 @@
color: "#cccbc8"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/coconutrum.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -786,7 +783,10 @@
color: "#f73030"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/cosmopolitan.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 3
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -1341,7 +1341,10 @@
color: "#e6cb47"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/painkiller.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 6
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -1383,12 +1386,19 @@
flavor: redmead
color: "#bc5550"
metamorphicSprite:
- sprite: Objects/Consumable/Drinks/beerstein.rsi
+ sprite: Objects/Consumable/Drinks/red_meadglass.rsi
state: icon_empty
metamorphicMaxFillLevels: 5
metamorphicFillBaseName: fill-
- metamorphicChangeColor: true
- fizziness: 0.4
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
- type: reagent
id: PinaColada
@@ -1400,7 +1410,18 @@
color: "#e8dba4"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/pinacolada.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 6
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
- type: reagent
id: Sbiten
@@ -1664,9 +1685,9 @@
flavor: vodkatonic
color: "#0064C8"
metamorphicSprite:
- sprite: Objects/Consumable/Drinks/gintonicglass.rsi # they look the same
+ sprite: Objects/Consumable/Drinks/vodkatonicglass.rsi
state: icon_empty
- metamorphicMaxFillLevels: 6
+ metamorphicMaxFillLevels: 5
metamorphicFillBaseName: fill-
metamorphicChangeColor: false
metabolisms:
@@ -1953,6 +1974,297 @@
time: 1.0
type: Remove
fizziness: 0.25
+
+- type: reagent
+ id: BlueHawaiian
+ name: reagent-name-blue-hawaiian
+ parent: BaseAlcohol
+ desc: reagent-desc-blue-hawaiian
+ physicalDesc: reagent-physical-desc-tropical
+ flavor: bluehawaiian
+ color: "#47687b"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/bluehawaiian.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
+
+- type: reagent
+ id: Caipirinha
+ name: reagent-name-caipirinha
+ parent: BaseAlcohol
+ desc: reagent-desc-caipirinha
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: caipirinha
+ color: "#E6EE9C"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/caipirinha.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 5
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.1
+
+- type: reagent
+ id: MoscowMule
+ name: reagent-name-moscow-mule
+ parent: BaseAlcohol
+ desc: reagent-desc-moscow-mule
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: moscowmule
+ color: "#CECBAD"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/moscowmule.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 3
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
+ - !type:AdjustReagent
+ reagent: Copper
+ amount: 0.05
+
+- type: reagent
+ id: Mimeosa
+ name: reagent-name-mimeosa
+ parent: BaseAlcohol
+ desc: reagent-desc-mimeosa
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: mimeosa
+ color: "#939393"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/mimeosa.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:GenericStatusEffect
+ key: Muted
+ component: Muted
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.07
+
+- type: reagent
+ id: Mimosa
+ name: reagent-name-mimosa
+ parent: BaseAlcohol
+ desc: reagent-desc-mimosa
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: mimosa
+ color: "#FFCA48"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/mimosa.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.07
+
+- type: reagent
+ id: Mayojito
+ name: reagent-name-mayojito
+ parent: BaseAlcohol
+ desc: reagent-desc-mayojito
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: mayojito
+ color: "#6FBE44"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/mayojito.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 5
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:ChemVomit
+ conditions:
+ - !type:ReagentThreshold
+ min: 5
+ probability: 0.5
+ - !type:HealthChange
+ damage:
+ types:
+ Poison: .5
+ - !type:SatiateThirst
+ factor: 1
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.15
+
+- type: reagent
+ id: DeathInTheAfternoon
+ name: reagent-name-death-in-the-afternoon
+ parent: BaseAlcohol
+ desc: reagent-desc-death-in-the-afternoon
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: deathintheafternoon
+ color: "#57A87D"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/deathintheafternoon.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.3
+
+- type: reagent
+ id: Empress75
+ name: reagent-name-empress-75
+ parent: BaseAlcohol
+ desc: reagent-desc-empress-75
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: empress75
+ color: "#900296"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/empress75.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.3
+
+- type: reagent
+ id: EspressoMartini
+ name: reagent-name-espresso-martini
+ parent: BaseAlcohol
+ desc: reagent-desc-espresso-martini
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: espressomartini
+ color: "#170a0c"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/espressomartini.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 6
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
+
+- type: reagent
+ id: Daiquiri
+ name: reagent-name-daiquiri
+ parent: BaseAlcohol
+ desc: reagent-desc-daiquiri
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: daiquiri
+ color: "#DAC865"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/daiquiri.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 3
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.1
+
+- type: reagent
+ id: TheSunAlsoRises
+ name: reagent-name-the-sun-also-rises
+ parent: BaseAlcohol
+ desc: reagent-desc-the-sun-also-rises
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: thesunalsorises
+ color: "#DCE2DE"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/thesunalsorises.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.3
+
+- type: reagent
+ id: WhiskeySour
+ name: reagent-name-whiskey-sour
+ parent: BaseAlcohol
+ desc: reagent-desc-whiskey-sour
+ physicalDesc: reagent-physical-desc-strong-smelling
+ flavor: whiskeysour
+ color: "#8B7941"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/whiskeysour.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 5
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 2
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.2
- type: reagent
id: ZombieCocktail
@@ -1975,4 +2287,59 @@
factor: 1
- !type:AdjustReagent
reagent: Ethanol
- amount: 0.25
\ No newline at end of file
+ amount: 0.25
+
+- type: reagent
+ id: BacchusBlessing
+ name: reagent-name-bacchus-blessing
+ parent: BaseAlcohol
+ desc: reagent-desc-bacchus-blessing
+ physicalDesc: reagent-physical-desc-unidentifiable
+ flavor: bacchusblessing
+ color: "#331303"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/bacchusblessing.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 2
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
+ metabolisms:
+ Drink:
+ effects:
+ - !type:SatiateThirst
+ factor: 3
+ - !type:AdjustReagent
+ reagent: Ethanol
+ amount: 0.45 # TODO: Figure out why setting this to 0 means this does more damage... WHAT BUG IS THIS?!!
+ Alcohol:
+ effects:
+ - !type:Drunk
+ boozePower: 10
+ - !type:HealthChange
+ conditions:
+ - !type:ReagentThreshold
+ min: 6
+ - !type:OrganType
+ type: Dwarf
+ shouldHave: false
+ damage:
+ types:
+ Poison: 2 # TODO: Figure out poison amount. Ethanol does 1, this does 2 but also metabolises almost 3 to 4 times as fast as ethanol. This would be more Liver damage when that time arrives.
+ - !type:HealthChange
+ conditions:
+ - !type:ReagentThreshold
+ min: 6
+ - !type:OrganType
+ type: Dwarf
+ damage:
+ types:
+ Poison: 0.4 # TODO: Might increase this, even though it's just double of ethanol from 0.2 to 0.4
+ - !type:ChemVomit
+ probability: 0.1 #TODO: Tweak vomit probability, maybe make this more violent and poisonous but the body aggressively purges it...
+ conditions:
+ - !type:ReagentThreshold
+ reagent: BacchusBlessing
+ min: 8
+ - !type:OrganType
+ type: Dwarf
+ shouldHave: false
diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml
index 3f9fb7b53d..f72733d15d 100644
--- a/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml
+++ b/Resources/Prototypes/Reagents/Consumable/Drink/drinks.yml
@@ -506,7 +506,10 @@
color: "#d8cc5d"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/arnoldpalmer.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -565,7 +568,7 @@
flavor: sweet
color: "#485000"
metamorphicSprite:
- sprite: Objects/Consumable/Drinks/beerstein.rsi
+ sprite: Objects/Consumable/Drinks/rewriter.rsi
state: icon_empty
metamorphicMaxFillLevels: 5
metamorphicFillBaseName: fill-
diff --git a/Resources/Prototypes/Reagents/Consumable/Drink/soda.yml b/Resources/Prototypes/Reagents/Consumable/Drink/soda.yml
index 7ddf19c14e..d224d1573e 100644
--- a/Resources/Prototypes/Reagents/Consumable/Drink/soda.yml
+++ b/Resources/Prototypes/Reagents/Consumable/Drink/soda.yml
@@ -33,7 +33,10 @@
color: "#262019"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/royrogers.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -181,7 +184,10 @@
color: "#ccb87e"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/sol_dry_glass.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 5
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
- type: reagent
id: ShirleyTemple
@@ -193,7 +199,10 @@
color: "#af2221"
metamorphicSprite:
sprite: Objects/Consumable/Drinks/shirleytemple.rsi
- state: icon
+ state: icon_empty
+ metamorphicMaxFillLevels: 4
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
@@ -247,6 +256,12 @@
physicalDesc: reagent-physical-desc-fizzy
flavor: fourteenlokosoda
color: "#deb928"
+ metamorphicSprite:
+ sprite: Objects/Consumable/Drinks/fourteen_loko_glass.rsi
+ state: icon_empty
+ metamorphicMaxFillLevels: 5
+ metamorphicFillBaseName: fill-
+ metamorphicChangeColor: false
metabolisms:
Drink:
effects:
diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml
index d7e48b6646..ef461eda9b 100644
--- a/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml
+++ b/Resources/Prototypes/Recipes/Construction/Graphs/utilities/lighting.yml
@@ -39,6 +39,26 @@
- node: icon
entity: LightTubeCrystalBlue
+- type: constructionGraph
+ id: YellowLight
+ start: start
+ graph:
+ - node: start
+ edges:
+ - to: icon
+ steps:
+ - material: Glass
+ amount: 1
+ doAfter: 1
+ - tag: CrystalYellow
+ name: yellow crystal shard
+ icon:
+ sprite: Objects/Materials/Shards/crystal.rsi
+ state: shard1
+ doAfter: 1
+ - node: icon
+ entity: LightTubeCrystalYellow
+
- type: constructionGraph
id: PinkLight
start: start
@@ -79,6 +99,26 @@
- node: icon
entity: LightTubeCrystalOrange
+- type: constructionGraph
+ id: BlackLight
+ start: start
+ graph:
+ - node: start
+ edges:
+ - to: icon
+ steps:
+ - material: Glass
+ amount: 1
+ doAfter: 1
+ - tag: CrystalBlack
+ name: black crystal shard
+ icon:
+ sprite: Objects/Materials/Shards/crystal.rsi
+ state: shard1
+ doAfter: 1
+ - node: icon
+ entity: LightTubeCrystalBlack
+
- type: constructionGraph
id: RedLight
start: start
@@ -160,6 +200,26 @@
- node: icon
entity: LightBulbCrystalBlue
+- type: constructionGraph
+ id: YellowLightBulb
+ start: start
+ graph:
+ - node: start
+ edges:
+ - to: icon
+ steps:
+ - material: Glass
+ amount: 1
+ doAfter: 1
+ - tag: CrystalYellow
+ name: yellow crystal shard
+ icon:
+ sprite: Objects/Materials/Shards/crystal.rsi
+ state: shard1
+ doAfter: 1
+ - node: icon
+ entity: LightBulbCrystalYellow
+
- type: constructionGraph
id: PinkLightBulb
start: start
@@ -200,6 +260,26 @@
- node: icon
entity: LightBulbCrystalOrange
+- type: constructionGraph
+ id: BlackLightBulb
+ start: start
+ graph:
+ - node: start
+ edges:
+ - to: icon
+ steps:
+ - material: Glass
+ amount: 1
+ doAfter: 1
+ - tag: CrystalBlack
+ name: black crystal shard
+ icon:
+ sprite: Objects/Materials/Shards/crystal.rsi
+ state: shard1
+ doAfter: 1
+ - node: icon
+ entity: LightBulbCrystalBlack
+
- type: constructionGraph
id: RedLightBulb
start: start
diff --git a/Resources/Prototypes/Recipes/Construction/lighting.yml b/Resources/Prototypes/Recipes/Construction/lighting.yml
index d6aeddc7e8..0651fc4572 100644
--- a/Resources/Prototypes/Recipes/Construction/lighting.yml
+++ b/Resources/Prototypes/Recipes/Construction/lighting.yml
@@ -20,6 +20,17 @@
icon: { sprite: Objects/Power/light_tube.rsi, state: normal }
objectType: Item
+- type: construction
+ name: yellow light tube
+ id: YellowLight
+ graph: YellowLight
+ startNode: start
+ targetNode: icon
+ category: construction-category-utilities
+ description: A high powered light tube containing a yellow crystal
+ icon: { sprite: Objects/Power/light_tube.rsi, state: normal }
+ objectType: Item
+
- type: construction
name: pink light tube
id: PinkLight
@@ -42,6 +53,17 @@
icon: { sprite: Objects/Power/light_tube.rsi, state: normal }
objectType: Item
+- type: construction
+ name: black light tube
+ id: BlackLight
+ graph: BlackLight
+ startNode: start
+ targetNode: icon
+ category: construction-category-utilities
+ description: A high powered light tube containing a black crystal. It won't be very bright.
+ icon: { sprite: Objects/Power/light_tube.rsi, state: normal }
+ objectType: Item
+
- type: construction
name: red light tube
id: RedLight
@@ -86,6 +108,17 @@
icon: { sprite: Objects/Power/light_bulb.rsi, state: normal }
objectType: Item
+- type: construction
+ name: yellow light bulb
+ id: YellowLightBulb
+ graph: YellowLightBulb
+ startNode: start
+ targetNode: icon
+ category: construction-category-utilities
+ description: A high powered light bulb containing a yellow crystal.
+ icon: { sprite: Objects/Power/light_bulb.rsi, state: normal }
+ objectType: Item
+
- type: construction
name: pink light bulb
id: PinkLightBulb
@@ -108,6 +141,17 @@
icon: { sprite: Objects/Power/light_bulb.rsi, state: normal }
objectType: Item
+- type: construction
+ name: black light bulb
+ id: BlackLightBulb
+ graph: BlackLightBulb
+ startNode: start
+ targetNode: icon
+ category: construction-category-utilities
+ description: A high powered light bulb containing a black crystal. It won't be very bright.
+ icon: { sprite: Objects/Power/light_bulb.rsi, state: normal }
+ objectType: Item
+
- type: construction
name: red light bulb
id: RedLightBulb
diff --git a/Resources/Prototypes/Recipes/Lathes/Packs/service.yml b/Resources/Prototypes/Recipes/Lathes/Packs/service.yml
index bbf5ec0eb1..a50a945291 100644
--- a/Resources/Prototypes/Recipes/Lathes/Packs/service.yml
+++ b/Resources/Prototypes/Recipes/Lathes/Packs/service.yml
@@ -19,6 +19,7 @@
- FoodPlateMuffinTin
- FoodKebabSkewer
- SprayBottle
+ - LightReplacer
- MopItem
- Holoprojector
- WetFloorSign
diff --git a/Resources/Prototypes/Recipes/Reactions/drinks.yml b/Resources/Prototypes/Recipes/Reactions/drinks.yml
index 84d79466b9..a46dfa2969 100644
--- a/Resources/Prototypes/Recipes/Reactions/drinks.yml
+++ b/Resources/Prototypes/Recipes/Reactions/drinks.yml
@@ -1219,6 +1219,144 @@
amount: 1
products:
Cola: 4
+
+- type: reaction
+ id: Caipirinha
+ requiredMixerCategories:
+ - Shake
+ reactants:
+ Rum:
+ amount: 1
+ JuiceLime:
+ amount: 1
+ Sugar:
+ amount: 1
+ Ice:
+ amount: 1
+ products:
+ Caipirinha: 4
+
+- type: reaction
+ id: Daiquiri
+ requiredMixerCategories:
+ - Stir
+ reactants:
+ Rum:
+ amount: 4
+ Sugar:
+ amount: 1
+ JuiceLime:
+ amount: 1
+ products:
+ Daiquiri: 6
+
+- type: reaction
+ id: DeathInTheAfternoon
+ reactants:
+ Absinthe:
+ amount: 2
+ Champagne:
+ amount: 1
+ products:
+ DeathInTheAfternoon: 3
+
+- type: reaction
+ id: Empress75
+ requiredMixerCategories:
+ - Shake
+ reactants:
+ Champagne:
+ amount: 2
+ Gin:
+ amount: 2
+ JuiceLime:
+ amount: 1
+ Grenadine:
+ amount: 1
+ products:
+ Empress75: 6
+
+- type: reaction
+ id: EspressoMartini
+ requiredMixerCategories:
+ - Shake
+ reactants:
+ BlackRussian:
+ amount: 1
+ Coffee:
+ amount: 1
+ products:
+ EspressoMartini: 2
+
+- type: reaction
+ id: Mayojito
+ reactants:
+ Mojito:
+ amount: 1
+ Mayo:
+ amount: 1
+ products:
+ Mayojito: 2
+
+- type: reaction
+ id: Mimeosa
+ reactants:
+ Mimosa:
+ amount: 2
+ Nothing:
+ amount: 1
+ products:
+ Mimeosa: 3
+
+- type: reaction
+ id: Mimosa
+ reactants:
+ JuiceOrange:
+ amount: 2
+ Champagne:
+ amount: 1
+ products:
+ Mimosa: 3
+
+- type: reaction
+ id: MoscowMule
+ requiredMixerCategories:
+ - Stir
+ reactants:
+ Vodka:
+ amount: 4
+ JuiceLime:
+ amount: 1
+ SolDry:
+ amount: 1
+ products:
+ MoscowMule: 6
+
+- type: reaction
+ id: TheSunAlsoRises
+ reactants:
+ Absinthe:
+ amount: 1
+ Daiquiri:
+ amount: 5
+ products:
+ TheSunAlsoRises: 6
+
+- type: reaction
+ id: WhiskeySour
+ requiredMixerCategories:
+ - Shake
+ reactants:
+ Whiskey:
+ amount: 2
+ Sugar:
+ amount: 1
+ JuiceLemon:
+ amount: 2
+ Egg:
+ amount: 1
+ products:
+ WhiskeySour: 6
- type: reaction
id: ZombieCocktail
@@ -1231,3 +1369,17 @@
amount: 1
products:
ZombieCocktail: 4
+
+- type: reaction
+ id: BacchusBlessing
+ reactants:
+ Hooch:
+ amount: 1
+ Absinthe:
+ amount: 1
+ ManlyDorf:
+ amount: 1
+ SyndicateBomb:
+ amount: 1
+ products:
+ BacchusBlessing: 4
diff --git a/Resources/Prototypes/Roles/Antags/generic.yml b/Resources/Prototypes/Roles/Antags/generic.yml
new file mode 100644
index 0000000000..6a1cd12aea
--- /dev/null
+++ b/Resources/Prototypes/Roles/Antags/generic.yml
@@ -0,0 +1,23 @@
+- type: antag
+ id: GenericAntagonist
+ name: roles-antag-generic-solo-antagonist-name
+ antagonist: true
+ objective: never-shown
+
+- type: antag
+ id: GenericTeamAntagonist
+ name: roles-antag-generic-team-antagonist-name
+ antagonist: true
+ objective: never-shown
+
+- type: antag
+ id: GenericFreeAgent
+ name: roles-antag-generic-free-agent-name
+ antagonist: true
+ objective: never-shown
+
+- type: antag
+ id: GenericSiliconAntagonist
+ name: roles-antag-generic-silicon-antagonist-name
+ antagonist: true
+ objective: never-shown
diff --git a/Resources/Prototypes/Roles/Antags/paradoxClone.yml b/Resources/Prototypes/Roles/Antags/paradoxClone.yml
new file mode 100644
index 0000000000..6e8daf16b4
--- /dev/null
+++ b/Resources/Prototypes/Roles/Antags/paradoxClone.yml
@@ -0,0 +1,16 @@
+- type: antag
+ id: ParadoxClone
+ name: roles-antag-paradox-clone-name
+ antagonist: true
+ objective: roles-antag-paradox-clone-objective
+ setPreference: false
+
+# they need to be able to espace when spawning inside a locked room
+# TODO: remove this once we got a better spawning loacation selection
+- type: startingGear
+ id: ParadoxCloneGear
+ inhand:
+ - ToolboxMechanicalFilledAllTools
+ storage:
+ back:
+ - ClothingHandsGlovesColorYellow
diff --git a/Resources/Prototypes/Roles/Jobs/Security/warden.yml b/Resources/Prototypes/Roles/Jobs/Security/warden.yml
index 6d79d74804..856c866038 100644
--- a/Resources/Prototypes/Roles/Jobs/Security/warden.yml
+++ b/Resources/Prototypes/Roles/Jobs/Security/warden.yml
@@ -7,6 +7,7 @@
- !type:RoleTimeRequirement
role: JobSecurityOfficer
time: 36000 #10 hrs
+ weight: 5
startingGear: WardenGear
icon: "JobIconWarden"
supervisors: job-supervisors-hos
diff --git a/Resources/Prototypes/Roles/MindRoles/mind_roles.yml b/Resources/Prototypes/Roles/MindRoles/mind_roles.yml
index ea6780eb50..31e8a98e7a 100644
--- a/Resources/Prototypes/Roles/MindRoles/mind_roles.yml
+++ b/Resources/Prototypes/Roles/MindRoles/mind_roles.yml
@@ -13,6 +13,8 @@
components:
- type: MindRole
antag: true
+ antagPrototype: GenericAntagonist
+ roleType: SoloAntagonist
#Observer
- type: entity
@@ -31,68 +33,74 @@
- type: GhostRoleMarkerRole
- type: entity
- parent: BaseMindRole
+ parent: MindRoleGhostRoleNeutral
id: MindRoleGhostRoleFamiliar
name: Ghost Role (Familiar)
components:
- type: MindRole
roleType: Familiar
- - type: GhostRoleMarkerRole
- type: entity
- parent: BaseMindRole
+ parent: [ BaseMindRoleAntag, MindRoleGhostRoleNeutral ]
id: MindRoleGhostRoleFreeAgent
name: Ghost Role (Free Agent)
components:
- type: MindRole
roleType: FreeAgent
- - type: GhostRoleMarkerRole
+ antagPrototype: GenericFreeAgent
- type: entity
- parent: BaseMindRole
+ parent: MindRoleGhostRoleNeutral
+ id: MindRoleGhostRoleFreeAgentHarmless
+ name: Ghost Role (Free Agent)
+ components:
+ - type: MindRole
+ roleType: FreeAgent
+
+- type: entity
+ parent: MindRoleGhostRoleNeutral
id: MindRoleGhostRoleSilicon
name: Ghost Role (Silicon)
components:
- type: MindRole
roleType: Silicon
- - type: GhostRoleMarkerRole
- type: entity
- parent: BaseMindRole
+ parent: [ BaseMindRoleAntag, MindRoleGhostRoleNeutral ]
id: MindRoleGhostRoleSiliconAntagonist
name: Ghost Role (Silicon Antagonist)
components:
- type: MindRole
roleType: SiliconAntagonist
- - type: GhostRoleMarkerRole
+ antagPrototype: GenericSiliconAntagonist
- type: entity
- parent: BaseMindRole
+ parent: [ BaseMindRoleAntag, MindRoleGhostRoleNeutral ]
id: MindRoleGhostRoleSoloAntagonist
name: Ghost Role (Solo Antagonist)
- components:
- - type: MindRole
- roleType: SoloAntagonist
- - type: GhostRoleMarkerRole
- type: entity
- parent: BaseMindRole
+ parent: [ BaseMindRoleAntag, MindRoleGhostRoleNeutral ]
id: MindRoleGhostRoleTeamAntagonist
name: Ghost Role (Team Antagonist)
components:
- type: MindRole
roleType: TeamAntagonist
- - type: GhostRoleMarkerRole
-
+ antagPrototype: GenericTeamAntagonist
+# This should be used (or inherited) for team antags that are summoned or converted in large quantities, and are "secondary" to other antags
+# TODO: sort weight
+- type: entity
+ parent: MindRoleGhostRoleTeamAntagonist
+ id: MindRoleGhostRoleTeamAntagonistFlock
+ name: Ghost Role (Team Antagonist)
# The Job MindRole holds the mob's Job prototype
- type: entity
parent: BaseMindRole
id: MindRoleJob
name: Job Role
-# description:
- # MindRoleComponent.JobPrototype is filled by SharedJobSystem
+ # JobPrototype is filled by SharedJobSystem
# Silicon
- type: entity
@@ -120,7 +128,6 @@
parent: BaseMindRoleAntag
id: MindRoleDragon
name: Dragon Role
-# description:
components:
- type: MindRole
antagPrototype: Dragon
@@ -135,20 +142,28 @@
parent: BaseMindRoleAntag
id: MindRoleNinja
name: Space Ninja Role
-# description: mind-role-ninja-description
components:
- type: MindRole
antagPrototype: SpaceNinja
- roleType: SoloAntagonist
exclusiveAntag: true
- type: NinjaRole
+# Paradox Clone
+- type: entity
+ parent: BaseMindRoleAntag
+ id: MindRoleParadoxClone
+ name: Paradox Clone Role
+ components:
+ - type: MindRole
+ antagPrototype: ParadoxClone
+ roleType: SoloAntagonist
+ - type: ParadoxCloneRole
+
# Nukies
- type: entity
parent: BaseMindRoleAntag
id: MindRoleNukeops
name: Nukeops Operative Role
-# description: mind-role-nukeops-description
components:
- type: MindRole
roleType: TeamAntagonist
@@ -160,7 +175,6 @@
parent: MindRoleNukeops
id: MindRoleNukeopsMedic
name: Nukeops Medic Role
-# description: mind-role-nukeops-medic-description
components:
- type: MindRole
antagPrototype: NukeopsMedic
@@ -169,7 +183,6 @@
parent: MindRoleNukeops
id: MindRoleNukeopsCommander
name: Nukeops Commander Role
-# description: mind-role-nukeops-commander-description
components:
- type: MindRole
antagPrototype: NukeopsCommander
@@ -179,7 +192,6 @@
parent: BaseMindRoleAntag
id: MindRoleHeadRevolutionary
name: Head Revolutionary Role
-# description: mind-role-head-revolutionary-description
components:
- type: MindRole
antagPrototype: HeadRev
@@ -191,7 +203,6 @@
parent: MindRoleHeadRevolutionary
id: MindRoleRevolutionary
name: Revolutionary Role
-# description: mind-role-revolutionary-description
components:
- type: MindRole
antagPrototype: Rev
@@ -212,11 +223,9 @@
parent: BaseMindRoleAntag
id: MindRoleThief
name: Thief Role
-# description: mind-role-thief-description
components:
- type: MindRole
antagPrototype: Thief
- roleType: SoloAntagonist
- type: ThiefRole
# Traitors
@@ -224,19 +233,16 @@
parent: BaseMindRoleAntag
id: MindRoleTraitor
name: Traitor Role
-# description: mind-role-traitor-description
components:
- type: MindRole
antagPrototype: Traitor
exclusiveAntag: true
- roleType: SoloAntagonist
- type: TraitorRole
- type: entity
parent: MindRoleTraitor
id: MindRoleTraitorSleeper
name: Sleeper Agent Role
-# description: mind-role-traitor-sleeper-description
components:
- type: MindRole
antagPrototype: TraitorSleeper
@@ -245,22 +251,20 @@
parent: MindRoleTraitor
id: MindRoleTraitorReinforcement
name: Syndicate Reinforcement Role
- # description: mind-role-syndicate-reinforcement-description
components:
- - type: MindRole
- roleType: TeamAntagonist
+ - type: MindRole
+ roleType: TeamAntagonist
+ antagPrototype: GenericTeamAntagonist
# Wizards
- type: entity
parent: BaseMindRoleAntag
id: MindRoleWizard
name: Wizard Role
- # description: these are all commented out
components:
- type: MindRole
antagPrototype: Wizard
exclusiveAntag: true
- roleType: SoloAntagonist
- type: WizardRole
# Zombie Squad
@@ -268,7 +272,6 @@
parent: BaseMindRoleAntag
id: MindRoleInitialInfected
name: Initial Infected Role
-# description: mind-role-initial-infected-description
components:
- type: MindRole
antagPrototype: InitialInfected
@@ -277,10 +280,9 @@
- type: InitialInfectedRole
- type: entity
- parent: BaseMindRoleAntag
+ parent: MindRoleGhostRoleTeamAntagonistFlock
id: MindRoleZombie
name: Zombie Role
-# description: mind-role-zombie-description
components:
- type: MindRole
antagPrototype: Zombie
diff --git a/Resources/Prototypes/ore.yml b/Resources/Prototypes/ore.yml
index 30ac6a5373..a7f4ef11e5 100644
--- a/Resources/Prototypes/ore.yml
+++ b/Resources/Prototypes/ore.yml
@@ -72,10 +72,18 @@
id: OreIronCrab
oreEntity: MobSpawnCrabIron
+- type: ore
+ id: OreCoalCrab
+ oreEntity: MobSpawnCrabCoal
+
- type: ore
id: OreSilverCrab
oreEntity: MobSpawnCrabSilver
+- type: ore
+ id: OreGoldCrab
+ oreEntity: MobSpawnCrabGold
+
- type: ore
id: OreUraniumCrab
oreEntity: MobSpawnCrabUranium
diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml
index 0a25304c2c..e3dcb9b11b 100644
--- a/Resources/Prototypes/tags.yml
+++ b/Resources/Prototypes/tags.yml
@@ -419,6 +419,9 @@
- type: Tag
id: Cryobeaker
+- type: Tag
+ id: CrystalBlack
+
- type: Tag
id: CrystalBlue
@@ -437,6 +440,9 @@
- type: Tag
id: CrystalRed
+- type: Tag
+ id: CrystalYellow
+
- type: Tag
id: CubanCarp
@@ -948,6 +954,9 @@
- type: Tag
id: Packet
+- type: Tag
+ id: ParadoxCloneObjectiveBlacklist # objective entities with this tag don't get copied to paradox clones
+
- type: Tag
id: Paper
diff --git a/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml b/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml
index 97574c4021..a938cc4040 100644
--- a/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml
+++ b/Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml
@@ -3,6 +3,14 @@
Most if not all Minor Antagonists are ghost-controlled roles that gives dead people new ways to cause chaos around the station. They are spawned by random events.
+ # Paradox Clone
+
+
+
+
+
+ A perfect copy of a random crewmember that was thrown into our universe by a space-time anomaly. To fix the paradox and survive they have to find and kill their original counterpart. They have no special abilities, but are have identical appearance, DNA, fingerprints, clothing, equipment and IDs, making it hard to figure out who is the orginal and who is the clone, unless you know your fellow crewmembers well.
+
# Revenant
diff --git a/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml b/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml
index 9bc0b28068..c2ff931f85 100644
--- a/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml
+++ b/Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml
@@ -11,7 +11,7 @@
Revolutionaries are conversion antagonists sponsored by the [color=#ff0000]Syndicate[/color] who are tasked with taking control of the station. They have no fancy gimmicks or cheap tricks, they only have a cause and strength in numbers.
## Objectives
- You must cuff, kill, or exile all of the [textlink="Command staff" link="Command"] on station in no particular order.
+ You must convert, cuff or kill all of the [textlink="Command staff" link="Command"] on station in no particular order.
Your objective is [bold]not to destroy the station[/bold], but [italic]to take it over[/italic], so try to minimize damage where possible.
@@ -40,7 +40,7 @@
- [bold]Visibly be destroyed upon being implanted into a [color=#5e9cff]Head Revolutionary[/color][/bold], giving you away
- NOT protect against flash disorientation
- Assume all of [color=#cb0000]Security[/color] and [color=#1b67a5]Command[/color] are implanted with mindshields already.
+ Assume all of [color=#cb0000]Security[/color] and [color=#1b67a5]Command[/color] are implanted with mindshields already, [bold]however they can be removed using an empty implanter, obtainable from the Medical department's MedFab.[/bold]
diff --git a/Resources/ServerInfo/Guidebook/ServerRules/SpaceLaw/SpaceLaw.xml b/Resources/ServerInfo/Guidebook/ServerRules/SpaceLaw/SpaceLaw.xml
index a10e61c65a..1cee4c3dbf 100644
--- a/Resources/ServerInfo/Guidebook/ServerRules/SpaceLaw/SpaceLaw.xml
+++ b/Resources/ServerInfo/Guidebook/ServerRules/SpaceLaw/SpaceLaw.xml
@@ -21,14 +21,16 @@
A departmental search is the sweep of an entire area or department for contraband. It is recommended that the officers be extremely thorough, checking all lockers, crates, and doors. These can only be done with permission or, ideally, a warrant signed by the department head or highest-ranking command staff, which is the captain in most cases.
## Implantation
- Any prisoner in custody can be subjected to implantation or implant removal procedures, so long as it's within reason. The process of adding an implant should not prolong the detainees sentence, meaning you can not hold them longer to administer the implant, unless stated otherwise. A former inmate can be requested to undergo implantation at a later point in time if they fit the circumstances during their confinement, they must comply. The following have been listed out with special circumstances, anything not in this list can still be applied, given proper legal context. A prisoner can still receive implantation procedures without meeting the circumstances if they give their clear permission.
+ Any prisoner in custody can be subjected to implantation or implant extraction procedures, so long as it's within reason. The process of adding or extracting an implant should not prolong the detainees sentence, meaning you can not hold them longer to perform the procedure, unless stated otherwise. A former inmate can be requested to undergo implantation/extraction at a later point in time; if they fit the circumstances during their confinement, they must comply. The following have been listed out with special circumstances, anything not in this list can still be applied, given proper legal context. A prisoner can still receive implantation/extraction procedures without meeting the circumstances if they give their clear permission.
[color=#a4885c]Tracking Implants:[/color] Trackers can be applied to any suspect that has been convicted of a violent crime (the red linked crimes).
[color=#a4885c]Mind Shields:[/color] Shields can be administered to any inmate who has been clearly mind controlled, lost control of themselves, or a suspect charged with unlawful control. Unlike standard implantation you may hold a prisoner until you finish issuing Mind Shields, so long as it's done in a timely fashion. If a suspect refuses to cooperate or the implant fails to function they can be charged with Refusal of Mental Shielding.
+ Usage of contraband implanters is a detainable offense, but it's not reasonable to detain someone solely for having an unidentified implant inside them.
+
## Implant Removal
- A suspect can be forced to receive implant removal if there is strong, reasonable proof that they have been implanted, such as an officer seeing them use one or their prints being on a discarded injector. Unlike the implantation procedure, a prisoner can have their sentence entirely delayed or extended until they comply with the procedure, as long as security is actively making attempts to perform it. Akin to implanting, if an inmate gives their clear permission, implant removal can proceed without proof.
+ Any prisoner in custody can be subjected to implant extraction for a specific implant if there is reasonable suspicion they have it implanted. Detainees may not be forced or coerced into performing implant extraction on themselves against their will.
## Sentencing
From a server rules perspective, security officers are only responsible for ensuring that they only place sentences over 15 minutes where space law would allow permanent confinement. Informing the Warden is highly recommended, even for timed sentences. As long as those requirements are met, security officers not giving inappropriate sentence lengths is considered an in-character issue, not a rule issue.
diff --git a/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/equipped-HELMET.png b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/equipped-HELMET.png
new file mode 100644
index 0000000000..4d5e75107d
Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/equipped-HELMET.png differ
diff --git a/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/icon.png b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/icon.png
new file mode 100644
index 0000000000..bfbf38064f
Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/icon.png differ
diff --git a/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-left.png b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-left.png
new file mode 100644
index 0000000000..ebdc468117
Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-right.png b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-right.png
new file mode 100644
index 0000000000..63c609e46e
Binary files /dev/null and b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/meta.json b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/meta.json
new file mode 100644
index 0000000000..ddcedddae1
--- /dev/null
+++ b/Resources/Textures/Clothing/Head/Misc/performer-wig.rsi/meta.json
@@ -0,0 +1,26 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Sprites by Velken",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "equipped-HELMET",
+ "directions": 4
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ }
+ ]
+}
diff --git a/Resources/Textures/Effects/mobspawn.rsi/crab_coal.png b/Resources/Textures/Effects/mobspawn.rsi/crab_coal.png
new file mode 100644
index 0000000000..660de64908
Binary files /dev/null and b/Resources/Textures/Effects/mobspawn.rsi/crab_coal.png differ
diff --git a/Resources/Textures/Effects/mobspawn.rsi/crab_gold.png b/Resources/Textures/Effects/mobspawn.rsi/crab_gold.png
new file mode 100644
index 0000000000..aeb8bd1aef
Binary files /dev/null and b/Resources/Textures/Effects/mobspawn.rsi/crab_gold.png differ
diff --git a/Resources/Textures/Effects/mobspawn.rsi/meta.json b/Resources/Textures/Effects/mobspawn.rsi/meta.json
index 720bc8a321..ca0d1fe0fc 100644
--- a/Resources/Textures/Effects/mobspawn.rsi/meta.json
+++ b/Resources/Textures/Effects/mobspawn.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Made by brainfood1183 (github)",
+ "copyright": "Made by brainfood1183 (github), Gold and Coal Crab pallet swapped by Firewars763 (github)",
"size": {
"x": 32,
"y": 32
@@ -35,6 +35,20 @@
]
]
},
+ {
+ "name": "crab_gold",
+ "directions": 1,
+ "delays": [
+ [
+ 0.6,
+ 0.3,
+ 0.3,
+ 0.3,
+ 0.3,
+ 0.3
+ ]
+ ]
+ },
{
"name": "crab_uranium",
"directions": 1,
@@ -62,6 +76,20 @@
0.3
]
]
+ },
+ {
+ "name": "crab_coal",
+ "directions": 1,
+ "delays": [
+ [
+ 0.6,
+ 0.3,
+ 0.3,
+ 0.3,
+ 0.3,
+ 0.3
+ ]
+ ]
}
]
}
diff --git a/Resources/Textures/Interface/Misc/program_icons.rsi/meta.json b/Resources/Textures/Interface/Misc/program_icons.rsi/meta.json
index 4c2a45ad76..f31c73710c 100644
--- a/Resources/Textures/Interface/Misc/program_icons.rsi/meta.json
+++ b/Resources/Textures/Interface/Misc/program_icons.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "news_read by Misha_Unity, crew_manifest by Phill101",
+ "copyright": "news_read by Misha_Unity, crew_manifest by Phill101, nano_task by Janet Blackquill ",
"size": {
"x": 32,
"y": 32
@@ -12,6 +12,9 @@
},
{
"name": "crew_manifest"
+ },
+ {
+ "name": "nano_task"
}
]
}
diff --git a/Resources/Textures/Interface/Misc/program_icons.rsi/nano_task.png b/Resources/Textures/Interface/Misc/program_icons.rsi/nano_task.png
new file mode 100644
index 0000000000..bcbfbfc941
Binary files /dev/null and b/Resources/Textures/Interface/Misc/program_icons.rsi/nano_task.png differ
diff --git a/Resources/Textures/Markers/paradox_clone.rsi/meta.json b/Resources/Textures/Markers/paradox_clone.rsi/meta.json
deleted file mode 100644
index e586347031..0000000000
--- a/Resources/Textures/Markers/paradox_clone.rsi/meta.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "version": 1,
- "license": "CC-BY-SA-3.0",
- "copyright": "preview combined from Mobs/Species/Human/parts.rsi, Clothing/Uniforms/Jumpsuit/janitor.rsi, Clothing/Shoes/Specific/galoshes.rsi, Clothing/Belt/janitor.rsi, Clothing/Hands/Gloves/janitor.rsi and Clothing/Head/Soft/purplesoft.rsi by slarticodefast",
- "size": {
- "x": 32,
- "y": 32
- },
- "states": [
- {
- "name": "preview"
- }
- ]
-}
\ No newline at end of file
diff --git a/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/meta.json b/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/meta.json
new file mode 100644
index 0000000000..942900ec3e
--- /dev/null
+++ b/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/meta.json
@@ -0,0 +1,108 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "preview combined from Mobs/Species/Human/parts.rsi, Clothing/Uniforms/Jumpsuit/janitor.rsi, Clothing/Shoes/Specific/galoshes.rsi, Clothing/Belt/janitor.rsi, Clothing/Hands/Gloves/janitor.rsi and Clothing/Head/Soft/purplesoft.rsi by slarticodefast, paradox made by ps3moira (github)",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "preview"
+ },
+ {
+ "name": "paradox",
+ "directions": 4,
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ],
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ],
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ],
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ }
+ ]
+}
diff --git a/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/paradox.png b/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/paradox.png
new file mode 100644
index 0000000000..f1cb35df59
Binary files /dev/null and b/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/paradox.png differ
diff --git a/Resources/Textures/Markers/paradox_clone.rsi/preview.png b/Resources/Textures/Mobs/Aliens/paradox_clone.rsi/preview.png
similarity index 100%
rename from Resources/Textures/Markers/paradox_clone.rsi/preview.png
rename to Resources/Textures/Mobs/Aliens/paradox_clone.rsi/preview.png
diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/coal_crab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/coal_crab.png
new file mode 100644
index 0000000000..a1e877ee1e
Binary files /dev/null and b/Resources/Textures/Mobs/Elemental/orecrab.rsi/coal_crab.png differ
diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/gold_crab.png b/Resources/Textures/Mobs/Elemental/orecrab.rsi/gold_crab.png
new file mode 100644
index 0000000000..420d96b6c5
Binary files /dev/null and b/Resources/Textures/Mobs/Elemental/orecrab.rsi/gold_crab.png differ
diff --git a/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json b/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json
index a85de36617..c3a0bb3080 100644
--- a/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json
+++ b/Resources/Textures/Mobs/Elemental/orecrab.rsi/meta.json
@@ -5,12 +5,16 @@
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Made by brainfood1183 (github)",
+ "copyright": "Made by brainfood1183 (github), Gold and Coal Crab pallet swapped by Firewars763 (github),",
"states": [
{
"name": "iron_crab",
"directions": 4
},
+ {
+ "name": "coal_crab",
+ "directions": 4
+ },
{
"name": "uranium_crab",
"directions": 4
@@ -19,6 +23,10 @@
"name": "silver_crab",
"directions": 4
},
+ {
+ "name": "gold_crab",
+ "directions": 4
+ },
{
"name": "quartz_crab",
"directions": 4
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-1.png
new file mode 100644
index 0000000000..acdf022479
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-2.png
new file mode 100644
index 0000000000..b5da710bdd
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-3.png
new file mode 100644
index 0000000000..5bc942164c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-4.png
new file mode 100644
index 0000000000..5da2461c4e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon.png
index 81261d0f54..c9f4f08717 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon_empty.png
new file mode 100644
index 0000000000..7b1ed771e2
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/meta.json
index f76e611841..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/arnoldpalmer.rsi/meta.json
@@ -1,14 +1,31 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-1.png
new file mode 100644
index 0000000000..c45889cd2d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-2.png
new file mode 100644
index 0000000000..c45889cd2d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon.png
new file mode 100644
index 0000000000..c45889cd2d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon_empty.png
new file mode 100644
index 0000000000..95eafb0a7b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/meta.json
new file mode 100644
index 0000000000..9dbf955e13
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/bacchusblessing.rsi/meta.json
@@ -0,0 +1,52 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "icon, fill-1, fill-2 from Yogstation from commit: https://github.com/yogstation13/yogstation/commit/3b877178b62acb43329ac4ad58652e1e8d622a3c, icon_empty modified by Coolsurf6 (Github) from commit: https://github.com/yogstation13/yogstation/commit/3b877178b62acb43329ac4ad58652e1e8d622a3c",
+ "states":
+ [
+ {
+ "name": "icon",
+ "delays":
+ [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "fill-1",
+ "delays":
+ [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "fill-2",
+ "delays":
+ [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "icon_empty"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-1.png
new file mode 100644
index 0000000000..34f11f4d0d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-2.png
new file mode 100644
index 0000000000..9be8b9645a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-3.png
new file mode 100644
index 0000000000..44d1b19cb0
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-4.png
new file mode 100644
index 0000000000..fd2f038b23
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon.png
index d192a88461..d1ce3ffbe3 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon_empty.png
new file mode 100644
index 0000000000..865cdace01
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/meta.json
index f76e611841..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/bluehawaiian.rsi/meta.json
@@ -1,14 +1,31 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-1.png
new file mode 100644
index 0000000000..fd38307d7b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-2.png
new file mode 100644
index 0000000000..714a7ad9cc
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-3.png
new file mode 100644
index 0000000000..b640ef8e72
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-4.png
new file mode 100644
index 0000000000..a97ed7113e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-5.png
new file mode 100644
index 0000000000..380c07afa3
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon.png
new file mode 100644
index 0000000000..7c49798776
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon_empty.png
new file mode 100644
index 0000000000..a65ad8097c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/meta.json
new file mode 100644
index 0000000000..fb4cf99077
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/caipirinha.rsi/meta.json
@@ -0,0 +1,34 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-1.png
new file mode 100644
index 0000000000..59cb8b95d6
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-2.png
new file mode 100644
index 0000000000..8e4c467d94
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-3.png
new file mode 100644
index 0000000000..bb404033f0
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-4.png
new file mode 100644
index 0000000000..7fe5189133
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon.png
index 4adab5cb6e..2814b46c8f 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon_empty.png
new file mode 100644
index 0000000000..6dc08c2f6a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/meta.json
index f76e611841..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/coconutrum.rsi/meta.json
@@ -1,14 +1,31 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-1.png
new file mode 100644
index 0000000000..b0c98a8afd
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-2.png
new file mode 100644
index 0000000000..6788e1bad5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-3.png
new file mode 100644
index 0000000000..61aea2fa1b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon.png
index bd1eff6943..75d89f80c1 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon_empty.png
new file mode 100644
index 0000000000..ab35159984
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/meta.json
index f76e611841..95b1af5beb 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/cosmopolitan.rsi/meta.json
@@ -1,14 +1,28 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-1.png
new file mode 100644
index 0000000000..02ee7d91d2
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-2.png
new file mode 100644
index 0000000000..55cea500d7
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-3.png
new file mode 100644
index 0000000000..065e1a8ff8
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-4.png
new file mode 100644
index 0000000000..a5d98bf34b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon.png
index 0f6c9575fc..fb23f689c1 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon_empty.png
new file mode 100644
index 0000000000..88a73bf915
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json
index db0ac608ed..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/curacaoglass.rsi/meta.json
@@ -1 +1,31 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-1.png
new file mode 100644
index 0000000000..4ba2a35b7d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-2.png
new file mode 100644
index 0000000000..83e4d049d1
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-3.png
new file mode 100644
index 0000000000..309d506c7b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon.png
new file mode 100644
index 0000000000..b8151471be
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon_empty.png
new file mode 100644
index 0000000000..49bd5e51a6
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/meta.json
new file mode 100644
index 0000000000..a8992bc11e
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/daiquiri.rsi/meta.json
@@ -0,0 +1,28 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-1.png
new file mode 100644
index 0000000000..b2a570485f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-2.png
new file mode 100644
index 0000000000..5aef80b341
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-3.png
new file mode 100644
index 0000000000..1678c3ab8a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-4.png
new file mode 100644
index 0000000000..de6daf5c17
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon.png
new file mode 100644
index 0000000000..2ee6ea11ec
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon_empty.png
new file mode 100644
index 0000000000..0aca7f11b5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/deathintheafternoon.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-1.png
new file mode 100644
index 0000000000..0b5febc318
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-2.png
new file mode 100644
index 0000000000..eb549df01f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-3.png
new file mode 100644
index 0000000000..e87dfe8e13
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-4.png
new file mode 100644
index 0000000000..5f314f3855
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon.png
index cabe64b7f0..640e442ee3 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon_empty.png
new file mode 100644
index 0000000000..88a73bf915
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json
index db0ac608ed..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/emeraldglass.rsi/meta.json
@@ -1 +1,31 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-1.png
new file mode 100644
index 0000000000..61a8395d1a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-2.png
new file mode 100644
index 0000000000..01388755f2
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-3.png
new file mode 100644
index 0000000000..3fca8cee1b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-4.png
new file mode 100644
index 0000000000..544f22cb59
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon.png
new file mode 100644
index 0000000000..afc52e5db0
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon_empty.png
new file mode 100644
index 0000000000..b96c17d009
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/empress75.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-1.png
new file mode 100644
index 0000000000..a8e5eb8580
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-2.png
new file mode 100644
index 0000000000..35d8cfd1ee
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-3.png
new file mode 100644
index 0000000000..511d7cec1d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-4.png
new file mode 100644
index 0000000000..93191f9373
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-5.png
new file mode 100644
index 0000000000..6be0c6a865
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-6.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-6.png
new file mode 100644
index 0000000000..4ac3030821
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/fill-6.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon.png
new file mode 100644
index 0000000000..7f3b2acd46
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon_empty.png
new file mode 100644
index 0000000000..10848c6227
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/meta.json
new file mode 100644
index 0000000000..d967d4582e
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/espressomartini.rsi/meta.json
@@ -0,0 +1,37 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ },
+ {
+ "name": "fill-6"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-1.png
new file mode 100644
index 0000000000..a8e5eb8580
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-2.png
new file mode 100644
index 0000000000..35d8cfd1ee
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-3.png
new file mode 100644
index 0000000000..511d7cec1d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-4.png
new file mode 100644
index 0000000000..93191f9373
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-5.png
new file mode 100644
index 0000000000..6be0c6a865
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-6.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-6.png
new file mode 100644
index 0000000000..4ac3030821
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/fill-6.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon.png
new file mode 100644
index 0000000000..7f3b2acd46
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon_empty.png
new file mode 100644
index 0000000000..10848c6227
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/espressomartini/meta.json b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/meta.json
new file mode 100644
index 0000000000..d967d4582e
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/espressomartini/meta.json
@@ -0,0 +1,37 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ },
+ {
+ "name": "fill-6"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-1.png
new file mode 100644
index 0000000000..6f9251bd8b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-2.png
new file mode 100644
index 0000000000..68ddf67952
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-3.png
new file mode 100644
index 0000000000..57c10008a5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-4.png
new file mode 100644
index 0000000000..12b8082288
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-5.png
new file mode 100644
index 0000000000..e2446bb4bd
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon.png
index 13fe259aac..e020b6d3e0 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon_empty.png
new file mode 100644
index 0000000000..8399d1535f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/meta.json
index db0ac608ed..8b09e6c054 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/fourteen_loko_glass.rsi/meta.json
@@ -1 +1,34 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-1.png
new file mode 100644
index 0000000000..57461a568a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-2.png
new file mode 100644
index 0000000000..46ce64e57d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-3.png
new file mode 100644
index 0000000000..417e8a4f5e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-4.png
new file mode 100644
index 0000000000..236bbfd089
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-5.png
new file mode 100644
index 0000000000..7a86cdddf3
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon.png
new file mode 100644
index 0000000000..71622804f7
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon_empty.png
new file mode 100644
index 0000000000..788261e6b8
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/meta.json
new file mode 100644
index 0000000000..fb4cf99077
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/mayojito.rsi/meta.json
@@ -0,0 +1,34 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-1.png
new file mode 100644
index 0000000000..f10ac9c6ef
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-2.png
new file mode 100644
index 0000000000..89461b0704
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-3.png
new file mode 100644
index 0000000000..1c62d581ee
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-4.png
new file mode 100644
index 0000000000..bfce01a315
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-5.png
new file mode 100644
index 0000000000..5c20b500fa
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon.png
index 3330c8791f..222fad9772 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon_empty.png
new file mode 100644
index 0000000000..f142a2bd66
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json
index db0ac608ed..8b09e6c054 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/milkshake.rsi/meta.json
@@ -1 +1,34 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-1.png
new file mode 100644
index 0000000000..9d844be912
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-2.png
new file mode 100644
index 0000000000..ad697e5a2f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-3.png
new file mode 100644
index 0000000000..04455b841f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-4.png
new file mode 100644
index 0000000000..02b5bb6836
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon.png
new file mode 100644
index 0000000000..ab028a8ad0
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon_empty.png
new file mode 100644
index 0000000000..88a73bf915
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/mimeosa.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-1.png
new file mode 100644
index 0000000000..659d1c07a7
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-2.png
new file mode 100644
index 0000000000..939575a3b1
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-3.png
new file mode 100644
index 0000000000..5de16f9bb5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-4.png
new file mode 100644
index 0000000000..b31fbdf802
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon.png
new file mode 100644
index 0000000000..8ba082fb4e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon_empty.png
new file mode 100644
index 0000000000..ec208ffbc5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/mimosa.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-1.png
new file mode 100644
index 0000000000..2aa1740d98
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-2.png
new file mode 100644
index 0000000000..4766be1cf4
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-3.png
new file mode 100644
index 0000000000..788dbc39c0
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon.png
new file mode 100644
index 0000000000..841b2d49c7
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon_empty.png
new file mode 100644
index 0000000000..2dc9ca9847
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/meta.json
new file mode 100644
index 0000000000..a8992bc11e
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/moscowmule.rsi/meta.json
@@ -0,0 +1,28 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-1.png
new file mode 100644
index 0000000000..6fcc2d49cd
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-2.png
new file mode 100644
index 0000000000..fe435073ca
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-3.png
new file mode 100644
index 0000000000..8edd114a01
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-4.png
new file mode 100644
index 0000000000..4f8203ddb5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-5.png
new file mode 100644
index 0000000000..82553f878c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-6.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-6.png
new file mode 100644
index 0000000000..9bafa75467
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/fill-6.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon.png
index caa81b36f0..3023c7b4ec 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon_empty.png
new file mode 100644
index 0000000000..a0f9a4ffae
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/meta.json
index f76e611841..de8a24d729 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/painkiller.rsi/meta.json
@@ -1,14 +1,37 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ },
+ {
+ "name": "fill-6"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-1.png
new file mode 100644
index 0000000000..f37376365e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-2.png
new file mode 100644
index 0000000000..939c7aaf49
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-3.png
new file mode 100644
index 0000000000..5df996814c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-4.png
new file mode 100644
index 0000000000..00a1b34766
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-5.png
new file mode 100644
index 0000000000..d1f8a11c0a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-6.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-6.png
new file mode 100644
index 0000000000..f68a94df9b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/fill-6.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon.png
index 7a6b0624da..8025bc76a7 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon_empty.png
new file mode 100644
index 0000000000..404e1f11c4
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/meta.json
index f76e611841..de8a24d729 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/pinacolada.rsi/meta.json
@@ -1,14 +1,37 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ },
+ {
+ "name": "fill-6"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-1.png
new file mode 100644
index 0000000000..a638609b25
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-2.png
new file mode 100644
index 0000000000..49f53c80d9
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-3.png
new file mode 100644
index 0000000000..5804191a6b
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-4.png
new file mode 100644
index 0000000000..808033ee0d
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-5.png
new file mode 100644
index 0000000000..f0b785926c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon.png
index 036e6d23df..e5408d257d 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon_empty.png
new file mode 100644
index 0000000000..4106655434
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json
index db0ac608ed..8b09e6c054 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/red_meadglass.rsi/meta.json
@@ -1 +1,34 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-1.png
new file mode 100644
index 0000000000..5045d333d1
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-2.png
new file mode 100644
index 0000000000..b8b3afdf5a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-3.png
new file mode 100644
index 0000000000..ff1609fdc9
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-4.png
new file mode 100644
index 0000000000..ca3d2c2ffd
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-5.png
new file mode 100644
index 0000000000..5e2bcb5925
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon.png
index 825eb7a688..31842c75ef 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon_empty.png
new file mode 100644
index 0000000000..4106655434
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json
index db0ac608ed..8b09e6c054 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/rewriter.rsi/meta.json
@@ -1 +1,34 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-1.png
new file mode 100644
index 0000000000..1da8f6179c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-2.png
new file mode 100644
index 0000000000..2174d8f035
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-3.png
new file mode 100644
index 0000000000..e107ae3ba9
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-4.png
new file mode 100644
index 0000000000..fae410e563
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon.png
index 9426978d72..d4d772fa2d 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon_empty.png
new file mode 100644
index 0000000000..8e07870b2f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/meta.json
index d16d731d7f..e499ce642b 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/royrogers.rsi/meta.json
@@ -1,22 +1,76 @@
{
"version": 1,
- "license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "size": {
- "x": 32,
- "y": 32
+ "size":
+ {
+ "x": 32,
+ "y": 32
},
- "states": [
- {
- "name": "icon",
- "delays": [
- [
- 1,
- 1,
- 1,
- 1
- ]
- ]
- }
- ]
+ "license": "CC-BY-SA-3.0",
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
+ {
+ "name": "icon",
+ "delays":
+ [
+ [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ]
+ ]
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1",
+ "delays":
+ [
+ [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ]
+ ]
+ },
+ {
+ "name": "fill-2",
+ "delays":
+ [
+ [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ]
+ ]
+ },
+ {
+ "name": "fill-3",
+ "delays":
+ [
+ [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ]
+ ]
+ },
+ {
+ "name": "fill-4",
+ "delays":
+ [
+ [
+ 1.0,
+ 1.0,
+ 1.0,
+ 1.0
+ ]
+ ]
+ }
+ ]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-1.png
new file mode 100644
index 0000000000..0fa8025595
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-2.png
new file mode 100644
index 0000000000..c4dbad7419
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-3.png
new file mode 100644
index 0000000000..a86e9a1dec
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-4.png
new file mode 100644
index 0000000000..eb90aeceb4
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon.png
new file mode 100644
index 0000000000..b49fd372e6
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon_empty.png
new file mode 100644
index 0000000000..88a73bf915
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/sakeglass.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-1.png
new file mode 100644
index 0000000000..c253b2bf28
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-2.png
new file mode 100644
index 0000000000..b153fce6b9
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-3.png
new file mode 100644
index 0000000000..9ee530e9ef
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-4.png
new file mode 100644
index 0000000000..e059d2cd84
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon.png
index 88fdd5e79b..9e8b5a8efb 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon_empty.png
new file mode 100644
index 0000000000..9f73430be5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/meta.json
index f76e611841..eb79fc75a3 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/shirleytemple.rsi/meta.json
@@ -1,14 +1,31 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi. Fill levels by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-1.png
new file mode 100644
index 0000000000..585418efc5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-2.png
new file mode 100644
index 0000000000..50920885db
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-3.png
new file mode 100644
index 0000000000..d255a37bca
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-4.png
new file mode 100644
index 0000000000..1a00d8fede
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-5.png
new file mode 100644
index 0000000000..8b64a514f5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon.png
index c4bf829e5d..9f1e88f87a 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon_empty.png
new file mode 100644
index 0000000000..8399d1535f
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/meta.json
index f76e611841..a36dd2a682 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/sol_dry_glass.rsi/meta.json
@@ -1,14 +1,34 @@
{
"version": 1,
- "size": {
+ "size":
+ {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Modified from https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi",
- "states": [
+ "copyright": "Made by RedBookcase on GitHub.",
+ "states":
+ [
{
"name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
}
]
}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-1.png
new file mode 100644
index 0000000000..1436763c71
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-2.png
new file mode 100644
index 0000000000..d34afa7ef8
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-3.png
new file mode 100644
index 0000000000..fbbbac28ba
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-4.png
new file mode 100644
index 0000000000..b2bf2def81
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon.png
new file mode 100644
index 0000000000..20326b198a
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon_empty.png
new file mode 100644
index 0000000000..0aca7f11b5
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/meta.json
new file mode 100644
index 0000000000..ebbb1faf40
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/thesunalsorises.rsi/meta.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-1.png
new file mode 100644
index 0000000000..1826842813
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-2.png
new file mode 100644
index 0000000000..5228156611
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-3.png
new file mode 100644
index 0000000000..650e420ec2
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-4.png
new file mode 100644
index 0000000000..a909b73d70
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-5.png
new file mode 100644
index 0000000000..d327962f9e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon.png
index cba82f25cb..841f2966ae 100644
Binary files a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon.png and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon_empty.png
new file mode 100644
index 0000000000..936c8edb2c
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json
index db0ac608ed..fb4cf99077 100644
--- a/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json
+++ b/Resources/Textures/Objects/Consumable/Drinks/vodkatonicglass.rsi/meta.json
@@ -1 +1,34 @@
-{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "https://github.com/discordia-space/CEV-Eris/raw/f7aa28fd4b4d0386c3393d829681ebca526f1d2d/icons/obj/drinks.dmi", "states": [{"name": "icon"}]}
\ No newline at end of file
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-1.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-1.png
new file mode 100644
index 0000000000..fca1e91b5e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-1.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-2.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-2.png
new file mode 100644
index 0000000000..37550af2b4
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-2.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-3.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-3.png
new file mode 100644
index 0000000000..24e0b36820
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-3.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-4.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-4.png
new file mode 100644
index 0000000000..b3da8f0bcc
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-4.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-5.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-5.png
new file mode 100644
index 0000000000..c57cf4b1bf
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/fill-5.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon.png
new file mode 100644
index 0000000000..b01587c97e
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon_empty.png b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon_empty.png
new file mode 100644
index 0000000000..189b862f68
Binary files /dev/null and b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/icon_empty.png differ
diff --git a/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/meta.json b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/meta.json
new file mode 100644
index 0000000000..fb4cf99077
--- /dev/null
+++ b/Resources/Textures/Objects/Consumable/Drinks/whiskeysour.rsi/meta.json
@@ -0,0 +1,34 @@
+{
+ "version": 1,
+ "size":
+ {
+ "x": 32,
+ "y": 32
+ },
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Made by RedBookcase on Github.",
+ "states":
+ [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "icon_empty"
+ },
+ {
+ "name": "fill-1"
+ },
+ {
+ "name": "fill-2"
+ },
+ {
+ "name": "fill-3"
+ },
+ {
+ "name": "fill-4"
+ },
+ {
+ "name": "fill-5"
+ }
+ ]
+}
diff --git a/Resources/Textures/Objects/Devices/gps.rsi/inhand-left.png b/Resources/Textures/Objects/Devices/gps.rsi/inhand-left.png
new file mode 100644
index 0000000000..c1d8c3974f
Binary files /dev/null and b/Resources/Textures/Objects/Devices/gps.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Devices/gps.rsi/inhand-right.png b/Resources/Textures/Objects/Devices/gps.rsi/inhand-right.png
new file mode 100644
index 0000000000..80f4553ecc
Binary files /dev/null and b/Resources/Textures/Objects/Devices/gps.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Devices/gps.rsi/meta.json b/Resources/Textures/Objects/Devices/gps.rsi/meta.json
index a59c0b0012..72a8e19a4e 100644
--- a/Resources/Textures/Objects/Devices/gps.rsi/meta.json
+++ b/Resources/Textures/Objects/Devices/gps.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "tgstation at 3ddd840268e33bbcf316f242e6a972b84e6b773c",
+ "copyright": "tgstation at 3ddd840268e33bbcf316f242e6a972b84e6b773c, Inhand sprites by onesch",
"size": {
"x": 32,
"y": 32
@@ -10,6 +10,14 @@
{
"name": "icon"
},
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
{
"name": "active",
"delays": [
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-left.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-left.png
new file mode 100644
index 0000000000..b31b949eee
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-left.png differ
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-right.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-right.png
new file mode 100644
index 0000000000..c03d65a422
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken-inhand-right.png differ
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight_broken.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken.png
similarity index 100%
rename from Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight_broken.png
rename to Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-broken.png
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight_on.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-on.png
similarity index 100%
rename from Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight_on.png
rename to Resources/Textures/Objects/Misc/Lights/lights.rsi/floodlight-on.png
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/meta.json b/Resources/Textures/Objects/Misc/Lights/lights.rsi/meta.json
index 38b29d5d40..04005a4a79 100644
--- a/Resources/Textures/Objects/Misc/Lights/lights.rsi/meta.json
+++ b/Resources/Textures/Objects/Misc/Lights/lights.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/e1142f20f5e4661cb6845cfcf2dd69f864d67432",
+ "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/e1142f20f5e4661cb6845cfcf2dd69f864d67432, Floodlight inhand sprites by onesch",
"size": {
"x": 32,
"y": 32
@@ -19,13 +19,37 @@
"name": "floodlight"
},
{
- "name": "floodlight_on"
+ "name": "off-inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "off-inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "floodlight-on"
+ },
+ {
+ "name": "on-inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "on-inhand-right",
+ "directions": 4
},
{
"name": "floodlight_burned"
},
{
- "name": "floodlight_broken"
+ "name": "floodlight-broken"
+ },
+ {
+ "name": "floodlight-broken-inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "floodlight-broken-inhand-right",
+ "directions": 4
}
]
}
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-left.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-left.png
new file mode 100644
index 0000000000..b23c998256
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-left.png differ
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-right.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-right.png
new file mode 100644
index 0000000000..2f0b15c048
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/off-inhand-right.png differ
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-left.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-left.png
new file mode 100644
index 0000000000..8e43cbde0a
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-left.png differ
diff --git a/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-right.png b/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-right.png
new file mode 100644
index 0000000000..7f0f817970
Binary files /dev/null and b/Resources/Textures/Objects/Misc/Lights/lights.rsi/on-inhand-right.png differ
diff --git a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-left.png b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-left.png
new file mode 100644
index 0000000000..5a9d7b31b6
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-right.png b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-right.png
new file mode 100644
index 0000000000..917c22422c
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json
index 083f15f073..d563b8fed2 100644
--- a/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json
+++ b/Resources/Textures/Objects/Specific/Atmos/gasanalyzer.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from baystation at https://github.com/Baystation12/Baystation12/commit/ded74aff42136a7953c551a2a94cebc81f62f9fb",
+ "copyright": "Taken from baystation at https://github.com/Baystation12/Baystation12/commit/ded74aff42136a7953c551a2a94cebc81f62f9fb, Inhand sprites by onesch",
"size": {
"x": 32,
"y": 32
@@ -10,6 +10,14 @@
{
"name": "icon"
},
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
{
"name": "working",
"delays": [
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/broken.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/broken.png
index afce59853e..e1de8f99d8 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/broken.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/broken.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/fragile.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/fragile.png
index a17f4b5fc3..02409831b9 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/fragile.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/fragile.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/icon.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/icon.png
index bcfe67ceda..418e6c2bf3 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/icon.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-left.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-left.png
new file mode 100644
index 0000000000..dec72a8183
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-right.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-right.png
new file mode 100644
index 0000000000..635cca5e0d
Binary files /dev/null and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/locked.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/locked.png
index 8292644fb1..4039004916 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/locked.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/locked.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/meta.json b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/meta.json
index 9d5374b551..2759dded51 100644
--- a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/meta.json
+++ b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/meta.json
@@ -1,24 +1,32 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/40d89d11ea4a5cb81d61dc1018b46f4e7d32c62a",
+ "copyright": "Sprites made by Princess Cheeseballs (Discord), (https://github.com/Pronana).",
"size": {
"x": 32,
"y": 32
},
"states": [
{
- "name": "icon"
- },
- {
- "name": "locked"
- },
- {
- "name": "trash"
+ "name": "broken"
},
{
"name": "fragile"
},
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "locked"
+ },
{
"name": "priority"
},
@@ -26,7 +34,7 @@
"name": "priority_inactive"
},
{
- "name": "broken"
+ "name": "trash"
},
{
"name": "postmark"
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/postmark.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/postmark.png
index 5d55ab0b15..540167df0d 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/postmark.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/postmark.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority.png
index f2c0106f38..ebff1a1486 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority_inactive.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority_inactive.png
index 034991aaaa..e53f3211eb 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority_inactive.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/priority_inactive.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/trash.png b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/trash.png
index 1faadffe1d..e2d88f7c5d 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail.rsi/trash.png and b/Resources/Textures/Objects/Specific/Cargo/mail.rsi/trash.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/broken.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/broken.png
index 1c798c4075..b8f1ddc664 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/broken.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/broken.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/fragile.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/fragile.png
index 0917000cbe..f7a29717de 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/fragile.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/fragile.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/icon.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/icon.png
index f3974ab116..8bdf7efe8a 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/icon.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-left.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-left.png
index ccbc87cf3b..1155c22aec 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-left.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-right.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-right.png
index ccbc87cf3b..2155aa8d4f 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-right.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/locked.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/locked.png
index 1cacaf1921..fd38e69dc7 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/locked.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/locked.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/meta.json b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/meta.json
index cf7609b450..2759dded51 100644
--- a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/meta.json
+++ b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/meta.json
@@ -1,43 +1,43 @@
{
- "version": 1,
- "license": "CC-BY-SA-3.0",
- "copyright": "Taken from tgstation (obj/storage/closet.dmi, obj/service/bureaucracy.dmi), modified by Whatstone (Discord). broken, inhand-left, inhand-right by Whatstone.",
- "size": {
- "x": 32,
- "y": 32
- },
- "states": [
- {
- "name": "broken"
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Sprites made by Princess Cheeseballs (Discord), (https://github.com/Pronana).",
+ "size": {
+ "x": 32,
+ "y": 32
},
- {
- "name": "fragile"
- },
- {
- "name": "icon"
- },
- {
- "name": "inhand-left",
- "directions": 4
- },
- {
- "name": "inhand-right",
- "directions": 4
- },
- {
- "name": "locked"
- },
- {
- "name": "priority"
- },
- {
- "name": "priority_inactive"
- },
- {
- "name": "trash"
- },
- {
- "name": "postmark"
- }
- ]
+ "states": [
+ {
+ "name": "broken"
+ },
+ {
+ "name": "fragile"
+ },
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "locked"
+ },
+ {
+ "name": "priority"
+ },
+ {
+ "name": "priority_inactive"
+ },
+ {
+ "name": "trash"
+ },
+ {
+ "name": "postmark"
+ }
+ ]
}
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/postmark.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/postmark.png
index 3267a6e2d0..d371deee82 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/postmark.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/postmark.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority.png
index 9c5a74ad10..9f577aec6f 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority_inactive.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority_inactive.png
index fc03165b57..37aaaba0e3 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority_inactive.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/priority_inactive.png differ
diff --git a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/trash.png b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/trash.png
index 2ef4ee7233..82c6fbe2b7 100644
Binary files a/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/trash.png and b/Resources/Textures/Objects/Specific/Cargo/mail_large.rsi/trash.png differ
diff --git a/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-left.png b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-left.png
new file mode 100644
index 0000000000..0eec62723d
Binary files /dev/null and b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-right.png b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-right.png
new file mode 100644
index 0000000000..e727b4e7a1
Binary files /dev/null and b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/meta.json b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/meta.json
index edae9c38c4..24fdcb71cc 100644
--- a/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/meta.json
+++ b/Resources/Textures/Objects/Tools/handheld_mass_scanner.rsi/meta.json
@@ -5,7 +5,7 @@
"y": 32
},
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from Frontier Station, created by Tem Armoff https://github.com/new-frontiers-14/frontier-station-14/pull/484/files",
+ "copyright": "Taken from Frontier Station, created by Tem Armoff https://github.com/new-frontiers-14/frontier-station-14/pull/484/files, Inhand sprites by onesch",
"states": [
{
"name": "scanner",
@@ -20,6 +20,14 @@
{
"name": "icon",
"directions": 1
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
}
]
}
diff --git a/Resources/Textures/Objects/Tools/scissors.rsi/inhand-left.png b/Resources/Textures/Objects/Tools/scissors.rsi/inhand-left.png
new file mode 100644
index 0000000000..3d078c811d
Binary files /dev/null and b/Resources/Textures/Objects/Tools/scissors.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Tools/scissors.rsi/inhand-right.png b/Resources/Textures/Objects/Tools/scissors.rsi/inhand-right.png
new file mode 100644
index 0000000000..d9c5f33fc0
Binary files /dev/null and b/Resources/Textures/Objects/Tools/scissors.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Tools/scissors.rsi/meta.json b/Resources/Textures/Objects/Tools/scissors.rsi/meta.json
index b544b3bc15..c431ad7f01 100644
--- a/Resources/Textures/Objects/Tools/scissors.rsi/meta.json
+++ b/Resources/Textures/Objects/Tools/scissors.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC0-1.0",
- "copyright": "Created by TheShuEd(github) for Space Station 14",
+ "copyright": "Created by TheShuEd(github) for Space Station 14, Inhand sprites by onesch",
"size": {
"x": 32,
"y": 32
@@ -9,6 +9,14 @@
"states": [
{
"name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
}
]
}
diff --git a/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-left.png b/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-left.png
new file mode 100644
index 0000000000..34787a11f5
Binary files /dev/null and b/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-right.png b/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-right.png
new file mode 100644
index 0000000000..ce4df84606
Binary files /dev/null and b/Resources/Textures/Objects/Tools/spray_painter.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Tools/spray_painter.rsi/meta.json b/Resources/Textures/Objects/Tools/spray_painter.rsi/meta.json
index 056ba0a856..8a19107208 100644
--- a/Resources/Textures/Objects/Tools/spray_painter.rsi/meta.json
+++ b/Resources/Textures/Objects/Tools/spray_painter.rsi/meta.json
@@ -1,5 +1,5 @@
{
- "copyright" : "Taken from https://github.com/tgstation/tgstation at commit a21274e56ae84b2c96e8b6beeca805df3d5402e8.",
+ "copyright" : "Taken from https://github.com/tgstation/tgstation at commit a21274e56ae84b2c96e8b6beeca805df3d5402e8, Inhand sprites by onesch",
"license" : "CC-BY-SA-3.0",
"size" : {
"x" : 32,
@@ -8,6 +8,14 @@
"states" : [
{
"name" : "spray_painter"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
}
],
"version" : 1
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/cover-off.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/cover-off.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/cover-off.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/cover-off.png
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/cover-on.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/cover-on.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/cover-on.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/cover-on.png
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/meta.json b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/meta.json
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/meta.json
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/meta.json
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/pod-off.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-off.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/pod-off.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-off.png
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/pod-on.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-on.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/pod-on.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-on.png
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/pod-open.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-open.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/pod-open.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-open.png
diff --git a/Resources/Textures/Structures/Machines/cryogenics.rsi/pod-panel.png b/Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-panel.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/cryogenics.rsi/pod-panel.png
rename to Resources/Textures/Structures/Machines/Medical/cryopod.rsi/pod-panel.png
diff --git a/Resources/Textures/Structures/Machines/juicer.rsi/juicer1.png b/Resources/Textures/Structures/Machines/grinder.rsi/grinder_beaker_attached.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/juicer.rsi/juicer1.png
rename to Resources/Textures/Structures/Machines/grinder.rsi/grinder_beaker_attached.png
diff --git a/Resources/Textures/Structures/Machines/juicer.rsi/juicer0.png b/Resources/Textures/Structures/Machines/grinder.rsi/grinder_empty.png
similarity index 100%
rename from Resources/Textures/Structures/Machines/juicer.rsi/juicer0.png
rename to Resources/Textures/Structures/Machines/grinder.rsi/grinder_empty.png
diff --git a/Resources/Textures/Structures/Machines/grinder.rsi/meta.json b/Resources/Textures/Structures/Machines/grinder.rsi/meta.json
new file mode 100644
index 0000000000..9b9ed1dbe9
--- /dev/null
+++ b/Resources/Textures/Structures/Machines/grinder.rsi/meta.json
@@ -0,0 +1,17 @@
+{
+ "license":"CC-BY-SA-3.0",
+ "copyright":"https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d",
+ "version":1,
+ "size":{
+ "x":32,
+ "y":32
+ },
+ "states":[
+ {
+ "name":"grinder_empty"
+ },
+ {
+ "name":"grinder_beaker_attached"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Resources/Textures/Structures/Machines/juicer.rsi/meta.json b/Resources/Textures/Structures/Machines/juicer.rsi/meta.json
deleted file mode 100644
index 6048f25646..0000000000
--- a/Resources/Textures/Structures/Machines/juicer.rsi/meta.json
+++ /dev/null
@@ -1 +0,0 @@
-{"license": "CC-BY-SA-3.0", "copyright": "https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d","version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "juicer0", "delays": [[1.0]]}, {"name": "juicer1", "delays": [[1.0]]}]}
diff --git a/Resources/Textures/Structures/Storage/wall_locker.rsi/meta.json b/Resources/Textures/Structures/Storage/wall_locker.rsi/meta.json
index b6ed63c7a3..2466cc53d7 100644
--- a/Resources/Textures/Structures/Storage/wall_locker.rsi/meta.json
+++ b/Resources/Textures/Structures/Storage/wall_locker.rsi/meta.json
@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from shiptest at commmit https://github.com/shiptest-ss13/Shiptest/commit/440a15fb476a20d77ba28c1fe315c1b659032ce8, edited by Alekshhh",
+ "copyright": "Taken from shiptest at commmit https://github.com/shiptest-ss13/Shiptest/commit/440a15fb476a20d77ba28c1fe315c1b659032ce8, edited by Alekshhh, N2 lockers edited by Lamrr",
"size": {
"x": 32,
"y": 32
@@ -27,6 +27,9 @@
{ "name": "med_door" },
{ "name": "med_open" },
{ "name": "mixed_door" },
+ { "name": "n2" },
+ { "name": "n2_door" },
+ { "name": "n2_open" },
{ "name": "orange_door" },
{ "name": "pink_door" },
{ "name": "red_door" },
diff --git a/Resources/Textures/Structures/Storage/wall_locker.rsi/n2.png b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2.png
new file mode 100644
index 0000000000..34d71d0586
Binary files /dev/null and b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2.png differ
diff --git a/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_door.png b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_door.png
new file mode 100644
index 0000000000..e4d95b30d8
Binary files /dev/null and b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_door.png differ
diff --git a/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_open.png b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_open.png
new file mode 100644
index 0000000000..5d3050e30c
Binary files /dev/null and b/Resources/Textures/Structures/Storage/wall_locker.rsi/n2_open.png differ
diff --git a/Resources/clientCommandPerms.yml b/Resources/clientCommandPerms.yml
index 2e613a0fce..cbe654e557 100644
--- a/Resources/clientCommandPerms.yml
+++ b/Resources/clientCommandPerms.yml
@@ -65,7 +65,6 @@
- showemergencyshuttle
- zoom
- showsubfloor
- - showsubfloorforever
- showmarkers
- nodevis
- nodevisfilter
diff --git a/RobustToolbox b/RobustToolbox
index e064b7a4f9..139b6f796c 160000
--- a/RobustToolbox
+++ b/RobustToolbox
@@ -1 +1 @@
-Subproject commit e064b7a4f961f89c858986dd58ecad29b5dd1752
+Subproject commit 139b6f796cc0084585aab33553e256bc8e9f492b
diff --git a/Tools/actions_changelogs_since_last_run.py b/Tools/actions_changelogs_since_last_run.py
index 89eca69b33..8261ad5239 100755
--- a/Tools/actions_changelogs_since_last_run.py
+++ b/Tools/actions_changelogs_since_last_run.py
@@ -1,21 +1,22 @@
#!/usr/bin/env python3
-#
-# Sends updates to a Discord webhook for new changelog entries since the last GitHub Actions publish run.
-# Automatically figures out the last run and changelog contents with the GitHub API.
-#
+"""
+Sends updates to a Discord webhook for new changelog entries since the last GitHub Actions publish run.
+
+Automatically figures out the last run and changelog contents with the GitHub API.
+"""
-import io
import itertools
import os
-import requests
-import yaml
+from pathlib import Path
from typing import Any, Iterable
-GITHUB_API_URL = os.environ.get("GITHUB_API_URL", "https://api.github.com")
-GITHUB_REPOSITORY = os.environ["GITHUB_REPOSITORY"]
-GITHUB_RUN = os.environ["GITHUB_RUN_ID"]
-GITHUB_TOKEN = os.environ["GITHUB_TOKEN"]
+import requests
+import yaml
+
+DEBUG = False
+DEBUG_CHANGELOG_FILE_OLD = Path("Resources/Changelog/Old.yml")
+GITHUB_API_URL = os.environ.get("GITHUB_API_URL", "https://api.github.com")
# https://discord.com/developers/docs/resources/webhook
DISCORD_SPLIT_LIMIT = 2000
@@ -23,39 +24,40 @@ DISCORD_WEBHOOK_URL = os.environ.get("DISCORD_WEBHOOK_URL")
CHANGELOG_FILE = "Resources/Changelog/Changelog.yml"
-TYPES_TO_EMOJI = {
- "Fix": "🐛",
- "Add": "🆕",
- "Remove": "❌",
- "Tweak": "⚒️"
-}
+TYPES_TO_EMOJI = {"Fix": "🐛", "Add": "🆕", "Remove": "❌", "Tweak": "⚒️"}
ChangelogEntry = dict[str, Any]
+
def main():
if not DISCORD_WEBHOOK_URL:
+ print("No discord webhook URL found, skipping discord send")
return
- session = requests.Session()
- session.headers["Authorization"] = f"Bearer {GITHUB_TOKEN}"
- session.headers["Accept"] = "Accept: application/vnd.github+json"
- session.headers["X-GitHub-Api-Version"] = "2022-11-28"
+ if DEBUG:
+ # to debug this script locally, you can use
+ # a separate local file as the old changelog
+ last_changelog_stream = DEBUG_CHANGELOG_FILE_OLD.read_text()
+ else:
+ # when running this normally in a GitHub actions workflow,
+ # it will get the old changelog from the GitHub API
+ last_changelog_stream = get_last_changelog()
- most_recent = get_most_recent_workflow(session)
- last_sha = most_recent['head_commit']['id']
- print(f"Last successful publish job was {most_recent['id']}: {last_sha}")
- last_changelog = yaml.safe_load(get_last_changelog(session, last_sha))
+ last_changelog = yaml.safe_load(last_changelog_stream)
with open(CHANGELOG_FILE, "r") as f:
cur_changelog = yaml.safe_load(f)
diff = diff_changelog(last_changelog, cur_changelog)
- send_to_discord(diff)
+ message_lines = changelog_entries_to_message_lines(diff)
+ send_message_lines(message_lines)
-def get_most_recent_workflow(sess: requests.Session) -> Any:
- workflow_run = get_current_run(sess)
+def get_most_recent_workflow(
+ sess: requests.Session, github_repository: str, github_run: str
+) -> Any:
+ workflow_run = get_current_run(sess, github_repository, github_run)
past_runs = get_past_runs(sess, workflow_run)
- for run in past_runs['workflow_runs']:
+ for run in past_runs["workflow_runs"]:
# First past successful run that isn't our current run.
if run["id"] == workflow_run["id"]:
continue
@@ -63,8 +65,12 @@ def get_most_recent_workflow(sess: requests.Session) -> Any:
return run
-def get_current_run(sess: requests.Session) -> Any:
- resp = sess.get(f"{GITHUB_API_URL}/repos/{GITHUB_REPOSITORY}/actions/runs/{GITHUB_RUN}")
+def get_current_run(
+ sess: requests.Session, github_repository: str, github_run: str
+) -> Any:
+ resp = sess.get(
+ f"{GITHUB_API_URL}/repos/{github_repository}/actions/runs/{github_run}"
+ )
resp.raise_for_status()
return resp.json()
@@ -73,32 +79,55 @@ def get_past_runs(sess: requests.Session, current_run: Any) -> Any:
"""
Get all successful workflow runs before our current one.
"""
- params = {
- "status": "success",
- "created": f"<={current_run['created_at']}"
- }
+ params = {"status": "success", "created": f"<={current_run['created_at']}"}
resp = sess.get(f"{current_run['workflow_url']}/runs", params=params)
resp.raise_for_status()
return resp.json()
-def get_last_changelog(sess: requests.Session, sha: str) -> str:
+def get_last_changelog() -> str:
+ github_repository = os.environ["GITHUB_REPOSITORY"]
+ github_run = os.environ["GITHUB_RUN_ID"]
+ github_token = os.environ["GITHUB_TOKEN"]
+
+ session = requests.Session()
+ session.headers["Authorization"] = f"Bearer {github_token}"
+ session.headers["Accept"] = "Accept: application/vnd.github+json"
+ session.headers["X-GitHub-Api-Version"] = "2022-11-28"
+
+ most_recent = get_most_recent_workflow(session, github_repository, github_run)
+ last_sha = most_recent["head_commit"]["id"]
+ print(f"Last successful publish job was {most_recent['id']}: {last_sha}")
+ last_changelog_stream = get_last_changelog_by_sha(
+ session, last_sha, github_repository
+ )
+
+ return last_changelog_stream
+
+
+def get_last_changelog_by_sha(
+ sess: requests.Session, sha: str, github_repository: str
+) -> str:
"""
Use GitHub API to get the previous version of the changelog YAML (Actions builds are fetched with a shallow clone)
"""
params = {
"ref": sha,
}
- headers = {
- "Accept": "application/vnd.github.raw"
- }
+ headers = {"Accept": "application/vnd.github.raw"}
- resp = sess.get(f"{GITHUB_API_URL}/repos/{GITHUB_REPOSITORY}/contents/{CHANGELOG_FILE}", headers=headers, params=params)
+ resp = sess.get(
+ f"{GITHUB_API_URL}/repos/{github_repository}/contents/{CHANGELOG_FILE}",
+ headers=headers,
+ params=params,
+ )
resp.raise_for_status()
return resp.text
-def diff_changelog(old: dict[str, Any], cur: dict[str, Any]) -> Iterable[ChangelogEntry]:
+def diff_changelog(
+ old: dict[str, Any], cur: dict[str, Any]
+) -> Iterable[ChangelogEntry]:
"""
Find all new entries not present in the previous publish.
"""
@@ -108,69 +137,75 @@ def diff_changelog(old: dict[str, Any], cur: dict[str, Any]) -> Iterable[Changel
def get_discord_body(content: str):
return {
- "content": content,
- # Do not allow any mentions.
- "allowed_mentions": {
- "parse": []
- },
- # SUPPRESS_EMBEDS
- "flags": 1 << 2
- }
+ "content": content,
+ # Do not allow any mentions.
+ "allowed_mentions": {"parse": []},
+ # SUPPRESS_EMBEDS
+ "flags": 1 << 2,
+ }
-def send_discord(content: str):
+def send_discord_webhook(lines: list[str]):
+ content = "".join(lines)
body = get_discord_body(content)
response = requests.post(DISCORD_WEBHOOK_URL, json=body)
response.raise_for_status()
-def send_to_discord(entries: Iterable[ChangelogEntry]) -> None:
- if not DISCORD_WEBHOOK_URL:
- print(f"No discord webhook URL found, skipping discord send")
- return
+def changelog_entries_to_message_lines(entries: Iterable[ChangelogEntry]) -> list[str]:
+ """Process structured changelog entries into a list of lines making up a formatted message."""
+ message_lines = []
- message_content = io.StringIO()
- # We need to manually split messages to avoid discord's character limit
- # With that being said this isn't entirely robust
- # e.g. a sufficiently large CL breaks it, but that's a future problem
-
- for name, group in itertools.groupby(entries, lambda x: x["author"]):
- # Need to split text to avoid discord character limit
- group_content = io.StringIO()
- group_content.write(f"**{name}** updated:\n")
+ for contributor_name, group in itertools.groupby(entries, lambda x: x["author"]):
+ message_lines.append(f"**{contributor_name}** updated:\n")
for entry in group:
+ url = entry.get("url")
+ if url and not url.strip():
+ url = None
+
for change in entry["changes"]:
- emoji = TYPES_TO_EMOJI.get(change['type'], "❓")
- message = change['message']
- url = entry.get("url")
- if url and url.strip():
- group_content.write(f"{emoji} - {message} [PR]({url}) \n")
+ emoji = TYPES_TO_EMOJI.get(change["type"], "❓")
+ message = change["message"]
+
+ # if a single line is longer than the limit, it needs to be truncated
+ if len(message) > DISCORD_SPLIT_LIMIT:
+ message = message[: DISCORD_SPLIT_LIMIT - 100].rstrip() + " [...]"
+
+ if url is not None:
+ line = f"{emoji} - {message} [PR]({url}) \n"
else:
- group_content.write(f"{emoji} - {message}\n")
+ line = f"{emoji} - {message}\n"
- group_text = group_content.getvalue()
- message_text = message_content.getvalue()
- message_length = len(message_text)
- group_length = len(group_text)
+ message_lines.append(line)
- # If adding the text would bring it over the group limit then send the message and start a new one
- if message_length + group_length >= DISCORD_SPLIT_LIMIT:
- print("Split changelog and sending to discord")
- send_discord(message_text)
+ return message_lines
- # Reset the message
- message_content = io.StringIO()
- # Flush the group to the message
- message_content.write(group_text)
-
- # Clean up anything remaining
- message_text = message_content.getvalue()
- if len(message_text) > 0:
+def send_message_lines(message_lines: list[str]):
+ """Join a list of message lines into chunks that are each below Discord's message length limit, and send them."""
+ chunk_lines = []
+ chunk_length = 0
+
+ for line in message_lines:
+ line_length = len(line)
+ new_chunk_length = chunk_length + line_length
+
+ if new_chunk_length > DISCORD_SPLIT_LIMIT:
+ print("Split changelog and sending to discord")
+ send_discord_webhook(chunk_lines)
+
+ new_chunk_length = line_length
+ chunk_lines.clear()
+
+ chunk_lines.append(line)
+ chunk_length = new_chunk_length
+
+ if chunk_lines:
print("Sending final changelog to discord")
- send_discord(message_text)
+ send_discord_webhook(chunk_lines)
-main()
+if __name__ == "__main__":
+ main()