From 5cc3f15dc8d861b6dfd8d67c4161535b18c21b49 Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 2 Oct 2023 17:06:07 -0300 Subject: [PATCH 01/18] feat(serialization): add BinarySerializationOptions --- src/Parsec/Common/ICsv.cs | 2 +- .../{IJsonable.cs => IJsonSerializable.cs} | 2 +- .../{IExportable.cs => IJsonWritable.cs} | 2 +- src/Parsec/Readers/Reader.cs | 163 +++++++++++------- src/Parsec/Readers/SBinaryReader.cs | 61 +++---- .../BinarySerializationOptions.cs | 35 ++++ src/Parsec/Shaiya/Core/FileBase.cs | 78 +++++---- 7 files changed, 209 insertions(+), 134 deletions(-) rename src/Parsec/Common/{IJsonable.cs => IJsonSerializable.cs} (93%) rename src/Parsec/Common/{IExportable.cs => IJsonWritable.cs} (86%) create mode 100644 src/Parsec/Serialization/BinarySerializationOptions.cs diff --git a/src/Parsec/Common/ICsv.cs b/src/Parsec/Common/ICsv.cs index 76af215b..8e6db691 100644 --- a/src/Parsec/Common/ICsv.cs +++ b/src/Parsec/Common/ICsv.cs @@ -9,5 +9,5 @@ public interface ICsv /// /// Export file path /// File encoding - void WriteCsv(string outputPath, Encoding encoding = null); + void WriteCsv(string outputPath, Encoding? encoding = null); } diff --git a/src/Parsec/Common/IJsonable.cs b/src/Parsec/Common/IJsonSerializable.cs similarity index 93% rename from src/Parsec/Common/IJsonable.cs rename to src/Parsec/Common/IJsonSerializable.cs index d3b3dab7..054abb40 100644 --- a/src/Parsec/Common/IJsonable.cs +++ b/src/Parsec/Common/IJsonSerializable.cs @@ -3,7 +3,7 @@ /// /// Interface that defines the behavior of files that can be exported as json /// -public interface IJsonable +public interface IJsonSerializable { /// /// Serializes an object into json diff --git a/src/Parsec/Common/IExportable.cs b/src/Parsec/Common/IJsonWritable.cs similarity index 86% rename from src/Parsec/Common/IExportable.cs rename to src/Parsec/Common/IJsonWritable.cs index aba60519..d85e226b 100644 --- a/src/Parsec/Common/IExportable.cs +++ b/src/Parsec/Common/IJsonWritable.cs @@ -1,6 +1,6 @@ namespace Parsec.Common; -public interface IExportable : IJsonable +public interface IJsonWritable : IJsonSerializable { /// /// Writes the file as JSON with the possibility of ignoring some properties diff --git a/src/Parsec/Readers/Reader.cs b/src/Parsec/Readers/Reader.cs index 1348adfe..7ca40577 100644 --- a/src/Parsec/Readers/Reader.cs +++ b/src/Parsec/Readers/Reader.cs @@ -1,8 +1,10 @@ +using System.Runtime.Serialization; using System.Text; using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; using Parsec.Helpers; +using Parsec.Serialization; using Parsec.Shaiya.Core; using Parsec.Shaiya.Data; @@ -18,8 +20,11 @@ public static class Reader /// File encoding /// Shaiya File Format Type /// T instance - public static T ReadFromFile(string path, Episode episode = Episode.EP5, Encoding encoding = null) where T : FileBase, new() => - FileBase.ReadFromFile(path, episode, encoding); + public static T ReadFromFile(string path, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromFile(path, serializationOptions); + } /// /// Reads a shaiya file format from a file @@ -28,9 +33,10 @@ public static class Reader /// File episode /// File encoding /// Shaiya File Format Type - public static Task ReadFromFileAsync(string path, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - Task.FromResult(ReadFromFile(path, episode, encoding)); + public static Task ReadFromFileAsync(string path, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + return Task.FromResult(ReadFromFile(path, episode, encoding)); + } /// /// Reads the shaiya file format from a file @@ -40,8 +46,11 @@ public static Task ReadFromFileAsync(string path, Episode episode = Episod /// File episode /// File encoding /// FileBase instance - public static FileBase ReadFromFile(string path, Type type, Episode episode = Episode.EP5, Encoding encoding = null) => - FileBase.ReadFromFile(path, type, episode, encoding); + public static FileBase ReadFromFile(string path, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromFile(path, type, serializationOptions); + } /// /// Reads the shaiya file format from a file @@ -50,8 +59,10 @@ public static FileBase ReadFromFile(string path, Type type, Episode episode = Ep /// FileBase child type to be read /// File episode /// File encoding - public static Task ReadFromFileAsync(string path, Type type, Episode episode = Episode.EP5, Encoding encoding = null) => - Task.FromResult(ReadFromFile(path, type, episode, encoding)); + public static Task ReadFromFileAsync(string path, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + return Task.FromResult(ReadFromFile(path, type, episode, encoding)); + } /// /// Reads a shaiya file format from a buffer (byte array) @@ -62,10 +73,11 @@ public static Task ReadFromFileAsync(string path, Type type, Episode e /// File encoding /// Shaiya File Format Type /// T instance - public static T ReadFromBuffer(string name, byte[] buffer, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - FileBase.ReadFromBuffer(name, buffer, episode, encoding); - + public static T ReadFromBuffer(string name, byte[] buffer, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromBuffer(name, buffer, serializationOptions); + } /// /// Reads a shaiya file format from a buffer (byte array) @@ -75,9 +87,10 @@ public static T ReadFromBuffer(string name, byte[] buffer, Episode episode = /// File episode /// File encoding /// Shaiya File Format Type - public static Task ReadFromBufferAsync(string name, byte[] buffer, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - Task.FromResult(ReadFromBuffer(name, buffer, episode)); + public static Task ReadFromBufferAsync(string name, byte[] buffer, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + return Task.FromResult(ReadFromBuffer(name, buffer, episode)); + } /// /// Reads the shaiya file format from a buffer (byte array) @@ -88,8 +101,11 @@ public static Task ReadFromBufferAsync(string name, byte[] buffer, Episode /// File episode /// File encoding /// FileBase instance - public static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, Episode episode = Episode.EP5, Encoding encoding = null) => - FileBase.ReadFromBuffer(name, buffer, type, episode, encoding); + public static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromBuffer(name, buffer, type, serializationOptions); + } /// /// Reads the shaiya file format from a buffer (byte array) @@ -99,9 +115,10 @@ public static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, Epi /// FileBase child type to be read /// File episode /// File encoding - public static Task ReadFromBufferAsync(string name, byte[] buffer, Type type, Episode episode = Episode.EP5, - Encoding encoding = null) => - Task.FromResult(ReadFromBuffer(name, buffer, type, episode, encoding)); + public static Task ReadFromBufferAsync(string name, byte[] buffer, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + return Task.FromResult(ReadFromBuffer(name, buffer, type, episode, encoding)); + } /// /// Reads a shaiya file format from a json file @@ -110,8 +127,10 @@ public static Task ReadFromBufferAsync(string name, byte[] buffer, Typ /// String encoding /// type /// instance - public static T ReadFromJsonFile(string path, Encoding encoding = null) where T : FileBase => - (T)ReadFromJsonFile(path, typeof(T), encoding); + public static T ReadFromJsonFile(string path, Encoding? encoding = null) where T : FileBase + { + return (T)ReadFromJsonFile(path, typeof(T), encoding); + } /// /// Reads a shaiya file format from a json file @@ -119,8 +138,10 @@ public static T ReadFromJsonFile(string path, Encoding encoding = null) where /// Path to json file /// String encoding /// type - public static Task ReadFromJsonFileAsync(string path, Encoding encoding = null) where T : FileBase => - Task.FromResult(ReadFromJsonFile(path, encoding)); + public static Task ReadFromJsonFileAsync(string path, Encoding? encoding = null) where T : FileBase + { + return Task.FromResult(ReadFromJsonFile(path, encoding)); + } /// /// Reads a shaiya file format from a json file @@ -129,7 +150,7 @@ public static Task ReadFromJsonFileAsync(string path, Encoding encoding = /// FileBase child type to be read /// String encoding /// instance - public static FileBase ReadFromJsonFile(string path, Type type, Encoding encoding = null) + public static FileBase ReadFromJsonFile(string path, Type type, Encoding? encoding = null) { if (!type.GetBaseClassesAndInterfaces().Contains(typeof(FileBase))) throw new ArgumentException("Type must be a child of FileBase"); @@ -143,19 +164,22 @@ public static FileBase ReadFromJsonFile(string path, Type type, Encoding encodin encoding ??= Encoding.ASCII; string jsonContent = File.ReadAllText(path, encoding); - var deserializedObject = (FileBase)JsonConvert.DeserializeObject(jsonContent, type); - - string fileNameWithoutJsonExtension = Path.GetFileNameWithoutExtension(path); + var deserializedObject = JsonConvert.DeserializeObject(jsonContent, type); if (deserializedObject == null) - return null; + { + throw new SerializationException("The provided file to deserialize is not a valid json file"); + } + + var fileBase = (FileBase)deserializedObject; + string fileNameWithoutJsonExtension = Path.GetFileNameWithoutExtension(path); - deserializedObject.Encoding = encoding; - string objectExtension = deserializedObject.Extension; + fileBase.Encoding = encoding; + string objectExtension = fileBase.Extension; if (Path.GetExtension(fileNameWithoutJsonExtension) != objectExtension) - deserializedObject.Path = $"{fileNameWithoutJsonExtension}.{objectExtension}"; + fileBase.Path = $"{fileNameWithoutJsonExtension}.{objectExtension}"; - return deserializedObject; + return fileBase; } /// @@ -164,8 +188,10 @@ public static FileBase ReadFromJsonFile(string path, Type type, Encoding encodin /// Path to json file /// FileBase child type to be read /// String encoding - public static Task ReadFromJsonFileAsync(string path, Type type, Encoding encoding = null) => - Task.FromResult(ReadFromJsonFile(path, type, encoding)); + public static Task ReadFromJsonFileAsync(string path, Type type, Encoding? encoding = null) + { + return Task.FromResult(ReadFromJsonFile(path, type, encoding)); + } /// /// Reads a shaiya file format from a json file @@ -175,8 +201,10 @@ public static Task ReadFromJsonFileAsync(string path, Type type, Encod /// String encoding /// type /// instance - public static T ReadFromJson(string name, string jsonText, Encoding encoding = null) where T : FileBase - => (T)ReadFromJson(name, jsonText, typeof(T), encoding); + public static T ReadFromJson(string name, string jsonText, Encoding? encoding = null) where T : FileBase + { + return (T)ReadFromJson(name, jsonText, typeof(T), encoding); + } /// /// Reads a shaiya file format from a json file @@ -185,8 +213,10 @@ public static T ReadFromJson(string name, string jsonText, Encoding encoding /// json text /// String encoding /// type - public static Task ReadFromJsonAsync(string name, string jsonText, Encoding encoding = null) where T : FileBase - => Task.FromResult(ReadFromJson(name, jsonText, encoding)); + public static Task ReadFromJsonAsync(string name, string jsonText, Encoding? encoding = null) where T : FileBase + { + return Task.FromResult(ReadFromJson(name, jsonText, encoding)); + } /// /// Reads a shaiya file format from a json file @@ -196,20 +226,24 @@ public static Task ReadFromJsonAsync(string name, string jsonText, Encodin /// FileBase child type to be read /// String encoding /// instance - public static FileBase ReadFromJson(string name, string jsonText, Type type, Encoding encoding = null) + public static FileBase ReadFromJson(string name, string jsonText, Type type, Encoding? encoding = null) { if (!type.GetBaseClassesAndInterfaces().Contains(typeof(FileBase))) throw new ArgumentException("Type must be a child of FileBase"); encoding ??= Encoding.ASCII; - var deserializedObject = (FileBase)JsonConvert.DeserializeObject(jsonText, type); - if (deserializedObject == null) - return null; + var deserializedObject = JsonConvert.DeserializeObject(jsonText, type); - deserializedObject.Encoding = encoding; - deserializedObject.Path = name; - return deserializedObject; + if (deserializedObject == null) + { + throw new SerializationException("The provided file to deserialize is not a valid json file"); + } + + var fileBase = (FileBase)deserializedObject; + fileBase.Encoding = encoding; + fileBase.Path = name; + return fileBase; } /// @@ -219,8 +253,10 @@ public static FileBase ReadFromJson(string name, string jsonText, Type type, Enc /// json text /// FileBase child type to be read /// String encoding - public static Task ReadFromJsonAsync(string name, string jsonText, Type type, Encoding encoding = null) => - Task.FromResult(ReadFromJson(name, jsonText, type, encoding)); + public static Task ReadFromJsonAsync(string name, string jsonText, Type type, Encoding? encoding = null) + { + return Task.FromResult(ReadFromJson(name, jsonText, type, encoding)); + } /// /// Reads the shaiya file format from a buffer (byte array) within a instance @@ -230,9 +266,11 @@ public static Task ReadFromJsonAsync(string name, string jsonText, Typ /// File episode /// File encoding /// FileBase instance - public static T ReadFromData(Data data, SFile file, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - FileBase.ReadFromData(data, file, episode, encoding); + public static T ReadFromData(Data data, SFile file, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromData(data, file, serializationOptions); + } /// /// Reads the shaiya file format from a buffer (byte array) within a instance @@ -241,9 +279,10 @@ public static T ReadFromData(Data data, SFile file, Episode episode = Episode /// instance /// File episode /// File encoding - public static Task ReadFromDataAsync(Data data, SFile file, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - Task.FromResult(ReadFromData(data, file, episode, encoding)); + public static Task ReadFromDataAsync(Data data, SFile file, Episode episode = Episode.EP5, Encoding? encoding = null) where T : FileBase, new() + { + return Task.FromResult(ReadFromData(data, file, episode, encoding)); + } /// /// Reads the shaiya file format from a buffer (byte array) within a instance @@ -254,8 +293,11 @@ public static Task ReadFromDataAsync(Data data, SFile file, Episode episod /// File episode /// File encoding /// FileBase instance - public static FileBase ReadFromData(Data data, SFile file, Type type, Episode episode = Episode.EP5, Encoding encoding = null) => - FileBase.ReadFromData(data, file, type, episode, encoding); + public static FileBase ReadFromData(Data data, SFile file, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return FileBase.ReadFromData(data, file, type, serializationOptions); + } /// /// Reads the shaiya file format from a buffer (byte array) within a instance @@ -265,7 +307,8 @@ public static FileBase ReadFromData(Data data, SFile file, Type type, Episode ep /// FileBase child type to be read /// File episode /// File encoding - public static Task ReadFromDataAsync(Data data, SFile file, Type type, Episode episode = Episode.EP5, - Encoding encoding = null) => - Task.FromResult(ReadFromData(data, file, type, episode, encoding)); + public static Task ReadFromDataAsync(Data data, SFile file, Type type, Episode episode = Episode.EP5, Encoding? encoding = null) + { + return Task.FromResult(ReadFromData(data, file, type, episode, encoding)); + } } diff --git a/src/Parsec/Readers/SBinaryReader.cs b/src/Parsec/Readers/SBinaryReader.cs index c0f6f3a1..3f108b3f 100644 --- a/src/Parsec/Readers/SBinaryReader.cs +++ b/src/Parsec/Readers/SBinaryReader.cs @@ -1,4 +1,5 @@ using System.Text; +using Parsec.Serialization; namespace Parsec.Readers; @@ -8,39 +9,38 @@ namespace Parsec.Readers; public sealed class SBinaryReader : IDisposable { private readonly BinaryReader _binaryReader; + public readonly BinarySerializationOptions SerializationOptions; - public SBinaryReader(Stream stream) + public SBinaryReader(Stream stream, BinarySerializationOptions serializationOptions) { _binaryReader = new BinaryReader(stream); + SerializationOptions = serializationOptions; } - public SBinaryReader(FileStream fileStream) : this((Stream)fileStream) + public SBinaryReader(FileStream fileStream, BinarySerializationOptions serializationOptions) : this((Stream)fileStream, serializationOptions) { } - public SBinaryReader(MemoryStream memoryStream) : this((Stream)memoryStream) + public SBinaryReader(MemoryStream memoryStream, BinarySerializationOptions serializationOptions) : this((Stream)memoryStream, serializationOptions) { } - public SBinaryReader(string filePath) + public SBinaryReader(string filePath, BinarySerializationOptions serializationOptions) { var fileStream = File.OpenRead(filePath); _binaryReader = new BinaryReader(fileStream); + SerializationOptions = serializationOptions; } - public SBinaryReader(byte[] buffer) + public SBinaryReader(byte[] buffer, BinarySerializationOptions serializationOptions) { var memoryStream = new MemoryStream(buffer); _binaryReader = new BinaryReader(memoryStream); + SerializationOptions = serializationOptions; } public long Length => _binaryReader.BaseStream.Length; - public void Dispose() - { - _binaryReader?.Dispose(); - } - /// /// Reads a generic type from the byte buffer /// @@ -49,26 +49,8 @@ public void Dispose() /// When the provided type is not supported public T Read() { - var type = Type.GetTypeCode(typeof(T)); - - object value = type switch - { - TypeCode.Byte => ReadByte(), - TypeCode.SByte => ReadSByte(), - TypeCode.Char => ReadChar(), - TypeCode.Boolean => ReadBoolean(), - TypeCode.Int16 => ReadInt16(), - TypeCode.UInt16 => ReadUInt16(), - TypeCode.Int32 => ReadInt32(), - TypeCode.UInt32 => ReadUInt32(), - TypeCode.Int64 => ReadInt64(), - TypeCode.UInt64 => ReadUInt64(), - TypeCode.Single => ReadSingle(), - TypeCode.Double => ReadDouble(), - _ => throw new NotSupportedException() - }; - - return (T)value; + var type = typeof(T); + return (T)Read(type); } /// @@ -245,16 +227,22 @@ public string ReadString(Encoding encoding, bool removeStringTerminator = true) } /// - /// Reads length-fixed string with ASCII encoding + /// Reads length-fixed string using the encoding specified on the serialization options /// /// Indicates whether the string terminator (\0) should be removed or not - public string ReadString(bool removeStringTerminator = true) => ReadString(Encoding.ASCII, removeStringTerminator); + public string ReadString(bool removeStringTerminator = true) + { + return ReadString(SerializationOptions.Encoding, removeStringTerminator); + } /// - /// Reads length-fixed string with ASCII encoding + /// Reads length-fixed string using the encoding specified on the serialization options /// /// The string's length - public string ReadString(int length) => ReadString(Encoding.ASCII, length); + public string ReadString(int length) + { + return ReadString(SerializationOptions.Encoding, length); + } /// /// Resets the reading offset @@ -284,4 +272,9 @@ public byte[] ReadAllBytes() _binaryReader.BaseStream.CopyTo(tempMemoryStream); return tempMemoryStream.ToArray(); } + + public void Dispose() + { + _binaryReader.Dispose(); + } } diff --git a/src/Parsec/Serialization/BinarySerializationOptions.cs b/src/Parsec/Serialization/BinarySerializationOptions.cs new file mode 100644 index 00000000..91dbdf09 --- /dev/null +++ b/src/Parsec/Serialization/BinarySerializationOptions.cs @@ -0,0 +1,35 @@ +using System.Text; +using Parsec.Common; + +namespace Parsec.Serialization; + +public class BinarySerializationOptions +{ + public BinarySerializationOptions() + { + } + + public BinarySerializationOptions(Episode episode) + { + Episode = episode; + } + + public BinarySerializationOptions(Encoding encoding) + { + Encoding = encoding; + } + + public BinarySerializationOptions(Episode episode, Encoding? encoding) + { + Episode = episode; + Encoding = encoding ?? Encoding.ASCII; + } + + public Episode Episode { get; set; } = Episode.Unknown; + + public Encoding Encoding { get; set; } = Encoding.ASCII; + + public object? ExtraOption { get; set; } + + public static BinarySerializationOptions Default => new(); +} diff --git a/src/Parsec/Shaiya/Core/FileBase.cs b/src/Parsec/Shaiya/Core/FileBase.cs index c3003c5b..0d826085 100644 --- a/src/Parsec/Shaiya/Core/FileBase.cs +++ b/src/Parsec/Shaiya/Core/FileBase.cs @@ -8,14 +8,15 @@ using Parsec.Extensions; using Parsec.Helpers; using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Data; namespace Parsec.Shaiya.Core; -public abstract class FileBase : IFileBase, IExportable +public abstract class FileBase : IFileBase, IJsonWritable { [JsonIgnore] - protected SBinaryReader _binaryReader; + protected SBinaryReader _binaryReader { get; set; } = null!; /// /// Full path to the file @@ -65,7 +66,10 @@ public virtual string JsonSerialize(FileBase obj, params string[] ignoredPropert } /// - public virtual void Write(string path, Episode episode = Episode.Unknown) => FileHelper.WriteFile(path, GetBytes(episode)); + public virtual void Write(string path, Episode episode = Episode.Unknown) + { + FileHelper.WriteFile(path, GetBytes(episode)); + } /// public virtual IEnumerable GetBytes(Episode episode = Episode.Unknown) @@ -196,22 +200,24 @@ public virtual void Read() /// Reads the shaiya file format from a file /// /// File path - /// File episode - /// File encoding + /// Serialization options /// Shaiya File Format Type /// T instance - public static T ReadFromFile(string path, Episode episode = Episode.EP5, Encoding encoding = null) where T : FileBase, new() + internal static T ReadFromFile(string path, BinarySerializationOptions serializationOptions) where T : FileBase, new() { var instance = new T { - Path = path, _binaryReader = new SBinaryReader(path), Episode = episode, Encoding = encoding ?? Encoding.ASCII + Path = path, + _binaryReader = new SBinaryReader(path, serializationOptions), + Episode = serializationOptions.Episode, + Encoding = serializationOptions.Encoding }; if (instance is IEncryptable encryptableInstance) encryptableInstance.DecryptBuffer(); instance.Read(); - instance._binaryReader?.Dispose(); + instance._binaryReader.Dispose(); return instance; } @@ -221,26 +227,25 @@ public virtual void Read() /// /// File path /// FileBase child type to be read - /// File episode - /// File encoding + /// Serialization options /// FileBase instance - public static FileBase ReadFromFile(string path, Type type, Episode episode = Episode.EP5, Encoding encoding = null) + internal static FileBase ReadFromFile(string path, Type type, BinarySerializationOptions serializationOptions) { if (!type.GetBaseClassesAndInterfaces().Contains(typeof(FileBase))) throw new ArgumentException("Type must be a child of FileBase"); - var binaryReader = new SBinaryReader(path); + var binaryReader = new SBinaryReader(path, serializationOptions); var instance = (FileBase)Activator.CreateInstance(type); instance.Path = path; instance._binaryReader = binaryReader; - instance.Episode = episode; - instance.Encoding = encoding ?? Encoding.ASCII; + instance.Episode = serializationOptions.Episode; + instance.Encoding = serializationOptions.Encoding; if (instance is IEncryptable encryptableInstance) encryptableInstance.DecryptBuffer(); instance.Read(); - instance._binaryReader?.Dispose(); + instance._binaryReader.Dispose(); return instance; } @@ -250,23 +255,24 @@ public static FileBase ReadFromFile(string path, Type type, Episode episode = Ep /// /// File name /// File buffer - /// File episode - /// File encoding + /// Serialization options /// Shaiya File Format Type /// T instance - public static T ReadFromBuffer(string name, byte[] buffer, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() + internal static T ReadFromBuffer(string name, byte[] buffer, BinarySerializationOptions serializationOptions) where T : FileBase, new() { var instance = new T { - Path = name, _binaryReader = new SBinaryReader(buffer), Episode = episode, Encoding = encoding ?? Encoding.ASCII + Path = name, + _binaryReader = new SBinaryReader(buffer, serializationOptions), + Episode = serializationOptions.Episode, + Encoding = serializationOptions.Encoding }; if (instance is IEncryptable encryptableInstance) encryptableInstance.DecryptBuffer(); instance.Read(); - instance._binaryReader?.Dispose(); + instance._binaryReader.Dispose(); return instance; } @@ -277,25 +283,24 @@ public static T ReadFromBuffer(string name, byte[] buffer, Episode episode = /// File name /// File buffer /// FileBase child type to be read - /// File episode - /// File encoding + /// Serialization options /// FileBase instance - public static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, Episode episode = Episode.EP5, Encoding encoding = null) + internal static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, BinarySerializationOptions serializationOptions) { if (!type.GetBaseClassesAndInterfaces().Contains(typeof(FileBase))) throw new ArgumentException("Type must be a child of FileBase"); var instance = (FileBase)Activator.CreateInstance(type); instance.Path = name; - instance._binaryReader = new SBinaryReader(buffer); - instance.Episode = episode; - instance.Encoding = encoding ?? Encoding.ASCII; + instance._binaryReader = new SBinaryReader(buffer, serializationOptions); + instance.Episode = serializationOptions.Episode; + instance.Encoding = serializationOptions.Encoding; if (instance is IEncryptable encryptableInstance) encryptableInstance.DecryptBuffer(); instance.Read(); - instance._binaryReader?.Dispose(); + instance._binaryReader.Dispose(); return instance; } @@ -305,12 +310,12 @@ public static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, Epi /// /// instance /// instance - /// File episode - /// File encoding + /// Serialization options /// FileBase instance - public static T ReadFromData(Data.Data data, SFile file, Episode episode = Episode.EP5, Encoding encoding = null) - where T : FileBase, new() => - ReadFromBuffer(file.Name, data.GetFileBuffer(file), episode, encoding); + internal static T ReadFromData(Data.Data data, SFile file, BinarySerializationOptions serializationOptions) where T : FileBase, new() + { + return ReadFromBuffer(file.Name, data.GetFileBuffer(file), serializationOptions); + } /// /// Reads the shaiya file format from a buffer (byte array) within a instance @@ -318,14 +323,13 @@ public static T ReadFromData(Data.Data data, SFile file, Episode episode = Ep /// instance /// instance /// FileBase child type to be read - /// File episode - /// File encoding + /// /// FileBase instance - public static FileBase ReadFromData(Data.Data data, SFile file, Type type, Episode episode = Episode.EP5, Encoding encoding = null) + internal static FileBase ReadFromData(Data.Data data, SFile file, Type type, BinarySerializationOptions serializationOptions) { if (!data.FileIndex.ContainsValue(file)) throw new FileNotFoundException("The provided SFile instance is not part of the Data"); - return ReadFromBuffer(file.Name, data.GetFileBuffer(file), type, episode, encoding); + return ReadFromBuffer(file.Name, data.GetFileBuffer(file), type, serializationOptions); } } From 47a4a9c9d3dc6d19fbaaba3ed14e0503ec7c70d4 Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 2 Oct 2023 17:07:52 -0300 Subject: [PATCH 02/18] refactor(nullability): enable nullable --- .../Attributes/FixedLengthStringAttribute.cs | 2 +- .../LengthPrefixedStringAttribute.cs | 2 +- .../PropertyFilterCamelCaseResolver.cs | 5 +- src/Parsec/Helpers/FileHelper.cs | 2 +- src/Parsec/Parsec.csproj | 1 + src/Parsec/Shaiya/3DO/_3DO.cs | 2 +- src/Parsec/Shaiya/ALT/ALT.cs | 2 +- src/Parsec/Shaiya/Cash/Product.cs | 6 +- src/Parsec/Shaiya/Data/Data.cs | 4 +- src/Parsec/Shaiya/Data/DataPatcher.cs | 21 ++-- src/Parsec/Shaiya/Data/SDirectory.cs | 8 +- src/Parsec/Shaiya/EFT/EFTTexture.cs | 2 +- src/Parsec/Shaiya/EFT/Effect.cs | 3 +- src/Parsec/Shaiya/EFT/EffectObject.cs | 2 +- src/Parsec/Shaiya/ITM/ITM.cs | 2 +- src/Parsec/Shaiya/Item/DBItemTextRecord.cs | 4 +- src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs | 4 +- src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs | 4 +- src/Parsec/Shaiya/MLT/MLT.cs | 2 +- src/Parsec/Shaiya/MLX/MLXRecord.cs | 18 +-- src/Parsec/Shaiya/MON/MON.cs | 2 +- src/Parsec/Shaiya/MON/MONObject.cs | 4 +- src/Parsec/Shaiya/MON/MONRecord.cs | 44 +++---- .../Shaiya/Monster/DBMonsterTextRecord.cs | 2 +- src/Parsec/Shaiya/Monster/Monster.cs | 4 +- src/Parsec/Shaiya/Monster/MonsterRecord.cs | 2 +- src/Parsec/Shaiya/NpcQuest/BaseNpc.cs | 4 +- src/Parsec/Shaiya/NpcQuest/GateTarget.cs | 2 +- src/Parsec/Shaiya/NpcQuest/NpcQuest.cs | 2 +- src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs | 14 +-- src/Parsec/Shaiya/NpcQuest/Quest.cs | 12 +- .../Shaiya/NpcQuest/QuestTranslation.cs | 107 +++++++++--------- .../Shaiya/NpcSkill/DBNpcSkillTextRecord.cs | 4 +- src/Parsec/Shaiya/SData/BinarySData.cs | 2 +- src/Parsec/Shaiya/SData/BinarySDataField.cs | 2 +- src/Parsec/Shaiya/SData/SData.cs | 3 +- src/Parsec/Shaiya/SMOD/TexturedObject.cs | 2 +- src/Parsec/Shaiya/Seff/SeffEffect.cs | 2 +- .../Shaiya/SetItem/DBSetItemTextRecord.cs | 2 +- src/Parsec/Shaiya/SetItem/SetItemRecord.cs | 2 +- src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs | 4 +- src/Parsec/Shaiya/Skill/SkillRecord.cs | 4 +- src/Parsec/Shaiya/VAni/VAniObject.cs | 2 +- src/Parsec/Shaiya/Wld/WldNamedArea.cs | 4 +- src/Parsec/Shaiya/Wld/WldTexture.cs | 4 +- src/Parsec/Shaiya/Zon/ZonRecord.cs | 2 +- 46 files changed, 169 insertions(+), 165 deletions(-) diff --git a/src/Parsec/Attributes/FixedLengthStringAttribute.cs b/src/Parsec/Attributes/FixedLengthStringAttribute.cs index 36f8ed29..ae212b18 100644 --- a/src/Parsec/Attributes/FixedLengthStringAttribute.cs +++ b/src/Parsec/Attributes/FixedLengthStringAttribute.cs @@ -6,7 +6,7 @@ public class FixedLengthStringAttribute : Attribute public int Length { get; set; } public bool IncludeStringTerminator { get; set; } public bool IsString256 { get; set; } - public string Suffix { get; set; } + public string Suffix { get; set; } = string.Empty; public FixedLengthStringAttribute(int length) { diff --git a/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs b/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs index dea71831..9bfe34f3 100644 --- a/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs +++ b/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs @@ -5,7 +5,7 @@ public class LengthPrefixedStringAttribute : Attribute { public bool IncludeStringTerminator { get; set; } - public string Suffix { get; set; } + public string Suffix { get; set; } = string.Empty; public LengthPrefixedStringAttribute() { diff --git a/src/Parsec/Extensions/PropertyFilterCamelCaseResolver.cs b/src/Parsec/Extensions/PropertyFilterCamelCaseResolver.cs index 05d6859a..ec0688fa 100644 --- a/src/Parsec/Extensions/PropertyFilterCamelCaseResolver.cs +++ b/src/Parsec/Extensions/PropertyFilterCamelCaseResolver.cs @@ -1,5 +1,4 @@ -using System.Linq; -using Newtonsoft.Json; +using Newtonsoft.Json; using Newtonsoft.Json.Serialization; namespace Parsec.Extensions; @@ -12,7 +11,7 @@ public class PropertyFilterCamelCaseResolver : CamelCasePropertyNamesContractRes { private IEnumerable _ignoredProps { get; } - public PropertyFilterCamelCaseResolver(IEnumerable ignoredProps = null) + public PropertyFilterCamelCaseResolver(IEnumerable? ignoredProps = null) { if (ignoredProps == null) { diff --git a/src/Parsec/Helpers/FileHelper.cs b/src/Parsec/Helpers/FileHelper.cs index 4f327bcc..8f245de4 100644 --- a/src/Parsec/Helpers/FileHelper.cs +++ b/src/Parsec/Helpers/FileHelper.cs @@ -17,7 +17,7 @@ public static class FileHelper /// The file content /// File encoding /// Makes a backup of the file if it already existed - public static bool WriteFile(string path, string content, Encoding encoding = null, bool backupIfExists = false) + public static bool WriteFile(string path, string content, Encoding? encoding = null, bool backupIfExists = false) { encoding ??= Encoding.ASCII; diff --git a/src/Parsec/Parsec.csproj b/src/Parsec/Parsec.csproj index f9447159..8af6b6fb 100644 --- a/src/Parsec/Parsec.csproj +++ b/src/Parsec/Parsec.csproj @@ -15,6 +15,7 @@ 1.0.0-alpha.9.0.0 netstandard2.0;netstandard2.1;net6.0;net7.0 true + enable diff --git a/src/Parsec/Shaiya/3DO/_3DO.cs b/src/Parsec/Shaiya/3DO/_3DO.cs index 9988b1f6..4a707bfc 100644 --- a/src/Parsec/Shaiya/3DO/_3DO.cs +++ b/src/Parsec/Shaiya/3DO/_3DO.cs @@ -14,7 +14,7 @@ public sealed class _3DO : FileBase { [ShaiyaProperty] [LengthPrefixedString(includeStringTerminator: false)] - public string TextureName { get; set; } + public string TextureName { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedList(typeof(Vertex))] diff --git a/src/Parsec/Shaiya/ALT/ALT.cs b/src/Parsec/Shaiya/ALT/ALT.cs index 656b082a..09c80512 100644 --- a/src/Parsec/Shaiya/ALT/ALT.cs +++ b/src/Parsec/Shaiya/ALT/ALT.cs @@ -11,7 +11,7 @@ namespace Parsec.Shaiya.ALT; /// public sealed class ALT : FileBase { - public string Signature { get; set; } + public string Signature { get; set; } = string.Empty; public List Animations { get; } = new(); public override string Extension => ".ALT"; diff --git a/src/Parsec/Shaiya/Cash/Product.cs b/src/Parsec/Shaiya/Cash/Product.cs index 92aa5d59..c23d11ab 100644 --- a/src/Parsec/Shaiya/Cash/Product.cs +++ b/src/Parsec/Shaiya/Cash/Product.cs @@ -22,13 +22,13 @@ public sealed class Product [ShaiyaProperty] [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string ProductName { get; set; } + public string ProductName { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string ProductCode { get; set; } + public string ProductCode { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string Description { get; set; } + public string Description { get; set; } = string.Empty; } diff --git a/src/Parsec/Shaiya/Data/Data.cs b/src/Parsec/Shaiya/Data/Data.cs index 62fb2cbe..71df4fae 100644 --- a/src/Parsec/Shaiya/Data/Data.cs +++ b/src/Parsec/Shaiya/Data/Data.cs @@ -81,7 +81,7 @@ public int FileCount /// Gets a data folder from the FolderIndex /// /// Folder path - public SDirectory GetFolder(string path) + public SDirectory? GetFolder(string path) { DirectoryIndex.TryGetValue(path, out var folder); return folder; @@ -91,7 +91,7 @@ public SDirectory GetFolder(string path) /// Gets a data file from the FileIndex /// /// File path - public SFile GetFile(string path) + public SFile? GetFile(string path) { FileIndex.TryGetValue(path, out var file); return file; diff --git a/src/Parsec/Shaiya/Data/DataPatcher.cs b/src/Parsec/Shaiya/Data/DataPatcher.cs index 8aa1d349..2f19a620 100644 --- a/src/Parsec/Shaiya/Data/DataPatcher.cs +++ b/src/Parsec/Shaiya/Data/DataPatcher.cs @@ -4,8 +4,8 @@ namespace Parsec.Shaiya.Data; public class DataPatcher : IDisposable { - private BinaryReader _patchBinaryReader; - private BinaryWriter _targetBinaryWriter; + private BinaryReader? _patchBinaryReader; + private BinaryWriter? _targetBinaryWriter; public void Dispose() { @@ -19,7 +19,7 @@ public void Dispose() /// Data instance where the patch should be applied /// Data instance containing the patch files /// Action which gets invoked when a file gets patched - public void Patch(Data targetData, Data patchData, Action filePatchedCallback = null) + public void Patch(Data targetData, Data patchData, Action? filePatchedCallback = null) { _targetBinaryWriter = new BinaryWriter(File.OpenWrite(targetData.Saf.Path)); _patchBinaryReader = new BinaryReader(File.OpenRead(patchData.Saf.Path)); @@ -39,7 +39,7 @@ public void Patch(Data targetData, Data patchData, Action filePatchedCallback = /// Data where to save the files /// Data where to take the files from /// Action which gets invoked when a file gets patched - private void PatchFiles(Data targetData, Data patchData, Action filePatchedCallback = null) + private void PatchFiles(Data targetData, Data patchData, Action? filePatchedCallback = null) { foreach (var patchFile in patchData.FileIndex.Values) { @@ -89,10 +89,10 @@ private void PatchFiles(Data targetData, Data patchData, Action filePatchedCallb /// Amount of bytes to set to 0 private void ClearBytes(long offset, int length) { - _targetBinaryWriter.BaseStream.Seek(offset, SeekOrigin.Begin); + _targetBinaryWriter!.BaseStream.Seek(offset, SeekOrigin.Begin); var emptyData = new byte[length]; - _targetBinaryWriter.Write(emptyData); + _targetBinaryWriter!.Write(emptyData); } /// @@ -102,11 +102,11 @@ private void ClearBytes(long offset, int length) /// Patch file instance private long WriteFile(long targetOffset, SFile patchFile) { - _patchBinaryReader.BaseStream.Seek(patchFile.Offset, SeekOrigin.Begin); + _patchBinaryReader!.BaseStream.Seek(patchFile.Offset, SeekOrigin.Begin); var patchBuffer = _patchBinaryReader.ReadBytes(patchFile.Length); - _targetBinaryWriter.BaseStream.Seek(targetOffset, SeekOrigin.Begin); + _targetBinaryWriter!.BaseStream.Seek(targetOffset, SeekOrigin.Begin); _targetBinaryWriter.Write(patchBuffer); return targetOffset; @@ -116,5 +116,8 @@ private long WriteFile(long targetOffset, SFile patchFile) /// Appends a file at the end of the target Saf file from a patch Saf file /// /// Patch file instance - private long AppendFile(SFile patchFile) => WriteFile(_targetBinaryWriter.BaseStream.Length, patchFile); + private long AppendFile(SFile patchFile) + { + return WriteFile(_targetBinaryWriter!.BaseStream.Length, patchFile); + } } diff --git a/src/Parsec/Shaiya/Data/SDirectory.cs b/src/Parsec/Shaiya/Data/SDirectory.cs index 71a51b98..ef528fff 100644 --- a/src/Parsec/Shaiya/Data/SDirectory.cs +++ b/src/Parsec/Shaiya/Data/SDirectory.cs @@ -21,7 +21,7 @@ public SDirectory(SDirectory parentDirectory) public SDirectory( SBinaryReader binaryReader, - SDirectory parentDirectory, + SDirectory? parentDirectory, Dictionary directoryIndex, Dictionary fileIndex ) @@ -93,7 +93,7 @@ public SDirectory(string name, SDirectory parentDirectory) : this(parentDirector /// /// The folder's parent directory /// - public SDirectory ParentDirectory { get; set; } + public SDirectory? ParentDirectory { get; set; } /// public IEnumerable GetBytes(params object[] options) @@ -147,11 +147,11 @@ public void AddDirectory(SDirectory childDirectory) /// Gets a folder's file /// /// File name - public SFile GetFile(string name) => Files.FirstOrDefault(f => f.Name == name); + public SFile? GetFile(string name) => Files.FirstOrDefault(f => f.Name == name); /// /// Gets a folder's subfolder /// /// Subfolder name - public SDirectory GetSubfolder(string name) => Directories.FirstOrDefault(sf => sf.Name == name); + public SDirectory? GetSubfolder(string name) => Directories.FirstOrDefault(sf => sf.Name == name); } diff --git a/src/Parsec/Shaiya/EFT/EFTTexture.cs b/src/Parsec/Shaiya/EFT/EFTTexture.cs index 3d7b65ef..85278695 100644 --- a/src/Parsec/Shaiya/EFT/EFTTexture.cs +++ b/src/Parsec/Shaiya/EFT/EFTTexture.cs @@ -19,7 +19,7 @@ public EFTTexture(SBinaryReader binaryReader, int index) } public int Index { get; set; } - public string Name { get; set; } + public string Name { get; set; } = string.Empty; public IEnumerable GetBytes(params object[] options) => Name.GetLengthPrefixedBytes(); } diff --git a/src/Parsec/Shaiya/EFT/Effect.cs b/src/Parsec/Shaiya/EFT/Effect.cs index 168b9e91..fc726879 100644 --- a/src/Parsec/Shaiya/EFT/Effect.cs +++ b/src/Parsec/Shaiya/EFT/Effect.cs @@ -13,7 +13,8 @@ public class Effect : IBinary /// Not part of the structure, but left here for readability purposes /// public int Index { get; set; } - public string Name { get; set; } + + public string Name { get; set; } = string.Empty; public int Unknown1 { get; set; } public int Unknown2 { get; set; } public int Unknown3 { get; set; } diff --git a/src/Parsec/Shaiya/EFT/EffectObject.cs b/src/Parsec/Shaiya/EFT/EffectObject.cs index 50ea7508..169475b4 100644 --- a/src/Parsec/Shaiya/EFT/EffectObject.cs +++ b/src/Parsec/Shaiya/EFT/EffectObject.cs @@ -19,7 +19,7 @@ public EffectObject(SBinaryReader binaryReader, int index) } public int Index { get; set; } - public string Name { get; set; } + public string Name { get; set; } = string.Empty; public IEnumerable GetBytes(params object[] options) => Name.GetLengthPrefixedBytes(); } diff --git a/src/Parsec/Shaiya/ITM/ITM.cs b/src/Parsec/Shaiya/ITM/ITM.cs index 9a038754..b09fddb2 100644 --- a/src/Parsec/Shaiya/ITM/ITM.cs +++ b/src/Parsec/Shaiya/ITM/ITM.cs @@ -10,7 +10,7 @@ public sealed class ITM : FileBase /// /// File Signature. Read as char[3]. "ITM" or "IT2" /// - public string Signature { get; set; } + public string Signature { get; set; } = string.Empty; [JsonIgnore] public ITMFormat Format { get; set; } diff --git a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs index 5e4b22c5..5c9e895e 100644 --- a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs +++ b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs @@ -13,9 +13,9 @@ public sealed class DBItemTextRecord : IBinarySDataRecord [ShaiyaProperty] [LengthPrefixedString(false)] - public string ItemName { get; set; } + public string ItemName { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString(false)] - public string Text { get; set; } + public string Text { get; set; } = string.Empty; } diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs index d77367e0..10c675f2 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs @@ -83,12 +83,12 @@ public ItemDefinitionEp5(SBinaryReader binaryReader, Encoding encoding) /// /// Order: 0. Changed because of CSV. /// - public string Name { get; set; } + public string Name { get; set; } = string.Empty; /// /// Order: 1. Changed because of CSV. /// - public string Description { get; set; } + public string Description { get; set; } = string.Empty; public byte Model { get; set; } public byte Icon { get; set; } diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs index 75f468b8..adfc4e51 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs @@ -107,12 +107,12 @@ public ItemDefinitionEp6(SBinaryReader binaryReader, Encoding encoding) /// /// Order: 0. Changed because of CSV. /// - public string Name { get; set; } + public string Name { get; set; } = string.Empty; /// /// Order: 1. Changed because of CSV. /// - public string Description { get; set; } + public string Description { get; set; } = string.Empty; public byte Model { get; set; } public byte Icon { get; set; } diff --git a/src/Parsec/Shaiya/MLT/MLT.cs b/src/Parsec/Shaiya/MLT/MLT.cs index 408eaf9c..921ed20b 100644 --- a/src/Parsec/Shaiya/MLT/MLT.cs +++ b/src/Parsec/Shaiya/MLT/MLT.cs @@ -9,7 +9,7 @@ public sealed class MLT : FileBase /// /// File Signature. Read as char[3] /// - public string Signature { get; set; } + public string Signature { get; set; } = string.Empty; /// /// List of .3DC object names diff --git a/src/Parsec/Shaiya/MLX/MLXRecord.cs b/src/Parsec/Shaiya/MLX/MLXRecord.cs index f0196ce8..f59f9625 100644 --- a/src/Parsec/Shaiya/MLX/MLXRecord.cs +++ b/src/Parsec/Shaiya/MLX/MLXRecord.cs @@ -46,18 +46,18 @@ public MLXRecord(SBinaryReader binaryReader, MLXFormat format) } public int Id { get; set; } - public string Name { get; set; } - public string UpperTextureName { get; set; } - public string Upper3DCName { get; set; } + public string Name { get; set; } = string.Empty; + public string UpperTextureName { get; set; } = string.Empty; + public string Upper3DCName { get; set; } = string.Empty; public int UpperNumber { get; set; } = 1; - public string LowerTextureName { get; set; } - public string Lower3DCName { get; set; } + public string LowerTextureName { get; set; } = string.Empty; + public string Lower3DCName { get; set; } = string.Empty; public int LowerNumber { get; set; } = 1; - public string BootsTextureName { get; set; } - public string Boots3DCName { get; set; } + public string BootsTextureName { get; set; } = string.Empty; + public string Boots3DCName { get; set; } = string.Empty; public int BootsNumber { get; set; } = 1; - public string HandsTextureName { get; set; } - public string Hands3DCName { get; set; } + public string HandsTextureName { get; set; } = string.Empty; + public string Hands3DCName { get; set; } = string.Empty; public int HandsNumber { get; set; } = 1; public IEnumerable GetBytes(params object[] options) diff --git a/src/Parsec/Shaiya/MON/MON.cs b/src/Parsec/Shaiya/MON/MON.cs index 4d28250e..920a03ea 100644 --- a/src/Parsec/Shaiya/MON/MON.cs +++ b/src/Parsec/Shaiya/MON/MON.cs @@ -9,7 +9,7 @@ public sealed class MON : FileBase /// /// File signature. "MO2", "MO4". Read as char[3] /// - public string Signature { get; set; } + public string Signature { get; set; } = string.Empty; public MONFormat Format { get; set; } = MONFormat.MO2; diff --git a/src/Parsec/Shaiya/MON/MONObject.cs b/src/Parsec/Shaiya/MON/MONObject.cs index 1aed6cfa..c85ee585 100644 --- a/src/Parsec/Shaiya/MON/MONObject.cs +++ b/src/Parsec/Shaiya/MON/MONObject.cs @@ -18,8 +18,8 @@ public MONObject(SBinaryReader binaryReader) TextureName = binaryReader.ReadString(); } - public string Object3DCName { get; set; } - public string TextureName { get; set; } + public string Object3DCName { get; set; } = string.Empty; + public string TextureName { get; set; } = string.Empty; public IEnumerable GetBytes(params object[] options) { diff --git a/src/Parsec/Shaiya/MON/MONRecord.cs b/src/Parsec/Shaiya/MON/MONRecord.cs index 6475e9ac..e13ff553 100644 --- a/src/Parsec/Shaiya/MON/MONRecord.cs +++ b/src/Parsec/Shaiya/MON/MONRecord.cs @@ -58,33 +58,33 @@ public MONRecord(SBinaryReader binaryReader, MONFormat format) } } - public string Name { get; set; } + public string Name { get; set; } = string.Empty; public byte Unknown { get; set; } - public string WalkAnimation { get; set; } - public string RunAnimation { get; set; } + public string WalkAnimation { get; set; } = string.Empty; + public string RunAnimation { get; set; } = string.Empty; /// /// Jump or Attack1 animation. Jump for vehicles, Attack1 for mobs. /// - public string JumpAttack1Animation { get; set; } - - public string Attack2Animation { get; set; } - public string Attack3Animation { get; set; } - public string DeathAnimation { get; set; } - public string BreathAnimation { get; set; } - public string DamageAnimation { get; set; } - public string IdleAnimation { get; set; } - - public string Attack1Wav { get; set; } - public string Attack2Wav { get; set; } - public string Attack3Wav { get; set; } - public string DeathWav { get; set; } - - public string Attack1Effect { get; set; } - public string Attack2Effect { get; set; } - public string Attack3Effect { get; set; } - public string DieEffect { get; set; } - public string AttachEffect { get; set; } + public string JumpAttack1Animation { get; set; } = string.Empty; + + public string Attack2Animation { get; set; } = string.Empty; + public string Attack3Animation { get; set; } = string.Empty; + public string DeathAnimation { get; set; } = string.Empty; + public string BreathAnimation { get; set; } = string.Empty; + public string DamageAnimation { get; set; } = string.Empty; + public string IdleAnimation { get; set; } = string.Empty; + + public string Attack1Wav { get; set; } = string.Empty; + public string Attack2Wav { get; set; } = string.Empty; + public string Attack3Wav { get; set; } = string.Empty; + public string DeathWav { get; set; } = string.Empty; + + public string Attack1Effect { get; set; } = string.Empty; + public string Attack2Effect { get; set; } = string.Empty; + public string Attack3Effect { get; set; } = string.Empty; + public string DieEffect { get; set; } = string.Empty; + public string AttachEffect { get; set; } = string.Empty; public List Objects { get; } = new(); diff --git a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs index 0558a759..f3c188a3 100644 --- a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs +++ b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs @@ -10,5 +10,5 @@ public sealed class DBMonsterTextRecord : IBinarySDataRecord [ShaiyaProperty] [LengthPrefixedString(false)] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; } diff --git a/src/Parsec/Shaiya/Monster/Monster.cs b/src/Parsec/Shaiya/Monster/Monster.cs index a271e6b3..83e3fa11 100644 --- a/src/Parsec/Shaiya/Monster/Monster.cs +++ b/src/Parsec/Shaiya/Monster/Monster.cs @@ -41,7 +41,7 @@ public override void Read() /// csv file path /// File encoding /// instance - public static Monster ReadFromCsv(string csvPath, Encoding encoding = null) + public static Monster ReadFromCsv(string csvPath, Encoding? encoding = null) { encoding ??= Encoding.ASCII; @@ -55,7 +55,7 @@ public static Monster ReadFromCsv(string csvPath, Encoding encoding = null) return monster; } - public void WriteCsv(string outputPath, Encoding encoding = null) + public void WriteCsv(string outputPath, Encoding? encoding = null) { encoding ??= Encoding.ASCII; using var writer = new StreamWriter(outputPath, false, encoding); diff --git a/src/Parsec/Shaiya/Monster/MonsterRecord.cs b/src/Parsec/Shaiya/Monster/MonsterRecord.cs index 2a3a70af..6d126591 100644 --- a/src/Parsec/Shaiya/Monster/MonsterRecord.cs +++ b/src/Parsec/Shaiya/Monster/MonsterRecord.cs @@ -37,7 +37,7 @@ public MonsterRecord(SBinaryReader binaryReader, Encoding encoding) QuestItemId = binaryReader.Read(); } - public string MobName { get; set; } + public string MobName { get; set; } = string.Empty; public short ModelId { get; set; } public short Level { get; set; } public byte AI { get; set; } diff --git a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs index 95d0f5c9..5e38b4ee 100644 --- a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs @@ -13,8 +13,8 @@ public abstract class BaseNpc : IBinary public int MoveDistance { get; set; } public int MoveSpeed { get; set; } public NpcFaction Faction { get; set; } - public string Name { get; set; } - public string WelcomeMessage { get; set; } + public string Name { get; set; } = string.Empty; + public string WelcomeMessage { get; set; } = string.Empty; public List InQuestIds { get; } = new(); public List OutQuestIds { get; } = new(); diff --git a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs index 23834136..69119e41 100644 --- a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs +++ b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs @@ -11,7 +11,7 @@ public class GateTarget : IBinary { public short MapId { get; set; } public Vector3 Position { get; set; } - public string TargetName { get; set; } + public string TargetName { get; set; } = string.Empty; /// /// Teleporting gold cost diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs index badbbaac..87e33abb 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs @@ -18,7 +18,7 @@ public class NpcQuest : SData.SData public List GuildMasters { get; } = new(); public List DeadNpcs { get; } = new(); public List CombatCommanders { get; } = new(); - public byte[] UnknownArray { get; set; } + public byte[]? UnknownArray { get; set; } public List Quests { get; } = new(); public override void Read() diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs index a181beae..832ad3eb 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs @@ -7,11 +7,11 @@ public class NpcQuestTran { [ShaiyaProperty] [LengthPrefixedString] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString] - public string WelcomeMessage { get; set; } + public string WelcomeMessage { get; set; } = string.Empty; [JsonConstructor] public NpcQuestTran() @@ -23,23 +23,23 @@ public class GateKeeperQuestTran { [ShaiyaProperty] [LengthPrefixedString] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString] - public string WelcomeMessage { get; set; } + public string WelcomeMessage { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString] - public string TeleportName1 { get; set; } + public string TeleportName1 { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString] - public string TeleportName2 { get; set; } + public string TeleportName2 { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString] - public string TeleportName3 { get; set; } + public string TeleportName3 { get; set; } = string.Empty; [JsonConstructor] public GateKeeperQuestTran() diff --git a/src/Parsec/Shaiya/NpcQuest/Quest.cs b/src/Parsec/Shaiya/NpcQuest/Quest.cs index 0bcdbde1..bd5438f5 100644 --- a/src/Parsec/Shaiya/NpcQuest/Quest.cs +++ b/src/Parsec/Shaiya/NpcQuest/Quest.cs @@ -10,8 +10,8 @@ namespace Parsec.Shaiya.NpcQuest; public class Quest : IBinary { public short Id { get; set; } - public string Name { get; set; } - public string Summary { get; set; } + public string Name { get; set; } = string.Empty; + public string Summary { get; set; } = string.Empty; public ushort MinLevel { get; set; } public ushort MaxLevel { get; set; } @@ -105,10 +105,10 @@ public class Quest : IBinary /// public List Results { get; } = new(); - public string InitialDescription { get; set; } - public string QuestWindowSummary { get; set; } - public string ReminderInstructions { get; set; } - public string AlternateResponse { get; set; } + public string InitialDescription { get; set; } = string.Empty; + public string QuestWindowSummary { get; set; } = string.Empty; + public string ReminderInstructions { get; set; } = string.Empty; + public string AlternateResponse { get; set; } = string.Empty; [JsonConstructor] public Quest() diff --git a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs index b313f8e7..d3a56084 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs @@ -1,61 +1,60 @@ using Newtonsoft.Json; using Parsec.Attributes; -namespace Parsec.Shaiya.NpcQuest +namespace Parsec.Shaiya.NpcQuest; + +public class QuestTranslation { - public class QuestTranslation + [ShaiyaProperty] + [LengthPrefixedString] + public string Name { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string Summary { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage2 { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage3 { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage4 { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage5 { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string CompletionMessage6 { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string InitialDescription { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string WelcomeMessage { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string ReminderMessage { get; set; } = string.Empty; + + [ShaiyaProperty] + [LengthPrefixedString] + public string AlternateResponse { get; set; } = string.Empty; + + [JsonConstructor] + public QuestTranslation() { - [ShaiyaProperty] - [LengthPrefixedString] - public string Name { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string Summary { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage2 { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage3 { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage4 { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage5 { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string CompletionMessage6 { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string InitialDescription { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string WelcomeMessage { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string ReminderMessage { get; set; } - - [ShaiyaProperty] - [LengthPrefixedString] - public string AlternateResponse { get; set; } - - [JsonConstructor] - public QuestTranslation() - { - } } } diff --git a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs index 50b21c18..52f31217 100644 --- a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs +++ b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs @@ -13,9 +13,9 @@ public sealed class DBNpcSkillTextRecord : IBinarySDataRecord [ShaiyaProperty] [LengthPrefixedString(false)] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString(false)] - public string Text { get; set; } + public string Text { get; set; } = string.Empty; } diff --git a/src/Parsec/Shaiya/SData/BinarySData.cs b/src/Parsec/Shaiya/SData/BinarySData.cs index e78a8e67..0cb6f289 100644 --- a/src/Parsec/Shaiya/SData/BinarySData.cs +++ b/src/Parsec/Shaiya/SData/BinarySData.cs @@ -14,7 +14,7 @@ namespace Parsec.Shaiya.SData; /// 128-byte header unused by the game itself. It looks like a file signature + metadata /// [ShaiyaProperty] - public byte[] Header { get; set; } + public byte[]? Header { get; set; } /// /// Field names are defined before the data. They aren't really used but knowing which each field means is nice diff --git a/src/Parsec/Shaiya/SData/BinarySDataField.cs b/src/Parsec/Shaiya/SData/BinarySDataField.cs index de6c22c2..89673b96 100644 --- a/src/Parsec/Shaiya/SData/BinarySDataField.cs +++ b/src/Parsec/Shaiya/SData/BinarySDataField.cs @@ -24,7 +24,7 @@ public BinarySDataField(SBinaryReader binaryReader) Name = binaryReader.ReadString(Encoding.Unicode, length); } - public string Name { get; set; } + public string Name { get; set; } = string.Empty; public IEnumerable GetBytes(params object[] options) { diff --git a/src/Parsec/Shaiya/SData/SData.cs b/src/Parsec/Shaiya/SData/SData.cs index fb5502be..b0543607 100644 --- a/src/Parsec/Shaiya/SData/SData.cs +++ b/src/Parsec/Shaiya/SData/SData.cs @@ -44,7 +44,8 @@ public void DecryptBuffer(bool validateChecksum = false) } byte[] decryptedBuffer = Decrypt(fileBuffer, validateChecksum); - _binaryReader = new SBinaryReader(decryptedBuffer); + + _binaryReader = new SBinaryReader(decryptedBuffer, _binaryReader.SerializationOptions); } /// diff --git a/src/Parsec/Shaiya/SMOD/TexturedObject.cs b/src/Parsec/Shaiya/SMOD/TexturedObject.cs index d49429ca..8d40c5fd 100644 --- a/src/Parsec/Shaiya/SMOD/TexturedObject.cs +++ b/src/Parsec/Shaiya/SMOD/TexturedObject.cs @@ -15,7 +15,7 @@ public sealed class TexturedObject : IBinary /// Name of the .tga texture file. Although they have the .tga extension, the client actually has .dds files, so they're very likely /// replacing the .tga extension with .dds when searching for the texture. /// - public string TextureName { get; set; } + public string TextureName { get; set; } = string.Empty; /// /// Mesh vertices diff --git a/src/Parsec/Shaiya/Seff/SeffEffect.cs b/src/Parsec/Shaiya/Seff/SeffEffect.cs index a4d2343b..88dfbbb9 100644 --- a/src/Parsec/Shaiya/Seff/SeffEffect.cs +++ b/src/Parsec/Shaiya/Seff/SeffEffect.cs @@ -58,7 +58,7 @@ public SeffEffect(SBinaryReader binaryReader, int format) /// public uint ParticleLifetime { get; set; } public float Unknown6 { get; set; } - public string TextureFileName { get; set; } + public string TextureFileName { get; set; } = string.Empty; public byte Red { get; set; } public byte Green { get; set; } public byte Blue { get; set; } diff --git a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs index 223904bf..69606184 100644 --- a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs +++ b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs @@ -9,7 +9,7 @@ public sealed class DBSetItemTextRecord : IBinarySDataRecord public long Id { get; set; } [ShaiyaProperty] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; [ShaiyaProperty] public long SetEff1 { get; set; } diff --git a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs index c10ca752..eb2ec022 100644 --- a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs +++ b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs @@ -28,7 +28,7 @@ public SetItemRecord(SBinaryReader binaryReader) } public short Index { get; set; } - public string Name { get; set; } + public string Name { get; set; } = string.Empty; public List Items { get; } = new(); public List Synergies { get; } = new(); diff --git a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs index efecdaf9..d0d09b48 100644 --- a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs +++ b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs @@ -13,9 +13,9 @@ public sealed class DBSkillTextRecord : IBinarySDataRecord [ShaiyaProperty] [LengthPrefixedString(false)] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; [ShaiyaProperty] [LengthPrefixedString(false)] - public string Text { get; set; } + public string Text { get; set; } = string.Empty; } diff --git a/src/Parsec/Shaiya/Skill/SkillRecord.cs b/src/Parsec/Shaiya/Skill/SkillRecord.cs index 76afbe0b..550232f3 100644 --- a/src/Parsec/Shaiya/Skill/SkillRecord.cs +++ b/src/Parsec/Shaiya/Skill/SkillRecord.cs @@ -138,12 +138,12 @@ public SkillRecord(SBinaryReader binaryReader, Episode episode, int id) /// /// The skill name /// - public string Name { get; set; } + public string Name { get; set; } = string.Empty; /// /// The skill description /// - public string Description { get; set; } + public string Description { get; set; } = string.Empty; /// /// Level of skill. diff --git a/src/Parsec/Shaiya/VAni/VAniObject.cs b/src/Parsec/Shaiya/VAni/VAniObject.cs index e54ee339..187c0771 100644 --- a/src/Parsec/Shaiya/VAni/VAniObject.cs +++ b/src/Parsec/Shaiya/VAni/VAniObject.cs @@ -14,7 +14,7 @@ public sealed class VAniObject : IBinary /// /// Texture name of the .dds file /// - public string TextureName { get; set; } + public string TextureName { get; set; } = string.Empty; /// /// List of the 3d object's faces (polygons - triangles) diff --git a/src/Parsec/Shaiya/Wld/WldNamedArea.cs b/src/Parsec/Shaiya/Wld/WldNamedArea.cs index cac67514..a358e4ac 100644 --- a/src/Parsec/Shaiya/Wld/WldNamedArea.cs +++ b/src/Parsec/Shaiya/Wld/WldNamedArea.cs @@ -32,12 +32,12 @@ public sealed class WldNamedArea : IBinary /// If Mode is 0, it reads the caption from world_index.txt /// If Mode is 2, this field defines the bmp file for the area's name /// - public String256 Text1 { get; set; } + public String256 Text1 { get; set; } = string.Empty; /// /// Comment or file name (unlocalized - Korean) /// - public String256 Text2 { get; set; } + public String256 Text2 { get; set; } = string.Empty; /// /// Defines the mode for diff --git a/src/Parsec/Shaiya/Wld/WldTexture.cs b/src/Parsec/Shaiya/Wld/WldTexture.cs index c5a1d404..c367cb49 100644 --- a/src/Parsec/Shaiya/Wld/WldTexture.cs +++ b/src/Parsec/Shaiya/Wld/WldTexture.cs @@ -11,7 +11,7 @@ public sealed class WldTexture : IBinary /// /// .tga texture file /// - public String256 TextureName { get; set; } + public String256 TextureName { get; set; } = string.Empty; /// /// Texture tile size @@ -21,7 +21,7 @@ public sealed class WldTexture : IBinary /// /// .wav sound file /// - public String256 WalkSound { get; set; } + public String256 WalkSound { get; set; } = string.Empty; [JsonConstructor] public WldTexture() diff --git a/src/Parsec/Shaiya/Zon/ZonRecord.cs b/src/Parsec/Shaiya/Zon/ZonRecord.cs index 4072d668..8428f10b 100644 --- a/src/Parsec/Shaiya/Zon/ZonRecord.cs +++ b/src/Parsec/Shaiya/Zon/ZonRecord.cs @@ -68,7 +68,7 @@ public ZonRecord() public float Unknown2 { get; set; } public short MapId { get; set; } - public string Description { get; set; } + public string Description { get; set; } = string.Empty; /// /// Expects format (int) as an option From 44aa457522ac9bc2832921eadd4f1be371ac2cbc Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 2 Oct 2023 17:09:34 -0300 Subject: [PATCH 03/18] refactor(SBinaryReader): move to Parsec.Serialization namespace --- src/Parsec/{Readers => }/Reader.cs | 0 src/Parsec/{Readers => Serialization}/SBinaryReader.cs | 3 +-- src/Parsec/Shaiya/3DE/Frame.cs | 2 +- src/Parsec/Shaiya/3DE/Vertex.cs | 2 +- src/Parsec/Shaiya/3DE/VertexFrame.cs | 2 +- src/Parsec/Shaiya/ALT/Animation.cs | 2 +- src/Parsec/Shaiya/Cloak/Texture.cs | 2 +- src/Parsec/Shaiya/Common/BoundingBox.cs | 2 +- src/Parsec/Shaiya/Common/Face.cs | 2 +- src/Parsec/Shaiya/Common/Matrix4x4.cs | 2 +- src/Parsec/Shaiya/Common/Quaternion.cs | 2 +- src/Parsec/Shaiya/Common/String256.cs | 2 +- src/Parsec/Shaiya/Common/Vector2.cs | 2 +- src/Parsec/Shaiya/Common/Vector3.cs | 2 +- src/Parsec/Shaiya/Common/Vector4.cs | 2 +- src/Parsec/Shaiya/Common/Vector5.cs | 2 +- src/Parsec/Shaiya/Core/FileBase.cs | 1 - src/Parsec/Shaiya/Core/ReflectionHelper.cs | 2 +- src/Parsec/Shaiya/Data/SDirectory.cs | 2 +- src/Parsec/Shaiya/Data/SFile.cs | 2 +- src/Parsec/Shaiya/EFT/EFTTexture.cs | 2 +- src/Parsec/Shaiya/EFT/Effect.cs | 2 +- src/Parsec/Shaiya/EFT/EffectObject.cs | 2 +- src/Parsec/Shaiya/EFT/EffectSequence.cs | 2 +- src/Parsec/Shaiya/EFT/EffectSub3.cs | 2 +- src/Parsec/Shaiya/EFT/EffectSub4.cs | 2 +- src/Parsec/Shaiya/EFT/EffectTexture.cs | 2 +- src/Parsec/Shaiya/EFT/OpacityFrame.cs | 2 +- src/Parsec/Shaiya/EFT/Rotation.cs | 2 +- src/Parsec/Shaiya/EFT/SequenceRecord.cs | 2 +- src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs | 2 +- src/Parsec/Shaiya/GuildHouse/NpcInfo.cs | 2 +- src/Parsec/Shaiya/ITM/Record.cs | 2 +- src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs | 2 +- src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs | 2 +- src/Parsec/Shaiya/Item/ItemType.cs | 2 +- src/Parsec/Shaiya/MLT/MLTRecord.cs | 2 +- src/Parsec/Shaiya/MLX/MLXRecord.cs | 2 +- src/Parsec/Shaiya/MON/MONEffect.cs | 2 +- src/Parsec/Shaiya/MON/MONObject.cs | 2 +- src/Parsec/Shaiya/MON/MONRecord.cs | 2 +- src/Parsec/Shaiya/Monster/MonsterRecord.cs | 2 +- src/Parsec/Shaiya/NpcQuest/BaseNpc.cs | 2 +- src/Parsec/Shaiya/NpcQuest/GateKeeper.cs | 2 +- src/Parsec/Shaiya/NpcQuest/GateTarget.cs | 2 +- src/Parsec/Shaiya/NpcQuest/Merchant.cs | 2 +- src/Parsec/Shaiya/NpcQuest/MerchantItem.cs | 2 +- src/Parsec/Shaiya/NpcQuest/Quest.cs | 2 +- src/Parsec/Shaiya/NpcQuest/QuestItem.cs | 2 +- src/Parsec/Shaiya/NpcQuest/QuestResult.cs | 2 +- src/Parsec/Shaiya/NpcQuest/StandardNpc.cs | 2 +- src/Parsec/Shaiya/SData/BinarySDataField.cs | 2 +- src/Parsec/Shaiya/SData/SData.cs | 2 +- src/Parsec/Shaiya/SMOD/CollisionObject.cs | 2 +- src/Parsec/Shaiya/SMOD/SimpleVertex.cs | 2 +- src/Parsec/Shaiya/SMOD/TexturedObject.cs | 2 +- src/Parsec/Shaiya/SMOD/Vertex.cs | 2 +- src/Parsec/Shaiya/Seff/Record.cs | 2 +- src/Parsec/Shaiya/Seff/SeffEffect.cs | 2 +- src/Parsec/Shaiya/SetItem/SetItemItem.cs | 2 +- src/Parsec/Shaiya/SetItem/SetItemRecord.cs | 2 +- src/Parsec/Shaiya/Skill/SkillRecord.cs | 2 +- src/Parsec/Shaiya/Svmap/Ladder.cs | 2 +- src/Parsec/Shaiya/Svmap/Monster.cs | 2 +- src/Parsec/Shaiya/Svmap/MonsterArea.cs | 2 +- src/Parsec/Shaiya/Svmap/NamedArea.cs | 2 +- src/Parsec/Shaiya/Svmap/Npc.cs | 2 +- src/Parsec/Shaiya/Svmap/NpcLocation.cs | 2 +- src/Parsec/Shaiya/Svmap/Portal.cs | 2 +- src/Parsec/Shaiya/Svmap/Spawn.cs | 2 +- src/Parsec/Shaiya/VAni/VAniObject.cs | 2 +- src/Parsec/Shaiya/VAni/VaniVertexFrame.cs | 2 +- src/Parsec/Shaiya/Wld/WldCoordinate.cs | 2 +- src/Parsec/Shaiya/Wld/WldEffect.cs | 2 +- src/Parsec/Shaiya/Wld/WldManiCoordinate.cs | 2 +- src/Parsec/Shaiya/Wld/WldMusicZone.cs | 2 +- src/Parsec/Shaiya/Wld/WldNamedArea.cs | 2 +- src/Parsec/Shaiya/Wld/WldNpc.cs | 2 +- src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs | 2 +- src/Parsec/Shaiya/Wld/WldPortal.cs | 2 +- src/Parsec/Shaiya/Wld/WldSoundEffect.cs | 2 +- src/Parsec/Shaiya/Wld/WldSpawn.cs | 2 +- src/Parsec/Shaiya/Wld/WldTexture.cs | 2 +- src/Parsec/Shaiya/Wld/WldUnknownBox.cs | 2 +- src/Parsec/Shaiya/Wld/WldZone.cs | 2 +- src/Parsec/Shaiya/Zon/ZonRecord.cs | 2 +- 86 files changed, 84 insertions(+), 86 deletions(-) rename src/Parsec/{Readers => }/Reader.cs (100%) rename src/Parsec/{Readers => Serialization}/SBinaryReader.cs (99%) diff --git a/src/Parsec/Readers/Reader.cs b/src/Parsec/Reader.cs similarity index 100% rename from src/Parsec/Readers/Reader.cs rename to src/Parsec/Reader.cs diff --git a/src/Parsec/Readers/SBinaryReader.cs b/src/Parsec/Serialization/SBinaryReader.cs similarity index 99% rename from src/Parsec/Readers/SBinaryReader.cs rename to src/Parsec/Serialization/SBinaryReader.cs index 3f108b3f..0dc9e590 100644 --- a/src/Parsec/Readers/SBinaryReader.cs +++ b/src/Parsec/Serialization/SBinaryReader.cs @@ -1,7 +1,6 @@ using System.Text; -using Parsec.Serialization; -namespace Parsec.Readers; +namespace Parsec.Serialization; /// /// A binary reader made specifically to read Shaiya file formats diff --git a/src/Parsec/Shaiya/3DE/Frame.cs b/src/Parsec/Shaiya/3DE/Frame.cs index 479fb6dd..6d7b14c1 100644 --- a/src/Parsec/Shaiya/3DE/Frame.cs +++ b/src/Parsec/Shaiya/3DE/Frame.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya._3DE; diff --git a/src/Parsec/Shaiya/3DE/Vertex.cs b/src/Parsec/Shaiya/3DE/Vertex.cs index 5d555041..23bc7f1c 100644 --- a/src/Parsec/Shaiya/3DE/Vertex.cs +++ b/src/Parsec/Shaiya/3DE/Vertex.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/3DE/VertexFrame.cs b/src/Parsec/Shaiya/3DE/VertexFrame.cs index 44910234..3b9fbc5d 100644 --- a/src/Parsec/Shaiya/3DE/VertexFrame.cs +++ b/src/Parsec/Shaiya/3DE/VertexFrame.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/ALT/Animation.cs b/src/Parsec/Shaiya/ALT/Animation.cs index 272c65ce..6743cd2d 100644 --- a/src/Parsec/Shaiya/ALT/Animation.cs +++ b/src/Parsec/Shaiya/ALT/Animation.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.ALT; diff --git a/src/Parsec/Shaiya/Cloak/Texture.cs b/src/Parsec/Shaiya/Cloak/Texture.cs index 169b048f..1b6ad96d 100644 --- a/src/Parsec/Shaiya/Cloak/Texture.cs +++ b/src/Parsec/Shaiya/Cloak/Texture.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Cloak; diff --git a/src/Parsec/Shaiya/Common/BoundingBox.cs b/src/Parsec/Shaiya/Common/BoundingBox.cs index 64c73527..e0913f98 100644 --- a/src/Parsec/Shaiya/Common/BoundingBox.cs +++ b/src/Parsec/Shaiya/Common/BoundingBox.cs @@ -1,5 +1,5 @@ using Parsec.Attributes; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Face.cs b/src/Parsec/Shaiya/Common/Face.cs index 0149fc6e..5b2be5a0 100644 --- a/src/Parsec/Shaiya/Common/Face.cs +++ b/src/Parsec/Shaiya/Common/Face.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Attributes; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Matrix4x4.cs b/src/Parsec/Shaiya/Common/Matrix4x4.cs index a76eebc1..11128ff1 100644 --- a/src/Parsec/Shaiya/Common/Matrix4x4.cs +++ b/src/Parsec/Shaiya/Common/Matrix4x4.cs @@ -8,7 +8,7 @@ using System.Globalization; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Quaternion.cs b/src/Parsec/Shaiya/Common/Quaternion.cs index ab409644..e27c91e2 100644 --- a/src/Parsec/Shaiya/Common/Quaternion.cs +++ b/src/Parsec/Shaiya/Common/Quaternion.cs @@ -8,7 +8,7 @@ using System.Globalization; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/String256.cs b/src/Parsec/Shaiya/Common/String256.cs index e656bebd..650105a2 100644 --- a/src/Parsec/Shaiya/Common/String256.cs +++ b/src/Parsec/Shaiya/Common/String256.cs @@ -1,7 +1,7 @@ using System.Text; using Parsec.Attributes; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Vector2.cs b/src/Parsec/Shaiya/Common/Vector2.cs index 1bb8696e..3d87d37c 100644 --- a/src/Parsec/Shaiya/Common/Vector2.cs +++ b/src/Parsec/Shaiya/Common/Vector2.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Vector3.cs b/src/Parsec/Shaiya/Common/Vector3.cs index 6d2dcb0a..de393a7a 100644 --- a/src/Parsec/Shaiya/Common/Vector3.cs +++ b/src/Parsec/Shaiya/Common/Vector3.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Vector4.cs b/src/Parsec/Shaiya/Common/Vector4.cs index 64b81683..e8dde66c 100644 --- a/src/Parsec/Shaiya/Common/Vector4.cs +++ b/src/Parsec/Shaiya/Common/Vector4.cs @@ -1,5 +1,5 @@ using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Common/Vector5.cs b/src/Parsec/Shaiya/Common/Vector5.cs index 2f1165eb..1b88421e 100644 --- a/src/Parsec/Shaiya/Common/Vector5.cs +++ b/src/Parsec/Shaiya/Common/Vector5.cs @@ -1,5 +1,5 @@ using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; diff --git a/src/Parsec/Shaiya/Core/FileBase.cs b/src/Parsec/Shaiya/Core/FileBase.cs index 0d826085..182ad963 100644 --- a/src/Parsec/Shaiya/Core/FileBase.cs +++ b/src/Parsec/Shaiya/Core/FileBase.cs @@ -7,7 +7,6 @@ using Parsec.Common; using Parsec.Extensions; using Parsec.Helpers; -using Parsec.Readers; using Parsec.Serialization; using Parsec.Shaiya.Data; diff --git a/src/Parsec/Shaiya/Core/ReflectionHelper.cs b/src/Parsec/Shaiya/Core/ReflectionHelper.cs index 47881891..1ca94b8c 100644 --- a/src/Parsec/Shaiya/Core/ReflectionHelper.cs +++ b/src/Parsec/Shaiya/Core/ReflectionHelper.cs @@ -3,7 +3,7 @@ using Parsec.Attributes; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; namespace Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Data/SDirectory.cs b/src/Parsec/Shaiya/Data/SDirectory.cs index ef528fff..5017a8ab 100644 --- a/src/Parsec/Shaiya/Data/SDirectory.cs +++ b/src/Parsec/Shaiya/Data/SDirectory.cs @@ -1,7 +1,7 @@ using System.Runtime.Serialization; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Data; diff --git a/src/Parsec/Shaiya/Data/SFile.cs b/src/Parsec/Shaiya/Data/SFile.cs index 93f51b18..3eb7f390 100644 --- a/src/Parsec/Shaiya/Data/SFile.cs +++ b/src/Parsec/Shaiya/Data/SFile.cs @@ -1,7 +1,7 @@ using System.Runtime.Serialization; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Data; diff --git a/src/Parsec/Shaiya/EFT/EFTTexture.cs b/src/Parsec/Shaiya/EFT/EFTTexture.cs index 85278695..88f6355b 100644 --- a/src/Parsec/Shaiya/EFT/EFTTexture.cs +++ b/src/Parsec/Shaiya/EFT/EFTTexture.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/Effect.cs b/src/Parsec/Shaiya/EFT/Effect.cs index fc726879..b41e92f5 100644 --- a/src/Parsec/Shaiya/EFT/Effect.cs +++ b/src/Parsec/Shaiya/EFT/Effect.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/EFT/EffectObject.cs b/src/Parsec/Shaiya/EFT/EffectObject.cs index 169475b4..b51f59c2 100644 --- a/src/Parsec/Shaiya/EFT/EffectObject.cs +++ b/src/Parsec/Shaiya/EFT/EffectObject.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/EffectSequence.cs b/src/Parsec/Shaiya/EFT/EffectSequence.cs index e02a4345..55072ea6 100644 --- a/src/Parsec/Shaiya/EFT/EffectSequence.cs +++ b/src/Parsec/Shaiya/EFT/EffectSequence.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/EffectSub3.cs b/src/Parsec/Shaiya/EFT/EffectSub3.cs index f6862e61..204d94d1 100644 --- a/src/Parsec/Shaiya/EFT/EffectSub3.cs +++ b/src/Parsec/Shaiya/EFT/EffectSub3.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/EffectSub4.cs b/src/Parsec/Shaiya/EFT/EffectSub4.cs index 26c505ba..ba968233 100644 --- a/src/Parsec/Shaiya/EFT/EffectSub4.cs +++ b/src/Parsec/Shaiya/EFT/EffectSub4.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/EffectTexture.cs b/src/Parsec/Shaiya/EFT/EffectTexture.cs index 44ef6201..6c05adc3 100644 --- a/src/Parsec/Shaiya/EFT/EffectTexture.cs +++ b/src/Parsec/Shaiya/EFT/EffectTexture.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/OpacityFrame.cs b/src/Parsec/Shaiya/EFT/OpacityFrame.cs index accc6be1..35c8e681 100644 --- a/src/Parsec/Shaiya/EFT/OpacityFrame.cs +++ b/src/Parsec/Shaiya/EFT/OpacityFrame.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/EFT/Rotation.cs b/src/Parsec/Shaiya/EFT/Rotation.cs index 191ceea6..9f9faba4 100644 --- a/src/Parsec/Shaiya/EFT/Rotation.cs +++ b/src/Parsec/Shaiya/EFT/Rotation.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/EFT/SequenceRecord.cs b/src/Parsec/Shaiya/EFT/SequenceRecord.cs index 133445a1..1bdbcc49 100644 --- a/src/Parsec/Shaiya/EFT/SequenceRecord.cs +++ b/src/Parsec/Shaiya/EFT/SequenceRecord.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.EFT; diff --git a/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs index 99656c0b..a053664c 100644 --- a/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs +++ b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.GuildHouse; diff --git a/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs b/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs index 2ed258d6..0c715996 100644 --- a/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs +++ b/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.GuildHouse; diff --git a/src/Parsec/Shaiya/ITM/Record.cs b/src/Parsec/Shaiya/ITM/Record.cs index c738aceb..38f58cfd 100644 --- a/src/Parsec/Shaiya/ITM/Record.cs +++ b/src/Parsec/Shaiya/ITM/Record.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.ITM; diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs index 10c675f2..9a78b9c4 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Item; diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs index adfc4e51..993f20c4 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Item; diff --git a/src/Parsec/Shaiya/Item/ItemType.cs b/src/Parsec/Shaiya/Item/ItemType.cs index fc6f30f6..a83718b4 100644 --- a/src/Parsec/Shaiya/Item/ItemType.cs +++ b/src/Parsec/Shaiya/Item/ItemType.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Item; diff --git a/src/Parsec/Shaiya/MLT/MLTRecord.cs b/src/Parsec/Shaiya/MLT/MLTRecord.cs index 7d852267..c59444c0 100644 --- a/src/Parsec/Shaiya/MLT/MLTRecord.cs +++ b/src/Parsec/Shaiya/MLT/MLTRecord.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.MLT; diff --git a/src/Parsec/Shaiya/MLX/MLXRecord.cs b/src/Parsec/Shaiya/MLX/MLXRecord.cs index f59f9625..6d239b0d 100644 --- a/src/Parsec/Shaiya/MLX/MLXRecord.cs +++ b/src/Parsec/Shaiya/MLX/MLXRecord.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.MLX; diff --git a/src/Parsec/Shaiya/MON/MONEffect.cs b/src/Parsec/Shaiya/MON/MONEffect.cs index 677198d0..066422f5 100644 --- a/src/Parsec/Shaiya/MON/MONEffect.cs +++ b/src/Parsec/Shaiya/MON/MONEffect.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.MON; diff --git a/src/Parsec/Shaiya/MON/MONObject.cs b/src/Parsec/Shaiya/MON/MONObject.cs index c85ee585..916cd371 100644 --- a/src/Parsec/Shaiya/MON/MONObject.cs +++ b/src/Parsec/Shaiya/MON/MONObject.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.MON; diff --git a/src/Parsec/Shaiya/MON/MONRecord.cs b/src/Parsec/Shaiya/MON/MONRecord.cs index e13ff553..06faaf20 100644 --- a/src/Parsec/Shaiya/MON/MONRecord.cs +++ b/src/Parsec/Shaiya/MON/MONRecord.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.MON; diff --git a/src/Parsec/Shaiya/Monster/MonsterRecord.cs b/src/Parsec/Shaiya/Monster/MonsterRecord.cs index 6d126591..1ea16569 100644 --- a/src/Parsec/Shaiya/Monster/MonsterRecord.cs +++ b/src/Parsec/Shaiya/Monster/MonsterRecord.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Monster; diff --git a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs index 5e38b4ee..1f9bd8ea 100644 --- a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs @@ -1,6 +1,6 @@ using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs b/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs index 3ca4ce1b..606f14a2 100644 --- a/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs +++ b/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs index 69119e41..9d3bab2f 100644 --- a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs +++ b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/NpcQuest/Merchant.cs b/src/Parsec/Shaiya/NpcQuest/Merchant.cs index 4ffc8f12..6a3abd6a 100644 --- a/src/Parsec/Shaiya/NpcQuest/Merchant.cs +++ b/src/Parsec/Shaiya/NpcQuest/Merchant.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs b/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs index 7dac95bf..767404ed 100644 --- a/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs +++ b/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/Quest.cs b/src/Parsec/Shaiya/NpcQuest/Quest.cs index bd5438f5..f0830582 100644 --- a/src/Parsec/Shaiya/NpcQuest/Quest.cs +++ b/src/Parsec/Shaiya/NpcQuest/Quest.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/NpcQuest/QuestItem.cs b/src/Parsec/Shaiya/NpcQuest/QuestItem.cs index 4b15f1f7..ee0e567c 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestItem.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestItem.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/QuestResult.cs b/src/Parsec/Shaiya/NpcQuest/QuestResult.cs index 412f5b0d..b7853501 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestResult.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestResult.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs b/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs index 52d9d4a6..e9e8f1a8 100644 --- a/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Common; -using Parsec.Readers; +using Parsec.Serialization; namespace Parsec.Shaiya.NpcQuest; diff --git a/src/Parsec/Shaiya/SData/BinarySDataField.cs b/src/Parsec/Shaiya/SData/BinarySDataField.cs index 89673b96..fc14578c 100644 --- a/src/Parsec/Shaiya/SData/BinarySDataField.cs +++ b/src/Parsec/Shaiya/SData/BinarySDataField.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SData; diff --git a/src/Parsec/Shaiya/SData/SData.cs b/src/Parsec/Shaiya/SData/SData.cs index b0543607..fcac6b99 100644 --- a/src/Parsec/Shaiya/SData/SData.cs +++ b/src/Parsec/Shaiya/SData/SData.cs @@ -4,7 +4,7 @@ using Parsec.Cryptography; using Parsec.Extensions; using Parsec.Helpers; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SData; diff --git a/src/Parsec/Shaiya/SMOD/CollisionObject.cs b/src/Parsec/Shaiya/SMOD/CollisionObject.cs index 603e9a8c..1100fc94 100644 --- a/src/Parsec/Shaiya/SMOD/CollisionObject.cs +++ b/src/Parsec/Shaiya/SMOD/CollisionObject.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/SMOD/SimpleVertex.cs b/src/Parsec/Shaiya/SMOD/SimpleVertex.cs index 59f82c51..77146eb7 100644 --- a/src/Parsec/Shaiya/SMOD/SimpleVertex.cs +++ b/src/Parsec/Shaiya/SMOD/SimpleVertex.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/SMOD/TexturedObject.cs b/src/Parsec/Shaiya/SMOD/TexturedObject.cs index 8d40c5fd..9ae8d2fb 100644 --- a/src/Parsec/Shaiya/SMOD/TexturedObject.cs +++ b/src/Parsec/Shaiya/SMOD/TexturedObject.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/SMOD/Vertex.cs b/src/Parsec/Shaiya/SMOD/Vertex.cs index d84e5341..cd9f8cd3 100644 --- a/src/Parsec/Shaiya/SMOD/Vertex.cs +++ b/src/Parsec/Shaiya/SMOD/Vertex.cs @@ -1,7 +1,7 @@ using Newtonsoft.Json; using Parsec.Attributes; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Seff/Record.cs b/src/Parsec/Shaiya/Seff/Record.cs index 4ffb1f38..05b103fb 100644 --- a/src/Parsec/Shaiya/Seff/Record.cs +++ b/src/Parsec/Shaiya/Seff/Record.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Seff; diff --git a/src/Parsec/Shaiya/Seff/SeffEffect.cs b/src/Parsec/Shaiya/Seff/SeffEffect.cs index 88dfbbb9..eb5d8dfc 100644 --- a/src/Parsec/Shaiya/Seff/SeffEffect.cs +++ b/src/Parsec/Shaiya/Seff/SeffEffect.cs @@ -1,7 +1,7 @@ using System.Text; using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; namespace Parsec.Shaiya.Seff; diff --git a/src/Parsec/Shaiya/SetItem/SetItemItem.cs b/src/Parsec/Shaiya/SetItem/SetItemItem.cs index 226447b5..2a51eb71 100644 --- a/src/Parsec/Shaiya/SetItem/SetItemItem.cs +++ b/src/Parsec/Shaiya/SetItem/SetItemItem.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SetItem; diff --git a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs index eb2ec022..542890a0 100644 --- a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs +++ b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SetItem; diff --git a/src/Parsec/Shaiya/Skill/SkillRecord.cs b/src/Parsec/Shaiya/Skill/SkillRecord.cs index 550232f3..a48ef142 100644 --- a/src/Parsec/Shaiya/Skill/SkillRecord.cs +++ b/src/Parsec/Shaiya/Skill/SkillRecord.cs @@ -1,6 +1,6 @@ using Parsec.Common; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Skill; diff --git a/src/Parsec/Shaiya/Svmap/Ladder.cs b/src/Parsec/Shaiya/Svmap/Ladder.cs index cd8556a4..c904e791 100644 --- a/src/Parsec/Shaiya/Svmap/Ladder.cs +++ b/src/Parsec/Shaiya/Svmap/Ladder.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Svmap/Monster.cs b/src/Parsec/Shaiya/Svmap/Monster.cs index 8eb4a0dd..1dc69410 100644 --- a/src/Parsec/Shaiya/Svmap/Monster.cs +++ b/src/Parsec/Shaiya/Svmap/Monster.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Svmap; diff --git a/src/Parsec/Shaiya/Svmap/MonsterArea.cs b/src/Parsec/Shaiya/Svmap/MonsterArea.cs index 48563101..b4d2737c 100644 --- a/src/Parsec/Shaiya/Svmap/MonsterArea.cs +++ b/src/Parsec/Shaiya/Svmap/MonsterArea.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Svmap/NamedArea.cs b/src/Parsec/Shaiya/Svmap/NamedArea.cs index 4b316689..8f18748d 100644 --- a/src/Parsec/Shaiya/Svmap/NamedArea.cs +++ b/src/Parsec/Shaiya/Svmap/NamedArea.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Svmap/Npc.cs b/src/Parsec/Shaiya/Svmap/Npc.cs index 9fd5f1dd..ccb3b87d 100644 --- a/src/Parsec/Shaiya/Svmap/Npc.cs +++ b/src/Parsec/Shaiya/Svmap/Npc.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Svmap; diff --git a/src/Parsec/Shaiya/Svmap/NpcLocation.cs b/src/Parsec/Shaiya/Svmap/NpcLocation.cs index 6e982433..b83a2808 100644 --- a/src/Parsec/Shaiya/Svmap/NpcLocation.cs +++ b/src/Parsec/Shaiya/Svmap/NpcLocation.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Svmap/Portal.cs b/src/Parsec/Shaiya/Svmap/Portal.cs index bbf68a1a..f832e177 100644 --- a/src/Parsec/Shaiya/Svmap/Portal.cs +++ b/src/Parsec/Shaiya/Svmap/Portal.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Svmap/Spawn.cs b/src/Parsec/Shaiya/Svmap/Spawn.cs index 5f08d679..57e36bae 100644 --- a/src/Parsec/Shaiya/Svmap/Spawn.cs +++ b/src/Parsec/Shaiya/Svmap/Spawn.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/VAni/VAniObject.cs b/src/Parsec/Shaiya/VAni/VAniObject.cs index 187c0771..db645cb5 100644 --- a/src/Parsec/Shaiya/VAni/VAniObject.cs +++ b/src/Parsec/Shaiya/VAni/VAniObject.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs b/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs index 7b3d285d..f087d79b 100644 --- a/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs +++ b/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldCoordinate.cs b/src/Parsec/Shaiya/Wld/WldCoordinate.cs index 001001d3..e2a937fc 100644 --- a/src/Parsec/Shaiya/Wld/WldCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldCoordinate.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldEffect.cs b/src/Parsec/Shaiya/Wld/WldEffect.cs index 5606dca8..2270e3b7 100644 --- a/src/Parsec/Shaiya/Wld/WldEffect.cs +++ b/src/Parsec/Shaiya/Wld/WldEffect.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs b/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs index ccf3bae7..2e5cc0ae 100644 --- a/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldMusicZone.cs b/src/Parsec/Shaiya/Wld/WldMusicZone.cs index e65a2e02..b5b6112d 100644 --- a/src/Parsec/Shaiya/Wld/WldMusicZone.cs +++ b/src/Parsec/Shaiya/Wld/WldMusicZone.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldNamedArea.cs b/src/Parsec/Shaiya/Wld/WldNamedArea.cs index a358e4ac..45a43156 100644 --- a/src/Parsec/Shaiya/Wld/WldNamedArea.cs +++ b/src/Parsec/Shaiya/Wld/WldNamedArea.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldNpc.cs b/src/Parsec/Shaiya/Wld/WldNpc.cs index 466b379c..7a35d649 100644 --- a/src/Parsec/Shaiya/Wld/WldNpc.cs +++ b/src/Parsec/Shaiya/Wld/WldNpc.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs b/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs index 5580ab76..36984eb9 100644 --- a/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs @@ -1,5 +1,5 @@ using Newtonsoft.Json; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldPortal.cs b/src/Parsec/Shaiya/Wld/WldPortal.cs index ba90eba9..85e36349 100644 --- a/src/Parsec/Shaiya/Wld/WldPortal.cs +++ b/src/Parsec/Shaiya/Wld/WldPortal.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldSoundEffect.cs b/src/Parsec/Shaiya/Wld/WldSoundEffect.cs index 79756fb5..c5e228f2 100644 --- a/src/Parsec/Shaiya/Wld/WldSoundEffect.cs +++ b/src/Parsec/Shaiya/Wld/WldSoundEffect.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldSpawn.cs b/src/Parsec/Shaiya/Wld/WldSpawn.cs index 9a24e81d..5a7d4c43 100644 --- a/src/Parsec/Shaiya/Wld/WldSpawn.cs +++ b/src/Parsec/Shaiya/Wld/WldSpawn.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldTexture.cs b/src/Parsec/Shaiya/Wld/WldTexture.cs index c367cb49..8e397754 100644 --- a/src/Parsec/Shaiya/Wld/WldTexture.cs +++ b/src/Parsec/Shaiya/Wld/WldTexture.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldUnknownBox.cs b/src/Parsec/Shaiya/Wld/WldUnknownBox.cs index 8e156304..2cfd86c6 100644 --- a/src/Parsec/Shaiya/Wld/WldUnknownBox.cs +++ b/src/Parsec/Shaiya/Wld/WldUnknownBox.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Wld/WldZone.cs b/src/Parsec/Shaiya/Wld/WldZone.cs index ccaab630..bebb8fae 100644 --- a/src/Parsec/Shaiya/Wld/WldZone.cs +++ b/src/Parsec/Shaiya/Wld/WldZone.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; diff --git a/src/Parsec/Shaiya/Zon/ZonRecord.cs b/src/Parsec/Shaiya/Zon/ZonRecord.cs index 8428f10b..6aead73f 100644 --- a/src/Parsec/Shaiya/Zon/ZonRecord.cs +++ b/src/Parsec/Shaiya/Zon/ZonRecord.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; using Parsec.Extensions; -using Parsec.Readers; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; From d92dab67a47a1146f28e3ae2af8af0c0e83f5217 Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 2 Oct 2023 17:24:32 -0300 Subject: [PATCH 04/18] test(Item): add item encoding test --- src/Parsec/Shaiya/Item/Item.cs | 2 +- src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs | 6 +++--- src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs | 6 +++--- src/Parsec/Shaiya/Item/ItemType.cs | 7 +++---- tests/Parsec.Tests/Parsec.Tests.csproj | 3 +++ .../Shaiya/Item/ItemEp6_1251.SData | Bin 0 -> 3101216 bytes tests/Parsec.Tests/Shaiya/Item/ItemTests.cs | 13 +++++++++++++ tests/Parsec.Tests/TestEncodings.cs | 1 + 8 files changed, 27 insertions(+), 11 deletions(-) create mode 100644 tests/Parsec.Tests/Shaiya/Item/ItemEp6_1251.SData diff --git a/src/Parsec/Shaiya/Item/Item.cs b/src/Parsec/Shaiya/Item/Item.cs index c0124b5a..6bc2ad02 100644 --- a/src/Parsec/Shaiya/Item/Item.cs +++ b/src/Parsec/Shaiya/Item/Item.cs @@ -21,7 +21,7 @@ public override void Read() MaxItemType = _binaryReader.Read(); for (int i = 0; i < MaxItemType; i++) { - var itemType = new ItemType(_binaryReader, i + 1, Episode, ItemIndex, Encoding); + var itemType = new ItemType(_binaryReader, i + 1, Episode, ItemIndex); ItemTypes.Add(itemType); } } diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs index 9a78b9c4..d9c8c1c1 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs @@ -13,10 +13,10 @@ public ItemDefinitionEp5() { } - public ItemDefinitionEp5(SBinaryReader binaryReader, Encoding encoding) + public ItemDefinitionEp5(SBinaryReader binaryReader) { - Name = binaryReader.ReadString(encoding); - Description = binaryReader.ReadString(encoding); + Name = binaryReader.ReadString(); + Description = binaryReader.ReadString(); Type = binaryReader.Read(); TypeId = binaryReader.Read(); Model = binaryReader.Read(); diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs index 993f20c4..17c01b5e 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs @@ -13,10 +13,10 @@ public ItemDefinitionEp6() { } - public ItemDefinitionEp6(SBinaryReader binaryReader, Encoding encoding) + public ItemDefinitionEp6(SBinaryReader binaryReader) { - Name = binaryReader.ReadString(encoding); - Description = binaryReader.ReadString(encoding); + Name = binaryReader.ReadString(); + Description = binaryReader.ReadString(); Type = binaryReader.Read(); TypeId = binaryReader.Read(); Model = binaryReader.Read(); diff --git a/src/Parsec/Shaiya/Item/ItemType.cs b/src/Parsec/Shaiya/Item/ItemType.cs index a83718b4..d6b11c36 100644 --- a/src/Parsec/Shaiya/Item/ItemType.cs +++ b/src/Parsec/Shaiya/Item/ItemType.cs @@ -27,8 +27,7 @@ public ItemType(int id, int maxTypeId, IEnumerable itemDefiniti ItemDefinitions = itemDefinitions.ToList(); } - public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary<(byte type, byte typeId), IItemDefinition> itemIndex, - Encoding encoding) + public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary<(byte type, byte typeId), IItemDefinition> itemIndex) { Id = id; MaxTypeId = binaryReader.Read(); @@ -39,12 +38,12 @@ public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary { case Episode.EP5: default: - var itemEp5 = new ItemDefinitionEp5(binaryReader, encoding); + var itemEp5 = new ItemDefinitionEp5(binaryReader); ItemDefinitions.Add(itemEp5); itemIndex.Add((itemEp5.Type, itemEp5.TypeId), itemEp5); break; case Episode.EP6: - var itemEp6 = new ItemDefinitionEp6(binaryReader, encoding); + var itemEp6 = new ItemDefinitionEp6(binaryReader); ItemDefinitions.Add(itemEp6); itemIndex.Add((itemEp6.Type, itemEp6.TypeId), itemEp6); break; diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index 464ace53..00bdf214 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -710,5 +710,8 @@ PreserveNewest + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/Item/ItemEp6_1251.SData b/tests/Parsec.Tests/Shaiya/Item/ItemEp6_1251.SData new file mode 100644 index 0000000000000000000000000000000000000000..a4160430a95fcb27fcad9640c4f2585ba76254b7 GIT binary patch literal 3101216 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 Ujj8j@L(+%Xg`-eYE!E`Tr$=j+2Fn+Fbx3O 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

nw@VkQ$8Z`xjDtTk4s|}QH?!$w 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

hkkcgu3 zY5Z26K^!LpVMA)0_(S~D@Zm^oiWe?DH}zw+$=1G{L^nrHH>pNOmZlcbX^^153aRIn z;npW4(1mvg<1TVJiAHPWft6vk;>$N3X9?cIhX06HZ{d9ygC!x<+hW%MLhRn-68rL> zImyI1$?ZxRLE-v#DUv71=dO(YSg*so?x&RP`pEgMnAu2W3KS)Rnoh)o!wwC<52VCl zVhCqM_Xa8+08`3__^yZoewbj##p^x|M?Ee~iHzKN^28JXkopVp@mF+|n2mhVhm z}JRc{2Vs7s2YMIzg`=1E-qZ?m)es-sbE386{6g^6Cs zXR>fZ)*|Xf5)VfhuLM8MXmD-ha*ZB3RnhjU`9A6Cq}v(d({=1`22um6Ti>rLR=znx zwlohpyh0B)lu;6!{az6MJu8B{(@$Bidc2gW!27th+5zEJkhmqpX$C9i*;YW2RAj^N zqpy?3V8RsRGl0_+s&E+IHHj+pr}?H2ls*b)P&r%XU0xT8U{CyOUM`8TwB7`Q(PY_U%i`9kL!K+N@z5=vHK6+T7{SQq@`d~dqhE5F_}@Vap+(PVn@ z*Z$Ld)5Nb6bu74#Q{v z16b9FN1@vkrnYHs&f`;Lzp@Y;787!lGVEwFTwXCOaJTNTL5i#2y2f-TXzrgyL ziMc`!L{FauapQ2c<}lZrd`)1#E6Mbft!Tk-iPW;sj|s0r@+I@+#8w&>gFTqYJG}(0 zU5N!d-m0Q$HYO6DncTuW8YkxO@YOu64LcLzCH4u-$WIeMhuEnygr0N7 zf~S3n5@Jcm$3KMgLV)iupuK9w=}u+LugkLw<;cT)?qYBbziD;vo%5^2D`!^oKYN@$ zCuN^8I(zOBlQCwlDpC~@>p{2A#Hehl_$}Yk!eQa3@9E+(hF~60TJryTe;_tSC$|z& zy*rw)S>?6J+<^OY2^;bbvayjKYpu(C>8f_}-`*eKd}x}~?}>X(E#NSlvYYFUGE8kF zl1RB%bJH(Pd+?I<@pV9cMu6DimH)K1j4>2#)`IT=+%8^b#7Z{-l*~CjoL3_W$tbSm z8FChAJCw6yad1c`>3|l@c$Bh(qPwM7Ro~F@_{q0mVeC8 z`CI=7&Re{;koHIz>!|V1MUhOcnzaEz?ugV5=HZswFG%7ej!y=jPe6WE|2CNKwcpSt zDi(3j@uLx~NmB^HXFBAgohxItlb*!bRuU&p7Sxi(7QoFEd78$)`We89GZmS%$S57!;G-ofA* zc9V?5N4l5rpb%!bQT}Z{u7z?y>ub7Sfcz6%{iEy$4`4oyOk{|)sUTFq0PnZ1#A$}weq zkFKYn^?oAa`-x0t1s`Y$XHlyK&iP^JZdjvCu0p_R1E}#XdfEI(e1E%u&5I9b(*0x) zpQ?rx(fhylJU$DA2`C|S^`S&HltH_E<6FBL0z=Hb`;rjk=D^Y6fIptsnr1Y=#~zgS zFrA%bU~3eNj?nIX3XOku^0$17@^)wIt+qUvi*B@M^l0J= zAfKXEzs~g7FP4Rdc)2mgi#T$`(~7Hwr!s`ZD|U(qZTcVlx>744m66|4U^ciBG}a!r z|Ilv);tjM1dpZ)To?mX+u*Fn<{vtQIIVeZ8_t{|7)~J>mfX2i2TDD%uWWjd+`65kn z@Ssu)*a(QsEp!!Yokr~UOguC@M`KB2IP5Kn`VhdizQmK2FYSmzcQ{! zWmEPNauqxN{JfHhoR4>pXq^%B?dJ}{BBtlY0ROs_b!AK^bLJPh_@SJKX8D2}?vS4= zpNcxvwr1sP?bn2Lw36}vwm#?8#xf|>P=i~AI{6bl=J*G&J~w1slY~S%MT%KgpP+$; zY6-*(IG;x@ANsv+hRo9^nsW`^XAMZ;_dpvspGO0l_38UF*qAC|KNu9)!xGU2VfIQk zq2&Fm*H$)oh%E4YSr&23wzRZHN)!0Bwj5>@o%q=6c_+vnODk*r1vc2c7%I%>nb_;7 z!dxs26eQ)V4CcEuPIzw&P@h}vn&9PyWZj}hM31hG_jD7wu!bImA^+Fsy_+{9$kez= zVE%-`@I=p+Ch)wcvnI~g%^safM);BOc;B@G#1j}_|Ma}aZ8H7d{NooR2hkF};<@lj zx#8sljCX!#b`D9h@tD+zYz0&|0<R%^d~9@{baOg$=B6Hhu}D zDFx#@qUjw9PWYq4>^{86gY98vp^j#9hwl)#-VjpGFPe5VWXkV^bz1Z%gIN0&C>m-A zh3??vZ?rzQdBtznZrjU2VYc#G&n!n%2~%q`Xwc;HE^}T-OBOeX!i{H(iB)2_#8im+ zQYCs2zreN2`>Vsg-XNv9n8#14{VjjQ^@hK!WZDrU_#KbD)f0guzeq7z%l!CO=VI<{S{gCTk+tBKDqLs2p>O} zN4IBw39}jy&%cca_6n`HQgXOwx$oDK73{4xEM+GBKcQW=Mwgn%66)T0ycG`=xkI@! zIp=l7ui}&ov%k%-Z!lqi{ZQTapJjX%SNPKHk6v=UeGx{NDvPmp9p(8+TI?PMnvxrH zOILJh(Q}BbWu9I`&nkUD(o(w6Uq}uAZ|i5cdZbcj4zT5n!&7Lp44GWO`dNm|Op?Ab zqc^&s$Z)#Y>OcA;fcR3jLR;vslZN8ctS;Ly^=Satfwncw4Z7*z1rvz~oErJ}L!vB6 zt*+#$ZOLyU3Wy(g;J2#SA|;lP*Qzf z@raE{+gtbhEN$;mSUZ>I(iJyJG$y`&^HH;ik``f}L+7X=&kBz86Tu{jFL<(?-!n+N zB~AI=U7puw-Np5l6~xsajFVCOAS?TL(HvW$sbTWkGTUe-s0yaHH##`X4W*U7hvZ_>8Y7T!`OWgP#S#{b~GjxA|Rgd4)<^s>8;`v zsqBjKi%jeYL$sChmJVt2yuWy$%{;Z|GK(HWsyywj{MH2l=V@t+r|W3;#hl}&DLMtI zU$rjmhgXQ`dM|nkoFkE_&Upv-rz(C~i_pxPG*|S(cm41`vN7nWkks_H2$8;7 zZuAz%yl7@Fnjc3SE9PUa3bPA3?j4(7{-$^J!k(B1w@O+-{o>e=AMp%)-{9jzi9N$C z2-_4;@~K|%3cp8 zwBb%S=-C&Y;`IhKC&VY1A5FPGMS=NUO)tIXSK@XUAqF!npSNq%3VJ+Uw-c zY#TKbbb3JxMYJd?@*}zU${iUgLdPCvneIYavjW25K-&|H$=Aadw&n@BtytHWw{AqX zeZ(V^7&k5jpq^W%7C7RCENw(9Jr=pMbJgUGKh+q2RdN8cX&!2eX-QqF?N%4Q0KToSfrRK+j z5c8IfRNt=sO;og788G1y79%evAwebEF7cNCS6>FZfHNn!`;1f^mBRhPSI4WeQgX(- zWhL}U5>Kf!r6J}DLGI7h$s?b7m@9yHcMpdhY<&>b5g>IMp@_iy<*{zO_StGpKge>@ zX+dT-{3>c+ym`o~kCmEut3u=GMr6wJSeJ!8h5;OVS1BYb+L&G3zHLQTAmlhBbj%-0 z49HjYv-jQuFZ)cr!5L`>zEb>;`GP>cDl3t^ooYp7=qZ7l>nFnMf7IK6cvmmuYWXhl z+nblKPqcl4_@%)%j61xL0TuEeiQ;l+e?4}za*rH$wvCEBUw-PuYXac=1epJjxb8a> zufZ9i7xpW%s<42Y48fBX7`;r$tqz9XVid4^0f}{zmAcMZj*hT>jqnuDPVk6(uOKcK z_^8@Mp74T7KsN8{Jag#c+GCI&dzaEyLsYal!v)qQoB9=@9b{0BDAnj;k8cR3_SMZ} zT5^`ei(AguW`t*#bgjU58Pyt-BI-)t0$(R4)j|5`w#>(!Hw=6(xfCLe4aBS%Muj^3 zLtk!+>}iY3mMts(Fs_~r5RWODZX2Es7E6cywgImbd$m99_XBUPzU&aZDNv+VN|}0~ zs5_Rp&FQJ-Tgiu5Y#(IjlB3ICI7|CtT&5l}FkrQzt@u{{u8i}+5yQ+kH=o>*yY1TK z$pufkk_q=I-|@52Md3$Vw|_gHk+KsQZ^_9t;Zdt9dl1v-z7@|Vdq>IzVyKt**DUhR z`Ujzac>ZlX;{nst&?frNn3$#LYCeBNj}iI6*!(Ii*zcbS6iW&qZmMsqpRj3#)}b#t{ho#-- z_xTxoNSA%cd`r!6eZ3@29#Jwd31Kp%me|aT4jXT&mHgKGj5R$)*W%l15PRfg)r#@v zW-A&Lxw~+|fE#*i!$WllOK5(B#rU^^lwtPh4=Up`-+=f1eAQR+Z>nbYU&rq4uxg$5 ztlLa|b<10L5Lzd^Ae^ydfq2$#s4E~4#Qbn%BRQa_)&~c!zhwjSKW91DUFzTOy6&me zsv*mo(BHc61M@#mWDEH%zj{CHxfJjSo*xl5UD7bMyvhexqU~)bYJGaOhcRq3AUGZ|8o{|+uEjGH5Pwt{*W-TA?WZg%g%PBsQ6`PKGFvLCa2Mpo|J2j0UI0pkmzq_e+ILZf`Bba zpJFyTKxXAIOey-Hn0OGtphje?OKc2DmNruuKczceBkD*w}lKzOG?W`~r5*bIDs zU7sfq>xq`h$T|C>WoTCZqu=gt-(SG|Onp|cQA4l0hfD$$OMe7erAV;B{O5^`&uhdG zBUhb!mw%g|$TS6i!pg-SJU=}5__H@j+|44pRO)~o2L_c_Ub`#!J& z25Shzu=?&Y`1Ca}Wq;$X`#@#H^iGsC1&*c^WYZbjQV0;gzr7EP6_TjlQ)>~GKC$Z2 zMP$x--25h>J{q-F`@w>nj8z{}GrKW~_w`gP&~wL?cSV;j{fSwbFwft{WHM53`lrHK zgql8e@G5Tr=iNb_@v84=$pMdb&_m#>j*x0hN5XG zIq?uBAJ8W){>+9*cz!5AfnRmZ69kP3`nUPpV6@2GKDqvyJ=b^z-xNw)VE=*6+V6bv zq#?o&15qMErZXu&;YOLT&Y`ABT+WzefI0JfkDk_j|FX%Sp^B*uUp~4s&y1BpCE6b6U{5ObP#Ayv zeTa)qH2ChMS~gV$9=GEXJz9r_3AuGr|Ix{-?*?c^R9BI72bFVaf#?|+=2_os%A>l|E9X@YA?0_xz`? z)s1yr*8aSqvfEEv!wA)_`IN3GkYA#3Xy!AIx~&))?HR;ps9hg_HSFm*Q1jNMMMsC8 z7lr0vnc!CvAD$gbUef93ZDbAKojPFJLuv1^2s3YE++PgSwq_!cYi*if`ZlYEcZDE8 zm@|gkem^aq_-Qt>-1B*LifkRJkoIYYJKY4vq;P*h=;wAubakA-ArhtdX*0ooJHAncBzHjc;a+Q7IcKQpe zE?9hNyxmk4M>q16cZ~uu3U0~xN4Q8D;U*ANZisWfL>UW%v&6U!dARsoxobJtC;_^6 zn9)>$hPAFy$W7W5px1X*UdiK_7=)bTCsMHmVlNnyCox-67CmIr4`WOh7wvXQ$v?1M zEH_D|w%lvf-LR9a&qEjsouN&ShyoBwFniGJ3x<8cx<;bYkJ1G1Y{iK`pkiR)ADi&Z zMS$bGa!vOcV7HJ(+^?J4Nb#=1{ViXtKizuflfe*XA_$peewx-3#|^V5)MybJkve3! z&1`zIfBYAiB(RijLXH0O=ZH(C zQg}fqN0@g;i!WW76IJ)N+1X~&G%=XB3eghxHUX`H)ge&ddsTbh96U&scRT5w1oXk2 zdCKaskTbmHNO|`#nw2nH(b~r*&Fsi8W5VGvIS}uXjS|AUo~-dk+SjG1M0>O1!)pl= z?u=4MxBR#txyeZDFd}RGx)6B8VwAX`yq{sAGS8mY#rti zWn8EIVytxMVuT5ba;VnRg zSL1c@(Y$C<2}aEek57fR5FxZy)LPR{Cv8bGCEJb-i1!uUX0oB^AY7v3s62B#Q+3VFR1ox+W z`ajhtSO{2zHOW7bcgYXTxezF`zVLV@MA_%c`Sakr ziT5bSZ`}%t5?5?QYsZbpoqxNZNPGRF=!1cgt1C>se&IV4GQYM(c49p+^J7HhiPC#% zWrJTwJ+-AAUdUBX$|O&-|Ih;l?pNWpYe`X3L9xf8FO>*2{UdN4X!j&d6szQYoK)7L zkryzvOAXzRFs!gafBB5ln5pS%@s4i`!4n}s$(4l~UpgL>`@`SPhwY=ir1iIs{Wikx zT{^`HeO9gqPIXr6%;vu){3$=y4z@}CUJyH9^Tm3|D&F@|qBY8|1x87P|^9HD|stOD^9Na|0m zFYbM7n$hV`3zwURM4A8B_Xn&Swic$$cLmwO^80sNVOam|`$JM_u$955$z=lz_37V! zND;vM18fQ&_UDH00#(h8%j$;%Fu?r)+8TGNhA^Uw8#2qNXg#4VTEKOnoqpdeBqUmy z?3VnE9C@^Jo{|)KkW@OezNS8^6Klb~Shp9!J=5tb%J1B_c0qs|Pu)*+U7_V`@RmGz zaw$VJIbqG#ihG&EZ5whdZQjk`m&i*QQ_s7E@2Ik*@k=3Rf~W{GUtLvGFN{)#U}npV zh8w2)eFTTj!P3r9bkL>P+ZOLU`t8+1x@X~Z8FNlmG+>J0qCKsuBU-OI;|2GMJj+`W zf9TJGqj~1y-hTEzSHO8V?L;ace9H6cMq+mB9O?MX8gZ<-(lEXvCwFYhYc60v~mhrQ^xZeb);#P`$UP6*Np?N_0EvD&<0Mb~TDFGPDnt ze$BQyY%17>y?@(6)qAa;nHUw*WySkIVKb3n_N0BeoD5=|hls`ZIYTn`^941bT0 zfAXHT6h)nc*y~Z8Ra=O#;Q#ggAy#E3@k$3&rqckQz_XM4XovYjayruXl)<*Sq9e=> zi*eCQqu~tnB2`cOc&bLxY?jw9x{3(&yn5=UGDj#&!JW8Z15@pH*vHt)u)G^d&38Un zU}wuZqR`1d%qmrJW<+x=P-E>bNP>DbPrA%UUNpgLLdwQvTLWy!=ZW1-CA&R)s@-g_ z*s;i1H5?U>&9m@O9|aaaANn33^@8jcRn%Lhr?RLKqBa+94cy71ON@Ehe_pQTqdbsL=uID-?{i)kD$llG?yIZZ1;^?|Q zXIdjsZf90vKMjpb^E&7#qajTUu_|#Vp2W%13?v~4PMDvSPhmeqAyWO(_Uk_d>=Ggy zZ_LoP%51nfwA&K!9&o{3L+&LngLXZM_24xZUrc-#sXNUO9y8L!qBG{UzYZg2yX?Q1 zU`U4NxpzuSD>PdL`Fav&=2g_WClro2IOYWNYJ~}$F9+=J%Bvep&TG*5&m@*UJ7hs? z$iN?T1!9I;?-C2~mBjtS{}I1|{t2}49Z|Ehwn7Z$`V)mE{Fz~71OhELL{SU|G+(<_ zZRb=)qiAQXiv-814k3oY>x-BF)L;L$e^du?cw8KwPa6#{N|a$v@eVk@#N$M&zY=1i zCOUL>NVq?C-~8jw011;(@+t$p^Cc<22(~z}V}k2W(d-D;CU>jVb3MYj*!!DU;Y&LF z3nae`CZJv^Lqq#auNlW+Xe8njc6o-c_b(D$35NI#(}vuDyL$0knb1pDow}7@CCIQu z;t}}1J>{y=yK<@!;yaZF2c`;ZKzxBV_X&%jNnHB6_~hpUbt*k-OjrLS(+_?&Quw&a zy!Br@3&I3oOC%0iW ze&-jUBW773jXDN9G4jkmex&uwv@Z|6v3?^uPpL0Vtg^*^G}0rg&g{$8 zdTAjqa$j|X3#7S*LuYCh@4g2cg(M6sZIw0~etP!$NKvT1e(%JY(w6IZOj*7A7M^l$ zI~Zw+%wk6l$rteN!Zj};?|VwFk?hPJ;TBuNY{Bl}Ka|w{6swNT2I zFw-1RUk))Tmbo`g;8%278boGXXQ3hOtRRLe>~{t$8_}F-grAPLb-U&4ugtW?cQa$x7>Ndlp^vtT;U{IPeYo80~vv!ynN(8 zAifbh<;Mh8(-|k;tTtIDGjOEz$YRmftDV}VWVG&kK)uO7jc<`(QSy;5BKz@3k*F7mVdsHxZ>OF%w6|S#2WJ013HAkE25#Fb72zRW+G*d1n&>R8m?W4E zOsWV5Gn%~)k0Cd;o$=<&CI#NfMIiElpb;H-tj0g)9RmHiGkBYbW5Yo1D$FlSK~zWt zy6y;>yTTQ+HgfcVU} zos6Rl(JnHjoQoIAGTPnNd@$8=TXf^O$brvhf@m5vvf}%o0-0; ze~9yQw*Dk5>q`8IuCA!fRaJof%UnZ}z_Q~65@DxkYcS}Jm+9pZLHaL*A&hlHN)qzy z6qDVvcrCpz&^MGKsxGlA*;Pa!qMlzF<#kqOe;;w2chjMelfX-Ixz|$Vrc_UZN8m?g ztZ(On&frL=Rsi{k3`{u=yWYvOuc7q4X|%70SYtE1<%cNSDBS#-Xx0@$Ks?{F{m_vF zXEk;(;+daTS4IDG+Xi=YNv|)^o-^UGbM84!UYy4Ld5dTr82-}2k-lWl`4dVbQr#l4 z6fO7&p4%6>PZ|^)`yNttIa5-C z1>3DkfkyKpc#oq<^1&uK*Cx+fb)2q2h(S1B&(EsE#~^ZSFAicyvDDIK;3gYJBB!so(%QZRzs)BewpgIm z&CA=y#wvgET6=@m)ACYIHQwiWBvu+exD;mSj*HPKB`_6wWGYs=hLT8?P2U0e#x%jx z@5G{L_=@2%;c|ppTIT%8L~HL0f5QFdPH(!E=6MTG;C#u3`|$nyg$`nQNHdhzIhj^E zvd>X27wIiW;B`y5b$N&B(@6UFM3W+!oPDDG%LCV6I4lJ$ZYe;nUgjA1Y-+7P>%TDh ze0`c+B%>R3JpObB%wGgkz8B{}GwxL96Jh=uwVd--zIFfvsZcroirvDzeRGq#XS1HU z&(2pu`uWM;DB-$z^f|rob`oT$cdB-Fc-&N_ovMj(9EObgrZvWClb>^zkLdyi(%7tzGvN9R6)*RP=fVYsu$5Y~8e#6{8!I z*`Av%!tCVkPabxWR@k$-*FB+hUtEIO7a$0dR4Tz8Avscr-o53&!1d9T=0pg&_uHGu zH;P-dl}||Jg|{^5u@Q)fR}FzX4j_L!Z|+a^)6hPhJ)`B;fy(jlVO8ciKgm`3*Y!{N zdzV88GT$g)qA|{@TWF!5I(-z#1kKP$OjW@JdD3Oo!hi2bA8}uvv%`OvXp&YJ8N^6( zNUi*y>_5~3({>R&tOJR3RTJB5VmdQ9H=lM7pX*xI#dDDN_WeLS>~^IQ&xz9y0{B74 zM8i~GnV6bKX#4V@)#JD{+-*rKjj9KUk=Ur8a zJJVeu?UBCrRLHkeO=dfL9clBw7T>19oT;rrnT$gE;N_qnI8kZHwGaZ*H7E`In6H|- zK^TtUU{bZ68dK-N40>!=DZee^HPTr`-NLaC=5+5pLP#Ob7A&9OXGGdpFxT!qxGh{O zcoqppYBKB(+H@wy`(0$#HH!yU;*2ec`Yz=Dt}W_^0>ZKdoo} z+j{Gv;q2XEKJ0c>!USue$!gQTjy5!dm0?ogzULX$&(Vhi_3TAlQQ70`Dy`mSRNY>} z3-JN{nJ#Y8Y$I4oRmo`Lm=4yg0t);rS^ zhvC+2pzE%rh@d4w^~rNn@{IFk5!7_ixbSHN@;Em)y<(l>pkNSZnJsKyR^X0Dctv8r zH9&};;iaY6|LvxdoiF+>G{`28u~qdf4a zRBnQ`hHOh%yptPf-s7;d+GE4w*|z?^s`L_hc%-rs z{;!`G=g*lzPZ@R&nECYVy$2@{aRrH3Dw0Au9p8IH)Swmqaeu}BL8%HZ0{_&A_$oGK zG@ndUL~-J)l$M;SV`6B5w=p+_P(1w049hT8T&zpdDvs_?>*3$?AiCaTci9w4G-t&S z^)TgSsMQ}+=%>E~CkHgj3y`q1Knv}`B^e5@x8fwDpu+rZy!%tW)(ecdcTIFun<}-l z`Cy|>{mdFh9cx?UPY}z+|Fa~Y%W`6HeQ(;5fU3gpX#cw=dLS{G5KQK z=xzXJ{}FCe=#~*UBFp_s8~Z?MQqZRId+mNxy!cdW3Sd7faQ=1sswKho`YLQrrijK) z{pmmEITP5WEs3Q6l8Unj_ljQ8umbuo&_?O9rzC~AhdTM{_)-!R7oi$4!oPG-7DE?7 zo0OM%&L5rZjV1ZvfEKmkXa*D%t^9x8pAiuIQONR3d9GCj75iq4A|uJhRY5{FClPwD z1ERqK)w0|vVd!p?4-IZ1MaQd3WSW94-+NtZBQuy9Ve6g@?*Q>h3?A0#vjn9jRX@61 zJzco?F8ZK>l>PC+wDu^=a4ozP_&v}D&c9cJR!pA_C+(KS3j$rCoN@=9&Dbm3pNS^N z@h&|1d29IA{QK;(8(HZ+M$V5guUK80_R`eZm9d{R;&yBt^n?fw#w2DBlth20bU{4& zpJHU^&4y5OklOn>CJ`b(4~dWpUT!O-uJ?lbD#d}ULfHOjR&gW3s|^gDh6fQQg^igc zX5hKyixJpu4zF4OXZa+PS4D1*S?P1QwOM}sZJkw3n@JXf ziGm$wwTOj44<%bxM#X~tYVBfDZ;jq}AgE-II#i`$-%mrGuLdu`e$;-hQzg4Mt*hVc zX*U4sV~0HkFWswV*x(cT6wK+P_7{fv@Nd1BXH^M-fX3_G zJ^ zI{j_FVi(n&zrTC6bL_U(q#5>F3I2#`iLhgMv$H$*T?SiA+1^KA27uxl3s5EGRF{=IJTZa_N5&ukDeb^;8G%v!7L;n7Dl z!MIz+u7kp!xAi7OlS`SY#maht3ktJa`PKv#k%XG3}7XxQ0zFgbh~TaL*VhhT)xj zouzp-8z+71KAoPPzItJbszcE}^63QubPKpY@Zb$ee9zCiYD9%4Sq>dyz;&PvM^L7E}jnFhdrTj-BD-*wmj=r}Hg$ z$K|IwE5{{+Kh3n?_kxOw3CY;3GSdCJ@xL-R%jgy9sV*=z4LnrlmOW1Txv3DRvu<5D z?ZAW4UAp3 zb8zTpPZLB_W(5JI!y$UTUS4E1hqkbzfEEl{YUdrnvW<)`za+Fp&pMd<)RJnY0fQF@ zX8uVVG;;$L>Ns0J%sM|-<3c%FUTdy8`N>=U4D`n$C|vcl;qiN@?cZD7{13Q)`aaaa zmoD7%s=D(&Bo^Ms zdsK3@rMP z7b%yPqu~iy#-SNGapHbJHnPq(%cA%#&eqh=8S6O6WOHd>DuOa3h^;Jm~>b39T4 zkjBHY+U;q#13T~!TiX^iWLBJVX6w4GTf~F|ekT4k`&exv@J*f(56*pP6Wxu7TaQNbaSAaRaCb!vA z_CY;|V|^U{UwX2}P zW^Yw1rM|JL_g#YXDkaMs+@+hzXhOqBa=7s`?Yf|YePl!7i z-B_+A9!hy7xz6rkurh1YGs}Cy4G0;ufAG_Q_-_3kS}F@@pvLC$b>hS4dHA>S-GTY6 zJM@!ngW4?gmt`pQ(EmEVyUZsN8er_)n*9dyyn3-yDNjwgmK*i;sWJ4wmuoK;`u10| zs7JR4!=hPa`)edsfc^{2C&hkaJlf>lbmzu4y>^f_Wcb^BQilezdk!R735e}xrhXZT z+<+qr1s4bUT-!GvS5!nk<-g?<{%L;&;WhQ(%h8pAt_&p>Y(wl7w$JyFK_X5H`IAx% zU*B!Lk%r~#dVVcmd)sTzZ;fa@IWxt<)@2e4FOZSWQh7#atHVgcce}>>BD0ULI5W>w z?I2F-l*?!zmt@`tw#a3H1Lt)j?oot7IxEjtdmCb8fWybSBT$SHBsiHs4891a{hCp! z5cxK1nZI4X?HJ1%78QErT5YhuMa}p^X#DPk2*Tz~et_(V=|KHAylL|IT3`BKJS%S9 z1W$8t(Z)yL($6;?BHI4{=D*`mNL)%njH#{dLg8O~#qv%PLx+O;>M$oJOR5NF%x{dl zLX_^Z2Kft+Yeu|3e5gpo$>7j~f|F{6^|*?)Gqg`kP+yex_7LrpQE7uC9Wv{n{yF@5 z_Ec34JCdT}G>qtaP8sAaT^p9L)HeMZaL#j`4yx?h(Vm+fM5zBR3%7axe$ zeO17@yC-FS7UUvRWak%lNslfe5U-JY;+45z+Dy0-+EsET&p{|Mo}5}I?Wwd%0G=Pt zN!N@1{~vQ#6&1(UtZ{dD*Wm6D90CM)cXxM!yAvR|yF+jd!QBE01b26b`#;ZpV4Zbj z@>r|8clXp(_xJ5mb1iovs;TdSgM7pv;tcMDUZp}Ijmc~dqCnUF?)Rfa6$W(%S<2B@ zx&uE9LEB}hv0{0?`|v?04cYBuB|Q~8TKFIaI@Auar_Fg04-?m)?jJp*iLvqB)YutC zKh8#8EDoTWDMvfTn<$Ba{8^9Pewp_cUk1!S1oSWUe3iFEl#eF<6kv?8o7!y%_HZGceUDat)cwd<)|3>D zoKKYCU8GR{Sdl-NxQETU35TGpjja?@)iG5dKd?;dCzh3ws<@iFJ>$)eU2dy9Z9+Q& z`b)#n*4o~OX-Z;#wu6|%prjj99J!D}t7WNmO(7l@U|s*a{?b*a^le&joRy(=A*=N; zKV32M6VQ9O`*vsB!^9ei7y3WlUwZsl?1!PRNP|k;*3|}%<>W-2Nfef2Trzvz{zPKD z>?C578&B94Lx}65m)g)fn7f;c)i^3Uss(dTbWF=POYxE)UXUdAczV)YXDr@!!$Zpk ziVTWRHWeZSJD*Tz^%R54I~r_k@{)GO6Z@mA^Z)S|Kzj!4?@QrEr2+Y>pQq`3%I`3PV0AkDnx+<9+QR>^}e zxA>!Ek`&SoiSW?3b3G17c~WpQWO~ZkAg0(&=Uw0BPi0kII-2)9Y( z!%AX{^>$NQBCQe`G*R?(c!LUvWVDLcsY7QmQyqx9C}tSHo_AbIU1`x)@O|iy5=qL0 z@c7iWQ|Zq&C-bBVJxDMQaLpTU`Ts2?1v;jiS}7a@ubSao>l*;=+2EE!yN$ia5Za?o zk{*+U;sGpH_S;5`AH(spPIBeqB|MnZdBT!KXqIR<80;C6 zn=g^x>K_o9thF{#Kw8A9T-s@v2j%XSC~#Mz5bCpXx22QIbVZnqCqbOd79fTMZODW1 z>lX?1F@~W=CzfYyP?r26r~Ro5e5XbG@qDLR;_i(yW}7`YNmw-r2Frn@(|5yln|i&2 zuENR~kxbK%Ylj&5@-k^cNXqv9_oqlLo#5+_TP=ayjl!tz?N0%|L3~KdJEXIK{iy-% zw{pD0$+D{W`$elphR7=wHK0A(qJZT49A@=+36F_!ITd;V9tV^G?U#!aoa8L;@(CI& zdnMi1?DZ;*&m0y%n(+6M&b88)ZP)+Wep?}yZJ~cPuFTXI5pW|f(n3CDZz6reuV38X zOh1j*?ln2WdTAOzYs7|<5*Uv|b0$?dPZY58#mB^iMzRmk;Y3Id)-_WKyo+ReRFuTr zC<2V10M>^*(|Rd$Q-FDA#fa%79R;`^{A%ge&SRHZk%fYelt$bD)Zbh3HDezZH8i@d zO*9zE1!+{ezc$=?9;WldS$OOtA76ICf6bRqIxsGbRk*sQJ7oBJD?XqXB3)N$%?#3S z4SC!?!@?|ZB>5H=aeg?nc^8-t`LXe%#*}}1YmJIlDhw`laHoe1i$aO1{;27GN|2ad z8acVjTlR}#l-tjHR>vbK z77J_t5f|AIYrWujsJj7BGx|9lzoST`%WvQJ@)#9;HWw`OX1vt0aTJJ*rtz2S@}pxd z61rr|3vp{^;fo@bZt<7XzgaPan^QRYL z*VIo6#k6fKJw~ZdXS>G%BR`jMakmB-mZ!aC9{+29F|m|eM3B67!E^77Uf4&0x*zl| zKb(tJ+wa%f#pbFE&Grgsbk7&R#xs4XL2X6vd-R^E?R@!WET_Z(QIbBr)lqEu-HKti z@V!Y&b!MlbmNj5J4=}&`whGHH_$dCwo+98A{PmpJW92@`7|i6N)x_?%8)gN+xAaLh z72q}pel+Av#S)iERZ@^xO?lIqk6potG#BjURR6!ylD1-pDCs&0)b5twW?pfBH$V2T z_P2?ThPE8Q_4a98YEtl3n^NGC2|GJ>KT$8v<*W-QRKaN@B6yYjmiKKdQSN^u&I_dm{iW`&>Qk*C-Q@C_uOITa{=)kg z9T1@}JRQzCh+gs_`6u!ZsRkZnmlws~oeGQ<+_t%VZe0QU>Av-U{nN)u@q9v%I!^LN zS7<3^q{b(3xj1Mh)Sk$VP%ZIb-3u21`z8L<_kU|W^$syD;|PygqYOvbms%ntUvy3S z|J6*jZ&ml}33(loTj^Ter%X1MYS3g)ha`u+nNRfA{r>84uxG!dF;6zWaWmNz$lTnR z!n}cF-dvVN#qBL$=(9m*6thNr)CZ}FndG@lba=+azqQwxXkd01p2_4VH?zCV zA>)glY&qIZlj$&MrTXN$&tX3lWGhj5j$7Q1yAKwzUf=)j{r>9pDbl?-oQ54!%d2Ou zwJ3(P%M|cg?7{+}DPKP_E$D%Wyv5(Jv2kA&wS;JPA_jVL8w9ri`LHulQz?A!GFCE) zjW@wg)x}%;k8AJ=xhTg=c-=}&PwKo-L4Vo`^@mlH_460Ow&gVk;_yRE!`*`^s>zb% z@PsTV<^4%GGQr_{T!j%sFl9RZn6A5wSugux@L3wPS25>9st?+)4C1<>>{b?aEdvGl zX_$G574PlcL_=~q2zX2lb7x(aTalOyXUJJCM z|Ehjr5lmXg4_cSW4yNW;9cE4|Y8r@Mrhlu_^{Si)P|)VSwSRuA-^gFB*O7G`s?WH< zB+MxrF`WfnMX5|0V2kWQqDeLv4Bw85&`ato;m~ZZ&u%*zg6n0i-@vDlYjIo_qdF8X z+_x*wC{?3_r*KSi#i;QWr^D4@u;u&Umf7fYov)bI@o2Ojvb2>B(susc zd{7%!8JqlA(j^r2^##OB_h5EL4$o3N0zvCeDIZ~5(N(~BpPpBA_4jN8oiQfOo$DGC z=P%J2^ss5jQNeW;tL+auUI+vPN(wF0Etom8sYQ1qVM@-p#Lw~iJr|ifF-MCrXDE2z@6!GoNK9*EZ7AYcJjHkBGEz%rSRuzGbBjEFTH z04LofAD{X;oSSWTUG|-{dCyz?EL~DH*Bbl@F1-j}y^PiUyvJUij7xw2pbg5_;V+=Zo?P;!$;IDtGhu5&6|{&-ancdDk0WL zZK^qo-anFtWH30@Rw4n;)4oTC<>1}e_=Ujsajr6EZxr^P%dn8;6IZ*kN2i$kwI@i< zcX%#hZXA$!n-qQo&KwYISk}yZbFX-fHWA5vFln>{*$(Y@?P~XwAe2LkORs?OAwc~o zKz=3;oj|wQz^7h@`Ew9x&mRpw<0!0M&T`V9CzL_#jvgPPv@A-cI?qM%5t_*Oqt zJDuMX;k4~eWbvK+dt+SoRG;RBH} z8e|vTc3w_{J#?nHcjtK4_lkrG1cn$|9-li~c^5nmQHRDW%Z}Cy2ss$gSm9yjekIr6c!BC3a%JB(t44!Bx(+JU=A|BzE#JrzyDT*7ODkzooy~?y}!ewy=i# zB{vP^cnE}H-pJn2iX=DEk?)~Ubv?kiQ-gkjf}Tfz|J9Z1_p~F-NZ@UArs7hOhUL}O z)ZFyCNhdMd~uKS>|K;wJ~nzxA+U-@2U9USYCNELQ9oL*IS7S z^5*YdT%lgW(K#d<_M^XDavV;!b=H4LgJs{xUDiqmjcGTDc2P4P1UuzgF`2|kE zY*}I_koZjM=cVw|r_o`4_5Cxt_gMV(=YqVBwbsP#%VP42tGI> zQm9HCRA#sMSMys4XM{`-5>L`%*pk#G(Iso(zHw=n2;iSpV8cLTHwdqfG2M9vi8?^) z^h^ZCpk{h?#1qAeNP1>CPo;x+*M=LaxkKe@Tt?E7I7Uvk#v8JN_lqoc5Nz38eUbB{i7 zXW7#9p$7#NqBgHYI*gu;7x@1-pF{&DzOIxfLK?@IXwJv8<`mK_2^wdSqVJ?#3~6Td z`Txz21N{HHLMdfhAs^tTttM|-ov5gAsQ~rD-oLPQ4;RdE7@C~0%P`5;#h%=Ks0sSkjt3}5X z{0ssX_nHVS-*njiYCZ#>j}^CN%=l?9cRk3qZS#Ne*PC&vvJVLB3%iVp38Lc zn-d(SdcIatT_eV~>NVI7rAIzIdMIODtSXDdQfx7gvcY0BN@S?S-GN|dP%29YTRlAE?!hD9z_(1Wx``bp`))~?jc_gvMameEQgKz@DgBxw@0xo0*Y6(+l zQ@Q6(Tq36`YLR^6EHb;H9H=$iX_m+u;P>jJ(HQ328gE=NLaPpY5+5OSl8S6q%jLQ$g>(3j9e3rTzd0qpjY{ZoAP&FP*$&NTmG$bT{}z)=)|nmz$KXLOHE|t$s=-@gqjANS}gb{)ztGpdGN^ z3E+BwGGIOj6id0Tp3DTeY+ZAm*j=Nd`wU5oxJ28vFuBK1P~`GTz1Kz;Tii`?MK*%)CC;d->%wx2)fhd)kBXVk(ZpRGy2 z97ZnyjF(Q8DZ^`#W`Z^3x#B1pZKX62Fc)A`75KouD>o~HIDIo-sOCcrFq$rNY^oT1jCRR z&LC_cHlK{Z#m;Pc2#OvgDa63}O`t@n1KVEr_ml<2KUz%`8;QyQmY2b$+S1JOr zYp*KE%Zt1*#jLW)6DtM*k}3UHbAlm4gAHr7JqJ3I@LEW-s08N=h})L``OR9+^`Oj~ z_R79pk{tF#Em8&57Xz#nIy0dfE?z zvA^3-u9FdO#pkgwEGST`k}!vGi3D`moa%qGVQ`aBu%SL$YNFGtDJv|9tGeH+Nqu36 z5Y?{N=2o4LUCf$J6I$lP1oeXI)BbRr5@CU3X zDKo0;57jxLiazf}<08?3Z2#?lcG~FbJ#z`>arE2h>tC%WQ7u36ljn}8gP6DEqCw*F z2{SD`!%J=kXLh1I$+m;jVcY{*cQ(6O78h`yL~Nt527EvMuFN$AlOISaP}GT5iUghX zjiUBvIV~3fZF2Sw#k%_9<4dT#ZiuK9V!2IBbC+rHS@2j(8{u!Q^?KCyD;6U4D&fC- zf57WM;j1WhOdT{OP`vXz7Quy|e^=?*#O<2^PPW=elQ=xmEFVRf_i^L=$}WSW^GP_N z{esX~KdrST*N!Fie%7?6xN!_-j2uT5We#QjdTy5ctvHAjD zfRndVRfZtkpIS7IUj1LMx!vZo(EXB~wKwyT|L*g_#E|kT68z3_ z2NS^LXv0MwTmSW)goY#2%;2&2DVm*w>0n$A1z%p4A=3TZC!DZS94#JshR%y@7`yd=`fp~T*-_C= z!sUSXN9CM%n@e7LRnh`8x4<%7V%>_p=Bc&gr~cv`s=U1))GZ#LKIo&ZDDE+yiIP_N zX1^W4^*7ZTp|(vDqaS5(p&4qumHut}1H3<=3}}Byd}G+qgjh1)xlQn!l{%CG&;Pe& zK>M4Jtqv-NFVp*9c6ElPd|>W>ZGYsdkv~+3RIFd7k1NZ~#yg+oh-O?C@Bh|%$3)lN6eVZY(sOZRKVBJ(jlgc13sdzlHOK=# z<~LY7zjggTeLVR@R3_jR#)=ROD^u`^i2U|6wV`!>UM)4r{(Pdri@LC^Zh@^odZE}= zsi{P0#Oa^DKj3=x{L~@>coJ3E{x`IX=&6G>3F>9;eesgVwsX52>Oq|4A4*=npt~Q7 zVz2yMk3#7Hy#Ak-Gp#1(22qleRGIUtF#UfP^Mp8D{sbinVV-_~W<5lG|H=&VL$opd z{NNef$|*pxo5&7kWoX6Ms^f|~RPBbVTJzWwe{*!YV5_uHyN5vBk6`^GnQ zPfG$rOSe=A;d!yO&V~##3=NV#oQ>tBKlbD(Fz0*a1&v-9D-EiUEq(hHe`Ib?J6ovd zy2_^J{l-Zq)G z(_$ZqccS;QDHhii-cT~|UbEl51tBuH-DagN%aC-xh3tyP9ylpT&`l3I`#5CvMv$+j zo5SuMobl0ikTYN2M67=N{nLgmnhRMcm)*<{T2h1_0{Tt71GEP@KJ%D7BfF_yrqtC= zZw)12+rzzEvCbiJV=N@R8)1UmD;u!wfgNO!i*efdI}W+YCxy(bb)S?^@(VR&ZszB4 zOt9U`ecZP9u(Hn))O8g_A4H7h|8jouUwyy6Z>P{?rQ;pxqzwOhQEK;yeNW_)xqx=; zdKYk?IPDMiZ|~m#pBHfd<`>72^nSSIAV*Nuy!3l2)W5xd1AHF9{hPtEG+*r|BPV{B zB*tp$!n=Qa{|5LxfO4Ad9BFM5@_>m2bBHXkr*oU3zUE;rO&w%R# z@@Ga08FqijLnKeM&sQXQx84wT{mqcF*p=KiW{Vy8xR%7xtE1#OuM%&y)pS zepw{~1vY<<+>I3M(fus#P(+mO%(2)FY`!#wBWXe`&f_X~FMLI>yxjYz@uge-J*ay= za>{R=S}^-aCXxR&U*fhxQf`A*GrB|iUVBhj+p1>(W#=%gbDu_a91=&pmRf)*S6Zpi zqsihKI{j{hJ))fceW@(Stz`Bkdz)B)5*I27WC}zDYt-(K9uUw4`+?C`f&-grOFVos z?CNn75mYvYwg~wvj z5BJ49@)7_Wzx97_J#Ps) zN^jbMjo+G&+o?6aA^FfqI@~9`S1Z8A?}fe3Pq*9ly;b?P(!zxH=5u13~E@Q6R}87qV% zDNaoKq)N=cHxV|$zwb!nIoLW@E$w^H|UOh65(y%J4F3UiLKaJetGfPqIukami$zldzj zaFeFmd1j!UjCOXo!wFRXttcnG(n7znsy z84f=go;Dk-OAYY=mzMy}Gw+!d%mLs2?|lU?lS?*}Ys`59WjCedoi;I0jjEbstwwIi zv$9+zi?))l+ z-QZypX{u;xVaUlCQkZdUoEPrX5ZtGxn5a`DYZWr|%0J5p{W|q;FsN=Q#3T8Xe>D-w!eF&$3-YEeDw?T;7?$;gy{*$NJI3RN)JL* zcrMpI9G=WT?wh8yu*#@xPRS;vV;oMiOpGDh5y(4WL}Y>?@Fppd3uzA0f^$UM9n`tU z{><7wPs+^K-PX{IJ`<}B&#GlJSKM7nABttH6ID-Y1d3;!{$0lpDlY2eiLk-pH5X{x;wnLWAI(e|J zTMe5(QM2TRcGt&O@W*u!O=v|`D3GMvaT(N1m*5Yqo}r{7eM^5`bWuiUeGE}QM5x~p zA()Ta2&(nN-hX6tcvSE!@TmJHei1g9u>v!6?!CiD0gH)RN$4{5)Xjv}D0n}^u7$S# zYjsSI`%v~{xeimPlSBTk8-8I!qmW1hf2mO<#J6M!J>iV&2jq5BO)d0utFx|&heQZ; z8ue`53Qk(k;8lN|0*~_)dk(OTswZ*lp7X`NQGOnSS_2LinKgtBmzVoKC5X!Ps<6cVqKc+F^~UPy1nQ8B$3z$?%|pn zM~^=Cmj38ZZ7n)wF!X|E$}&cX4Xc??6T+XU;FB~iZsLBU`P9jKW~;h%PueJ6lZM znsuDzJ(P$As9(nsnSuU`*9;f--r!Z1Na={G!Sdk)WuVe|=>pqVOU@&UBDg}syq^u% zENxsehPGsgNJ4vA$|>{0-}8{lj11o*wsf3m2_Yf%dcjgz z@X1Syd+VXkk&FTrLr0W1*_A%2np)jIB~Il~VmLL_e&fSe=QGyxyrmEO25j_g!4}`G zn4p@72W^cp@kw8x|CrQda(Agq zD%TS(Nsg>O;SwP{%Lx&ByC%0Ei^1&(HxNxmm&^*8^PP8~a%fJ2f}Ep9TQ;gS*zNNq11?zzOhm-_Uyy(+DY9m_*4F+sc!*`R9@M0r; z3%&M}ls|XGsh$nDZX^f_(l#`TAbZ`9KH*mFg&_!nwe0Eg=?%89MLvyGUB4?6m4|jO z$=d$h?-1$vS7SCcBX36A%?-flJZaf zE@f8KY)oK$fFA;BHzUmIc8-ui@tvXyY?N#`de>2Dz48lF z5z)F-p{@&+ecwyikU6`N?6r8S_Wp;4Yf*PUEmZQa?o;fzpG4~4u_U)!)kE%jdQ_1t zro5#;z~cj7Br{c`EQ!R9L&?J!)o|c!)oqgR?^O8r6T!Y**W&-x_i+&oL1#bSDl5y> zQZ4q9aY+qs55(^>LBn3}QCF9#`n`VgwhA~xf*iZoft$zF;;6z{NSnM!t#6&Szy#IA zhc&AWkJkQ`U(-yRdrP2wQ*tWh)~$SHL?4Fnc=kqXIefPp^ifBJtz5m^hCegnVr11- zX&YN@@35V-UDl^`$X;5ZNS}MWdx)kN!rHr~cWJO|C5hT**sC%jD?A*O6cv?~X*NU) zvTF+xd6GRxqRYi9HPt}9d3WK4`>e%`4+&x7vM(u3Jn4X=0Uu-sLw#NPIosc*jDNjx zXi={cvxz{BbovHUm`eXtaDJH~9Wx0~pMWx;Kctc%t#U7g!@8}JC(&owb_&@3kQF>} z6+DBTu-#Sl)Y8fr8({lGv{=a5LXy>5Y2MYcK7qhA0^1)Fy=Y&5vOFi#3kJ$uIljO5 zr};w)=$lUkKGUcS!7Ic#=m@t0+TXt|1NuWc%nelz7)DKBEo!XGFY3I2?GN#x!Sm%{jREEtACn5gx)i%f-WXDp7{*+9U;HSGqC+3bi|oD+4Dxq+*Ed$ zHFoLs!1jmGB=nFLDUTEU0F%0?7(d+kul*r_`5(r3Hcv8`9!nos^>yH`uF-*=|1lXL zD1uAJ<0okb^1dg=`1ViB|1e8e_{F^*UEXyDc4F0V0P}C-2jKdEe91b5gC!C%a3b-! zBv0vCEehCt$yGu7zI-A<2%InzO0A>?8`ym5D5l|}&f?2(55fd~&Y1KBu=&yqX;sA; zs7A5d(V@$obJgRY#+M=x%tG|8gLy+k!9q0hBgX;l@86aI`O^JpF^c$edZ3-Uyv!NH z=Nw@3rR&Ba8VHh7&`Q?zvh2uLS77s{W@`Glv6^fW{D=W{WqN#JVDlw6M7Ju;hz~85 zonP)+IZtW`8UA`6wtiJwfd};7$Pq=jdRX5DB8Wa504duV)OS#o2 zo=DsDBQNlpNTX0fyK8D?*aTe}Q_1ffZLew1Isx;!6P0Z-UvYlTkR-~$E;Mx<2Rs&9 z)Awn(wwZv>MCpa_sS>y%GR|=OG?21H4$OR>2K-+5HS>4b4w^FTM%f4U&TRj#dg14u z#Vf*337XC)3qqw!oR}I!7}LA=L31|r*XS7fyZIhdri$gcY?gILRMW4JL*@{G&+~7~ zfOtJfV5@M!E}*o5|1t`T%|HWeydEUL;UYhHK?(#LWA1x}90xXDKZ4%t>A&j!mZw2l zA#UT71vXwkIS*9-zxa540VWz{;42gB8duYygvU7Zt)EAy|tqVmtC*@fdklh-4a&L3NH>GkH$yc*JyNw z1Z=$Sm)da{;|xk3^jTnsP;KXWo)SPt#y{%;@@kn5cQ>svO2K|E$b zNH|;3gWltoBai&ocnz5EK~L65g2Gm>B@*ZpdJX3N5!n8Xl24|?>szQ8?+fm3g_I9r z{%ijR)GHC9WAfPM*N>*4%kP6q45e3W@~oe62Q?+184Ii^QI5hN6ySgUOf3C+kkfaa z)5E8jwk91|I%1A8pX0;z+tx_91WkD^=MKcPV@ay%Qe)>}43cQQI1}$(m~_!o=Z{JQpv(y`-bBhoF<-0Mf1<>Xz6R(OvxN^rVGNIP|x_ z_p+l>nq_`4Q~eMNaoWf7)n!vz+vyvpQayzeGD0`lDO>MQ^#>V=yzg!9DHESak74QH zz0mtl-kh%tSfAUDpOh=1Oo;2CryW;wDi`>t;gvwzth)eWiMak+Xpd(RRL$|BSbQV?F?Y!m8;BWd-;0eNq?)1 z3kok!c3|U`*+&!OYEdjbzd?#U>U>EnVB^*AdLK*hPfPafjFfyF5PP5hG`ylh9_u~% zoV)_6qrc&i*Lw?Wyc+17cj)n?o(wOb8XD<&O$Rn!#b-@F__8$8J^7-6YQ9J7`LFQ` z&>vsc5d%x$_sfeBVc`R*yN)Zc{qZ`c5Gt)h0^8OLr^4+0s6Kz1KigerLZq#~kkJk^2>$gNGpR>o3*7r_`E`U)~pY*9OulP!Ud!{@YJrc`|=> z7)C~Xk3c+APs%)9^or)hv-lX; z_#MmC zU_b#8u<_e~I(0#hyiz0JgOBs0lcW!@@!P%8)5PCQ+`n)(EjiI(=mOaIjo>uRRdJrc zOd?X@K>I${57_vP!gdX1AW0PX>{2}C!le@Pr{OoPELta}4pE-r-ZuYum_`>Mp8VS~ zAbyKF_2;p6_Y8`ZfJ-Xl>GuEE_zl>PY%&4SDR3NM`{x6w#wFCsi;m$p&q+hjX8*W;WUQJIpn4$+8hXAoii!LJ^Z&Lz1FjFq zm(&rhhaSr3A`Y!vKNR%4OaPlN&0asjmB*Knc@WpJzmEL^dj6r0SHLKm-pxc+q$1Sn z?uycX&6mL3TOtInrh^qc(z^(76hQ-3W}9mW+y3s1=y zi9V~pDR$!ljTjrx557$R;U!>X+cYrc5M+<-lb#lnfRii_&xJ6xB*pS0J_ba)_FM{> z$rpqv;&N+Yr@rhKt`@TD0_z>^Po|8;Gxiak#8$$>-cu>nlokSj_6jJcEB0>`7x%Kn z1zAS*P;q(1f3##YPH?_g#apH<#e&bJ(;8Vfv!bf~stSs>bT&x=|6J(wVaAZ=s-TtA zMSl{<0Q+cO3f|brQ6U5G6pOQPf^&&igc?%Wd(zK)2lj>H@79Odd?}($#uiIwtMbS7 z2f?m+86yp9XLF3}6cN~m{OFAdSnrW=YtW2rr+jDLe0I6>6^RKVSVIUz{ZhvmB%k}9 zfVsA}u{rhu`e^RfJUSGAqp1g8sULnw@ZTp}$=WST^`L)OYQl?Zm0;J`j(E29~A=T~3 z#^ZFnx=|XhR`#6Z*o{*dlP3r^JSxCp|a5>`&iCV>51|>8Zdz2gVmUPUm)H>7l+@ zG<^lfz{daRzbcj+_#RrCRDl2+3YueI=eNA*@emr53p#o$vekHS^o^Mcc zR!f?-SE9CzIP-=~?9;XEa=jKeys(?)7X6ue6K}E+2VM_V;UU7M_kv*y63Tm}9F^M~ zw^J!>DW24!NmpSWex;Rr(lsXO=%6!lFnV60*jUS-qbToDc|laJ%_&)!`rP4Vnk$gC zrKpqlqs%wf&yOkJLpH;BKn=-bPP-yLK|(xYvGU_+TI@&^yn<7?lzb}9J5MC(wP|7n zStbq=lU56Bq{gd`_r96T;Zbi7v38CxFjSEblp(lN z&7Al6Y0R(KO#EiQV!(OG$|$i!E*PT%&B2*DVb=iP>I^^BTEIoINTq7{CUUQg5=w>kSx)ONXAkt)qaKg1`jnukN~oSUH3ODVM&%+bT7PeGeC z0;lTtEP@mH>kIQMS_~fUQ)B+BKK|)?$!IbD1!#;jPs(&x2JU@pT)=wC8dZ+Uy?R?p zj3}#q*81avx9TPN2~lx!7!D90Y@*Q6S{E(lsOlGw?LVd)GowZC)iClpX?VY?9*|#Y zDozU*ncTiPj}la_j!DjOta+BPA1hWIz7}d zX$1`<=Nhm+%W}2pjNaAG@menDU3WJ%9fiCWMFBHO5;Fxj)S8Jw`y|t-t(y4BQTXLx z+&iJq%FYF=R!A^~)uNaWjB7(b^BQGsF}|QCPjcU)@0hwn&_Kfp|6&oiSTGFdo6e<& zNNSg}bAglC-asM0X%Nx$W;6K>f61|A%Bg<8aSf$ZXa4Eg_qlR|1nHsOU=OO#=9b53 z#2oo+$IEiWM=?4FbOcaRHm3o>lUeCJc>{EDX@0=^=hSwGs9|jL_c;QCNmsnGsmSO# zqzuv6)7n<)as;cIKTuH1PHe25IgRV+xfJEFA^^X4fO2frz^Q~STdOKdF)IefbO@k* z7TV1elJa&L2>zZVcQ4Cka6NcWTrnr{O3JGF5CMUFjfo2agRM*aT$%p2JLxv_jskqcF90h<6W(Ch4H;Xlnk_f$<5 z;>PkJZH#%d-c(dy1K9q#j}ft&nnr1PAv+dkf@wth!1m91-|BywjR$)!xeL${JY&)a zwto(<`bDtBrR`$}zpAGKa~V0X{c~TC46-(Eh*yE_kK<+=dU+w+K8?RP ze15AwevCvR$C!ow9O>!nO5$cMrJ67O2OZgfPr+a6c#N`m+x}{OJQ=pXiZavdFzgt2 zYI!JY-Dx^~uT>loHqp{qVNnxKOD}-~tLCM{{r|>5ra~@AumaAX;H?)8Xz=ha-E#$9 zQ(f&gTHE$3XYcaSkDv7-B027v`lsvVMcJ$$T|6ombAKrEyV_rm$L_Lj<5}~vU`Dct zSA8`K1|K|>Tu%)VzSzlgChKg6x&3u&EF@`2bv=%DL*i zuil8)H7?b1_OXLTj0Oqex@cco^0%lVz`~b$|MGkgCBih_kmovR`s822Yu#Ewf0{qK zTDH=IM^|RoBV~EUZ9!udkT3n)GN3=&C}YO}iB}$vkO{JA%?dH~zxGG}+wo*f0hYKz zL9z22LT{WWV#NQ~F9p9z@se6i$YqzMn)-iZ3sRYBo40RbUjpzq53)BGqsjj1cyg5*Uk;ZoeV z32eR^uJ9!wBupzChj6I(WQOk!*nD*wxBM>W#kJ^0>~0(`p!(aN##b-f)NKsW&++vl zdO+QRT8V+pR}rN|HhL0+q$$C&Kp5`7lL4Erw%3v9Gd_DyyBQ065*_!*)@cZ*`UknHtJy7*k6nG7qrjvgg zuL0Kw#P4AidM0DTktw}nvb^Zo0n7gyzX9XPPyL+D-O~A#1eFAC3h0z@z>X(ByK7gs z_QxgXQk(+)Tl%Wylk3!1!CS-S2xVtaJr2<+kN7 zy>3EbZGLtMJ%k+?MSa~!%loRYYaj;uZZ@kuRGW6>zlHzbe8!|_ME7TP&jmqE#tqgL z&~x)ZdjXFntSlMnN>yZ;rayv2g$d7KVZECTddqELXY{iBG0jt zH4!+=pZ0(6bnnMm#Yd&0y_&3gSbcST>-YWB#{u&PB&MdL;`1}^IKMU)ZnP@11DhW| zlE*DJqo&PK#1P_#*C4$Dn;%2UYa(tsHqC!%LAYL;l^_Q;KMq(=wvJ3PcxHGIhy7}o zkP2*mT$}xYAlK3n34vBLA>Q1%`%mM?^gRftHYFT~6T}7fXPQsRz~;xW)1Ry;`o&N- zw1N>!h7uTo&5y~rwB6G&g8AyETrar#7YKpPkDC~l3Um7pYdFIq-2ARw4uH*%DMmtH zT7m`Z!ACL6`5^RJfX$B$71oevUU1wTkM>tXT&YYGV>p$mdg~(7`LVxHYAY%L_EWud zuj|#9k>X-2d~J$@jny!ev85O|dV<*>YJn&I0YP-6=bsMbsi8+Yi zh?pNQHP_ z8E~FW!TPrSz&hpUM4XOy8{`~=Z@nM?^l`xb?t93bqkY^9F0;V^s>O?4P+;$OXCW+` z1=kE|_`D7TkfT$)fW6;E4W~^2*};#gNW()@6-y2NulKuDQvq&s;73EwR4j3sR3!!Y zy9n^|{Vrd2RBR5h0$B@W+V8{aO|D1+NYN}Jw}y;=j4X+K@KY}&SvxNin-1__z}EhN z^{H;Q*+FyTC%?ut%!gBy1U^0dd5ODsSaP}U|8%}v&$3bLoqgb|S8ME-7igWPJ*EP%rnyH(Ov#-{7YdjZtGkx84rq(pP)Mp99K_@ zUI}L}5qjOf%w03h-21J01N7Wc?WbYUX|UW$$XK1au0_|%(ZP;f8Bfs~b=6nFP|lZ9 zl^meo=J~TYDbC3VAxrp&3{R=(&aG0R63}^cyUq*PcBCUmrYgvPe&T^}^2vn`^o0tI z!aH!rB9wyd3mX*z3Ep3h{`9}0yKoY50pBXBKVwmtQFl?@)}dQ(Q5-qs8qCpTzN<72 zF&Xr9P&OK}v|bf%NyG#lT97Yq3;Pn3f1zPbK4&%(YNm$c7d86B!nN==!-GI{gLcBw zy@!P$v@wGQU2X(4qCqwHouM!EAT*N)RP#&yFC!yD43)X!U8tuhcpGL($jUK(zU17T zv9ePgntqy1^p-SQtLx1x6CQtHmW-G+cZf$eh4b}4Uo!RtnK9EjIV)_KhOgDFK9z00=>WzIb?A>8HY33puH~a z3&y63K__sXiPp%z_Ogn8d< zdssJ9#1%HW;xMi>$UyhHDgNVc>j5{TQXQ#b){H}y(KlbrigWCr;NU;%7&Z-mQ<*3( z#xuT8q!;8BHyT0`_v@fCD*`>;M~sfQ-Zn*c<16*t>+`51eq3#3h>8raD9taA%{g~K z_mEbDS4&ItQ?FQ2eiZRU*{?!lf{u{<`e9$V1XcX9pt(gUBZAOhcapJ7C9rm~oqVEk=c)>@RLPPLIwPt5S;;)2&^C1*YMyag^^hz%*6HWMAEBR((qI3|+>{kbV zyv+Kq=eLmab#3i{`QY?m>IcB0_Ff+KzGeshqiqaHAY<2^JPjLOk35!a_Dp?N>i}-_QeL*ub@Qp)+*3 z7>y^wV0(5fT>~z*^ZgK+f0;F4K6sQBKSaUT{n+WKI!gAgd{lB;qNwpWXe{=|)Yu8r za;kg;*xk$D)NqqwdIR;Zf?RLecfQLtPU@YQicmuvo4Cu-OmDXUuKJ>Ok!7xlDA)E~ zEfti7X25(sulSs($7PV}KCtJTOp!=$dXnXJ_(t1X~c%| zV+R#n5@o)d{iBW&UAI)L$w}wscXTua=d{a7aNfZ0R=xM9gxKm21-5Az8jsgSjYt~r z;Md4gWt2ogXsQ#p1OW5J+fbLc9cCW3NTu_ZM&}FSA-uDdg2xyjgrfzAJutCBk7oOqnsOXKZSsWDyuYyJ-y|9~yC-EeM3Da;S-64~+M z5Bk&M9|%Sh%vSq`yG*>~Zeh+9$p5tczO^1;{6mNTatkhl_B;!1WLLhH1QgiukMspY zE)$EI;&;VAv+eQd;ej3hh&{o-FUb&j#yKsIpvpPb2X_2px+r*uru!(3beZAzQ1>q> zV8=f~Kb{;#x;SW_799UT9@WnI)8Zd+?Io8*`hC3)(M{<@;Gffg?Jso-BjS_zHWRO? zEc^Z!bk1*J`%BM=DvEt@?e?m8pp+QZA?p5Xe<|QR%eo(B5EF>XJCuc3?8vA`$tc}4 zWhEw^Uw`$kX{3EP)&tBJ*Fr!Fk!DBkt36;g&!=q@w9)(EWIC$Ly{AmE&C8l~^H1+* zuN3SWlzP0$ID{=B@NN#f0OuE0sn`7AHlR-ux+fAtays)Z==snj6omYL+}g1-P8?1-Bjm!U5S8m9tX#cj z^DhV+{u|1*=%sCs^o20wsI|ioMN{{I2H_>O?UNXFkr!pDxU`lp?6>OtwLOj+ymGe( zm=5DDQEi{Cm$`rWp?H0bp6+XDYbX4Ml^R2|sc6|m&aP7)D~3O1V$E~))a+8<8)&a} zL28O-y(@drt=1ogja;ge$WqtHzo7GJIi*rrisHAdAE+{6pjeR^5?fEc7u|asYE!70 zysbMK5nUNhaPgq2qUXn!?PEW^&7+d!9mKKFNV1rOKOjTTfxnku2fp*;nj-K1XQDyF zN(i(YQsi~*L3QRsg!GAN$KLFe`BgpkcV4S6qQb%zSi0{s59ky+e#%Bb+EDP_b=3ju zsl6uTNr`O{bLY=E5TaR_T;C0~LOs|PHycu%XNlZrVEL!@)acPCT^YW;LtAQ&xUpDr z%W)oPq^`r4^%1|^3~3fMlmO-%cP(#@uWtLi3`bP3ZMU`BWPb-48Aq?FdR)U^8d7>G z^-trsf%X05tLdm<*5C@Fr!5SICmnIkYC6A{8n;H71K?!L> zVS;Sgxf#Iyl7Ih?ol2tk9JDbFru*7760xvc*$5>?9w?h?yjFW%gWugR0l)vD%yx{g z@?}S;ov?TcwuxRZFY@N(*rSn=&y?ss8;)@N?)P7H`r|S8VgJIvcN>?uef@-IU+|Td z(Xs%qJ4uRWs*k=_#G&a_;z48{l5@&nl#|xl6kTR(LthF- zIO8oYjmrG#t+rQjz9A6_4(HnpTCV%&Pr4d9TKeLmco#-E2B;XM#0CR<9qjNeIJz5c zoFDJG3FC0(KX$!olYkCCW;hyo4xa(@B`{fr*)`mF8nWch>}NvbR5twj)p%5nV)vp5 zMm067;|Z8AA@U3>Z~@;6+LKyQui$=DQPH7l+3AOC_|ilVggkTw*zeZs8?gH%MUGL8 zlldaIsp{KDkK#P5rY>=v*u64*0;;XSPdRBRUuCEYC>t zFH6Exgri+Qp5hULwpXK)%<693J;3;u8*ZpA&G{O56px&_`7p~?a&f|8bwMB9bB!!U zbVTrie_HQ%eiUu%)l~fUBBEn^0;{(Z_0 zj}HpT9-gOoeXtZd%krN^YS$#$zML?UGF-M%d>}mwRlZ6 zAcOzz`T3tdA9*exz?LS-)R#Jc#Vi!{&FxB6@!z#qHYTx`{8I)*r1@kiF$GqUe>xw4 z+)2eerO8T&RL`v(_sbB8-{p((i8pC1R%~OGX$$RsU=KQo+ht1~IGswFlAnv1x&dJ zW5=42Na7f?kkZf;_(EP6H~5>;;^?M{UNZ2>)rXaxP(0V)@3w!8Gj6?E{1y}6P2u48 z8PO2ZNV&Hn zxzd#R5%yhr37CJq#lS>=Y8JLUjt~n8JETTtJ{hTSI?2+zG_JOp7wU%UPtONcS)0xW z)=DC*gmtA`(S^dp?!GnXfg7jYq4aRo@f^ke%^V4=95_tCUxJg<6!HqDPCQKkAeeD85){E;VN5n@)%6DlA zqA0YbwEQ$IZu2Zx+ZYKDGuzCEg91&`JO4 z@qzsfqM<;hBXb&JSwoW|YUdaRnh;^3)du~Nx9^33zwWO6%rHG2qZ{)n@bbc1vQ8Ku z`1?OC1Nm8P%WYxYBe+j~Q=i-LqZamg1X$=0nXjbw3SKttH^nm_+d=Igs3sDggqe~iKHZFA*hcwIfZ9J0okfnw zi4zVDmsB1-rKpDeZT^8=o=YXH$Jc{BR*c``NB6+Lt_%UC1y(kTb@6&(nAAtF&lnR)6FU8J1Gm5Sv>qicD^;^M{BSyH2 zlUfuGU_g7)p;0q-@p ziCW-)y*~!d54b-LW_Rnimmx=d;YvfuBO4g~Z|{$R^8xOUBbrwX4l3>^`YYyP3BzY1 z{_XuSa6aYpg|u9Rv@xmM6l?0UcaJDP$uKwQZ@J5$5VBT-J>$`lr1;EK#j%vBf*$x1 zQlGv52<-oNW#D}$Fp4mGwPO_vE#`v)W7(hYzBV-AE>G?wz_2s$CuH?E{BHmM^!fW) zo@}({Iqx9jaB^xu0B5&aVa3*WZ*%qo!)DK7a` z9_YW)gTPd^h)>Wor!p8^AG&qdP_SD)t0Vp67tTC0Qg z_YHGyc34c6zEIpKl%ZH&(&m5@kneqMP0M5H$8M(8fY55m!>SHX%AdB6Y1@!HM}pbZ zP(hqL^Ssh%OH?v;FXFUE5+GF=xe)%xZA<+k2{O@rwR9G@tSTiZwgyxcUpy0w!l%Xmn&0fW=3^9w>g z8ab2U7^QtLe(NOYvPT+%op4-Ji|Q|#?%r5iq0vMHd|UfRE<%tWGLymfic`flhsUNmU zxCGic1Vy$gNFFBu%fg&YLpw9Ko}ZnTjQ#-j*rBktoexP<80$^{-3caw8RO6K%kTzs zXL0o%)v6#N9G zD@dq9l`JmmFpYB*aBGzu)VNaVWqK#d1tmufq_ zi877q@7fnVYti>WjR!-lvkYDEuj~3FECJDPqD@IF}8La~~f3jEmQy&6-tw53{ zaV}Hy0Swgq378Y-g1$Z1c&Yx%*Dc#rPf+tG=FrzAvMV0>;w^Y>EY?ePe;a>dtWNgm zW~qCQktz-q)bqLv)cgq&D^BKn^U&xo{u=Z*q2kJ*=1;i%V>GefR5>=~uikO9|NQx1 z^Cz`O4nOmS6Ze|ZDtfbW8WZS_f?Sq1wMn?6CblVOIXeugjNhjh8sy%2n% zbERP;eh)hq9(h2D5SSEh5r{OcWfvGZOo-em@(Sj;_;r*$tB&sUYC)mS@7{&lJCVTr zClj2|FLcKrUo)Kg2y!RNc7rQblbd1$u#;nac|_(bv-%_{$7DZlcsSIW^@b<)h!80 z7X#{ufZdVD9sLJ55rySRksud+XJeXi2`g$>Uv1HEQ?G|kPUJA|8Pe$y7glsns!oYZ^=eCH$5Ob+;g7||34@{O^JS;vj@;?7b zm{N**OpNK}`Fy>lqqfz8G{UHc)>Utixj8qYM*Ex>y3gb%;QIq*;C)#mTJ?K7i=Il% zs?)2YfN$x>R!M4zwJ&#)$fp*Gie++K&EILHJ~+N)mJ#-{)@Q;gCi*mb-^PSdEpRi= zu7$C-urjE}y)P?YsKfNd&L;D!N!uii@p#X73EQ5FUj4`0B<{obv?$npWm*%x{0C=A zpuT(~j4q0Kzd&1?X{a*SN5?!7cCn1ZurctScyViRiKp@MS1z+A;mAF(1J`8xL!b66q%t^ zuDOu`A)KI;iJN89$U|2?6*~h)g5M+BqkEg7&cJcxUeS0ubh*V}MRM!-pMGy#hbI&Ai^bC)EO zpWX!)=Glq+3Ha_>R|aY8N%g2QzL512PI z-B4}68$W+Qh3WBG4$S!{wtS{X@%K^Z6aIj5w?Zhmm!@IIWr}JI}m0E%CrbyW=y6?||xtEHOJi5S=uWMOe?}_b^=y@aMJ_1B0{$ z-p?hP-buWAiI_e-ZJD@&oH7OcK7aUR^cM~~@V5M~2mvkhoFjQR|ASH5h+w$GX8H0b zsLW3qie8-68I^$;LEg*@zbKc5Yzs5S-nz`d8P@L)b-^_=uyeKa(B=8ag{3k&C=cim z({f_Q+J0ba%@xb^j28gv6Ho@)bKv*+x9Jyw`OQZB2FsF!FxS4;@f`$EzvhM{($}3t z`H*7jS*0tRV4u^kyY^;_9@g!KG}VSJYAdG&;QIWoe(6Ofi`=kpYD6xk?$SV_e?S@D z!2B4+ZkW`8AUsNEe;<1CzXAp)yu<36Q2yHuP~~^#>MYSNhB_Um)Nfqew0kFiYNrae zUzAvt39TO`V^4#d2#EFWm~FEVkM4vM1R^tpMXpHNTfAL#bHb5np2;)5*pMTl)W(0O z@PQEhiJBjHU+}s7B7$5=u<<{#j*~A-S2g)YzAN9Fqo^E^P1Lgi0HoZ{DIVGL3 zxBm;P?Nd19+g>B@Dop)oj_bTln%n1QMmF=AK3@Gv zQ3cy;7Et?}B`gAO_R{oTYNwD-4))(Ff43gW%L|esh{$~*(GZFR{ufZKQB``_c@r?n z%N*_6cFEQ0#46=3WDr>|z1bVpmM!;Ol$H~sh;WPOJWKm1v$?EyWM*06UMo#Y=T9!+ z`IXpD{%$=KJhP108rgduYAZ&M6gC{zEi|YuMp1mBShJ5C(HR) ztThM3dda=GW&5w$&VkoF`sMl@EHbM|>u|RcjQ=#>g}(Engqz<1)?paY5yP^mpZM5% zm1`z!59VpPAHR+mA2nN=s*76ah_R$TEw+;j8&2tcAs@zJfn6*MUZ6USM4T5fwU^ok zMbTY4_@Ns&$?wK*>6Eh2-!A9p=HBpkS$rdXU%xj>7H9XO`ec9NNT~Khp*H!jTL6{{ z4fhXBv@i>u9(vMyoF|h>P5YY$u9HigWBe2WB_Ap&zi{y!Xg#>(DHBjb^@~~a3-B9D25Un@?rHaI~Pzx87LZon*(#(21 z+jSN_^N1sCIa+-tG8q3f|JH6p_o|ZdmD|BJJGoziyUyQszU^kT6l%lc(9sN+jRDzZ z_pjf#0orRIpN+fdq;T?)+Ynb3nQP$5N(Iz>_F5Wq;_|36saOB_b%CK)9;o?j!Ve~& z9{Jc-n_GPHyyn+AK+R_}p6MnJu};@pHlvPYqJ9Sd+xYDIeE~UP=&O8P$g%u&4|Fx4 z{{7oB@O*pdE5{p-hvis1D{$RfU0E1V^VzI#Y)8p{Y1?kgA|K9JBQ}7V&o-g4!i{-& z0VaAu;ZQ}ZzYc0X`>vE%hqyYo$ytmFc?t2AHmLb*5mAFTWZ%qheXOOxK6&{||80CW z66?9%v8#Zy$u?sQGMxxVK~LnwN)BA<+rWs?ar{=Cfa*8ohhnjN+C&8SiVR zT(tUM^Vz`rfVk#pjM_-tyZo_7CzfiS@}RyCn4`EKddP+)&3WLz@`XTk@NdIQSX}8s zwnR!e#h7)nuyi&5dVDI-KLPQQnIB@WW$Ic@MZII@p#07)sPU433W+CiHbd7h1?cZe zLGsi8HD3DsCR|D*d^ujIXjaT*dm`A2=0>^RiI=QfW2EJ!6`9|2d{mUmhZj${3*#hF zGVs$i&4=($N$xpZ5356_FJJi__tyjStG-0nC?B(1+Og1WBs4ZqxhAx(#T&eYyJ5w` z$($^-Hl*Y0)F?!!bBOoymdB3fMaW_w@?)*q(gOd)I`4LNDZObnUZMQRM7*{wZj+zVWl)~`Qp50|kKiwhadmd09fHE*1^ug~FL$2C&Ut{yk z|4PvEo&lf#w`HKdp3z4(-QvHwVgER^7`&X82x@&re%!GHV@5*bN`S*P&z-0Kuk{re z4_fU1(_@p!$%#|`CVWk2o*&fszEmEzma`(F2y-QmNp3rb{%^zgiKUQ;HnKKa!+p)3 z1qOoS|F%8@`v>BCI)lz6!X$?u91IgnqogkuK#lKb%uYi+L$e48&5=i66Fr%M8sB$8 zN$`zb=^_iP8Rq1<4VC`a_#T+Q$Dn}~7wi^Y){Ur-ynEA~tf!ALMgJht!PLvPboa;b zci)69o%LUpLNa_Y5UP2;eZYDpTjgS8wqx886TLpJ`1;J3!1KfJ6Q5U{quvpoU2?AQ zXpm=Uwu#+dR1m*je<95|u-nE%=lG2UeBylcIyzF-$#v!fx7O>7txcgvk`kGVftl@b zFR6lSIscm@0zVvM^8hN2yDs0Mud;M3`#BSuDlc@4tfD9*cC8@bR!*y?O+M_H4kp5;&KhgjFs5$AtUqFFo+ZEy}}*L%h8@QN`0TFmi;J9$;s1wT_PSNeR*OL00DL}*3 zN5=GJXA#{VLB~)vScF=AQxUrQqRA_t{-f`*EF+{m2wB_aE;{sjJn$uF6IF&BE9*{< z4R9xoZB983Q8vc<<%dvwwPx&e5L;}Et9fWhp=2}sOH0e1Qc`4oy%#w`El#rzEcEdG z6#h;?{R7G{PcM;eV+J>B<&D7?g?#fqnQg%nOMLrZ!X~ixcEz$6@loub8^P9UcI&?V zdcml0L2^V;iPWe!5#9A-+Wp%~lkgM$_-LBED}ex+yFu%wpMv-!2KZx-Z~iu}C^3C8 zx;Tb2Hs{0w59X@rp7>807$80==+>%k$gIJU7$K2f)JrmhXo*k$gcnL_M+6bxSK6p> z`bl)i+QM(~!m(yj^S#=LH94mFr*YqK9H{ckLX{FB;QIjO=tCoL9j*OgX;)+Z+kF$} zBe01fI8*L<46{57u;Fw;^Nt~m)<}06dyCROFSP?)|BN^28s>z`!)9S^uNGh~=`GM# z?_6+iNDm(0XyKPoQTDz2AklJ*|BagAF7?)@g)$0=&Ddi94!X`D} zeE5ilVFdV|_f(KM(o9nzE^SfflccqX{#H>uhhAIrjdc&qP8YmW*H(cmQY?yP zTBF7;hFdunST7kl`gWAsIA)w;=S)djR!`BPjRo* zH|9-Lh#+xU~vZyqr6$~01OB+^I&7%|BIw*CP72l6MP#MO7O$TcJ0G+EG` zB2@gK=1;OP*||pAvpSsvH{lffSgL^d1o%FGS_bB?N}k9|d@E(qQ1d4$$W))FQI)$lLgVQ*Lg;7zHvZ&`DOR%#STT%gy(jy0 zi0%pyFa2r#0rm&POO*FM2Vd=<@U%makuDh&zJVGq(T05$EA-d4jW4BWrtNE)2Q^;O z3rfigwGFT~HAJds7w;ScHD2=C2tbJS%4z=U!kMlubxRFuyo4Zi(V=7bF6PnNU?<;K zL>B%~YH(>(E8FV0sR)Kim`IfivNT*5$0#Y4sMeL0#=V~XDQTv{Tq1TWD&`)oji9Js z#xneh6ne3Gg1VODr;{PIabIQoW>_#u-z@#y$UT-r{Dg|gE3T&f;18ePpFs^NAyHD; z@y9Isj?>+>9Za8sJ7Njb4B*abzFSRJhjXwKN@qNzuAY2@g7nL%TR}10or!U+n9|Ra z1Ih@4Y&wC>TThFL-%gf?=Tw+ll48+LCYMnp-u7xr4a_QpB6#fK1)pZ>ds43^CrtcH z#xvR6aqGYqVhdqmx6#;AN;7`o_XL!k8!f2VHu=0+HC$nc?;6g;8{e8pjr3})(4pnz z`O{Z3Lq`fy5F=1c6Y~$SUFvc^7jKZkj=Hn`61O28-|`kMO`2WoGg>UldFl=o)Q(4u z49^PdqI;}LpBjnQJsRw~)bK>a-4Oh>OYNL53jf)io4jCg(PoAv5{FHyrQ9}tBFx^Z z&Pu@lQt|ZnU63{eiKeI=2+}C`6iv}z-MF}S5|P)!r$oM_vH$c-!SQfQ;B_BQIIbmH z=@pO7!pmYCR=P{<7_H_3??zYv?uqAy!tM`1h&973-Bc74W$&vK3e%4FI#m`n5Ao0>CC;VMxl zwvh^t@2>+3|5xuMiyDzPV(twVRoxpNm5;t&YXiI%3&V&Cmad9)D_#W z!JEk}yX#sORLkntjf8HK6$CSufqF%QrBP-+^D#ID9`Wzrm^rn-+lX)zhrpkUQn_g*4Bdu#xPOt$7qI zS9!wLx=nc>VV>S$ME+GCW)2co@wKWBDnrj4UQ4>A)=wGC#A6x#r*Ng#wu&>4v0s$} zHO5?Qy7SAWOn!OjtMpY3asH|a5kVQP@)dIJt-&4?n@TYKG2~Rh`njnJ_4&(b7rx66 zSfj^O?h;S0zLU?uL^nF~AnuFK-%L0hw$o~fPUuve(I#N=_ipw$lb=2D_|`zOZO-84 ztorkOODK)){+#~OosmBrNq;Sjp8OI6!3q-|f}f%wW`G5_en45sn)V|S|N8{A)F`^A zAlvU7-|qwMSM1Vat!#z4Yo7>7!zydPIKo^MCG70IgXe1er}}wq*EYpK7>t9waf(R( zs7g^S`vEHvJ!XXa3Uk}o35o_5L3n|M|8&|QfNw0F0V?{zPZQGp^Pp(f|3`e*UwXC=nS~#BI%+hc*kXBJJS=XtfMtaM6#XHHyZ?JOlIE%{I}`x z6b7VIlg#ZY#b}k0ebHD-$vwu(_53-OW@ne3>Vf+EoGfsk#?SPC3AH5HhrxH5<@tg6 z?TJWQQ==pEgSNzDRIOWhA4vvF@R00myMWWr8|&xt0cfH+^(GL6uj2MEw2@tJ<81IE zh8&=sEVT`wzy*&Nv5vLu1`~-!R?=lV)gdTa*|dU{wwty&x7d3q_YTVrG-*|HOP&;@ zE1Nau)shoJ!vpKPx77Jq6mLp(ukJ7&z91}UU0%WM`|xUiK;`_>V|xI9|PBJ&J6D{AgU| zlIj^oO{be_$Xso1d#*kL@BhN-tDHUae>#A#s;;!XU)}O3WN-caE@HyHjo8%b$*~fBiPdVPL(9 zWwBU`qDM0&6Bu95VATGm3AUogtk#TmuAeA}QhfEgJQhW!0pXHJc7!m_N;F3PMEDb4;x`BUcNXmR$qX{9Pq^lh?JCN&x1FNAlW1KOLy~ zyZR0o{^7&9A-!UWJOc7zNKo^4#Pyij92t2nRt+1Kn);C#e;a?7u{1g>=|Ugz!Q^^w z$0_pZzvl0bG!n&Sk_GUv#xf`Bj+7jTer}~^JBr zPmvsaxfbMwFs8$<98CTHlmB+=>kQ3%*hoe2&X?f$=kVtykc(#=g3w>#C1Jeqt+wjk z)}G29{8|*gHQ(GjAt6XFo-U_Cj*~`}H*;L?}<&&@cK{IauN$mJI+wrjGud>NzbXAdl75XzSYyOK;jV{a7ej^;uqfsTbL zVh!GzX$J$Jw*GFxZGL{B|FvH~B!2Xagc76wQ*SBJyChGkMGaU+sM~9F+W=uxM+y6M8DgvQ= zDxbwt*{Ct^l&DXDOdCVdL$7Z>iOM!>$Rg>Q&tz-zg=Vv3Bw6?WACj-)+>Y5SE7wRc|WUl3=PwFGM@Ffo#&n04lZ~J6;xPr)w&yq zCNMwuet)_hc%Dafvh!ho8n-#wE;^e$w$K68=Xue)!TeDrvBwWLOjjRKv?oA~2fR%5 zG>s??%&8IdiMHm%*+7j4b^?A_)A+nnh?&c8j)<1h2Q?n>Cs(TI_C0SN-5=cjU(&YP zzYPy0w(5j18X)e~r4w=l_2lgS*LVPUo>#z>Zxn)iz&Ipu^^nSTln3hbJd*Mrdz9sK z_d0$soL>*$L4N;9O&;tE@obIW@VDE3K2tw_P@m^PvFrJvhmPm0JR(jFispztTxc5! z<;f4gF7CrE(*?YJF8|k9J1*}k1$3A58Gm@MmNGtYzs-vLh3k=C#MS(JX3T+xl1+h? zWBmQO#5>vRrt>x#@F0yK$`2P=-RcNd%r#vyKgj&n+KxGUH1c)^x_vdj`Y7Te;(9_C zT#V%e@TGyX*(QanFG)+i0>8U@h~`?VOYplA9&=51TH|0?@4=?Oh5Mq6i6gY_M^G{e2_w?R^15=EUHGV z!*tEIp?vOsMdTS)-~zrCv?sNqUcvv)!-d}tN?bUAS8%?zb9h*v;)K`QYm}X5Ha9x+ z$1T6RGQ@!$_1;!^A(>7g+Lm@N{Ar8QRk=TDKGS6?Xk)UF5hMBMw8^jwFN06NnA<@1 zQ4?w1lp2IEGiw(@ek1dmfh&`c_pVWnOUL)CtKc_ax>M7?eo$>l;}D>=V5D=V<_Ev^<5?HzVd<+#sq?0yRE<0J}0ZhE|l2EZ%vw?Y2+}YJ9xfP#OAVqs@Ss zg4+AdjW_MzhL0WZ`N4vcB*?3*$#-cB#MwcOk9#kW{H`v_Af0B15#9^MhJqSzlo^&r zT2kBgV`24u?M!)Oh3T%+$8{T&*$K!kcb1RG*8# z4R0tX^M>wd3HjmikrfCaKsx!#k6j|;p77~-oQIIUa>+M zYbUC`30#AtDgrg$U>QO6AQW1|nVONu+f^@0r|vNr0R;H8lTRk-tH8? z{2*%yYCiGo)J9C2v60t#8Vt?Z?Qs^=eB!Pf?_oN}>SMssdDxP{YYb51rSj=_q^m!e zbZ`V@*zT;6ML~_1T6Yiy!vm=m&PXb;J685J|2DitqHH*|7v}&=j6TCE@+;^F)Oe{) zVo@_Z_^W%z>QP*vS34}I@se5%vV;)^Z}w{w6IybkiX2emr8Qh`3q^45T<0`dg`4sB z_@Ks1j(2C27`I&W#ugVb2@`h@e;Zyh%c7HY8$1Soxt(-TP@#$Roc;gP?LfR#Y~OTa zPhS$gq5<(Ukk*0-)OZPFL=f37p5mf%%(o0n<|7=a@e+->!)ry~h&X>;=9d#;FTg>K zmr91|OZzZn3SMp8n!uCodj4&AsSlOzpvs%U5SzvUFDiRv^H1yVbNvDF(ow-YOg6vq z*au_0?VI4(N>JmaU4~y59uW9=T7#6*!NV0PpvFrFJy|#{!PlI`m{K!gvxBmr#!DMZ z>lceZe%ezgvDU^Dq4-O&qjr|>F`H)6HVRnjN!u9@=yLy5q1fVO zO}YHt__IHK-yJ0)*Q_0T{0O7W-T?my)@xC5_-p3I*AJr%!QL5XM8?xkH21@TVN z%@d=#P&=f*nBRuo+ zx?K|XJCz8%0*R|OuLymjTw-)mJc@Twa|^pG2++(PGx3p8lQjicZF4Eh4!4;2;8N;{ z=PfKS_pc5G*9}H8nS|Z1!sSXgX0kogaqUU!f5GUxtHRN|Bel_mz8Dl4RtZQzV))&7 zq@OEs+(~LG6<)Hu0ym64bn{W~!Cn|J39A_?e!AuzQ`#x%Qd7prDc;$nT1z{2u+H9*|J%2)#J;qI>al2Nq$w4^4H1xU-=!p*lCCt*Y{aaWS2 zp{C!N4k-$lbR$G6=~!Z#EGnUQT%1ctW@Dej7r^#+R-PM%95#a@`RP~zlhn*I<9-Zy z*p0as+wT{XCdbMDf7AC{g|B_$%O z_lFwG9_^6=n8|GKOTCiM#zLbdp>No7cCp7kgqV;+=|tQN2oQ*I4<1Jc=ix<}eSEH7 z-!0uRJ0#MFV!LbRkzIx8sy`jifysK;6VjSeI6!kgQgq7I2(&NOP!@++Ut3pn2C|{3 z$Aou*>-m4;83FbqL^6|gGV?GMWs5wMIH6nfckKsiW{sd2{K!`!?h-SjSANO2Dl%~a zFF#+hkVXeIAW-clE%T&MyW}r__<1bd8D5+BTz+N)nGY1-5ANZ1`|1&iXP{oL%Y@xu z$SziDaU%*lnr|}v)B3MuNy2Ib>T_GIa5(IdwM*&1_?VGCLhKWnw^lruq7N^%eZHZL zsnoJaEel)34K;0{74`w+k5 zC8q+U$9CNqsSj!R(!Tg#GJT9JePYV55@8Zp&?)0vgoj?*`O3mc_iOf5O_W~maIvWt z58jRuBK$PCQxtcMetISA?k4&$!DJNjoY}l7&^`iXs?O2JR>;XjRF-dH@cw79lG%Ri zQ8|JhX6FVFQA=LSW+W3$lbHFGpP^U%|emCBo%A1`W;hkaT+N04Y@Nj6trHiV~6U!qn z9MoEA7Un4?~4Pna2!^HvFB%`*TgU! z(`M=?PF*>?b#Nt9BRW4n=B@=DRE85=JZP%u`LSjD*iUcss3ds@aV#{FEGFR($k21( zODu>r9@j=H5@)E|)99(K0qt4M3S?emqtJnp+B}sYn~;Dt{?G9c%YLtRu9*VckJ;+a z*)zdqvA1Ls4Ta~Q^^hGC%!EIf;0{##;AQYa+II`z4q^lK2`B^Y*+=Un z2j8?tEMw7ae{07*T`ymWp`npsa8TQ`=jvGx*zh(u6K6x;atc6}* z+dRC47*M+8`{nE&TW!N>Kg}Is$XV$n%q{MVjPkqjWY5*J#;mMAt|QIhf{7#W-yB;IIcazV{rT1bwNk9!qP9&q;ZahMPo9fASqH^dNz z!2BIx8mBNvh0LdhO;q6tInx%8`xTl(R*Y&ZndW#;L-|~cIBQN>*0mp(&Be7WmolsO z9ZvjSAuCO5qg@WkzxsttIF{nfE|_=54lnRM5&itFj}{9T=4=)+xzUSZNHBIUpguh( ze5TWjIrmJ#Q>J{m&#V3IF2X>1`bG3G(!xE?J#R~4WmGLXr*kyrtx0s zHT~{*&prQRj?XXhn_Vh>k=xDwL;Gg=d?76tA#F_RHpQCy?A_xIOzDsAUhB5hw|*TP z@Z%-Z%NY}3qdYq|)6M->h`*lA7x3Kp!1m%|{lK4wH09P}Ovi_~hgUfD~W2Uh}#3t9Wzn#woI6hGRPU^BA_=ZTRxY_I~8A%OKU&dvKw$(OzHm4oT)Eke)n-x(R){<7@kD?6F*6NEI`3>mI! za$i!H%m}4~H@39Q8v!SVY{i=GGx){$dPVO%skjREKg_80r5iX}WLGZueXv9MWo<|%~Ri<|; z3P}s|xf!b%ZCA&wyE~GpyAw2ZQafDL+(rQV`_nQozhlPxl^YW9l>WUQ3-dZvm$E1d znViCcJ4!ID^^Yuy7r*}W_`v>v^@?sqU%4LtWX|DBNMXrp+vvgF)Uc=ujbi0M4oO~d zsO6sIl z!%g%`Jp4v9$EMFP$z>Z_|AS!hbF;{YZz`J)&;9;Sw*${3+|O+)PEwbyi{4`ra6NFv zkg=e#y{id^6I-`pqE86w{L|wD`vb;@GZUK$NODNC)@5~+sr$0)6RFL}cK?TIGE}?H_K~ zwOk5Bm35TL(jBPx-o%62Ka|UZ7yp7jE>f6HAsae#ko?>HL*7Tdh2rTKyvk;eMG=z) zzs>&wzt7*5f&M|gtzItTH8#Qov-jk(6!{~l{R4xyX04T1Fy{sAo($VnY(J>|!>Gi{ z)CRYhxA>2D^eQ1(exUXbZ|x&sE5jVqJ_`vN4k^#Q0=0h_3@1Sc|M=loMoxLx+SA9J zYifxNY|%7C^fiTZ(T~yJe^)>M>GSMhywF|TC6 z_SFCF{V{O#$iWX_+cdxyxsH4yS_Wl?+AK?DDzqw6vY9+pCf`iQ_cRx!q6R3axwhY8e#Oo%VS1;+ngd&Ce za93A%L5-J;?Ddqt_>*O2GN>t+?PZ^W8ZQw_OVDPCSeFTgJVE4?O;G>Wcu5qQp;WH9 zkpUr`pp=Q5Wpk13Gsf#;{yY3IBrFny>-ZfQi8TJu7Mhs-aqO=I?wn!7>KTIQ z#|v-9$a;DzjiGGxJU+GXNH<1X!+)(|x1-RD8RqmCbjV8yWHn*;m=9ptdLF9*DsVVK~Pl zEy_{g2}2Wqn>~4q$^d8eBGRQ+he^&J#6*8?z5jGO(4IIZew1;eOihnIb~+=w7}o~1 zJ;~^C9Ma#fnvlrsIP;5O#Q?QEF?h3d(~O3Qz!0H+CH|H@_`kL%Kz=SafeYH3R2Hs6 zC|PE4R2>i0`>(b>_32bY!}=U^(u#u*IH{WymKwF_YT`f1NHvPwC4R8ePimEXf1McZLowT zQ18El?&7$+D4!5^#wDB|a?xe}w*42le$n?Oiq5{t+YV^D`RcSk?Ju6|54iv0wnC_J zMB5q@&D3P zb5dC}5t8;R5hYi7#0Ng zL-l<1Iltee2ajpxQ|8vU35DEfgUrmtL&`(U8hWLI4<16U@Qe4NlRvdn1=}x5tjdJe zkCL&c!A%6jdUwpWS%^n>!U+PAvG`}X8B<&8vTALL@$$}`mS(9~2u3t^#G4#N`a|2L z@1u{RVQUlPd-}m#T!?;M(6=~jfSJHhqE?H{UaZb0R9Q-YCiPu4AXg1p+5LaaomEsF zOVhA}y95sqg1fs*a0@|#LvRT0?iL_8!QDMLL4!kZcXuafaQMIfcE1;_tdnzw%UU(l zJ=43o_ER<8U8a1sI)?GNusoK>Vv+{^h7GPWmjX1mt{?rCuk`#Xu0;i@(@oVgqBf3k zeCJ_GoeW%2j-tI!`^`()CUZiY4BrKd{HcAtR^ga5$4A-LZNarGhj$;CNs*?2;xL`Y z{B3wS$I`ZoYx^5HUM+g5x^YKNdxm>&E1$~8q}qE|Ha5coTz$VIWoj{&$~yrp>_lFR%8kt=T z`5hT%v^vys{0LK-9Vqbh#RMmOm;lemsns2|_3*UtP-7b)>VJ?hxM;R%>OsPd3zeCN z>opeiD{$vg7x=MkV0G`-n`5iqQC6;#Iz{x#{DXAVi$0>K#^)}Qhzx(Kb4k6BtWS_q zkc)wF^JZ7^_d!E&YkxE@83muPClNnK2z;NinMQ;l5d!G?N~%CHUsv#GHW?fj`rZ^4 z7}ry)?17Oyu%TCW1S`a~ZNK~?Jgi<9OA55Sgtn+b?u3vQe2I_MH=3dAeqTaroo4Zgg znDcstm-Zn(va|)8Ddsz2a8!OcHcPDeH9fn-W>=Ri;}-=Lsrl>|?7~b`I8_s*hK-C! z>|e&88b4G9p%4dD=Gvouud7mcBF;<6LM)Tj3fR|V`PxYlMdzUF2ge9AhK9`8G3>o) z9!>eB*5NdWb#B}4LRr}u_6B89@pd!epr9>fyX@UVe7GU)8!dyQkh?Ivf_Uj1AjIWd z><%g{u%RM9Q$y0Fe!=`cAOX5wC$9b5ttq8C9$K953psb9lvo=I-gfJ{@R{YN#;#N? z?5EZbj>Oz~2CtDVE%GVjk}71P%yC>^(js9}XoYrYzgZ2%Cr5i9OIsmlyfe7{+vXZl z-P7iSyeE$%7Ux4~OOYuiQr!XOz240kF1*nL_dyo~{hzKM9M6NSBhq;o`6~Vi#}HpU z%07QwFJ+0+Ad!;S-Gwv(_g>0Jz3e+9xqrk$S*&TU)1Qtf?wbut(`B2l3Y5)p`p9r1 z@n){rA5_5Xat^L*27i3%yIhgo4aeZLf$t6_ruoVY)%M}ACN~9!ezi9COI?O%FAOi` z5PVJD0|z5ja^J$^6!gp|Qfd43N;bjB5Ln@_e&Lvo1PYH6QM5%C^wIHibf&U($;I`M zY2jfrfpZPedFuVb84kmif$v;JiHR)NpWM%#Q?DZ2Ud494P5b)X*N^q56j2znq&516 z-`gCg+hM;Sp!-FdzDF_+XbzN!>dIHh7@pd~!tqv6`OV>8I1x&VVJP0~-9sh*q%fhj z^@eDOyHb-;55r}Z$Wtz-O}f^l6ktsktNr*w=e4WWDFa;NbQX6!==$)d_D6+~?J^L6 z>*a0sXSq;RI%pAGL-op`#~Z!Q@whS)(%j32;1)VGYZ5)eceUjTmGV;pUt-+PWv;l< z8^x)rQl}vI$oG@Tc?0IEg2zo-u0jdzU~>nyLXoD&!Xfkuxi`{qw+J=c^pkSZixRg- zdl<$54bP)`@4T&khQkCi6dSgu=Ibg4uHs73j<=4A`K12zD&N=zc~cEAk~LB|x_B2e zlU*&G8^*UT+MCBMEig%56|gi+YMjITVv19_yR8z4tYEh1E%^B^{u@cSCQI5=_0y~{ zZYD;x#l_)l*UtSZRz^0uRJ-S3zWDg9+|Vj~92eQF`uMV6$kf5Dp*N2H6-H`BsfNDk z<`&Bd%UNY?lgybZs^p0?^-U(MYP>=Dc8&h%t9|&E>3uulSfTx(EYN(rXR{X3-=((4 z@eXudrOI4VUoE-*t_`uve}>?H=!eCtk{gLUO}4)vx^i!u46`UGgc1zoR) zh*z^anm^#I0A-j^kkR}<>tmm?&wr{1%?GMB#m3g})}miA(7mrH%nt`TADD}5yH7|- zaXvvY`css=s1)dYpnX&tolq47$Kw2#rh&$*tF|pl5iQiu)B7x2aLiTtK7BBy9wFvp1(jVFP2y{Ns-r2}Zg%x-5 z!$*usq4&WE&n+Lg_VJ+=Z~oU9Dogf9)E2J(fBOIMr}u;M(md2MqmurYw*-=k{wiy& z{6O=PP(0ys2duTm$))eAWRNQ-C;rqv|LOIhyj1vgqJ&=~k@dYbvExlZd+p3V@kZW868Xv1abVzFw1 zpA<-R>FFf}z6`qmQa6<|d@Cl#vqLDab@3YJ1hW)|q3~H~j7T2toa~t}btxzL1XeF#b+iTg0@0*qa6a9DC6U~(JB%VOqYlUBhuH_*6 zXVlNOy|8hZW&gFkf`0GkZbHRlkeA80AirBRWeaWvn(xt(A&BiXfu>U>G-lK9^nc>=W zzgX$}45h+Q)Wg(twgYKCg6G%$F4dH$9Bqwhwf5i=7~M9_rw-(yR`^pKSZw2Fc1L1obWkt6I;79y!P zn}&sfh&%2A3_$zipnG%=@!WwqDjyn)t6^sup#5=u%!9p>NjdWLVN{c_UrR2~{&=kj zUZiz|VuaaC6#OH4NBVQ~$Brc5Klvkl{t=H+Qxchm=?Szyw*MI%F;vWwcrvG8B;zwf z2(&*=*jV<3o9EQnGrh@3I6jpF+8<}|BXEOt2ACyu4_PV7G8_Qyj~6SI&11M^!TssG z2c4kM2A*5K<*+E~!T7uI72AU0CA4dC3aEemw`I_LOSloeUFqg6w4uoBOg+!{)ZI*!>(0!M;0_4R6qi z17d;ZC85VE8AB^K|AtMJ_{8p`>T##!P+~=n+VI^Vn1~-`SASZsylToE|MR%16)E%N z*ocv@0R)5HkE^MT$b^9S=2pHcK~Q^6Unq}14s6R;{ zQ>qO7t6|i>N8cng8UN?! z*?`7h>n9smsy0fb-4(5zbR}-)K*wJu(GZ206l>~sFKk)8R+hz}1)aW*^ zY|pf18g$+Xv+( z=2&5pcic`)p@+UOYM8@xOETh4Si&yy9Oul- zrY{+lJQzX+Dt3CyKW;}Jk4+;VYvO6L@`v#wl}PE;qmnXA57n_gCQny<5{uo8{(6Vn zf>+!pZ5DA!1hr5-PEpIYp+1!_&QwhL^NA>$2 zH1`rxt{RQ@>)uBeA8mC8K3f?su2UfjangmNpu@{Gx;k_?`CpmY-+Srw3Q6|J)~&fo zAzAnPxE_=8#;k&y-Qi?%<#Md2-U9ubLc$llt#c7b_HHiE8;)q6@`obm3x-yF!BHI#SEn zStMs@vIn3WD*VH1NFdsNO{hapXM@RtXAnMO(oWkcCv&hA4{FP6Txpo?M6ZeG;ozvG z8Pno0*o=7o%Hun5;dE%)JjrI+k__n^DJGfo;exbv?=G+%;pDJU2q&(Yx{{#L)Jzai zZia^|ZY!hb9GvcPx(`xta9#b45*IItyn^W`IihDqLiE60=5P3+fQ*wfkj9d(NkS}c zg9TR>`&AMyj~a&Bt8aOEI;%L1pHI)@xk1O{DH&~b+jr`AL9rxjhfMiE|2}OG3}KpT z%e>48lSt5qIpaJ4lRa|lNJ;xJvbEr#x)?W=U*4Bo(mz5pSBe{)VAeuUC?8F6BK_)x zOVg}G&6%1|m9P`baD`_#Z*bAw#`}M|zvVN7%ZoSQa%3M08D}`;r!sLAdyc%>ZQe86 z7>0Wu#jFLdF~xfbzP+TQ758bEz+qKq;VzB%+Vnvv=u@+4D@|82W4MK3|F`gKD~H3( z3`&9=DL=2$%k@Ie!xlkTxg48uYe^@2Kaqn#+Ngy2!1At%`rq6thpzU1EMh7I12Ny8 z8b48oXvKA!wkd+zvvN^}#Z6Fq6Q9PVhN)1%9P`&bxwthp{ipL$hjI?AvaZ2c%m7v6 z%=)-V1>3l9wOFJIVy;L=7R43*WD@ogq(=+f+$*{xx@W3| zZD$i|##XGS6T9`){?p{u*J-gkis=Jv8?j%qsA24?%1d|%-?Hc{xtBh8W>xwU6hozYW#FOb>u z&ad0pqxt9&r*@dsuO|m3-p|hI>x>=Og(yj zYkV<99b(|t4)tq?)t zQ^lhRT>mmMbKQD4ceZsp%zIRBZoZK?Ydi1tl}<|;Q=f6;7mGILT}*psMy=6`DMCIM zm!Nk+T7PD-@H<5!3lWY5WB!Rl|39tgkuluvVN}U!kFI*`L|gckaQ}{-1934+5&d)Q zhE-MZ-c$Q=b+8X6B@p!WY~Cm1{=#C<8DgL1eoFzR=r-)>wgvY<`cL;OH_BSt!;5XM zp_2TrdaLHfVz7j8#x`rnu5!J00j*GB47xv;kaWG#`#Pc&Wx|)vVwVo*3$uLBmIKao zaUY7RWdkk;+{) zqg8f3G#wXF&cjQhibtV75wEB{;;P|AGhcBK3Hp*J-@Ve-9)f!3zcQMkKnlX&lPCv zFm_I`ezFmjXg49HnyA?i3jvA?M@(>T_}Bv9o5zi1f=kICfEibXcJMNiC(;z(M?c*)U8;d?U;z zJ<$GyESnX(8pD{@z9t0?b6ji!Xn#WB*xbkvI1ZlB5_WqW@UZ>d{K+1P%J9MfStnV? zbgZm)bk~3FPe9MtcGde<;LD7AMl{9mGztDjAL#E}Q?X-i@XHL4>U|R=pGADff&RXw z0*@valJ1;|vSPO&Oz=t{=Q}PJ z5$mi#{r$f!gMQ!2EytpQOq{#W^HopUjjPZD`ui62C8eQbmfKR%W)LAH^Y>z)*B7d9 zH+;|#i6yGv7eKk<~2ens7 z8eulOHm`hHzXhc_%B4%7?KSaw1yQVCRhG-9Nw~M0LkehnT_#p7nRDK$KDkf+N`i(0 z{$JZGXnnOQ1ir@-wSv?*QFtPc#eT%+mM_SbhSYe8&#+X`sntHC^Yu5V{r%fADBnX$ zpJu>FB^epLSCj$5h$Q z3TVD>vt%*%@I-&b3EwEKk06r(G~eS6mrhE{#*pUO(IP|Yi%1)KCu6>(Pm;-O{ax~i z${98A8%3{Hp3`7F@oPf7pqPh}-+b#HgsMyIWQq=Yyjn$EpLe;;HD8);N0SyRJH(=D z>JEH5&aF_U<83*|n^NKAWH35w2whz%I({d8n)%54 zilbDORN5l#_vn&R;3FzFv%yFQx49-y%|FokGuC57AJ415Tan$~O(tp4ZvoB6KR(al zI)-*PNTl0Lydk=20h*6tVc%4|w1$$~blg};uY+-aZhWklw;H|(wI=Zp4)<+B0}1@8 z-~VsxL3yJsFsEiYn-$#@Uz9uM>)dakd4r#+ULoM>_2@4Q&!0JL0(3z02JuG(J0@xE z0VSM<$ZFnDz?j`vp zGQ?YZPd7~`a!v1o}|Dx$ewWzE^@Y$UYX9gLbM@q1s z7IgZqBGtz~4(NQM=!MnNCz4~5{amutQD$o=p!12SG8^C1e-BcjBVSC>R;En?%}ey) zhw-jkWy}jdj=nKK$wL6mORglGW;sIS9FAf7^ba zY7dl`(gmXNb~>G`3QJHvVlYZ60?kXyF?TE~eI`YBEhEV?Cj0q7^HPwqmwNUbEcI-g zhM~_vHw@6cQ~={~w*BnA!o}1K=YEOx7g!v66La9bjVa#i_OL7#!Is})&5w z0$5RS7RT?7TA+DJ5OVqSq_vSeXBP*~Is++=`lco_$!>TOH7%L{C^FWwukJhfgt&vNP76f5z)h+@M+Qk$ay zxC)*mTeB1@$dA8LgHEvXBgYmAYf+V620iRdqF`~ksr zl=cO9zL$hNiBsj7wm5tHguIEIYEToL5GQ0T$7MnGyb}_?Y4rd3J5Ki)v zuB7p|%+ zZ9&?7a0k2lvku|SG$g^Abokwc%tEC)CxVdUrwv-1g?}{CX{G+MC+r)@e@OB(N5$KCMpcow&~f8QO+$-AxCVA63wEj z;;)gJM=O2^bDgTxTfH0L6ZvevTp(PQoKU=cS&i5lp(P)tiSN1dU(%}^;n+~wPK<{kWOc)&Z>0~J8!@p&jGL=SZT zONm#{+hwsvE^>?h{_sisUT*it_Jj8R482CzYqPuN>OZYt7r2r&eu3(Q(I=eO7%oUK zZ}X18EJ95)0Ak%O!2#!$QNrthLVm!YC2_9w!40FP zE|GmqYJ`%vXQ%!A{0Qeo2C73wjYZe`V`KZI>>8O7q1(G!68KkiVWG{jf~9Taq$i9A zQoK==`+~f!ho$z4Hz>B7_bdrWhsZ~9(?Vm|9bd7Zvd8@?ZU6V(GVddPD(}d2XxOGX zg}6`aWSqf~UlLqM3D>};CTx^0i-t6*zb&5_iA8v7|F3PDp037f2ZWk%_Q$e&t!kYi zn5f0?V%aLH1sBx5&8H+g%{~T^FVue<3LK&&Mhb%N_l3Tw%Rt~uHjJf#75gH5WxkT^ zNHK*@g*E>BqX>#N6dX;K?XstIe$*ZKHe(EAb#~F(3x9&w>!I&_{G(q~N<&m`?479{ zpTn5Z2hj1uD8_LM2r_$@W_h))4G*%FC_cG=5_G&0G6*^eHFCm`WM}ZYuHOg+;g+^+ z*F!HZ6`x_tedc9z5k!eN$A5rH$(VO${>*rug<}ONIry2 zD-kG}J&Ycf6d4URn}#c(YFdBO`O$9ZT+2ra7Tm@BIgJd(Vq~Buu>GTM*FWta^nR!w zaFy;ou4D)|e8!DH?9ZV4(H5}Mc%ur4M0Hj6;}Gi6@ziFzrFG$kk+7tMtqZT6SwP$S zr?Q5E)ltpuXO?1CXpT?T3v!_A%Z7O2@SqR47HITry!{cdwQ|i>`p3zH1DWMFOr^6M zrT%IEp!Z+aN2k+$LJS|t+*`SVf2|Fw4>;k~GH{V|U%Mf%!hEAG{Bp_^W>oral!=4L zvUSG+74-VQEmOPY$!iC6im)wdGGv(xcY)?F*Y5ISKYs{-vlw>>A!2%^vU4rmvxOaY zXG}QI<)6&-@ozs5XnUaNQxhl9(>GtiUzW)GYpo)HC!!4tkn}O$o}{GqF#32d{m=M< zw)aov6w{%J9@MWf9~d)BF}>#UY;FvgSOtrza8Nr%7gskuCN_LIRV-R^ku@KTeUn!! z{%Lj43{SQ9xAm!a8yDi{ z{^LW%UNdHaYOq=_!o!iRTiW9z44igZlx6>Re^0dsx*sidnaM==jStL9aW<{Z#xF_Y zHtmjD89$u9d8Hr%(TeD&+WV(^(ETIA43p#(Kg48%K5;$R__~pZ53E{h;gPxIUfh`fP55x)*6+V5=$a;3D8wpLQxwO-fSYYt|w>S%2iI{+`lL zQkS^YaC$^R5HD9#M)&q196?JbvdLD zKZlC4!VT?0hhTgv5$a*W{r%$x6SY}*ZC?WGy^tk z+qP*hkD6$>`TcMH7F(I8><5$wV_fGM@j^E~Eks0rbF!(m2bu@9dpb={)y};}U+C`& z_YSHzHaa530?mVOb6!wN*A;nEDoK5*82D8JG!MEKQZQ+#5J+6Jr3jnyh7|zKgBwQ45S@I4HzBOjyK#U zOouhm1)2v*j+>2^^zZCY-a_D?9=EFj&4UN=bgv=L7)9my>7_O-nyrB5K_xTc3l8Tj zE>g~AYZi-|*yqNBH1LUNu${(;lJM_z&#J`#^LPi82MJdqWIP0g3RVYQjZX7?=7Hux zl@6j%!|_iR$7}_pvyWB=|1}SS@)B$uEhWCVr-?tS`=INxgdxzpbR8CT_=QNCk(_%e zYgXI}3us;%#2CYu9VVX@A+K;8+mJ$kZoG67kQXdKP9qq0)qpay#4Gq;^V0AjI#2m= zZ3$RVSU;47k_p^xSI5xH%>&{I!Xh%#kAnsUSLDAK6CPH;TP1%X)XPb~65Y`8>a`TW z5g_A%w;Rk#Bs)`hq_Pyy6(khhRfE%q9-_>$vu;_9OHl5F6)C-zH>Fb%2)jl#?F?4J zOp!`7hWrepdL0UHh_u6|`PBRUZ9S;}B`O`sDvq!Za5Wx9Uc@QN1ls>4J!5Z!bQIa>uU8(F5&& zMLuVh*V>LudVQ3_9^rY|d~W{t;Z4=~lC@LXYoElc!y0YZ|Jwh8e!np39}BrhA(Y0) z=Cd+r>|zHxUKM*2oo)LH;R6z*i^!%37~t{hi;|X22*GW>*p-RM6pa=cz~faONp5?- z{=20kFVRhLvyaa$UbUAlIhm*t84ngELvZpDk^9^K7f-bZ8n2d#aI)Etefq*-Y7w$E z`b`Pwc=glE1oTbAzO{L#hdWeXG;N^cRdlL8Kc$z6-wTbXuDKlw*ny5$Q>a=knT9>$ z=4N}M3jIh+pBpcE-*CcNideO=B>wOuh5Kglls*1!Jt!}!ful7$S9Z0|Ua^!A=d;5D z%}WCoL76(0CbbVsmv-he!B{}^QfCA<$0Pi!2z_ey+Z1NQD4==CpXZ0Mi!+&Q-NzGZ zEJi6gpn0h<6G?NA$SKDmEjgfhX_-x>rDuMc zCusJ}!N;v%8E9S#BF~dFHJay zk4DUkUrs%ADwN4HynAlEM8x9~jeJbBUWvIeX!O|epRYdw<)xQVyx$~BXWZ*r5Um>L z#=Zf~OY>@jr0+z@v?XrlCT*yU27u=PUEg>i-@-b zc1}b2ee~FK5 z#7P7+FV)Ys`oil}i{Bw7KlFgnh&?x63frklDPvcEw{}#uM&}|w4>T`@CR$osbHzB8 zXk2Q({!VBBG%uwKhM73-E??YPV&)$FV0;5KFDZLo5glXIhZIR3Q7h%AD+A3-N-c}u zJT(}j;tXpmW$jB7pBpbRjy193q^O=5gxaWES)2ZG{lBOFFP_qa@=_MokGBtLoXpa? z`;qK^Z-N2mrG6PS1nC-dQZ)$!D%+4cpn0ic*C4-5s!7yx$urdhfqVdHUdnDYsAuC5 zg_J$~iE0sKB>miYskmRI7ydejf=h<-&?v9?$@(!*+3TO`L3t^bnWw&71A<_ueY==V ziS;AUyd;P)LOO@mkf0gx@O8a13?67+VoMc-ve92F6gtg=^*D$^2b!1M{Q8SdTu*GP zKNEX$418+@nwMZcEMMoocYsYa*v4@$CG~qXp5-&ZXPkD1yeq#Nh%Nj^#DhKjjY_7# z%U|;nqr_cZm4=Yk+Mf2!Tv81&R&bwdSZztQzYehn2smbW$vHpP#2K=lgyOL!ST%+Y zd(j$$`Zv{czR$0lrokiatZ8GziumDv6rFgD1P{a`<=GK2MV3``P9P7SjHL-6>LRiX z6HOzyE_dmfP*>NMkE6t4XKp_=UqILY_fqz$%-QzvQNtM5L@jgb1MS~7xlf@eIH|I_ zJ}sCr(X`V&H~(hXZjCncEyw>yhW^^dPs+xp#`|yULH!$4MF=TQ_}i4S)CA$Lsq#)h z`#0I2Z4w!?lq*h<=xg?$hQ9*s-!O;*eM{+>OE>dHCb9`b&VlxCq3120h>=5(ELx5i zxgWmY1MS}k0z3`h(st;w|MYjcMUsg#^_}Unje?)111L0@t_gAnOvZE zSJ6xYEBYij>?+XlVEY2^fyd-c`kVi2ap@|D#!y<_BEd#Z&8z?Vc9Q_Jk=g3FVRUV zz+*MeC^$t9h7<}8+yc!@YQqb{TeJM?#ufDXklS<@K=abkTy-x6*-SpsN2>8KL6!rc zdCBO&w@nI?!9HoUsvG_w}((vK&aRd~UoH$te)H*YT>Xd=jFe zNG;w2XkKb2+CZXC=bvte)$QpEe+78{{8dypq#!o-(R%;}wFN z+7g(Ky+Vu-(7dE2uqsRXhMOcs-qV494zK39@zQpV26b6iMt$Tc2U1BDN61tD|8ML6 zhnKR8tKx3`pzKFs5x#&KPy@|NMW3iwzofou;~%n^i0*iMWGWYYeZ{-|YNfg?ca}J;^0%7D9Lamq;r+lM2>vy+Uu{ zSF`GpajKP9x>bHgX!-q>(71( zHRX*XaK8d6c8_D5r5tVye-rM=b!@WVEg9awiz5TSmdEF5ybu(?X(RFi!ln?1ml#)r z1X^F{1LsPE#@mOrHw+kI zcki&P>tXbIOC#Ru-n%AgC3u1UUQfy5?+%R;=OUeBQ(nMuKqmT*-KTV-n=v`_23~{R zIGw3Ib^gU-X0oe=bHn)7MSJtOr3EIHOTq+=FufkTWJ*@|m+u1`e$h&%qmHz4ZIub6lm@T}Nq+HRUK{u!L~NHfzYPa=mr|tx#d? zbMJ9qvPOt})2Oop-EMwKNV?wWeH~GXGT}>Su}g>Zg;~C5%K>M)xDQ3uvH_RlbHuh% zjyb~^WtFQ)ljrJB|I|MG2zV;9v0q11KHNxES=2p>6I1mkYo8FWA$(OPezfQ48AKGe zJ9azc#OfQ15IsIxs@AoPG?GF59;#v-Xma~yzTV`UD<^C!Jy}qE@zi+g#?5zSGa`lk zB8!VXEYn+S)o6QpU^s1p414r~rJOwZ-?qouc}3hbjH?2Zm&}^BJ%hv}g};((O}{beTSzkdqNV) z@*0L}7H(v`(xo$pHiW!`reggz!pMd}o-CCi3&!vLg?VZ?bKw_+%O1)y)1NnwQ=L-Nqx4k_J`yXwmilmE7}WN| z=M;GJ>gR22Xo$rg;@eEMCp2d5d9c(DJR*XTpEuc&@%qNUm1$1Cc{uZFF559oM2B@e4P zke}7pP{$L}VDQyY^@%`J;eNJN70229yobdy=l5@qSF8;MZ@YC}_{?%sV^^vcwtY!P ztDYqi2fRSM^aA5rXH9R1(okL=uKsm2EkC!Y9@UR=-cnCAZuVPN3#!bw2;@>G3-a7E z6de5|A<%v3gdWFWyQ>|UL_a1h#VRy%*1g4B;oXM5inz}rX?y)Brwe=Q$F%AeI_kh7 zk5L3qRna`)V)+t(plh>iK(0Sq{qU*rGOI|5;C39@;YQ~l3j2)AvEt4qdLSTK%Xjo?7{!_ueq8>Zli z&yd=b6_n$+SX;h-$7iB#Bk8xLR3!Z7FzrwKd+K`RFBPuuzNN`pFMd_T5ZnKs_tjOH zGl=RgDMHOs;2dyO_U-xo8jGVQX3tK#Nzp5Y;Yt7YRR2%uGYY2YBAAA|kO=sjL{}v+ zKzU-90S(87YRG6pfr2QLK5hWTfGLUMkmSvR{dqPD#kaes+W%9%ha)vz#Q+b7OU%~5 zA%v(=-Iapfgy>H(|DYQJcNf=(pV;%HVZ^DbJhdf<9@5>DN*}a-qX%;0202$OKhi8J z;3y+5XqevSi!Q?{oYusPQ3Z6xq_olGG5JDp@a4hydS{IIO?F%Nfn6H=z ze`QOO#3A8z4)ZACC4_a>X`Z`SV$C%j@e=)^e~^wFwDhgRNcQLx@|C?p1A;xb09#=Z z<|-{D_SijU^xO-+iC6)T2O;Yu(f1T}WT5Z6a@a=+(?zy#KiMyUM?cL0s^9+_Ju_eZ zyRVmWzr9tFWeqf6$)_0}>3(EE6|pw9<7e`?0W7?}$u=AuP3FQ5l7 zPyg-t1NuCmGU)se3 z_WS{TKhX1V8+R#q@+nT2sxu4sPTD8zWFxt1C+e^0#e1O=wO^Xzg5LkPWzh3H>gcv{ z#0OhuYe$J6l$Cy>thfxecfVN9G8CGDdXs~8^0)g3Z4dN3Tz#DVX+la>5+v3Ive;w3 zSFbLqUKCC5scpR)Wxe9(eeyhX(DwhS?B1jKxPPpI9DkZeHvd6+7Sp^eOBd6>golTE zjs7Mk_@B1_r}u-NhZ_b?<$X{x<2DO_6LXGe@Frk?itKD%yPz>hDsXbgnC?&8|I_RD zq$wUp|Ud-*5notyRN9?FtER zo5l!Fn6Y)bBNEk**O^{uy5|y|+;u(%+^&txG_g3WJ_t;W26Y8er+5&8)}vQWZ%}cM zbmlpl3lN~UM4TT0&$tO7_Hnc~od$`Bp*?8z55!!^RVcmbb|EJo!dCg<6bQ)zel#V28 zq{19??9kCjTrzbYsrLfS{Z7#Asr&!79`w9ja!LurfuDZ(M!eV-X3TG&@ zO5|!n)*s%DqzCamHy*n-D7I^K?Akv=^Wl|u40it8zt2lMKlN>}}Rpm|BMN~zVg*xbg<*}|xUv19bP@e+wHQFIA- zQ#MMaLdx!q9pLNjwts&7^}X}lkkpr*2(AX|Bhb8*Hu_t)7hE{x?N>g^nHEw*pm|Af z-x7o?N?bSV7+NT^Ag0Ywq1EImeL(*7DF4>Ix*0^MCpnt-MTJf`>sOpgw-ea zREkE3m}=T2Vd?EJbs|M+`oNnyT^3b_Kv*7OO1GBbAUN5nmnv3Hu1sU0)w;A!E6$ks zJe0CVLto|hz4@$?p#+!BHs|U}jSp)YxZ|12@AXAn?f61uWvU5kb4dHr|0jQO`_}e# z{x=p(*^hyKLA>R^-hHHTcHNQQpASR>KdWg}G%@Jn3dU|{h(4wf`2~jU@u&V6G(Trk z-s@bRv|(!QMG!Y1z;f`X?fuj1L3!}O+r&raB!x65ocg0UnVUAyJh%_*X$H@o|MgOi zni^S+>JVri3|m~qO~qxBtL)KLbY5;BvwysMTB0GbC) znz$0vB1*u?^-P`M&ukQd=0P6}Gb_B{Mui=GHVF$dc50w`kQuepZui%xJ~|JY)b{Y% z)aS;71uhmYFz*U_W9q>5Rq0us{^|e2pWY9eKWnqnR}8*JPcBV`KUCsrzX6&D16^Ug zDiQME;yS0aQ|Dnd1I>frB(wsPOSe>JE;q4TT`Jc=^WbR8mJxm?r>34}A~aOQr~%MC z2+B(#?!_1CqXsmkbFp=azQK`yYM=k~dQe`X7YUa@P>m4VTbmu*A>pL71wR=BuL~d1ySDbP$z~ z=$twbb?h2*4vrAJ*6$HXIiKjM9?th|fby3LJY)el@hG)@;?dI7W(!@MUua~a!}%7i zy6e9FN`N})tMSt7oB`6fz_ecISYt4kuFn_9ABYJ%!09bG@#ApbS$0UYh(SgCqCFaZ z>i1KRHf&{H#a_cAXi|n5Z~m6MDet3_KIYT&fv9GM9@6Bv{IxYrJ}=L=cQ9ycLJ%c- zME*lLQE~Q47sW2)Z66vZb~MriS}#h?%LLbsQn04LjQB-*woSH}-i&NV-~}U*%KMmn z7?v#(ztl1vu|p!sW1}QSId|?97_SmGN2|6mBdAo5_zmSM6^@Rpg;!8qQoNCAhR9}} zW+uCZn*_aANC#>9&622UHO=-~RELLv@**NZ;Jd`UUEMiSu<&;~6a=%a@(LIt^N^I-OEa%O>Rt(QFl~9{O zerkL`^@v5`)v&QIcGEeW2%TJE7RIa73Pk9pt_jm{gu9QgSER`hXltEyi99c&(W5+kmZP9GUj9QOjpxl^*XI`zoWUGhA;zI< zMP!7|_QCH$(t2LfWo~i*xcm5ZQwahwN|x1i&(V2grvFdtr(6BTPmPU9)){YHz>N&c z)R@POMP9=da~w=GXBn*|`;D*(KfR=$L|jra%XzlvSn5A8CTVbzi$i+$6G<= zH-~%SL?|tWp?I%%50&_n!i3t^8=@iZN=*hirUP~41FSE-WYp+|*6&D8HD=ya%$O6K zAracm7}wh71uB!NU{#5<+v?c{p#ZID5i@f74_UW?+6+y(_bo6^06+)|harvlH(E91a zl5O5gE@3YjFws)L^yka@9@Dy^t2IAyX8SZ2jFI={M91kD;^RTdwa=a%eu+nW>it3W zh5_DLXERs{@53I3jn90*QcH4;2JksO4UT6UAOPqd4Xw z9;MhwVy;4mSF5;cc0!X#VioeTBE`T@RHn@Yg%)Yn2^2Z)3`1j5gShr@x2BZpcxZ9H zFXY^bQb5;d;(fYaPgrMK6cgguSO0Yj4!S;*i)jpNiUzU8_~l%G$c^j){;=Jv-{ksm z4Jm~#(xfex@)K2(GjwA+OM5SLj&xC*gi0-5h}_*DQ?j6jSu;nDfsW5>FRfwvA484dQdq?7_M$^$5OMqYMlbkz71hEGaEr?X1t+jgH0_phuFu5e#q8Znir$q z^M+`_h^glN$SqcGZ(GU|>y8Oa5UqJ;;DJuyHgBo{MzTf}Ifiok9)9y(4HBvs|J?9s$+5{L1*B!wy1Ryb6ogL@NxE zp?=3C;I!NV;o+a=`cVa6a=&O@(5t_)@_lrz4^Mi4F>Qtp-&2^1-uq~%0WT3rgLMMY zvoF3HA0TwPm1#%Z+z5L)f4cus_i>cBU7Rk(zFf~b&Usm8MskU=(&SYMtg&!x6*g&7 z?v_;-jwAOFT~saT|Bq`cCVeO;hF)!(n&7U?uQDH~mvC7a4KOet;J0#FzHaJ71!1hHD&HV!TJ3RJE&i^`|0$m>}@U}-AsnS#kyO*lt=jKNr!1K?mFT?2COBaz~ ziiFAyX}aL8y1P-j8|jb^>8|hpe7*;U z<9hGragEJhhqKOFbN=RBGdd9oj|^?Efc8HR=bml8p9>?-F9%<){BW8MwEubj-k%iN zCoe#>ro^_7Yd9Ea|8sx+w!v!>G5ieW#&$O;Z5E*Y&&1-9_T#C}!4O=<-Z3r6Z=V}4 zfl!cMZN8}F{?vZ_+s{FHNfuW$!N5A7sb)B%+T`hs2jFyUehsRWVJmsG$>X);QxFm;OsGgvy<=S@Tpl9(c?Ip??XK|CB z43qOe0e8U?p&h`R)izv7(S&<1!BU^O_T5t@H~RE=n}n5`r$()N7mP)Fz*14>7fmWc z@feN4LHLAX7W6#Tv@r6E-MmkmP<5KF+B*R?F$tR_puY!ya1pydA;HhtzP0@EMksI4 z=b&TI`2L$1%%cWklEN(c-U{U`D=DD$LtBmN2bItEQNf3qxwf^cP|r<2T+-g38c0TU z+!DPO(0t5j16|*Ldkm@{28UK=?TqaS2uAZ_JAG@?fz}UGV>NQecO!O$p9Ox&ChE5W ztsm|QOPhw$-33)XHGjZ!Fku8*KXh~1%k0MLvog{!JQSoEl|MKAknKB$+E2Mpn$#xI zxef;PpXaZD>W9rAIfzrr*aI(1oH7{SPyXlj^iF`H9`-k;ub1ZX>h&Tah*^>lF76bPR86`O32KGzSZ}radNy(g+g!-7ac?8|#=KbiuEcyTRybPOQ z4#PG){qgQ=6{_448`4p6?sR?#9_x6+n3Km-@(DD5a_S(zi57TLe?1 z8)*Aj;HcqjE{%NT!tfu8~FWj5}+CEP2*4`5Aj?taH zBjr6gr3E}*|Lhe(#MR>RuS0zPU0roq0-)_vdCB753Haf5LPF z%|DXzoCt9S;&KjO;`8=bz)6ATpL0qiS~_E#fO;jj*pOWkaG?1I9dWx$zGr<1Cn0=E?=iojd2%KFX8&@+p1#r_Vw82fs`CMI7Sjbw0@kWSSyD>3?k> zgWe}7{GQT=UefuY%@w$qMWfXZ^nJpq&E~sJ0uC5yWmkc&3LGw=?-LGi^BFgh2kFtj zK^S_po09;|OJN2}wOecWT|LE~#SXL7wa<;0<{%*N_ZK2E_^5^N#~1_P|7%{Ft;yI5 zj2LjwvP%lrRva-c|ITlS+8e*^bVJkEHA?WF0cxUc8Tl%@@VGQ1L)d)Adjp-*x9+hZ zYowXBKtk54%r9AI0bT92L@tA_wzPd0%+?Qh*B=`N9!Rk$*6EE}#b`d2rI+UWr}o{O zEu6#_px)2YPgQ_?%jZPyz-#6bR0?mV1 z5+2YVH1Rhisd~X0nM~(E^I*>J^ej06qNB4+Gpn0%-BXbIz zPeYtEKcXY8|MV-+JV+=aW0yfudE>=);1J=R_3Zp%>)XvZj;5c-Ir7sVc=qf_|Ly$@ zIzK26;>FL~K@yy?ZPGRJykaUS2bu?E22_no7`{h8@X zs>#B-cX)v2!4u;KsgRq~fCV$D3L@!g6rg#q3hbSXfli$$BsBYQi;XGQbK}7{oTRnR zvzTiamf6gLjE*2sUIINIe|rqdOAj6EKZ+Gy3CdEvVrC$qWgq5q-rNFeyZON z1pDzafaWD6c80RN1vG;}_+*t_su$Ei^O7Ix_@F%BE=#a5ngv@H+0Jw0B`~LEtru@I zT&W6GXX(`V$^Z8LeQG{XUP^rfp~xGGu0@uW6L6YYVFNTTk*0cR#VuHG_VxHU7bMkI$@FDF{1l+{}} z(EO`tRa@*wy!mmmXgT=ln&t!e$7HWup8J&{a}p-M!~S~E`u8fMr(b42z4sGii(yYL z{ml>Bp8)k1@{n;ZB@2S*UUlwQi0GKeF+I0LowD;=;a{Tc!66-@1JnX50`=yjmVKB* zn652UYJnyx0d}WT+GS#@TU8#j4{?quMIcpLDI4*D%8|15J5(CT2Fv%%2PqZIFT*M+r{K(hs^Rlr?b;mNG(A==qrB{f_bx% z@vj!pd^Mb}(s2+vhLOa%#;>9C2#Z;b4ZQqgQtK0}J)(8xBv{wv!tc)I7bnnH64bBHV13rfJihUuF^gadE&A*7dH!ApF?~zwXvvX6IyaZqj(_ z?%c0EY*P&I8uQaHK zm}a{*VGyhQZQnYmnD)l;ka4!x=8c6MYWHc7k6mDkyf8d`HMPK$i2bB}9xCBDs%+c^ zGxMV{2kZ5Vd*65ZYIG&9ufOz&C?9t$kB^*4RI(gULCJWsQc2e8F~;9Teco6TaS`72 zoIL9B`pJfvG)a|DETis&w8%bqP&yU;K1tOLB_VFrj4gC-EhEj28>PKxOo!E5YWFj{ z_nm*YxmU~YN4(k*D*v7woJpN(Ua6yk3>AyUZ?%*}(D3b+HzQq2ae5E_*p&OnZ^$X3 zHwJyWC~c2FA#%%`MxVPtyQ$iBjaP~jGJH~M^RFLF(exTlufO3$5jF_ALmQq6hlXIF zU$1q=PksR7^cm)y{?{WQsBOa{|8Bdn|A=LsdE?6U`5FG~K_^-Ty*LcW`IJAJB7 zN4Uw~?fNtgQNgW-KOwdxYe4&bn68)xiR&*h8@-uQ;aljDiqQ?j88A(x7xuc*-ds#o z2hBfyILakNHBCh^V1phF57j+a7C>1s;cj5o?BY;Bm!gY7LofJkW9`IkTEWPptbp@m zzLAC}m9$x7_Z+;W;$o9qL0W^mk!0q`xO^#_UyNg-TpZTL*?(GelTAnG`zWz1+2ngiOpiK6+VvMEHQ3+{~i@Ru}%+e1E{_+!U=C z@%ToJp@VBP@w!b`?#!dJqb#nPf>X*h$^W+?=Y#m|Q~Mh<-lHeXc0>bKg%p8-{){7c zS_Ei&)xq-BQp!ad^bhmLDLSqD_s`8Pv|8 z)V98+8HnF{4}E%`h|kSl)xfFYjzG)sduy87p7{Rv+o$Bo-+m5iud;HLhSC&|#!z*t z)jCm>bN$!$swK;XVkZ(@w(q+}Er#^(MdkO!7_ViJ<;ThUV1C@&I$L%OVYEhh(K=a` z_WEe-<9*7MM%S_=QW>@gZ)2K=xnQtDU%7S1yC&a%kk%n6c|qN4Xe-%rLl95HcyvT? z4_3(fUMem}w5O&@ceT0u?HkbVHz-Ndq@JA*_wAi289of&kTCfCDOPSt_?O`u+mbguV?1?e*Z#?-v(Xb92{sKd=Z=LQZKrb6c@9di}Vxq z1JFE}x3Ah@I7)kOn$)v(xp&tLG!LFJd=(~~Rj74e9>>XHCd~$#2j^i8&Ue~mF$5OiHJ0~85o)0xK{P^>}J5CQGX;?xzs#Vy0@F{%<8t>?MJ7KqE8UsUZ!{(m$ z{-79W{lH7kz0%z>S$Ri#%2?V=b_87FlR3bcM`Awm=H@AWk+5Sj>QD&>|3T0itAdge;>Gsk(Z{WPbxi`@cR zKQw}iE=&^BOoof9PGETy&eP|=rXsPocdsa++@e$&uT06h!(x|_Ag8YF`J^fxP~lX_ zVev5)v+;&7O5)QU0<9pk_$6f%vUqSn|aliy9^`?s55>_2S?5gbnUT-=hRb0t6{MO4? zquS-wO<519|K}-w`KQl8{Xc1WFHk9)NVKVQlH+wpr}=^Q|5QFAL(~;lbro9T3G3MC zivaEascf@=(Q9xW(mL-!N0nw=d~W_9q}N~E2yr3FY1RAnS@H`3&*vVxBz^_yF3zxF zEW!bl`418BaFsZ>87 zKK7LvmYzR2gJGoxn(zA~O~0ocvmdZo)P$X%AU?bJ)ps@$?D@S~L)l^>b%^06VLHJN?Kjn=-eIN8bFk9ur zVzJZ_RZr75K}wfs2%vc>liO%L$bc%;#L{)z`n)(9XkLQqqf4x%BQhwJ(fUKXc?mg$bE0W>dVVSiDCS1!){$hDsuqSo&OG%qni z9Bq__^>GIOjQ%u9>B*joorK~V_k9uzY(0n)!HDC( zB=T#U71oRwhlv1VG63a{7ieBeCMwq)URk!*v-rr|5-LFtG%xwfun3j8S?TtYNg6bK zH^u;(moOj|{7tth&6oCuk(=kY_@5gu-Hup1TT$j%To!yheZ($T7V<3Ow5(u+(R`}IJzFSm}%ppcObm)6)9Zd7&;=x1?_Kg6oaRz zO+*akQhRo?KKRJTln|)svc~06H&cXgp9(MA8>y5 z@mzmcLgRF~+L$E$)BAs;Vc4j}I>~HJt^9L(zm}5)=E_1%O^*uaNAO;<;%Hj_jw_dK z*wpoT&kNy2>8dnYU%Jk3d&1aoN)HreectDnD+)W|SiFu1-CrmeV%VY6yIyt|_fBe2 zQF4_@Xv}meR@1+LS%oY3I&Ed@gJgpqvlD8*wt9R(Eeu@;=LXZei4G}+Hr2+dsHeiv zCf)GncgtxPCI*sI!s!U)OTR8F8*V-DGDeRS&jon@u!hAD+ORl+^eH4U`W*ZAw^%LM zaWz`BItR@!B719UU3;|{gB^y?(O=@*JrEB1$=BCk z2f5Eu&!@^)A(k2OqZG)_`%8jz4dugonKK|Xb@=rEL%=HbYBtcidR*D{u~rRv_l zgWKt?M4>Qw4U)FI4`|u)_XPfWPFB%^=hN13V6c{ z*HHq2vR=|*;d?d<+JdN`M`&@_$4*I4<Y%_m8Cpvj0Mt z@8X3)8Q}=Fm%{fcZ>WPsM%=JN+cq`3ELN=<=w$TBTGk)-iF_KwiKC$V1#}F$f0hsI zODq(>zQP}hFKJrzMB{WeWzue?*L`g+ebU>|wD(W<&p*wNn+QK&!e#t5rp9qVU9&WS z9nwagSC)?h-s91)r!?Rg@iuuGGO5&%i;XT}Rq~qWtV#Qfw#0yZ0QR0>`~`d1d(ixt zz+fBSv(30QdQQ8(lsb$P2u@_^t~|`~D@ZwI{U0JWf*UWt5%c{PcKjZ1DrlWh1G;{o zVzz@INTSTw8$b&$KttL8EMUJ;M<_Hz4^EMmpK<_ zw42x=^B@St%Pp|3b%ORU`xTBGzoP^O0}&YZO1UZ~@u~i0eo8u-d(5D4 z1$fBn42pP&MZ`>4Hv7O{(0tB%-afltC-4~-VYm~-6BRzSDp0;ZnwHW z%{S!xt)f`opUe15m4Kho!8BZ@r(D8A%@KQws88D=k-OrNqyp%E{iow5Ym~B*B8_>c3boct?tnWziZH*^VtH87&|nH4 zO#Zi^_vhEMn++%oC9jyLmz`%VaI636=Rftn3+1NSTYfjQZI)Pl?p8_?Q2VAG()w0t z9wBRnbXBCXg8BfPt8BpW20`)w3k3=8;NJ{L~v15rAL#)}e^VIkK)8}BNC(wG?zS{J9A$O2P_#3@&eCd-=jmp_~xE)LYvKsO>hiXk_;ZDfLoYXu>g^Fb;&t3 z+j1XeskrZpBA=@de3=kK!}ieh6i*#_F|%c&R1Xb_tEZsZ&&451I-sM%TP%7NTUD0s>o$qgt9sCr6#MC&v(TMwRl~_JV!X!sK z_BmoIWj1?e`BY!F7eFcSpi;OD+$tkBArGB}{O!+wYCcJm`RJo{2pIbOs3ZuTmV+Z{ z?=H=sOzAJFNSrm{n&O^%|8GAB^?ye-zWlwcZWGNNv-n_!%NXH~)I?YsqM6GB_X07G}#RK6De-c_y6`d#cFu6 z2QB8SI%{SL_Q$zAt;PikJth6w$kiPG#m9U3NHSgmv&m*>R8=uj%kor?zy0~3^MU3M zi+K_%s}ES#PoxS?>iKbKm+IE>Qw=1e3--GkL*qQ)fxiE5k13!oO!|vnuh+h!$s8u? zHe1ZgIY&an*MS^u;CF;ih5NTZA9Q|BupS=fF{ds($~V5RQ_fbkN{quZx;OUUXL{ko zV|LJ7K6tEbf(ss3giUSJs$x}wzW=w!syKLJEpXw~cHP=~O51ZY2A(EhsJ6Q0X%(S}5) z7u?HyT9lbm2(yv#r#I#Ji&y!m+Yo;AF7a&O6KA7WU!&ArJ!WiAzqbx{`@?@IP@bM`FLy#)l_XdFPwQKN@`53Xz$b)MEQt^$ zS8tB37=eGA7eIeMP+lmUSdfEJv(2|kp8d2ZrT6OJ<^|CI2ULFw%!blGT+(RJEKIfv z*yFMQtv@kMBp3aDHCvw~HhSi~9oBzt`g4bPMDqAR?!jb4N5bP`*A#Sp|LrlT{siCd zDJ2fOD8NQ&b`krnn+&x6WDAh)(cB3;pZ`>(9CpBD2(u!0k4{W*zA_N617=9|ePwf8cDxY%>kpRG=dG*ItV=`qLa zH58Pq2>xsR30f~w-~#TIH6POUG4Z6rpw1~+$a!&tV2pvK+r@YvSWxc&tLOc<BomMf`OE*2jdINhS&)42a>f+ws^La1ROl^zxJ{eOEbD-Yd(nTSlKGJtKH zlBvY=Z~IrC`aYokmC917cPNXb2mDA7>Dt>9ubz7UZ$Ag+B^{a@91hANVdw3F6rxDT zP@s9~y@WNS{C42WU~{oefAc~Tpm}Msm^h1}USGcEAoUfx^!7Z^ytGjmZiyOeT%yDK zi(Vq6bd%ysM^c%XdJ_6D=bTa^?3$ zT`TwDBG}bJT0qMa!!knB1zDBpG8rU1rP{WY|5~1a`Y++wW315nxRihBLAF(u(18PO ze|5UnRTFI=ObB7|wL%vBe*4_)FUUYyyIM%8PbI38o(98@k3idBUGP>Poa_W`5;m#d zm{1Us18sjn+q<>AZbb+zcS*vw7D7t_+Wtc2>&U$UTOE{U&ER)~4`v41{_?cx@q+Ti zwO>K7k-Wmyp?YriSAe%-E6YG06=aC7uHuKxjlZogo|+HT{)%TX=}uW<2_hfjUSijr zKLOhQnz^4`HCq36YjwM=z8SsN1j+uc6yH73sg5rlBRWQ_NEZx*K4Ij+PY-I&^yGYDSy!oP4z4qGK1tQEKks8kmBE z7pS1~pCdSTC6klHQoT31hfeIJv7mqF1KAjNr7h1uzJni>hP#@9dW`%5n#lIp5h_hL zU#`10mCR_Z28!y8Rjj@-@3k*wV_=W-l?WwhJ^sOQ{&YL(&X=sy?t)m&4*ajlyicu1 z&o|e%WO>}>W7T`nPQT3XCD<5X*%TMbvmf5fH%^^TIn=Gx@&_sMT0#t*bH3eY8f%i> zWh!N*U6Z_(o3#8iBd}p|*kK#6jXM3*dU$KgoNrXgzcQDdO|yb+oYo>4f}u>4ny}v~ z;DNL#p~8!Zg27E37+70hH(l+N_joE^#N)(1dvG)ld>G$}WQC%(!^C4j>f4HQLba{qRk8?1TDrKGJ@thU!$$t^NRUa}&@;?pR{*&LfP zA^oF8lykm(Q13i5VEw#cK8F(QI^hsY!+#GP5CRL>S@_~>abAQV8R7GTCG!H_D3>)5 zpJ6@x$IuE+QYG#?!U7wv)XyRE3^G>S+N0xCK{$CI-y@g@j+&*#2!+`Cy_ByN`#iMD z_u^f_d^!Sw{s3`aB)WDQ zKYGnIL+3inLQEX{f}YQ-oO*IP%TtR_jiWhqznguj-o_jMwmS)_2%>%)^%Kdqps;+Y zsy-=_9=tsHJIptVEwd#?$GQ3X_`XjQBNf$AXQqk--x^D(+nlNtSan^DZe^7#Wn?0{ zFIEH%9U=NppE{p|KHXC+r)4+G^Bs;spUWjc&u4{|H)9CWx>7j|ee8Fv8#R191gYXj z646eg=CFm8tj5W0-87;0^Aejf;kDl>IMd*7Uy1i@S!}YAj&4N|1|uhTT32&X4tnQE zc)=7D*lj!h9EiBRC%$K*I%*J|$`(c6&9d|FwiBND1#ifVwr1^j(O(iyeaAkB|Dm@> zMP7(;Tgz{S8(evAr;)qP3LQ5H!?S3a*sJx7@wIn7BaJ_3ef(|H2NS}vH~yH<{no}Cuq!f?p@ur5)XeU8X!pcY2N$hz-qp`eLw%hWG5t|HrWVc z7pQ&#-M`3gra=vDsDZ~sZjY-t4%k^p@LQ)#GzcSs2Hlm9ul`?r9_W4sjfXRD5QG!U z!M#|L&>2DrU^@nyk3i$$Vp~#iQv3P?&^W2Vw6i#7LBG$xJqGnB?H}qlZKaG+3OmW> zDL}!?1MN@JzBae#0Mi~#@FhbpfV80k+MiU3rnqPFNM$qBB{ajRQ;7+*KM4YFin;OF z?t(93qEv?E%U7WNN!nm9O-O$C1etnj!O6)i3_dr1(!!^4ZdeK)bIgQ_Qsi&@8bJG# zdOrEzDJm#Cz9wG|85u{t0@|NcaPaNJ>4CJ_cd&@)pv7cep#4diGOhZnKYhkyMI#b3 zIR=V>_9tP*8sp8Vu-s9t;+Rhff4qHe{v`GBB3v7T9i_K*m9FNgWdC`65m0}U7Tu8y zzAKN+kY}y5(HvMl(EcRigb(-xqXC}s8~%!i_+_U+`;%66JBd>|%RcKLc0pfoBdG)J zPl5|4-P}u}G~r`r*IGIgaeHpOL{DslE^~>UA4yhys`9e6{NLsy(D^}msam3`W{mia zLnJFj$LIplFQ9oTWxJ{U`d4<-WIZD<9lS3m(7dEeSW3T+8m0t;@9!MYR_hEjFDa`f zogf(;<94m5?ygpzegvAApfqAxMBv5GhfTw>qy?(JJvUzRK>N4{ziUO37J9LMRUZv2=Hk~{jW||;Qm6a^ zOV(riSXj}t6FDBCUzh*1KfqdEH`A`Ob8@4b+@WV%XAscm*)@BU0zUADIHx6avW4() z59squpiS)OxY)$u8hLV4e-=6p^mz`AkR@QOTdUrKil1epKU#Zk=lRRvbdUiWN@Nk{ zw5U>1vF(3-ot8(;15bZU5xh zx4IbObdq7DQBGMiBBlau|9r8drNE#)L?fOLfONiYhXC6C;U4Gjg!%ll6HWprzZEZR zH@VIuqmoptlxT5gZ{?V$t$r{VToc?1)-*Uz>7KwC?`5T!PnFxp{O$MPE9%Q_CMz4> zg`BOPhLIBUVRj=irE6T%KJ9f8zu@_uP;iyzorO6_Y~g_YZ9) zd@mGMW#7J3*KIxW(TmZKt{D17?^652t3?>}jl>SCI zgAIL70|-CwKSFp5lgd}EBQcq6Lbv9pSJ4m#3e=d zGgMKjKf2QW2!Q6#0S^MT(Z?x2>Hq;FE1sxRp!HRb<~Pcj5nWhDhjJc=??-q*>#P2Y z&25K@xI1;Uul>Fgld(YSt8WmK3tLh~EPhmFv67yhKF>{G!IP=5Sv(>)s*tnU(S^aT z1Ff$d0_k%cgCo&L!WrDFH*^Yt)>n4Purefx^KT-GB?hT<%Y{P)q+#E!;H-ek`+s{3 z>aTMNSDkAAo)>eTMB5~d&O8LPzfMqSC}{hGB&R}1wJ3UA^}k-<1a!SYSM94puaSFIC*aVIzFNY-3T0IaZ(xM)A%|CH_-L{ zx5uEoG>K*nF0EupB3NmGm&vhG1vD=)z%=c|Vd+;v8WuK;I~1S*%}Ztc;o?xrGb;t{ z2GWzl0`LE8UILAm_}lq6_pwf$qMI+pGoVx)1DqmOUQ_TZSwwf-?!YM?iF4aXf#%;J zdFbvD(NB_9?+7j*1a(pU?fjdX0fYght)Z{zo=E7$^nMsX%M;r1#^Qw4OE6iDHQ4wI zWR~Y9Pxui|J3~ip#S;pD#rqY&8~xkz19W~+dBSdXS%+&Kq#BJp?}`#z?*z0wDf%?< zV#V}*u^n-UlU0vG576?&U8`G96eTv6P0NXW!OMN%zm_MU`8PAHEuVtD7VEbt#3!;8nU3_#moaskDt zZN+$uy$5FY)*(4=&&~eQ+anaB%}-}|_iFsHCe!pkuh#`?e?cBnkbmUy?5-s1n-hZj zr3bYA)!&f#MtCs2D;dwybgwpX7wCA2wcj=7ip5HMUJZrLVXNs*K=YF4SUNwmo-C@3F+jzM|pR1HE%$6xR_im?6BmtBT9 zpm|C69YMkkU&YnI=MR1Aq&jjy^U_k*`Sr1sSCVWh~(0*C<$l)~o;0I*0E8 z|C(DrXzB5@d3x%vDem88tAlk6-95{fp9=ySG9Qlm1aI6EOI|h{wzri2X}x+qdLr21 z9W)+;NG6&#Vzb#mnwZsd$xA&`2vR=LOMKI`7-(1iQaIu9hqTO_aFFViuXzwE zSAE3Mxk)vNw9HTi?@)Tz;jJAtR``qRvy<^M1YGIoG_F|n+(NqE5)(~UbuH)1G_dpe zuRl-h-BbCp-Hv1Jxggd`?j)?+kAHrrg3v3kU@=x`MO57CFR|osOR!R#SU?mpLGPH% zg}EnATCYq(YmVgbCeb;5Kk|P*h1&lGC=ba|7pHd8-$IIHoCve2=Q6cSwf<8$j3>~!2`2WmXwm>k~(B7 zTi0X+s#3Ok6X}x#MJ6;|mc(rd`|G6k&1eG6tms^!AA-FlDzqJr%f_hIk3Z@MTX&U3 zZDhXe5g1fjes_p&Wj_5P_Xey{fo!BOz^ck|)s|eeXX1m>9#&;UEGkpl=9w{54R_K^O{)%P`H2)0Z0leBSb3Uo3-}&p;X5V7F z$ZmBtLRT%NPB4oA%FFD(oqsmAxE_hY+(N8}x7yLNbQNUfQ~vfn`ac_smi;hAs-=kIsjSOk z1RqRn`Rh(^%PCdX{onE$447GbzApFi>EQH~aro2x#;Db(Hz?CEMQ8^O`r0P=?SeJi zoejhRZ|CL>;%EI>{6PEf2zX$i@2qN=ubjSw*`_D=_ab}(DvQ_TD=ac!{EsLh7+(s7hg;4Kpb4YD1aq*IEThIxGKBA6 znte+%@&mL#j9k~m&N#doLKdt&?i1;QVR-mwUZP9v|`VWF|$a znx0!UE3iX+l>|FdE5hmJ#%~MNJ1^){l5kN3Dqr59i(A|o^!;i41Zciv?dvz>sFp-B zJ%_&wJm`LC*&N~q!~Wv4-6an-XHK7W{CUoFV*dfM#1bVDSv^20NaI2J8s5bWd69!5 zFOVkz+RwFORN&yps?WuMbaQ;5HFIzAmy4vgdFl3d2#AV$#-RNsyhMdlpg4N9<#@{v zZ`k;D&K29+_R6OmA8Hf|w_3|Nm!}p&)o-ZmJ$fe1oR{N0xrDWkT3O*6B}emFGUxrR zv$!~UF_tCW6}GsSHhf>xP}au`m<`gX$StvdR$)#_9}L=`jukCKA`Sgtp8D;S{Gaxt z0Im0pfddnlkawYvQ683;(D0EMX#Vsxmw3NH7z+*LB?FX7aIqgp%p^L$>f3((Mb(sseJU4$`GpnqCb@P^nP=)$NCbC#5(Ed6;1;nnL z!k3As6=9#z8Seo1*ZDOQC+5lTe^2VcwV~P#YzEq2H}NCvRp8i|R(;7pj$;|wBGCT2 zAJa4uwC~a!1bepz5#uG~f%ex`9I+{`EGuIFgqTBykp{~U+eP!CVWvZ&F^EF?mC_S% zYDs+WqBG0!F<|VKNv8Uj<~;$Yid0|tI(meZF*6GKm;DdpX`&D+CyLo@m5o|+YJOg& zI1r`DkL0DRJee6wV}o<&9vOsC@)n~Hc!~rEpuF3=Fw^HdY2%@2|6U)wy3v>h26C{o zszH4vCOV*{utME+N}G3&fni{inuzW@RCkDZ-93uS4JX9wt>hH+kY+ zw1sW_+B#OVd<9!G+o%L+c~XY_l4HcW>{|!jaRRNW#sJX%|0J8}Ux&Lpm?}|5Jn|SX z1%Z|)FBwfDn_Sb5TqVl`ASJ!*fR-l?H4cGHXJg>6bzn#Mg`y&XmM5U`S6Mg>aEWu@ z&OScAh-$`o0KEQjB5BoXl3gaIAD!-&9%}k2(Ek5&=wdM`XNCf_UNhM`sOA54&HH!z zOM%Ku(DpJ8$GAWKGcZ{kO-U{(qc`)Q=(Fml8@wR%7D`+<`#*|2LY$wUV{EcWe4sNQ6w( z;Qnj-3-emVJ^0fF#3G>$(LhNG<9lk>k1N0O57)*_8Tt>HX4Ta7FEBsz5(K$bEI%?V zs`y+U%?g=8qH8bWiFr?+xa%OHe3Icr{a(JyYMw>c_)5j!bTj?H3hb5aL{t`|_#$Zk zG`gNwy8{BHNohAy*T0014l?AKh1B10)Qh=h&8YTuh=TS{Lv?ekAW+TPx!DrT`&y!% zTJ-9Nv6}andA}enxcifKi>Lahf$lHR^L(l?va#qM{azHz(ZJ7q4;tw6JfOOu)=D`p z7x1Ra*O4zu_qm;C(I4q*Urj}uOxqK2u16}5K-c%*9)q6eTP!rL$#zmzHjfFv4T@aA zC_vpK6u#V5O!a+g|JfxN-@8a|Gr3xFu5vUyZM;*-0Yvpgg)hg7H0{fAEl+~khwMgwf%!n zl)j)S1C2Hm-nMgy<@Xu$tez ztr7|b-bhBr8KEO_P&D++C0Om7R{LR(B6S)< zQ6^?HTf|~MT8N=J?z6NUxyg=5g(s0K&#mN7-U+){rp6VD~C7prz_j^nkS%^_h$Jt=y{o7oN zr{oi8f0>Vzln>NJ5w_F?Ihm^hvOPfCSD#;*v#C)JOc+fJWb*5UR zTT%y_$MOr_BfdfHu|g(iEpVQrUU_ajW{n-XE2XMFlmGCDtmi_W_+RrFX#I*x=MT<% z80d=3G1Dc#@#?mK_D3Vv`b0Vgn5Y8HOQS)1J@dybzvA<=11`$wB7x?m zTmo~k7aF`<3KRy7CEAMo&yANLMil+3$Bf^uDAcER?jq{_ZGG|7e4xCb85eL1(c;BM zfr=QQdC5d)PDp20LRd$8B-u^tv=M0klI*P;Jene1F6)OKd@%uN!1MROg+<-Z-66-q zQLt32N%du(8!yQQsF>^*xpLhs2dy*UW{Lf69(roNu5%rw<=j!o1#n`jP2XgauWwhG zRr$zsL?z!rh07stWyDwT5rDp*!B3+jR zw+IgRh`Jgz1VjoVNW|sr`J80gQH{{WlB%Q<)$+DjN$4>nyqB1pX0A}Qum~daY=S4# z#zFjJ8H`Y0n-uJv5hOR(&?qmeM72L~V6xwKeQ8ZC9H2cLDLUb4bhPhHXy^GIH64o> zcbK&pUrzeE+GNCpZMU6&ZiLl2+jw-Os}=uP^JOs{g09yH@p=7=uJhZWl*5M$uFTgz zt-reDzJsZBHeJAv!DPybmbbR`y`5G0>L`11xBDH;PaBKYyMlump+S`tpHn<#0spD> zM9r!Z5{DlN6y`0lc*7KsB5vZVLwfes1znh2@D95PoYF3&YW;)VfMOF2;s$+b^HcZz zHU_fq%m(y%w^gY&Ub3fN{L}tdf4d*d*)@d?eV~H9A%t{wyQ)mOGjgq-TLd+CvM@3q z4Op@mXg?Ta+ST61MZfR)WJ8_H*4PS{R_Ppq^wzP})!VNnT?7vPv>%LHqty$Jb$(xV zEe{yd+lEsv*I3OEGRpLy2(!B)0&_gO+SFs)-pRN)>0Z?cb?dyK`GfVmeRjQ0;4>`3 za3_c-Dtu~JM2L!a_6GF;-aYKP4+&SsO~nWBik*x^2|ZX4V1%JKdbZd3AE{ipru(tn;P_yl6RT$tSGSUHUclP`xS zOJh~Nes@ngSREw-<LhpKKDK@F|c=lr}-2?$ouS!%$9|ha=~)CIUWO%UI5qs(b$q zZl|{%k#q)%1T>%0R{-AZ0+nEOiryieu&o-6uXmqY@C{|PllIT_PbCN+K=Y4Qw_$Mx z^o1#^-GjZ4`%he_{4CzYdbrFthwH)BRMTF-|7x9dQz7q;E*hSBNyJm=)sObM9zEj= z@72K=2KN9X8EIopDx@oUSXn$KhU$9qES}Ff!r-!bR{MPET_nESpXMJKwfRByF%*k^ zu`vLjp7OB37B&!gZB|V~etPi%hD;N zoic{d{NU*71E?1_ zf@Tx1ZhLS78W20OW~p38^^Zaf2#SlSq(*5-k9WO6`-yp!Hz!oLc`m^b7i_-USZQ*) zg^Y@0&{jXJ;Vk`9dLcuhkGqC0g(WDe+&xS5jUPRVLRR_Zes|LyIV*;rwFm>)oe>l# z=^CX~t=4yu66^lT2*UGwZB>H+jvPOy=}kV>WZw|3`9`vZWP$-X1}=hj25QR>R5)_X zxAi^mw8zWNVKW2^B}PgwDPN$4!F~fnugbSOy^M4=EJ}%{aum&6i`Epc5iL(v#mDIl1)iDvp=mE<0>fU%b$enNMr-Z3?Kk zt)Pf{(*o5rB?_@8!fmea_^K@`5Mx(MBW$F#sdboGE$OdcpOLo;OQTli~{r z2D7V@AzWX4DMgJLeC?X>Gundc49a4To4U;Rfyb>P_LgJqcrRC|pntfX3P$wks1PWy zwZ|n4atUydmwmYwK0RPU&^UC;le(=6aMzan{IU#-#)5) z!EL@#rXP>jtn#Fo!EZ6-Z@YisCN6K`woMf$mPSn!*7k{ygJ@=w88R82{II7FaD3cw+hZH zSGtDH3^6k^bIf+k%osz=%*@QpY{xM(GsMh}neCXFndv{b^UQ^7YToahziQ@kRjakt zt+mzK+AXQz?G2dw|NQ7Qe$((GtBfcK*j^++PzjrCG;{n&Pp^hS?j zV!zyU_up?5cA=%4J-YkwKF`1EFSiY`2p^DW3Wz#to^9m zXD-}1(gCImx}-J?M4?cNQTj5&8khW?c@I>tat(^X1a{T%oCFE5n|@#OxmKYuM+=cy z{a@>kJ+s-8sFaN9@51nZ)jnoLCi}LH4wF;M7X&5qD~!LYpKeWZB5Bz4DC4qb5*6Du zUR~SCwn4Ov9(BQjUaeTrtA&Sk1EWSa={SKyfj8R+k^6{M`P-E@lsE+u-O=HUR$z>Z zkX77KNc$~mDxNyJ(lZ>?!yoa+R;DSI#$YX+I3YWZ+vGwBk27ZZ4ei=Km|$Z^R1jA7 zT{kKGj8K*=(y9lx{Gch`W@~l{nOHyI%m3OR-z`kbr`w!n<2als%+8U6`h_Vck|nUD z$!(Be(X^3c%RnK1wkRb4e{=TezGcWKFifyvW9uTXu-w_TOS*g609x2MH`-w37I)0> zb60n-?P<|nGlZ)PBO0|M9(`_b`K$diD@uTrXL``ZyyjwuI#|d3kv@n^a~R*vRG_?T zS_dwcLd#C=>fW^wp=o-s5kE1n6Isa-)H$+!GvN@>Cdkx#MYBd)Z3r-kcw}^a&9Iep z8TqDEsVM#Z#v`Rp!HaGLU(MHF7M1W>Vj6UM_;j1(Nq;%N{W^v>U3H&tSxK{%)`@8Q z=A-tfDfDd>7Irhm1eis1k+Zw6{`~gzX@|Y+Eztpb&XV>~>Hx@6PxcYtoG5H**JqKD zsmFle?l5D(*6hjTc1-m#jX(klqd^_#hdu7ms5Y<>f?Usu5^2%W0e0S3X?~adE~<$Q zR0#eO91BcKRuYeoPWWKl#j?&7mY>S{Btvh%J^q{4|f~V0~C4>X%m| z>jw^qM0%?I=#T3AyK=z)?S}R2?SzlO_@{#vgS4!UT&R{9y+DLYa}IrL`wghvHGlVc zAL#?;Cw4sk%IVnZmGKpxzjHQH_E!zIF~)G1Q=`d9JvFP)U-_uMzbl`kE_Z9-@QMQ^ zUazN&A0B!9z0JRNYf7IwJkDSRp{f0HlJseJQ+g{@?yFOVX!qjZecoTyCodHx^e5k1`i)gM4a;|JUnuqTB*trg<1mwfxL0@i02T(nWwWrN_k4m99VErHAycPvxar0+Ue2*wF0o#P{ zAC(7`2kIOP1ZB*Ng03ur-0lyBaLfNv?A~_EEfV+hhkeeS)-{itDV)*b5Gd30VI}Sm_$S=*zbTNnKs={;U8s zhmXon7ngQtq$;RtXkZiFq|+o+H}^Dc#93q0`WcRI^H~)5f#n&DXJepx%Dt1*&@%|O zMdbS|P!d>JF4Rl_FX~6mAT2aHt|KVUB*JFIL=HUfQQfICy8D%fZ@{KTm;X@z==rtI z)zUt@-oxDMyxd;L2F~L(oX9ttbE=#|Dg{3GyVxJ;1IDj}`5G;K$FCj4fpjXHU;3lL?BTWxuw4J^_!W2BoeLu++IPpn z_c|%|j{E<&_{HMhDwJB9V`Sk4#cTD8ANC_Y{$I-h<5#tP%xlqUA1DfcX@dfNtIz*B ze)WL78jB^g+sGJY)p`|oY5cF_*N&qi>!@%QHY(!7lI4#Pp8t0I0$l$A2_m@?Y{>V2 zuABJk+u-Z*|9buBBmM!d|D>7Gq_MLx*%ZNfR=%K*MSP_He=W!4d?9{tLn>TuO;~Co z5%S&4?e(rky8P8ZcBr<+US52K6vt6W9}Z62T#E2iaV!K&a7B!yFhw*tE3RCvg`gk2 z0}op+YQ{>Jj$=P9)qHB={VEb96@(XGk5an}rtx9?1GMM-WE85q_IZj($Zd~dY>Nd@ z4u}EgPxj-e1g;heF|EoQ+wnY2=>Kj00nVQ!%e@FjifRRe*RDgn-h6mK+WH z39$uzb!C42s64b$sA!a@5htYPdwB<=_^Z;61lbfsKv7AP+K%EvOw>{QWSoU4=hYhj zGEESwzG8u`VE#fIjg6v@+*!`?^U+|JtQis5msrxhr|572WF?}~(U%)37?NB}mdR4y z7R!&GAADx`-K|;MGhwsgMxWe__ZMt<>5@DK<~Y^uP6I?c_(%Fn-I^OF1L;bStl_ZQ zaLDjo8`Of^ar~j)K*NO3t&neBls~}YRF>6@$3iG?DMskuUS1$u%Z93Ym#Qhzs*2P9 z+kB0#7&sTTVrfxfDr81QoeH`WU}_y$1ye6)scw;CJ4EHAN>wVKbo9RcM&83zpvP ziaJ0!Am-=^{E~C0ytMYiW0-PVpDGq!Y7QxrS?9ZbEvmkbUC(K}Vc{;Vwhd*-ASajo zZ?bCDR6a4MvaR2-G+(2Imw$+efx?BI%66AqM(t&F+_D4K{}HzF)nUfSTrhkq&j!8u z86xmec|f_*moqn!hwWx~42$}ri1Pftr}UHGA*&w+>MrqNd;*CswFZ))QkKAt2pZfSga1+PAW z{()Lnz9_1lzQa9_1c3E_gpY~Of?rDrRp5K5&8#U4b3}2DhJ?lkEB6#83cZ3zK3rcA zMNSf37qR`EIX+&6GTjC-b|WmGrM%zC8)e~$gDfM{u>Qc3$Zt;94(X?$#FhmQa5-rx2(d&!$)jTaU1YHq87;Kburd-#Zuyo~KIF8OVUON@!C)N>Ez> zHc{9=9=c>xt#EHoCGQ?8D#;9Ir;YXN#i9m@oUYr@9E4kU%ybik6Z3{h(B366HphdR zW*s{JhyRxW+rv$s<_OQMS+>2bKApi$#|tR`2xkv=Y#8lJ2X|>Pe!{paREK}LBaLCO zQ?T|f^7ng$O&hVrwICqVW*?r&e@u65<1RKwA!%WS&x1q37Bean9%M@B)D(xbGeS=d zxZ|7$|I6_yqTxpN+p}%aMj2ixrK;?Q`(iUw_S9L**z#@1>z^q0 zF-2_SvsKR~&NQZ`t$y|?RTWP-o+ zt5E=;91sJpXI3alzRHPSt}-dD2acQ#y8o}g2OFBNHLeUxs7{@TM%k7bt@~=>pevES z2|B%}J;G3jZ+`23vFt1p_q+b|22&YLh{N6e;Cuj?wX@=R_hnVQ?mIs&%R?;dg#o!B!c%dPDzMnw{wnwj$N!$5^u+AjraU`TM^yCnYZ{~4A5>35l;OvudM zg_P0|ia|hs17g7Ya)ce_D2e%NEBfbkAjV1@0x0V=Sf=kx-;m!K%^L1?C;;{UU*pJ% zLOC3E4~VZv3V=}8tVA_S~7rnF((+Cl=4u2!yy%xi4PC-=EECayk| zc+pMFqpO7_J1<0M-6l7=fO{Gp0W_gsdKG_nJ_$miGIhW_6{7y;rYA_f{NevI!0)dm zshXp3>894k&KVvxW1x%w_4n55RltLVDHv;WXrnNmDt5IzAUtzIS8Rm;_4whO z9XxO;g*0y7-;`&i)HL(I9zT9SgmC4fvs|T>f>ZGo>I6eJs=8_ks%B6^G(SAVt(bgK z6ndXhTx~RH+~)5yv3+W4)^*z=PgGh2*&94V{M`u|cL@hRP_1v5B2y`L4hkV1i-)s5 zSz-W}I9j}JQ789T-@jQE_j-$N(i+BMHHf;U?9jiePc1_AD!>n6KL8Y`E%|t9J=l`s z$8K=9!sxqEgF{oT*aRDKPEJNJIIv(0>G`-{Yp0jn~ezTSc_XqWTR8n=VH0|p)|^$qF^m_PRW@5mN?7Uu`j z15qw0JEDzVZ*?nhgGXhW7vGf&wdo7w)q_Iolhk9bKwe8O892Uv*g_ocN(?e%G%xW8 z7|z7mH+fm@v4_x@9#y_w2H7+I+^f>7#z`@yTBdITn}GIz``P2_$lK8f4YdZl-0OIP zAI;P$`a}&Wcti|cD7C?+TcpA|8-x&SX`G14jk3X{{-AJ6$l~!VRn?8@bwMfQWQ-o_ z48vW4pMM;-V`{w2O*-yUAFSOjO}Wo5~}F&8DRY)CLO|bFkd;~ z2w1YWuj{_Dj%*UfFN9QNgsydI3WOSs03A%dJ;OxUBuB(LiMy+7atHh#-;OFB7a!Us zJyCV19X;~I#P&|u${Ol#PUZY5M3%jDAZGi9KK+321uWmUvF}u&`h*bGmT}IBkt)x> zCwpxRK{7izvdBsDdfR<#neEk7Mj zofk@8egk6vy^^4wRdZF?k%&U*=5>jX>9(RdB`Tt; z+^R)*+h@^)HJo^h*S}h;*mLBaYAkLpOp<|*sICb6K@#>P3_9;o(KDwMb>LQv3|=TC zX4LVUvOc@NP$8vUo8)lEie$#n()6p0 zFI9Z&7D+FK$U(tCcB{V7`9jj!E{4X5lOR-}P2gbhiX1}@Xzu`#+g6x3p0sl=_xJc{ z3|m0Cr3}7=3ngmx*;X;!jw$)0868}3M3}YEETH4w~_`RQ+(196nUgzuG%#b9` zp~-ax2(3i^Cdy$=QABw=EP9}Y_{jJ8j#g-V!1h?5XarE|Ro-@Kyqnq04j8^Qg1tUY zd=+^qs&FGOOyGNf~3{Sm*F6xrqRZk^?H zVCA1zmfiT%emUX)j4<})v}%ghr;u-jmd+CI5*x!4-7(2WPI(9oQ)*E9dSVmz;FXIG z-^TK7*%`C~c7`9N)|TqiNaHm!VEe^0_O{*F_j|C75rR(J#*j0jqGEgeqND$oKS@>+xW} zdA+<512&@_xAw6Lz1c$I7WLC(Uu5o(7|=~)&Jm#A94wKw?hSZUF&r$%!H#0o!h!`MO6eGw@ zzW_~`#E;&8l-fr~bA=zJVTS`5!!BRp2P;#Djlfk7=XV3Sh*O+aKYITG{RN1H4!YZi zqK5}5$}&rNPSYTib^PJ72=lOcsRWA3YA^{teGw?D{+XQ4)F%$cd)HYe-Oy`?a1pvO zUxxEWL$+UkkZ2HE&8^q`Ii&hj5>YZsE=ouShIwzrR+_xHYTSzGp{0c1t}w8niki;; zVjXSko9PwgOV{a275HHA*8(4~U#bJ)t1A~*T?5$Tk9m&htuN(d#5QlAVaB-V>XRM| z0o%Js$bH1z3cScVJCvNXy5!K&pjw9+0Fu7^`)Fb3lW_#>fpw|p5)v#AWlVCto#Osq zU4J!C_fB%TMIi!WWPh36W*0w1`F+hr!J=n3|7Y>L|+GEVc%=) z%e>xiSMmQeA1L2n#4izSqI;bLB`N^ETit&-y>^A@O2HS?1m-CfGm`pkR-+U;POcEM z0QWo$H38_)k1)g9PUkok&g44CF6O|>GmqEor$N{fh4nz(Td3rj_2IwE4=W`j9^kGX z-CV&fM0lvmrIPDMER0@FB1E7uc&2LxH0$Imh+|7zPz(M7wxT1yWx)Ag`B=NXSw&(0 zRf~Ft;5#`*78xz1Z`bCqCTH2~c->V|a5ridj=JEPx9W~kql>B_E3AT^5VGyj5<2eE8?$Xg>zW)qG~JUO#iR zxgyyHIBUvPUit?23#H_b=1Y(AWpEI5bWkoG!dYc~Neds%mz0dTgGu*FbG*9XBj6)` z%$Q05>juEm!YY)xvii~Ys08nFDdrb=X$R$)`-{%CQh($R@2XW>e`n!Wp?$ z?6y&?b@@@?IXs^vylc++x!X<3PDSRK>B_?fPN~pqmR{k$%X-MkII`jW)J7)RG$m8I zohub;gDehZIA~pNeS3K(JSyPfEDH~MR&c-prn(ROtO?_$(a;td@=<*4<9eR{@oD~^ zAYp$^b1Cm!xgl;z<#&+M?=vQ74_plXbMC^Zo$XF?rHgk^$UwBz7dKDz_0Rn}{5SWDP^j2qA%8_Wef@Dh+-D zt=xqvxWv6A`{h}E0zUZ5xtLX+{SeisVwgcI6&o(8eD{0-LX?69e5Wb0w!zVv3l>Ln&H`A3k4VYjB1i#!qxP1#zZ=- zg3Qgq^*w=cFYP0KXgyfh#skeD{P^;_ho%o?W90J9^NrqAEi*G7dD%`s7;zS;qIYZU z6#j&b?9=;@@l=mVzP|orj;nj9Z_v`f-0;slcarzFxfkq#Pv{ZWvODw+!i@^&X#(p< zGhs$=ft`f85L5^*!~_mK`;0^K9&&z=H0{YL1z1`kR;x2taaX{is3Qu$&hK5$PyG7O zWpldEjN8e6OdZzzFy+VNG9SjzP*e2|5#9HN!$RT9$_BK@m7lVWc`7o1 zRI}dw%|Yuu%IpjSwbU;;&1?Ai+TAPEt_51U{V}}G-YC;d3Sdjnee0iXQMTR9a?K#M$ih*Zq4gZ%fe;i-h zKH106KakEpv%LQ2t|}dme>z_(2F=kaKJ|7UBFk6F#<}PI%a=d$g=}NsvN*R_9;WdZ zVoZR*{Xd;AM-N1`Db_z}YZ9K&49dY&{^iRb`7-6&H@R4^(Qdz%0MScGbn#E;OUb}% z@tMKJJxDONaYa~_?Z15aBVT-yh?PhZp04cg`oZha@lpTje8I7;lS1|(0yc?=w6IeV zi2j!^f8)4ud9iS8iEq`s6`bKeoiF+u+gst!`bX}lEMUxXQSkrr<&S&`R+N9_ zb=Xg!t)1VBJF`Cer}Kq8b5f*R<9((4Yn;btbnKUZ`SM4;NP6?_qEP^+jLJo5k(nNZ z{L}futc*$2g27Fd6QZK4O+*~=FJJ!1mjH!mmpQbK&tc>=O!!mjU;pWR8CZ_6S~qm^ z#MceIKA;m7|CcX+M9ZD5MCm`BF9)M`KXjvIN-P7>R8eAXL;vN= zANj&a+OfU;<+|cDDSzS&|7_}?&X?L>Z3_|2v2}TtLRV$K{VV?E%OCjy=TYv5tM+-- z9+CS<)0C$7zs;AkFN;FoqYC7^g8IroJEv639P3Gbr_G&sGR&0ZTFiY7w99Vw>Nl*@ zmR8+kh_YkLFM$`h5+$S-kqD@mJ_<5F@J5wmy_}ED z=VFwmp*4#IHnyO4A;ViDj`M5yDj+|6k0jc|Z?m`gmMUET)M9mEUapcie;9wKTiq)JjR)lt~ACT5J%n`}vp@lOf3?EyhLvZ-0P%~2zO`hb|q zw?ClavtX$!VprlGN@Q-5x#@^-6|=bRE9tevaKxHq%UaWQnt`pTs+IRyj&8!=&F`U6 z=X;x;KcqIwzbAVdYz76)?*YtTbup~!A}D9YH}RfG3>jX71k7JZ#m?r`gMg80hxWQj zus3wb>m=Z$_0u3zpv37#LwT9yiFVl>ql*fldDGL-4Re=OW3}EU&3&cvrl8$amNTRW z^amh@_=WVn^w;41;)7K)^Yb{AJ<~JT%x@tzk)3K(TscruK8STYjWqr!zePj@wBCN7@=Bqn ziFOxd1(SG&DPKHzSy0aarR2TgOG_C|Yetnh&6lE(vr+^sNpC>=Kf=pw3ZF)Thbj}= zQB*Lb+QvJNbH<1U!qW_C_{#{E)ciOm)*Ul6l%M2%gR;vKGTHvFe*p7;ev4AfcwLv? zlvW~k{dR--u8dMwj7br2WI?=GWd{Os^-+FD&(CLWLr^px{ZY2{OGMoGvqzi#W5%Qw z@&U>@8p;yhrM5jMzZ2i#VR}X#2N}l?{R5cap{7-{oZXIz7kL!*u+Q^0{!xC1=EHrQ z(PwS6Ei#Dcy#-=Q$_B(s2bt)3woIoL;@ed_wN}%lQIbG_{VULaL8sj# z0?oX(J)41KsO-U;8xBPTm%hnsekFLY0y5u^+LQX5$GLiy>9b-mQ$L{oM_3pFTd0AN zy7ntBJ~?C#r@A(;nG*YxMtj}+H!lHsCFg4puKyHv29 zrPVOj`whMSSLw8Q-bZ}HPngVn=wyKTKpnCEx4vN8>5IRO^`EJTc_fR=e5dMU*6IboDl2RPKw6 zm&Sfq6G31q+I-}X|G)7?Kg|Rx<`wnosy=DJ7uk{FU%vb?-#%FohMV8vlV)h^1`zGQ z^!7iUFScONy0kF-9fZY~1qn(ng#Ys8k9^^7&v)-wkK%k!3YlsKol^X7^W~G(n*8nr zhzBoA%G~8IquOs>=G`DhPdj?CFT{rBAGc zH>>nh$_PhO?Q7&`D=a&)A)rPS&}T;)v0F3aZk}t~+8g8KN;!Abpz*KxCuN^y-4?-A zy}Q)I3GJhbsJPe_2?IVU{AvCgE_)u(5+O`DU}@)hAF)ZZ0df62O&3*4Vl=yGpplvI zSI^4=SIPqYfqtTq-dQun3f>j9Cuy@BSfh(9P&C6DbGn!PQGWlqcigMG9$kM$J^Yqc z%o1oo;vKmc3InXBG9Q67)C4JhwHQk56pQ)If3hS$aeK8QbK`(u5&sfaOF-SSU{0=Z zu%4A=H(z5TIJ|UDryO*OWW~>)eid0^4&3lWy#QzaD8Jp(qa5*UK$17#Jd)`SJ6U*|I3#@^2O%S zgrm~tCMH{a=U8SOUg*Eg7sPbQ;CQ7bqJU5or%*!AfrU-Ega<45wm#FS@Ch$s9geLp zXP&Jd7c>Ipy+L@B4WG5N7*?g?+zbNi)_l+u8v*yL-z|?;a}S0cWX|1HMnSUh)vwTNSbg+BfE4+YW)4$hHW$NBay&1+EX_kw2h5+Mg>S zi8j$ywzOe%&I8Q7qi}dibGZV=A*Bw(%FmRDMgg{@5!riplSd>|#(t%*{5{KEPhtjy!2HZ_u!XPl1tgx?iRoq`q z#Q4yrJzWz`T^Hxqg??WlsqFpA^%woqdHG+b;CYFaU5eF2e77CtmfF;^LfyL!9f=t$ z2>B1=3jIFXPd~iG9T=Bl|DC4H4yMP^2Q|rJB2irn|WGp&e??sUcsVL><*YxUn1|QJh4%P=WJ7KskMV zycW&p4y%qMkdbKLnlr2n{PhsOZjkP`PIpoSZOR|cHGjGvFA_V9th5Wukml7TD}fx_ zKKrzzc?r6htlW|C;!R;}gpu*EInn4R(Z)$Td7Iq%pYC6wzhlP5VdA}&Q z12+PR7_?NkdD8$Q!_@uR6r{~8YDe?4{bSNjLrhAns#l>IX&Tqw%ANJ;5O z{o|tDFi29Li~^_UVJ(swfEhm^%`{+t|7l|F%pr2`N&ln%K~&VF_J_0-jjmu`?~`{U zt<`=Pv>)fw_`&T)ZaI)wtei_uk^CDRyc!lOPdZRrX)?;zz7rOb7=nll7Z^Ec^rQD@ zndM8MBl*MGWu#m=Q!RCyW>G7N>E-g$U=5 z-kk!et0umU?PB z7bIo0({@mlDvLdQ;Yo50s!Y1H^po6LJUTkZ8|yCMc?O7EpYuy515H#dmk7kVf=>h| zl?jZcAhoUwiR+DRu`U3=rvNbldMZcFnwCW6I_t8&gXlxVyreI&<3U<@YE^(@g7y|* zc|feZs`A;0VarzdQFH+mYB4>}c+z z@n9%-R@^HHE|W&_QvKMtAD+G;cjfUKX#*HR>Id-GR=RUBTF=Or>e5#`8gBWSmu(s3 zD6}g{W*)N6HJ^#xlqWGr*O!iM$eUGMdieBslNJj9p5chMv%`smy#~>fX&S)uRdDIN zV!soqVzK1u=XG+sy#v|@h-+ck?ddkQ4bkN#qPKdl!gfW&Imzgla_Rf}m3`w4QRY_{ z4s8V1f?!_mtuVK>zsXNactsHaGaWH=%NW(cN)*I40|WbX(H_ zYCg)hScbwQzqeSpk{-PTetYq*!)~yXKU@gUDc<5I7C^YbdB=}EvV5g-SK=TA@yLo2 z)=D_>b+V1})Af^Qo~Dv}k*w;c87pu<7N5gn1AcBDB9@7{Y3QJn5p531{Qkpi^@At>?D2?11b+s>TI*F`b;*I3WEta@5~9*=9d}k z=^SWP7j1S4$pcY5uiTy7@dOmD!D=_G<{ zqKWJ(El(Z{^m&D3L_E+ZzpgHxey9&|89eTt44-Orq%EC3b<^Aj)n#i4Cf0ohyw7pQ zz|M-$ZL>SpKkA|Q+F!wXRE+INWUFUOou*5kBRP2me=HZ1w5y@^_$jO-|c3vjCDY01`Fz46%US`>at* z@-)4I{BzH!CA2DKVzX~RJa$|FRTviaPIshmJ*3vmwzdYRD$$UGrx}$m^NlhG+Nhv} z2x1HkB)hWFuJ$qSbgN-Tqv;Y=_lNPg@yzL{<`Z=l8e!|R(y zmr;!ov);i8Axo4C#;tw}>hbT+AFkNQZv#1UxZ#~%S?#_ie%7^^Gp`D0q#d_A{&ni` z31k|l^_thl@Gje_8?MC%GTxnZo(CSnCnS2~b1MU{JxH5j9lmc{*e){>DAsul)F@#4 z35oHNU=F%8wpp&DC%7J;0p)<$Kc+{mn@#$5v)~sv+{UjAkpc%OWD4)aWJ3ZRxNv9c zzZ-8l#T)cCg$-;kZt1#Yjnc8gEqUXkMwrQB!lZ|@(vy$F`LLC_k-ML|uZF&a&TCJN z0{O|WKN&vkm5shs=Lfy8bojCPRCTVh`_U2cl%UzW?YPd)lpO&RQ{qwv7nh{{)p&!i z1azKWzr{rIZCVx2g}9y9UoBnWt8HA>$Zq(zZ=4jF*OpqOE3%jKqB>%3;ot2MIB@c@ zFXx=|G+}%d^zft2WWJ3Ditfc@(qSRFypZK#^vNKwf&Jo{P*>5@fj?ZE0brTfDvYoG|QKLPRn`k2^rc9rXa zD)yY56Xnd&*O#=|bg7+)s)DLoA^~~+<$ltbr>>ZGr_%k>aHE3a{Tiqd#L}WK=S+ko zXC>Q8t9M%_p4v?_gUKy^@|9i&#(G!SXzhlaF!-%2KV&rl|Z%wk>&}V$SmKIDC z30m_#{Jhld{IB`Jdo#9bFx4>l*uy$Y%DAzV~ z#=ctH1YbeFbzbm9#08W$c~y8XI2$*@dxM>jtU_vs%64>u_J0vIQZ(6*?n|`)#iZa3 zXX$uriXpEnQ$=%XFTsEap_|zY%Df_Dd$_Tq8mChmM@dbIR1#!Ih=*k*$v{A3uL^1G zr)4)NK7IAA3$(bjS?{OJ{vBpaWU6{?KsbI;SzkgL58ddBCePQW0}|o#gOqL+r@b@f zLL<qigEW-EKu2~tGN-t(0anGJn6Hc8C0`81Jr(_ly4B zrezBfVZnY=%ir8w2@nMmthc%sn5@A1OEk#0(`dF9O0z>!%T|mq*Cl+DT)c+JzhnPs zOE%it-Z6|jp8pmoKOik1Go*ST-K+U0J^Y!$S!=uB86+ACf?N(pDb}e zSj8kDfhm`^d`!CPy7hfR5{=h@Y{R&gsgF9cIbq|8PvT}TeL0d%LW)X+DMh+M8xBv9W5uoir%xq}#!kr};?!6w?XZShrm z6Tc>&QcOhQ3WPNac9p}R@uEkRMvCnUh}=q@N zc&R});M5SSC>m*-=lfg4e-856z&Q7QPFQag=4nMlSXW63LNS-yX%8}8Eg>aYE=A7Q zxwCD%Rf3Woj?HKZ9*nKZDOE4)CQ=ep@!UNv^isLRk9lF=km*3CydCF~T41ucTD=n` zRzRR-jj)Js0>Lg^o;sdqc26|%Vz-%yNIA~|HV?k*D zV~QO_H^Lah1bV$h2v5W9(X3De>OXKixS|i!opKk4~A(dnQ}T>9unCP!WM< z*)H3|agD}w8UBN8S+?0BYQ{JP`H;mPg?m9@^+htRLBAQA$ zUBSfc;NxU3#0f~1!Kpil0@6mD6D z@;n=SM+^Z#J%?ioQ}ULWcLShT5(sF@!s}W()Wl#wc>!-bbWwMkoT)VI)9Nj7WX%z^ z>5rfzJSC!Su~uCHE+>r;KZGIb!pe>46VaUd4}ke39;B+PESnFL&>KIxUxDEhdWtCJ z#kajw_{5U8z)cO{)ON_h!Zy;p2q61oJ{Z9F2@tdJdvdKTl+q**J7Cn884neH9!A$V zY8hy(LV3zt$HBkeXexn^tR&7Txf-jbYCcraH1dV<9`W7EbvsQ#awZyS|eiz<#sI*hl3h%2Nt#-_@ zz(z6Du)yY^?S*ut`Wkk|T48&(TQ1h4%x3_Wli~0diii-lq5B$%Wupv4jM!Ph>oM@q zI@=k+=c1rATo5JyN#?|w`S=(fNdmaiuzz#&TLz~tBbH?~xTWGU_zQ3qw<*x}qlcLL>r)GH&U}UTj0W1T|GVS*X4M@>fQBYoZ|BSbJu3b z#Ujx|GyzJDu6NsYk-@4{9lg}puiL}B`Y)5lo_sIRo#_D3V#ti za#7ecJ-!xN+&Y0qaT(XGdkL*l401PFa~x;Jr!J_&-IIaA z?HhSHCg0~@J2cgz!oNZTNwgFSS{dKhu?D3ml^=8-f7Oq)5-y^4Wpgl<^gYU(#GwuiTAXT;q z)S7iSNgoca>#?4YXP~VepH_p@;94eJNqryKCl- z>3vQI@k1(NSH%M=%>HFJ>-enNwOoCLS}L3W1w7k9xnhD`vXrl@u3SOe;G{r&>>=R* zp^5-4X8q|RkET_KA)!9wFppFL1<+nVe9~2Ql(#UCb90|tq~bkE1t|Xr561Fzw)ML| zc4Rj3l9{mhUMh zy6~)}IFVsvrADuja5D#IsfscwydT`$f}0MQ+PMhB(SU@ zmG4CedOqU;5!I0GHBZpz@Q6?)PPv}cvB;E9U%*mh+BE`O@x7z z&}kvK4>TUNy`q)$qA|qtWth=1rvyC4ta*_+gMu>5fzKcF?hO5bguB<$FgwoeJwnf# zbVYlzA`m-~y0E^~aSTgM%aoFGO1hWY5Ztw!-<@X{@10C`(ZAeij``FY31wlF)1Ygh zp0AO`#&h~VSGTcdSsad1LBt{o{4~!_Itk1;J?F7_N=R7_SNam7uRj`fT|)Foh4a#! zPhHKH-2ONPP0@}hD$#dql5yFXH2q=zWcDat{~Nukjsx$a9FVQme?Bx-Zk|8c((GvAlExey=-=)-J@YX2wM5 zJ`&2fij5S4(w?h(@pQb48+naCw`~DABd3gO;gELQmrWg346% zZ?hdlM35!`p3ZT)P@aHypB!>s07e&I<&meOO=%!@W0&6Q2^P|sQ2fu18=B_JW@6&oJwbn;k@1Dm5r+lyn&4Tz8Y=QkC)rcU3#8t`IYXg=ah`cZj6 z`KZtXRw2P>8#NmzY#2DG<6Vpc=%V9lN%jAnUVQLtuwa9J?kE|K`1?BU@Rxzi*rDVTW}jzmd*!@yPi@33XB%Yqg!s@^qyl~8rc|q;38U{~*B@xQbe)nrk3jP-{?o1X zM%)n`L#tA#toX7Z&8>uD>@*AVkK*fdf9XX-)WqLAakS{uM*-fHroW1k=#-~m*F5(3 zEIL(r`paZ;3~MIZB!>Ar-%@kVCFGFICM~z>O_8{ty8-=|^0m83G<>fF`X2wgrzsA^ zU%d}m{l3K?QTI4#InN+XETR5gEi#R^6bhbMnl0Hl5`H=R9;(*>Drr+B7f;cwy9^Nm zI0V)b4TcwNxt+3yVRVb#lV6VkMqpJ*j}zU~3J}JLk$Y zZ`6iC&>#pDn#yYo%pg$?BAGIzELFX35;YutG{yHHrTKDAHpAluoz&Z)k3>dJ{rgYu zQ4-K+KSS8i@#Vx1U2Hd&nn#YBCH-vRSXSbhPKSA#Mvq^DAL4%74BseTBhGDyocMd+ z`XCY&=Lp^GjGl~MP}WuE_Qw4FwUR3y49C~D8jYB!(|4b#nk1mXyOlDZJ7)S*|I-h0 z8#5r1lYGd7I~$*_vF|aOxu;>-s0qK3Pt_^SM|gr0kSt}t^O1Hk>gyqkNoR~Vf4E+# z!xjBDVdz8X<#ENr-5>Lp?{8ss+csN;aQZqcEyw1RVXi*#{WP|M1_D@|A54@HIcAAA zbU(gxbPC%7zQ?@EXrZw3Szk9GGFst`xsiZ+w(SL~;w{uK5G}Lsw1f?RtWEJw)0yk^ zmYOe9Q>uP~?K@vrBM>JD^EFi}+kzgi+{q+z+bHU1>z^LI`sNuw7|@4+r=vs#BzQVd z!dK1*lqN3L4_3rpilySmErQ|T92^?}`3H!-;^HI~^O&TH;L1DTJ%&EK?+t#NMXBg1 zc#KgK3@d>aq`sM7< z!B#|;QN`dRwzRH+z>JnkmbOd8v`Tltj&>#FEZF zt%c@}(Ze~Rh!qJX#t(52iF5m4Y_qsPGsoDs$S}9v=aI4ER*K0Da^Eq zlW-VHkPa#XI5gScCAM1k;%rgn;5uKE7kcXb#rO3U1U}5enplExx_5I~2^CB_S~pqU zNroP+snJ|bT`^XEO2$(e>@A@8&9|YTX-7i6rheRcZJ*v_SWLi6n7q9Qlb9y^eiS^! z0-n7>21v5xMxbM{XwbP^yV(o}-33a{F#{NQj^l;e08{lc(L9{U7n7-mnWp0{t{mG1-^rA(HK%bo$vmQGr8A7X3 zw4p|fQfh^sZAu?LxMQrXstvZq^&UaQSGrmjHO8boqrX1Cx4>Ea8xm7)XpScy49-XG z&%Nb0ZSj*U5*La>M7Rn1@V-5jA(bQ~Maa^0iKzdNx~mGRYiZWFy99TFyE{RGLvRc3 z8iKn7cXtc!?hxGF-3jg<9PaUc#3_%a+YQd!v*I?_!0_BzHbUZ4Tn- zfAxT?dfaAmzc&eF+QVtWg|sU9;l3;of4#Msyy8lr-;v6P1U&}XA!38U-M^~9X0{!w z2#AM%KHe)z)(vQ>0Shxx<`Td&HV_p?bzgG{ceR$ z%TMebSCK5fQ}V?VMlt0;o9FP|Dl zy|uO(3`y+5u5lk%bBg3tpntn-`AIX`c>=;u%SjZUJCqteU zEZcnwbCCPTeewcj`{x!pIEAE9!P2Tg6t#z~{CcNUkyOSt$L4t^h}nR60c8-!h9JJH z313;Kq*h!kxyC=zt5WPDS>cb~kkzKqi@&lLzd>lQt{STzdN_G9O;Qb0P~%t)-))#m zQdV`B26t`?8YgK;&&0~&S%}1Jj5Ys)iXBUNM#&Nf`joCWe6DyimI0k{SP<$ggj`7> zILKJu+Vt6SD=&_rn6Wu4*pI0rmFoVp_ zH7FuUm!wmQx$VJqTIuT#mX3Dm_50qFPU1WQJac~WFGjOjtt#j=gR!||y}r+XqT8$C z3&Eb&j1<_uRHGgP;#FTbdP;WRZAmv0ORWkx%6sem^q4q^BaxRMu)QsdJ|{UMjIc5< z_i$@MF8L$mXqZa5V^#R99QJ$~g2K@nluIdcYHs=I6=hY50nyO_hX$=4rb`)rmoS1AlM}LbWC6HAg@Yt8nWgUu7bFk zw%97S-=nJneAmn`SQvs-96R1EtbJQ~lEGWj2E^bx8o^41mvs9vm|$qT1`s6?cpLjf zfcvX!)m%0TyPt&A4TmJzNBt+sK-cn@?aEJ*A&Itb;9wn=n|oPb$1gIx!{%rqS5% zVx$OIvolpuA{j(yRTW;iQ50?m`H`?jJLyZgBcBd$#TX01EI!QDrJ~$N^8vm;pgdfa zydsS{nUs%zOc3rRD*;$<0(>4&ex%3{@~jF=8X_O^H2hs$S6zqRY>`CPRm)k##7}aJ z0NNco3sP9DIQVRz-*Bo}_Z;mYiw7zqMm(3RmIb{ASH|hjE6|p)*jb#k#q=dI)Im+Q zHaQs@NlIRSU{r%SX@420L@*9m-h*DacZ#S=NU#b{VAXTob;Td5JP^_&j1G_?EtQi zJ)U&7h2>#8J%`oJo*P(^Tm0%woLor$QG^*RDHF6ZZLgNgaY zs-!K_cuf{8XI8-XF{ZOrz513Ja>pt!KnZPbw3wjX)6l(#M{eb3KwKB`2>3jp49MR? z#@ayp4do%2;Lqc2k(~255(F4~|`{{X(GZSp^{=`z|H_kFl zSHZGbUi?v?HxP)(kTqxj26kt!bYtj=j0^WP#WVFjbptV*tb+0&iVM-G`(q%)>GcFc zPwvR4Owb5NvbgVn^AXPIy?5R>l-L_R#DVI%`j~+4Q{~}(o&`lRqO65(HHEQq{8sx8 zUn>Ox#sO}`^#O}pR(;p+^Ult*_mrb8i~T~4Lc4uH6(;}QY7d$?e~x9ZXcVqKNrp!z zsfN#|&)4;xl54VM7RDvT(J+F~9#zZmE1l9B;UFJThIxEs$ZSua+L%-u-ipT&)B#u2 zM%@7(ibyXs5qHTQYzWmBBnLmPQB+Pz%6ty> z?N`46xk2%_7yLsyS|$+Olw*FwQ{+|gK)oJg!2JM}A0nU9FSaT{a!Qzs06%|C ze)$5i#5soPrZ!}f-`VnA=T@~18cJjC;e&pC`=J-5un1a^f6+N1FY4BV%Dn+7sMI4Q zbl2H&FI2>k&W*l>X5mdwgc_%S6&0q~B;EE$=bRiv2)NQ?GJHC0R z#nfk0^8I8Tn^&j!;Hwc(t(urdYhcteQF>nrji5?+a}s{B3t4M6Sf_0XeT>C=3grqO z*p?<**wP`frsJVfiG96bX)*YE|MvR(0SzVOgE|luIs3~_)hktz&b1EfY>zJcd z6QsllwvWIx66kir6ip5jD=Eh>xn8Dv*@RmPN~)p|B#<+%Eyb!Owd1#;We}%BAC*Ma zA)@&bKxdXn>T0=7dtE2Jo%z|y5B;#ShsPy=T`Y<40l!p`4>K=!?kTS&F}9ZPng|p> zv)cVsE?>p?rO42j&rKk%MsgQc9WvoDOXrgn*41+ck6*rN1O!b+rIJE-=~OTldI||q;#m0L5 zAN_1UYA=YDF5$)43|!se^4rbcYA+MXh^z#=# zy>~C#d(@fB1_5uw$8K;2`}Vabs|9lxP9z(Z_Pe;UrzXzC^a`!tl6|}_=rQPr&@3NS z(7|J;T}@^&woh5e%LC_IPD#jj%9xvBkVeyio?sBQO7k_Gj}yI&kJ?Kxzn0^Xz(Mw< z7`#lcnlGpcAu;HaGD@IM9P94c)#36ES{z6OI?2!!lZeKdVt-z_DW^EF*vW;gK-e5G zk~w44@U)=nnt$y-!WFlHFINgXhYuse6Q`Gkx*0%4pn5#kP|(DNGPV*yOD@ z8eg6o2~cyYiW62jt|e@~JQLOkvWxu`kjOn~(DarYG`+vjR5jdmz_gPR0K=%={KbU?VRXo&V^ z5b@ZqUie1a$R}_(KZT?F=_8*@Olu=utcb2Dp{7@f8joDyaTU~~l`cQ14lx17dtfJ; z-|YsGuQSzV;t`DM{=t6$#(TdTj^JYi%&q=+(?qf%|NX1+>)*yBewV`%$XuE(N02K= zbkiL7{~b?-QkMvMz@qLGX+t_mX%Wl+cRXj&sfmznpVcj9NFD;1E-C(NJmHKS(tAat zo=!YRBjP`15+|b1#KDR_u68#%=XimdDxT~pD0d+P7Y7LugA|pieh)8s61x7K^flVN z0_qkVm0eFgM-c(1pg7IZDZvJSKm-K5^2 zcyHLP^qWeaf$mM1{+eDbv=dv@o)69s+X+vCv<33VYSZ0;vg3@<|EOQ_k`^zeI{s`! zmr9TFlF=f2>+jPE*fLhe5}C)DlvFO;rk`cueI^rd-!#9`yJ!&bZe1+>de)Vd{e)<< z9ORH`ujkX4k*Iv_r+cyQjHs+f8igj`kS#ol6|v;RkF{Bsnch-v&`%(ELtPVvJGDHx zGb+U6FCn`zft=xC5WYZX@PbZwW5+tgI=tsYD`?TWiWkOm1sP#@cmR7N$`4!5qHFEi z<{(TiB*S^*J<%)4NED={2&qj}#K&;lBT`~`hMbLXkap@2v!dexLNVj7=f5ue+IoL^ znaPutjlgyj^<+4x@UAl5gW~=-jy^@<|^%4nEskf8_#dtD*$W)#n$x2j(ZA7EL zmPx9RKA;AbL5@SC3mgbVV90ri{t51LfVXUiu-wdWgHQKG@{s-C>hy!3tDByyg5l+6uZzQKCx6s)ra2z_qn*HDqEXqUFM2G> zTN8sO#4}!sy=-6d-+jgp2W6mwEJ2QdB~O}91#ew!Bxov$Y zk;QTi_X9rvIMpdVN*bl023ha|GytDquTi7rNGT1IHX z=ALqGVfrwNNrC43MUO7{{py$w%wm@?>*XnDGxioz^e<>B$_hVcf2~+R<*k0^C2aO0wkc+#2&^fs_8$1J6o#NN>M-KUPx4 zg*N!o#-msHXmCebN;AG=!Hjqm0*%^Ic@a_Y90&xqHTuvInvtXEI!WBH=}ac-%|P${ z`H9Q;l;6 z&nY_?RoW#*0In}4_DEo-ElHf`@1amkqRxj*8>sFI16JIFs2a?z*tw5n@|(5*wBEEgKbukOminoS0OW;XEc_{)xkomnoi327fE?P|MZ!xXaO0M*Ca$ zYB*7Pt)Ygo=pXSH7X;kJpNnG}n{Mhgmu5K`tf0zs23K@N?cN{ba;RB8y2?o&BvyyO zL{XmloVqXL0=hcR~F%suBPg->K^26jYpHO|SMbmK!2+lPsdtilf8(9N);e`TaSH zyVq;p>8hLRg{RZ|74MD~I?xj#*&?Lf9Llb#3fxJ8DBd(v9e3eYTHGFz7%Y*K!8q#f zJEXoIYyj!lzEdqAA|i9bpLJ1mQ8zBCP{pVv@DIGVMY)crCs*H*2$+pATtJj^yaWRDyDH7x*!L?mf=2fOppCY!4wgmjB;B%ui4tfOl{m4$K9y(#hm*HevEj9({JA;KV#|4h=mKiJki%|oFKtZ?Q$2>=+izro3wHb$UGU5Hg z1$`B8qxX9LA0r=yvlM992XI89Uwu zx5G;HT3sjdS4&0&1MYX5IZr6OcIv~mU}k&`=?}-Z_IvM_$}%sKsETnjLH4m*W0ZFi z2ZCHrJW)4)SaVOfO13rO^B-qjK72-8xsN$6!Bc17icAED}Z|w_>H$u;uikRU!iZd7tBYcr&-=DGl!Dk0#b7c)& zdMZ2plc3P@6F~k|MG6RS8%-ye@PfS##Zu)}K9$8W#Jczw+W^}m?-)@^-mCM~;U@%v zD)&lTk<_D6#I0HBuoR>~X`TTUpN{Il_CnbY8CyuUoFEIKyaEq4_kaTcK#>WSy@4@_Liv}sIW zesbQ6Iv_y`t2y?HX_kCPUS_?+gD+B5fiDJY*`V6khBr0`Tn|85-Sv_)Xo#tU#U{|< zzTAE2wRmYYi;FMaa)u-4m;kt-DMW-Egx@LQ8g~uEmi(x>^H)S?Nt`k})&qTNq#3VU zwEl&^s9}|at4!YW*COazq!gRCuFr^QEKI-@RIQ)?ZyREwr8JVa z*wP0oq93m}VIac1L#pv+=4}IpmSh=q_RC$6o={=!cM4EO2NSl`&KPG8(^Pk?T@}ND z9<9pVAm!-hAzaZ-f|LAXU=rZk1=YRCBzszYb>mQ`C9AHXa)EgkU{(@VWxZn9d-F)U zwVw-#3|h07v%9d8QO=7{nxcM4j55jwLr>!{BbqiG2t!ble{TbePJ?gX?tx=tzZj*M zF6GRe9khzJ0>)+#7b*o@uPTQMDbH<>0q!+kZudidhgDeWqRCASPpYG7i`66wcEINW zWz+s9jIAc0&yQ8v>LKv~N_88dSF-xQD!o5P_= z=qzWMZXZ_9%$gO00F0N6%b!>O*I3twE9?GQ*&(>jz`0Y8Y-_!~=VA5uiJ3X=YJO?^ zF^#usc{{SeCbm$1&s{#S>;Y+;z_NzWyt=s+FrSm*B8j$cQLGb;`)TjuBNz*aKeFdM ziNxUiIo(#(3M4@HP~A+1E~fn_FY!T{+_C%v1>p05a^U!xx0Ue%SeL`6WmYzoC|!^_ zMsfY0Y^c|(K|hwi?JxDy$>TI$Uc);&aF8=#cG*x++=TRBZ(sD`>chL3nX*H{k#F=Kiu||rPv5aH`8MA##nKxT`FVL~{H^-8R0|}I z*P~tw1?}jjby~E`O9UMK(1~)ic}yjN>$PBi(p)RMLp@d3+b5_OdMWT${Zk%bL|B*&ib8m->1t#$ z!g{Oz39YXp-08`68^TCYi9aU?=!XK zZAqeL^TZY<$IT9P*)ZEc3$;Bk0Z)?`;$y~00-_xxWlrb*d@bQ0qQK<9aCWzQ8~fQL zJfsZCGuXwEMljoeQ^MIx2!jC?J>Qxq6|HW{tHXt^z#V!vGqLl2CPmp!4^V%yVNIek zhI2Y-B`trbLNEN|ez5o2FPhN!vj?&WyU}YUO(@CuuuME0&8F`y(*&WQSX5t=!LrUk zEYvYNpp6pAn4)qcp=X#vix|Llu}{Ft7^YT_lO!vZfG|JJhj=SVWj+3!2+Mj38DiBx zQe{Eiz%roN9h_vPNmJ7j9AJLdydZ7HIcnw#rnJes4s^sPHW{BQslI5G?3x}H`Vpy1 zddEQ1a?Gz${&`8wxP}4gIVExt-RXv+xPgPG(|Vw_yvPUZ^rP`03~N;UC^|Mi}j?T`V0!OIl1>*uEW*+c;UmEUVfv=ETj77>j zCWXUH=>zpyiKnA&x9t&a9g}okjc2fnN5JP%K)Uk9Cef0ErGG3O2B)Wc{F;RkxE5zw z0hdL_w2L2 z%b|42annHXrKSbj1Tu6CjA(bP)SUv#5ZIfjLf+u22oex4pe*d7LpeXxo7$QGnKXk% z8qtab)zog%CjtYk;!lx6=_kPF0c94VwqJuw8$nZjE8VN=SUrKf*)7BxA^5>@wRXPH$<)5nyZnq5ND_rE~ok#KF0c@ch4 z%+pAMgvev?lN{4?&#Ak?&n9BXl&3Be(2;=)&bY0w3U*W2BxI%e(hd%}Q}*e}UwEC4 z$&?@D7tT^aDQ1u|NH;R3T^Z=so|pg3pU$QU>w)KUMlp|!-p18~KLg?glrijN&;BHX zI~--=4hOx=`1|%<=YDE&oVRDBh8`sKd$qsrs!bv!$1-PCFHO%CCO%33+29B(w{|M# zuK%~Jja)wHiHKWuzj#T0s6+=DTR(I7v_0YB~HmsXwj-32C~fjiGwl;XFRTceke6f3LsuNMrQQWWtE(~Z8BY0#OHt1 z16uMDvyuZ3L^ZS7mUisV1)ieTNK1a{1TjN&MQR_3-vItUK-sttG?O|P3c20d)3yoc zwnb6_E;XQTbxLhlwNQ-A)GQv@N_W*U{pL37*{v?*WS4c=mK~E-2)r$cD-o(5=`s>r z95cpI&$=f|2psQj9+6z;igO(Uwjuo%I-`-Wg{*UdhmWjXQ7^Z3{{fR$w!PByb)F=fOuBf7Xa{!EF#Ow22jYr|Ay-Q&rIe&zoM;%*ken)J7=I$B5M#O&{2#%7K?Cc{-t3kEv^g-R!(&7?n4BUa& zVbHTLohAp76Xxd@mSfUyaWb+MY{<0%s&5Lp+&UukIq1ki-Y~rtXdrrju;ji z2yfT(&)Y|48($egzZdTi zo%9!AzD+2nd5s5oj$R7Me1e#Iz)AwZCQhB?}FHD_7w7VuX!TOFC)mtkf{IY!HMYwKf$!$l3A z8#!bl{*7cjBwa1e1n+->0QPC3k|W! zJf9Sj$|-*8&X;BGt1gs)%LB7|o;g(V@4 z3Q&(5-Z1wuXwKwB(bEbDt9A*AZtF8vv_@iUW=AJ}M&NF)>?gG$KVVMjubBjEXouMN zMIvvsq3hCXwQ!4+>&5g6b=y&4>-E%pI*rBq;9x{;+oYhMN0{efsAeHD0sU)6Izeo+ zTaPEWkCCw&SERF=Dw%0qAaKsWD5dCcOM(;;^z(&7dm)POfR>SPlbP(-;@@2A?TMFQ zU_PSiT8SR>z@6JABz6{*GR!rz8_$SOYz)Rws|aE!%|D7OL&xs1`ZV5)??ce?&s|PL z`kFox@N`Q8srw{SDx1sUg2Xi+$LF%>#`od_+^@ks*exGm-o7PvOSq!X?CuL(dsh+q zCOKa`ks=E=OlEh?HmtePP0`1b=lo%PJE|*IbmTd&TR(Sv?Sz*YTTqMvgH8XL?;hL6ZhvG{2^g~jCgH%STb$T*@es0o_B4fS zfjTfA-%Y4}Yw4M-Uv87;(9JS5uC{yYCvzoY4|k-pT?d@!#B%koa<@pviPOcI?fa=8 zQJvX`Y>C5I2kC*^4)O~rp)-i@gOmmO##>YZ`T(|>=n7De9V7AC6f0*wISOs(q~I1beI-6qc8Orz^#>hoWwVxe@1R^ z;=~l~ve0sRFFq0PDlBePyzsuRp5(l8n1A%&{%w40@F&%=5P5Q6hrQL~)$a-zW!j^7 zdxrmvSu`%l?rPZL^lX5EM7hqp`+iOxnR4%|iO436vuy`GDG*&=wi+Tft$rye1Kn#-t!lADhXGZppF=-_dmQHMm@e}=?k2S?ki|GQJK)dxai-2X|I@)skYKXRa zrnAl4#qbn_#u8F&FW9KQ65JwHr(^^2#nj5A9B9%0^Y-6Ab+`okjSe4t%fB{alz;L7 z$yZ6CJK=;DpvM)@M_~cZv2WvyAx2|Pqdl9JN8hb+Jigbq9#C{CH`oH22PriD)*ie8 z2^)c&Bn|oUn}V3_#fYh8)|0;hQ~a(=97>p$+dD%p}v6Kg)@%y8*6Aq9Z@K8^p0E$o!U!gz7%x+#l%2pY0#>2aGg!vMARGmEMi-e=S8L z)IVGz4Eh>fPX%OO!v|B|ZMwGm%T&Izey5z_tW`#(o19ta+czEx>`0oMr16hMpQOu& zT@cYA)wYkzK^@=f-?Qk@r3u@rHlY*?6me_wR6D zJIU!^OB6)B(sGOZ^O}Em;8AnrTg)EdJxzATJLbp`7+LolEOoiUp$;r$qrkj*Z~h?t zZ8XO(I{9ppU~qgtW^_kMEZW4qMN7EL`{+vvk+|D?^9ONx%L)Ob+5~TIyio`~?nyxV z3|*Xfsx{C9TYbo6`6WshoSin5q4qOdjc=?)p<_5sD?av@$BDjzi9*ZXFu}uFPogQ! z-}yNGcAAhrAR^$Z)WE58nNYa*_=RFQXPxU*;3`3d&P)cfPoV+U&^=OaU2z11BkkjT z%kz%Is!VVKQhI?2sJ)=U#M~_yf5ttalKn&%kcX6`dA6H&{kC*E2+*uGTUo4%hlxdV(55ZcA&^SXu((8WV60y)0hZPN{qM1Hepa=*{}bTOpZeDPsO+)| zMi}p_GDj%Z4HD0(#(VRl@j&|2zFs2NGF9-{qaIS0*YYFjo|~Je%ifBJj)TCZV9W`G zpXQUOnTH%vsVJEp*+)$)SC(#@nK;pd>PGuoZAYwc#TT(J{q^yKiryU0K_DAQG|hjF zZx1)Nd*t@Vny0a$IOItrn&=r`4$KD-+8Zp9j3f%3Z*V`MzR3#2e{^(w#Pqer1$nD~ z&>^EtQGyDS{^8p>{xcGqFSt#snnZlzR5r>a8WT?oLsQTpbRP{|dh$>e+U zzq1OPz42kcp!2o}#{( zM(H08FtEmpl4!&|@a@#@;D+)m2zu<}`#-;G)+GH@rIe)JyMKdNzCKAJ@Sex}_!~=? zK^*_}{()1WX7_@K`@}xP7(ZWbBB|m@8A30Nh6MW~NE%p3GQT&!#cnFes~Ot#Ay9=K z*m04~es6x8Nr~RU>azcXEv14+DDFZRkROz9URlcV`&NB6t%Un28+15b03|CRvo*6r zbtV+ZpQDfHqp4e}&$q8N=N#*->E)O2jn979_`wX16*u$2_ZcjmTl4(a@mZvU-~67# z^`|IP8oa_UB#kZ+7FOF$HMeqNAN*E%54_%c{@TBuNC;+c;dP-%T^VFvNh1VNng!M`RKH(d@9p>gU$K)`NRLhOp0NCT2%P_`^R>9KzwaDv zeLg>H+bhp17~-Jw(_Cn~Bc{4TWTv#Lx)6A1Auu_~45oS-r;vu29EQBrzaRO2uMudE zc?xHkuIH?Axp}XDe=EPcIn@lE)fLBF#`6dY(u3OseG}x49>Fn|!6T6y#X!7LA%`9kjhDuY<=MR+Xul+9C+Y#3#?(A!_NVN@k?5s-a#|v50p3Q?U{-2 z1CJ12l|g;32JQ>P;BaFC=}!o)i2qo!2{>P1kgpewyqKevLT^!dk;{zxUVk{EGE-J2 z+dqfwy3;e~3=ulw!z_QvHzR(=^Dlr|LKKNWF1Xng{wPMp&tFFqiXty$FUYudEy-M`b zg+H%Mx`|t>ghTA0i;xLA%1KN8r^A2EH?jEq?&U^MbtM+b{g9{Tk-}vreJi{%BS+Bv za!5U}Kz!DvveJZ1JDIZkQ;B(J>FB-rd^Yk?3eE|++0@cAOmBPDKl)i;%jW}csB;7n zgrTe9Lh)0Je4bvL52EI(L3hx3G;3U!wW8>YX=zLX8}5%Tpl44sco}e-&;8r@cv25W znaXZe1Q1`pnV?T$(d}r>t6H=5wJojVaxg4#V@XTw?&VGEMqT( z!bL-~!D^08f3z>89p^8ZmizI&@wZ-Yb-+-Ilwo(yV@m+UxX*jz@7L-}jD+74kK0xv zv~xC&><%)0pxf@PXaeR`EEfbW*t9t)!dbC8S?$_0fY97EdHchb-W$JV3V-2##t^<$ z?Z#vC)07(d+wt3L^Lo_YG1)M^9Kv~$#mc}8XrE#%Pet0zuychkK3)0+loq@fU#wRf z?90#Q@)aT9;}UGbjsF_osI6PHtN0o6WAe%e+&Dc%T`s58(4(OX58P zRPA!H1Jo7^`v-4w&nJ{j(|-IuDtx&VG%BL#_k`(PTA_Vup&D5>kB>FA|LHZ57AvQq zC1U(Vw1p!upH~BSE2Q5*qC2S|m}x8gnzP~?4|%e!zryyukGga+pT|(B%V;-F+;SF( z*K7T9{vPNrNSVwhsON2#T{2yC@U^gyvf%X-Zc+{SXG+IqtGk0k_vS|r7(~qt0tklw zZ{?r%ox$`~rHpEXs@FYLAo)Ig0ZjoD_Nh4qrF5&c5{QNRxA~_ybvK%Wuz>j*3pn*C z{X&qhcFwD(>nn^~w)(iDO>DyhWGg0gPH^YFQd97wN~~`0jc=@tFR8u282uc-42>IX$(x7EupeLG{uUBgDDfzg^j-5 zUA9JxNN{#ja?xdbn%((H7CV>to>}5PdZ9laXRKP%tWp-7nGsuWgfAOg%PMHR{E5CV z(->5PrVZKh_7_ewwsfx|cUw+IkepJ+BwR^8(6bYdZ--#er85@b{MB3M_W}>AKTm(M z^81M|p6qLNb^qG@o*2z+*boG>m@Mo@0R4=3MXa-OZP(Q8DE0O@dG{5`Tx*Gh$=wwy z*F(6`TGISQ!h7SHP{B1;S@lQ~gPr=O=JX6;K>z%jzklnzvupXSiH-wJc*nY)Z;+7o z;&F-TFUk-1Fu!}dVtw`R-QQc^g|piPvIOsz`?G;%gE&Bk_ul$0wF{$Tm=RXb*jBe; zM=<0B;Q9c{-pHPOgiMz&SPjZL<5Bf)rF{OR1P@yUIwgMms7A(J@AZFG-@79ZaNzYn z$C4e4eHkbH+x`y_51@Qj{JeIg>8vYI#p*tj?hOe?YX_%`$uO@y!%A$eU=;XXzT#te z;SqNqu4t;YVi4=dcsJnp|82gaVbMxI`Gkl0B4=FPl5x?`6OZ|q_{X#jf(`y4^6CA`YS60hr+zD+_GL0KgDh!7yaLC*Z)RM5^1Xc8TkC;UgHXg% zp#A&(DtvGQYJ~FvhxLqPc~^JjA~mPpvbZtt-M@O=&!9whGZUoZ`=d)#a1`&|zqj_o z09}m;eJ5vuzQ-@oB)UVHx9^>?$8aVE7F@yxc?oTpcsIX9+YoG%3X5D70Q-=_F+KEN zeo5gHKmU_ft%Qyacu$&-iY*|&gcED$%3X~vD{vI0&j591OAU*3v(O+CIm(R^b3=xT z)4EVQjnUk0xV*f2Mn?t)@m~KXm<|EK$}{l{meQ*vioWy@{`ockrZhjwEr%*O96CW&i zV;(g(@YeH|39fz$uSIUIUy>sYlQ- zYUoAh*o($*HaibAM(1!jdvCteRnPfMbonTGv=UoFh{%xhZ|6H28(z_3*?OywZQE7( zUWHU?{rMc&*vH5HrZ0USapFz7>`7 zaF)#Q2+3SwycZ0zY4^Kl#4Z`@To!J2P0*qg;N$^Blly{dvCp4On-jdToe6X zC8Q=5A&t-WzvlOi87GfeiE@{z66Aj6st^%RW;4*Wg3+I&{uy7cHn9EmT;`%ZBeX63 zrQ+#GokEfonkTJp_*_Dt^>LJiV_SAAm=&2fo%yd(~HeZfn)dE+5r54OI|5ZiN zP}b`(qUcsaa%`AJ8&lX1$*c2k_jeZ>Oun^c zPOH`lQ~*mrO5J06Bf7g*QWKOeirYy|G%-$t&3$9k=WoEql-SOdy5iUjg*lA5r1qYX z+LOgc6m^0Uh~WRxvWR9QoU21Jb{Y6l`jRcPRGN=AeCG} z4mF7xTUq+A>uX-04GNEc?6RmV?nM<@g{<8zB()%beD9J`vWkdp`@swW!^|76r(WA# z&|K2bt0VhXe8z19w#K1JzJB%#L#w^?wqX=Mfs{&VbQ{z*DXpWXbLFHk3Wj?GEWZLZ!?x9VqMUV#FRT5GD%H?dt`%0~sK z^`~0BL`2*Rtl&}f@y*U*See4$!4ke>kYSr^-NAD>x1i0rmsaZ?^~6+$fu=YaO*wS4QXe4?2y8i}*ihYA&$IwqS6IQ@>kTPn?Vs>&7*y_o``A*uKB zZ3SYm5$@OP4aMXELk32-y?>i;d##?9uLZTaDcoy>;U$sMfNlF=gXW0%9qaI6-wac_ z1Bqru>D$0XL{Ac7K5Hxn;#UNpx9X=iSh1!50rg`~@gW#?WHN6A_i+Pq?K!qjWfDWY zuSMyZ$dfbTk8YpOeDmYRfCl_rFvOeK8 zr=)-HJcU+wyvs2M_Gz zG9>7K7sc+RMl5v@%O8t!H;XLReb0LDeXSEOt5Wz!%8Q-SGjVM>TtD8cuW!AtmH9+w zPk7JEL`f?pzk#{-WO*alOT4g7aIF3bxv@wX_q}`-3}@)Bu%pcHV_;G`)>{Xe_vSaR z^+P$P$tQd^)vMs4Qxqd|PIRD#W+Q8cY=C0H5_4N79ba%N6URcT9+jp9tuo3ld{KNW zpW``@{k6Q-G1!u>dEj&A)qg&39yrfzqCs83g0)iJ;ueoBWNi#j&=g(59hlvmCo_{r z_+CE1?{Ow(ObIqCjAeH%=L@gdzs(02f_G7A@D0!6eXMG?=>Ibl9}a~l9`T$Vjaf|f zL6RlxLl?RiqAAJO2s<_WHiSa+_u3O~dbn#sAv=*}aTr;oW5YMwlan>)U^BcJgj{F@ zQqrf|kk{_Zb4$=AuQ@pChEzon=XNKOI~I+`bkjaR7gEh*QP%&+)FazAtk5L6Hm}ug zAH6)I{N8+Fa)}_>TK!5&PJ?5?X!WG=U_$+g-`5Ku*GRYM8!@=*G z;yek~dh+AURfv|G-+#M4ueC9uu47<7zPB+i&{Z{>^l$5Dnxx6eu7Ad-`#HN){aGot zT_UryLT5vasazuF67U#tG<|;N@|l`({Q>1mDMAmj{bR0(H-y7``Qji+J#aK~GLWHowGp0+ z&Vm1$k7E|`6-+_>8TMy0y4byKD57k2${%w;?7_O4tIdaJ-*loqoA^b72!H&`=u~*7 z56oNRGa$yzlPkv`z(`yW&;%dF^`(MGU9>pnFgMyF+j7qzCf^#Ly_J6{vtWmfjq4~O zHuV!8%H}ogsfjqBgFM_4=kascyy?T={xn%Wp4U*}wWSa){pTL{t^SV@n%f6qO|gZ2 zyTHXv15@n3u4gb@T7zj4m7fSDvARPD;Lp)+ny%LcyP#CErMo$fy86D?|It{%RpaxN zESFJQT)0oPm;c-L<@GBR=azIf7?HdZfq*b@Kd`v_SM}9s7X#?Q|Fc> ztk34c{l1+to{Ul^VCMNwf78uEYx{>eCfYvuz4%<1qYoTfo>eLgmhXQg6A1p>_;}Sn znQ-fXCtwPic6+L__mfX59FKe^^80MPoXt09LWH(E)QC>dYkO(OjnImMp7P#&UEqs+ z2)+Xh=7OmvLNseY9w5HIov&{w<`B@fUr2Utu2g)-jw=ga&rkW*-=R^mHvCOWP2g$Q z{>91in*!r3(Y8t(WeCK3_ivtF(|xiX*oAv(f^xRAw*wI0-;Q5ewT8EcB=s}sT*TY* z3)#A8=agOjq@V9^CrQ{R)V|1I@R8<e9iv(zm8uxX8j$^^$9Jrr6eVQ5&hFD6C<9Oj>^`eJE!hH`;>_P?cZ0)?J==$ zij1q~S8u9RH#9O8xipg|aAQo9yImOVz<(=kSl}WB)b(QfX+fL8RM6#_~&sY^<6SPHbhIOytV88 zK`IY5vgXReZ+hv&u{g)eIWzXcvJ5NV>mYrZi>fUodFT3o!aluqKmU)ptBT4qXTrF< zQ=quJTe0HqZpGc*Dems>?pmNY#f!Ta*WzyfUVnSR>Dm3ay?jpcCiBiDPbL%VDi@!$ z>UOm*6i=Ic@6+^N2X8(%%Tl4T6*wlYlemcJ|7}mckcEmV(K^pCe4hy~>mp*W*ZsS? zt5pVk@o@|j;S#}d|K1|ndSm`(m6h76nV#2Q{lAC=XL<%&>MpF>tp#)&<+}fR{cJ5| zF=Eo`hHXO%mX_@cy)iw9WZ%ISwo*iGD}#ayx0yr*x76wdJz09U>*wdsNUr~se@@lK zF9%j__9VA7Ne7EaXa8&d=@h|ZP>^Ci0@mL{v4BDdy66OUu&*pG9(=AssNT#;^a#wH?3%L>atofyVTb{rq|AUF2#t>a@HpIqU8~7#ul*q51PtmNs z(6!O*4$W)VfC}3vh8Xon`=+H_^qsWcwkpSLgEm+pnpg}@i0)=JgXeRw3dDcC-zte7 z8=A~oqhJ#_SlkCi>2>JbiX@Gp|GmJK(u5;XsTFmV4W3nPp5)&5s%;>JDb9a-{)qA_ zv1ZNc)cHo!sez<-0g^Ucaz|^pUG~#QAeApOv5Igky}?-l;v`+3yD z_Vv~Vc4R&5KE@8LC!r5p5fO6jNnrp(52NDF!lMy!t)gQo3x)F zhYU>^%=;*pp#JT>hktwi>*R8jE;U~W{!F6F-8!K6A+`lVc^K}+^$y=4&c6`cEN=ot zSIhIgdD2Ng3ygFZ=>OaPNeOOY$!%CH$XQb`icCN!|8M)l_>dG8*YP9sYZZwvilBA} z)v%-IEyC45H zKNiOjgUx|-k?!h_D1f?S*8SJ~I0#zl$lKMVsra+HHNh?+&dw)d7Hr_@FdbEH<9nQ+ zF?G)E1!UEyQHop=1q0r>X1}0MJtf82W%EIdt6xIF zQ>=px76q&j7ze>OZ=rQXYj(aI@YyT_5TgCyw@yH9!nv%gIP$%oOHcgsBKcz^h{F*S^~@8z)Eq z)p%Nk(ruuxex5y%>HWT}nIs)mPPuF$y_MaObTPe7CAD4(!gUW4M$Y{P&-1t#xss3H zxCN$LkrQ=@gcin7;cSk^StyT&}NnNfTQ9U=I65d z#mw~{>qsmfGa@(KP9O1wrVi9l+!PtNvMD#j%sz4VTm8_l-lwq3M~*y=FUMb=8RrPvF)>ScpUEXsDO8@JjI0h{FF&^vsEGAn-?t!qV3$;qHr77nS24ee zEYPKTbQ>mFNSbX8rW6|a z$eLW0EbLv@?8}$qCA;g* z@i_ZW_sgYHIoWEJl!bwstS3Q(t0_qUxMeqOX^|moy3%?QE#|8L^zaDb0E6B~* z*CJdARkr3W1lnt7zZ3p{#|yhG(+BK7N4Bm}YGyxZurmMG@nOGU!W=i3P1p~Dv9kNx zaUoVP3pDJw<1GWOW{W!&4qG$vtuytEtf`aqs(`o;0f8WGu&!VpLy<;5D2h)n5 zy^{a6zh5A2o?^7hX<2eh!h#RuQejep%UuG_XjIKLxupiAmak$Bt&({;#_7^pzjQ3^ zXQLZ(z*r9xYMO%mY)`3-QEp(}RNvlvf%w`w7kSi;wQuHxOy9dEYQQ4ByFrH-2g{V) zi{5UEhx=Y3dC8LpUAu8eg<1;|OmTtMcs?g6f*;N1KB+D`kwcuekAe&7T`TT}QA&s6B`u zxtnaVAnPi)rn$_~UrP0f`~1`W{iRaI4@bARp@)GN`DH?0pZ@Fq8!(?v2R$YQTESzx2ES&Zu8FKTHb9j{J23zqj(8CmR)+!>+tJB2EWer#(7*iE@_#jd z-3RiIJnuv*F@0_*7f_Q2)Dp}gYVuPQvhI?^NgpsU*-6$Bc`GA(1iL37#cGnmf3^Hy z%^$F6(E?B4CoC$|o^eZ>j-e$ZPoTE1-|760WpFo}hlL*`+@f0)cCU`XCuc}!ukBaM z|EKv4^~lk^J42DVl-R^R=AGE8V}DvI(;cvNmP&mF!~Uw3d1_Q7VIb6ByQmZ@8XMN| zPwRW@`Wbk&5LpaJ$XE_mV~vem*34-zJ?bDf)HkrT!AzO^W$jYznic0bdK}| z37YMcnWtwrr`hQKG`?E9l;5U1mam&`6)5*aw(tDie8r*_#3Q(Yn}WU#QK@@$9r&m5 z6Z|AEFS$5zH^-MfmyWkINH<9$eo3FlF`E1Abi-D>KzyC<@ zn_2v)@l{W;u7Tv(Trf$sv+0n|75nezt4HXTqa3zvprOf~1<@x)zu(PQQDG(JK2|-{ zm7=Bsdap(Me;Qw0v|E#LKyDN{1##a@NAUdJe1*T9 z*MebceOv#26nBzbXYEhptIAU(?%~KWyhUZ$`aTm6+~3VtS%TBA!~;Mylly$u!Xfy4 ze;Qw@7hSE!P~3v+#V`MMIv`)oN*}C2X#+AmbN~Y=q?)Bgd zGtf}_yZK7ZIIRX#98^`igTZa<$^G4*##iAm3T<43qvBY)_g&CYmHfY(uWq=Wal}Goo48g=y5(ti@ITZoVo5DJuCEx36?7 zV?J!)SMK<``3fWdAfrHj2{W1(5B>3JWam%gE07No+>BZE1Z-hNHQV*>bibRg3jJQ1 znjXAcUHfXjtUWSZ{b_t<3*4c;#2msXDN>%RH&$!+7Qg)4>41F2p&L3XyO%tu!Cg=S zQ9x7qyZH(Pm2C&t;@c8~P|Z(CdjTPxgd)}{zunwRg72o=Ykk@3D_Zxytj!njC4=$y zfs05}p)Jd=N1Uj#X(4L#AL*xM_gv(l;q|(ls(b8RGbHYE?P+m~Q*lp0niS6E3(p+i zJ%lCtC#J5`+sni_H7jQV>i3)nb;n_-`80n@#Km1$(|N+MNCn?!m|^oSC}W_t>{)(JcLybw z(0HXxSOu1POAXuW2wm&i7?wTeP!8R`Dl2`IcuT$LX_P)!F9Q$oe^6I92LrF}Qv;N)+-8+Hn3vv9nRtk6MQ*yW zG%oU#oY=|MTcZiW?Zv^5+{**AgxD}_9$@+IibLl|U@-68fVvc4WFh2*Gw%CobTc3y zuL0U8(5hF-U2aQ-mp@;X=BrXGpnYx*O*QDMGue9>an{ff<^VEkeR*9?cc&_0A zS_)xzGBv+lH%J;XtI-MSGsYAog|zxK;C zD&v|86d|%)TS93C+3f4ChF3Hwu#uG~?WSA=q&NJO)ynu8l=ky<7}N(^ZKhdAxD;AWMlcPdvEXG}nWY|7 zVm2dm5uIW17KdtPa29RBfLZADcuvAt04)D4%sP9na!31v#YldkJcAVm#6N7v;ZQT+xMq?X6A2B_Cz^_mYAoT5MrfxBwRpxqbrJ{ySsqjzlBc~ z$LUHI5F{A-S%v0oaW}cZCsyTXuTsGNn5x*G$;Yu^=Yzi|N(%n>#g5$k5 zl~kSWWRu^L2QVF1m%<9hw24jWp+um|DfN`Wttop^q*gmcd~6O^#rbdiV$8X5Mt%d%VXf&b)!gel3OGL%!NKPs#h>X` zXr+)%KLG203kzz@3$W1}eQokncl09BAJ`rmN(brULK7nFI*1qFZU+3G%A-hLC$LY5 zbxn&t&rT)3_2F1dy+VhFF4k>r z(<|H#V0mw0vnYZ!*;=Q*k7De^-7uN9L2|&J^}z>-6yQ-Fdn3&iZ++jFoiHS^?P!xJ zi>)qgBhWLOCaR8*pg|Euu>TX;n!)H@#6>Vv~l@!_OmmpY~1 zwN$@h$HyOOEB801T;T&e#(L7qEUovQnI8{q-f`FB=~E_((3OH*i&R$5aH}*dcrNkW zt2BWJH8pIRqxDTILk$fekF<4TqN;}^FH^;e2k#qw<~>e$b=eS=nzVQtw~OQ-kJ>s$ zAIuhwe?-qEvBM7zaJhb@CbkQ#CLb*UA@u*-dw`Sk3MP=+_@?(fs|CzTF{6*0EBbN= zsh4}B zBsNk6f8;MS-~~?U1*!MXd;4g$f7m7F7XsT;aR(EuqD+Zam6b6bm7!>Dlsu%qSM!6L z?gW(2Bs}To^WG}nnYPK<;6(cxVESA9C#+k%wwaZU3H`YD{xCZzr7`EjfmbaK43=PN zkUJ8>GXEx3;Mo^%OcX=GjzOA@hysoVRSn8ImbeFjbu%G2a~Imf=|+*3Ja#|lLI;Um zG{E}dY}0QY9(sPF7~;!`M|=(*tK~$w(wtS{6jUzsx!rjOn4gKSzBcp8lHgWdaww`_ zV%6fPeO-b?1zTJiX*~@c>52fNOG-(M#<&CN*;nA>J6HWt2q85c&_yl%ZM+#LHL-Z2<0zWc!{$iri95hlge--FLC$u6KXjlGtfec`?&TNsI?GVJPz8VW+Lji3b!HXkJ zHR6#Cmj^d?q}T7J3Qefuy@hy4?S~J5^*ex`04G~uE2iS_bV-9A{jEJ9(!oz~I^ z030+Nq4+D2ALnGPK4&AT;`s7X6ONuN_UnU*2= zPwn0B*bz%*J!<$PaJi(m92^l)9zYE7`X1gcVRWlW#t3+Y-@h1?TY2UsSLkbMRs-fT z30`KWnNRw6r3^yXg@*4Iv{t77l+P>rQHU4Xs8Kk~)^m{_J^%sA^A@HcYV5%YEYcul zLxh_>fU+_7r8GX=65Y}uXAE`a3ypOhy{?mBS-de25W1|~+t&vyZzyrcFnXFRKlpPl z{*~r1CSdv(3X%`}w{6$iXop8L2f~gTz$srL2a4KA^234bk9c7K^8;d(yO*VMQk%ZG zu)AYh5=8w>AdQ_KNtj_iKBRUIwCQgYcwQ4R;}xrY7&z)0YTgV)S*lAb5N5C|Xn4En zC_cJTwRSW!-P_asU0;a!Uw745hG(9O71LD!<9`we1#^KpcgjQQzGNn5aoZM9I`rl@>oTL{4V z#%tH`(%kQ-o#8i2XK1W+2+KyEt|VcI^RSpF%6MAdoDcP)#eQY=Kc^>sX61B&)daSW z7l6r6<>q8NxWxK`9kqc8U$$*%dF&ttH{2Imv<>l3`%e{63`ILR#R*LgNA4QwTsz?Z z0OGg$PnLPyAv>lcYY%n$lhPfs);}E|^Sy)CHNj?9+9OkinreCS0p)oMlXVe_5Mi)S zEafq?k%;a$ZJAw;9BPog}0e3o2z6?PevcV)2~fYW^e%ePBS(J67UWKxfQ+OUj< zZSsQj3v3Q#C1G6bgs*Hlep8<>r5YdQ9ml@QP&nUTK z7Y~EA!y;cNmDiF4evrKU)BZh_R;1d@-&>6WrIJ%%Rp|%#KY;kH{taUTd=yp^jfT1t z+gPS+%k@vkZz9L7kp5a(61lHJ`}t6#z`r_vH)fYnNFNWaCC7g`*0LGn?ML2L|4!`c zzE1YB^!Q;5%w21!a!;uN>%)YKCy&Fm8{qg2?C*a`6z}yo&c_DF5q~5GsE<158Y!P0 z?;-AW9&WEA1LuD_ez%S*$KEj;8XK@G7R5;`soeHMfrwU@r)Q3nJKyk~hXeZOX^w zW2T1Q5kPqW@muYY%N$`mTW>`Ne9{4KjzC=nuss6u&s+W^;Ct38^Cp3@h+OQjTtD5TYb@Xe(N*Q#37uy*bdiho*rOzFWEGMg6G z@!$_|LO30$O#(ByVGKEc8lg0B0vpw z9aGS-%0^GAv%GQAp8t{Fou1VGCMKx&JD_}kc+4wcL}Me&5YnYr?^`aq)(a9G51e#WzZ6nxj~Jc6n?%dFX8_Sq>U-VtcW974fyb&idJ3dtHjs0R3GJaDjy+BO?1-EbFb&*s{N^ z7XtpzKlOLN<{K-+Q&N`YN0AW|-};T-whAm0MHPgx#+4p0S)v`dh-iuVvR{d7azI)e z3v&1X*8gAYQ?gW@Tb}1LB`nf9KKrpSL3r2*DG{^6v2RHM47hSw>7Uj|g^oK@Ss0 zXdmQUsKfVOqLi0=xa#JnW*icI>qkrI@3z0D`=G&tXsN_!$B2j6aq;9{vP0^Sx^QS!$-X zzpxY<_yZSAj3^vc)wpR}wpcNFGyi}y8REmoryY$B{kGfw>9UHOg}<$rzZE|Kyg&S( z#t*E%e=6C8CgsMWMtb3+?Kyw9h+>oc*VBeeeLXcq=27qeG=D^WB0J~_=ZnI@Bl4kG zDB0Jalf3NIXH$^NES#C0Phfw$Pv^hZr((?9cOic!kJei)wlT?DC4W=;)3Adb|orr-!K<=zeZw(x1A`1n&d%r^dXRfHT69 zq>jL!?3=D}dI8r50OQ4Pt@loZ&}R(v6M9ssfhQb)BVhp?KiO{B_bP2LR|^!6pIM2mj`s_DuI9?2k}}m+NIWF$*#fej$&>{Tz+U! ziAn=gRjw!%Y`37!d#Y1I^1fihLz#;AyW`$%On%;Dmk}l25ZvKjKvitCpWKe=H79W) zqpTETnIxzs-QwQg`sZ8nx{R`CR7-36ArG{QgLc^#Y5 zK%e_wkB6*CVmhc7Q71SAUE?*nc?RAvD309VMBa{%VH%x0)#O(vp}895x`8Lhd)++_@BLCUPo`^w$fDDr-2f zRe5xEoNvhs7@zejumJbeKVy2W720Qxq0c^SQ_P#A4E;edm&+>pIWV}FmQyLCX!LWie<}Zt$iMCIlPO6tvjhF z%n2fiLCe9`zejc_4`u2qFd(Tvl!;V<`Wi7rSAKC8v!Ojc>pos`TJEk!_0fU!vqi5E9xFHQoH-`c028L(c^1nWL*L%A0P%?&s;jPY=e?m{Z3&gq7IiTCqLkIQakxAxREFO9uwzP z^!8WnuTn8RINu!q>6rO0P%K{~``@;|_JT9J+OEMR>}6QR1$XYkfrIkdsKoh!GVOp; z;=31$3M6%fwaa@o*&Dn8M1%1G+Q}$mOIyagB;4vXTgA*r?V*Fr$x_kU=Q`QBY#Yx9snODIahlvgUjMMJ$v| zZ)vLHNFhK(YpgO@w>6rFyvJRt9pKh?o=R#WV6|6ylum&9o&K z49rZjyGN`KG;Ji}_wh$_jHu^mS<|Hwo2BMC0t~?ZpNQXYLhiJohXR?x(f2CQtFWJi zO7!D;fx88};{3f|iA)bda{-Yq3#yp?qiA()JfQyG!hrps)D|Y2xu;d3r+UuWU2&$F zT?O?8xAADg#}))++oI~-TlRP5GMl3WEjwnip|!$8^RH`T&#S^^Z=)2=7f8LrHzxkK z?SG6~D}fMA!S1@D=K%?vz=#WR^g!c-YGX#s(OB0jHf{QPR*mO**v*AHmOVAU+QoHu zRRI-6X*nvg=zK`^Qe|vJk!eI@P9Q6vR6WMxJCxsY(7Az=&)E1pc3>gcjp-;2WClu# zl~S^XP)0Oq`nUZ`fcnin{~%^c5?Z!PGXnuXZlAUnFlA^n|JPtLvx|Db=WyF0SX|Bj zZv7i^Pz+G_ljUSgjl|tG<3hJ&8*oC;d!FrxcsFm1&+jDs!`aklmex=E5Hz5^j=jWz zyfpAaS_CA5EvtqTyWqH~NxwX%!{?7XODxhwF-&*pLyb(78n_DoYCK=a8aXUM!qhUu zjdlzY_^zW>{@$D{G zk3+UQTZWDw#q($N*q6jwD|$9W-0t0MhcIjSLY+x6!8CEwq+dzfgSa2(K|Px$Gk-R) zL{dF!CX;GTUcg{Ex?}^d%a)|c--(!9`1X)NKA@Bm9+U@h!Jz4C#R)STXtfQ;Tt7o9 z?XGtDQ$9ytfGM0v8+FNhAJSO$m5${|G?X$~N&z%>b~>9-`p~D@ILbSA7juc7MMV;k z=KGI**_0iSd!Q|Xd4H2m0m64Fht~DH3elQ6ta&T*N1`$zgh>b_1aT#e65P$Iap!yJ z>f%eB<@sf_V<0;p%E`w)Zm@*wbS>SOXhn~->HR?XO_dqo4oC;22#78L^#h1yq+WHd z7mkcR?!*l1d%&>kMhu6Exz>LF?2L~SH7CPZL=`(DpzoS+pP0S~4<1jyO? zpSKK-;`6}c=+t1zctcX_E*b^*v^lU0Nq>yjPvw?l~!iUm$Y=d z!5i$&Wp;*Hcxro0`%(n-J{OeP((i7KnGW#+Hh!_Rds^Gx28i>V#_h1tQ_WjAPB~{E zJ`CIF%fw=Z6v-nubq=4yTrYjOc45o&A)j%^gsyoW9uO?euGkfbI%Jgfn=9&v^w~23 z)9=tmrOGIV1ooTnNw-Pmsi~%_jS@>KTJ3lqHwq<9linSkMoe|oUdoL1*9t&A_=5M5 zWQ%Gg3(eZhF0vzle_WS76JDxwnvqqn$f#^K&U3FWyn9dRm(|zE43Pb*z7R=M?luI~B1k<#FV;S_-v5VJ1Lkx~j7x--%8Z?%CDbFHZ_g>5-4xk|0UZC! zR>=W>6}U&lH@u|%J`UK5qK(cD@GcMimOcKTV?a4PWp;?iyPMs^s-tb5%(-xkR0^iU z2{)3&<_)vX=q>)Nn*Fv*P?Hkc7ScIJ_cB42^#mMSB+#xB&pyIzT+1eB&1m0>A@$+C zsW9Np4xybvU+NLYS*c~xqe9QJhwJej-W6Br{px%TNCfNYF!GA~Q`gqa1p2i@RCI*} zmeZ&F{r)|R@3OEPsSmu!MX#>{W(+qTphXWIbpa@l2B&1Z3T!0opAqU$+Wp3`F|)EH z`;cA@_4<&wxb)Y_xM4*_X~-d!@BVpe$YvsgvU}4CUlx82>B7b$ ztU^KTTVC8*G&)d66EWL zxw>dAzD_c>5GC41 zC^dm%(K$=&O_B;q>L+QsE@Pr-?1HZUOjAI^i?;Ng_ zpZm~gu@kt6hU4W!ooqPfv`3YbQR~jzwl|KK38Br1B|}W@AdUcIVxK7W6;?{bg}Xrj z;)kX61SX>sNa)GdaM-ru%!K2zmc=JNdqnq;*sUkYx7rh6dLk({ThYQIwFeoknv7wH z%>hUO-ByGm$^@u)XFP@+@vr*pT6SP5n~sQ|n<0FHmH+xp&%#WsCZEOuJru*mbhFGZo=j^xe9pL>^kPVKMQ zzp^Zpdz+Y2Y&XSS{upC|kAyn0WA6uA8Bj(O*L(Vjz+KlsN7$sm3!cJ$Q<1w~r|i_< z?sq43c#5C>&f?gW_B@3$@!iCw84@~3iyKlLpgsU`Z|ZoNN+I#2vNnyJfT?|k^`Eat9ys7c(y>(S)k!bqfWqhb zqTEesi{33+7C|@ztJx;PT9WcuuwDN=YcPI~D}B)I4~Y%!D163o=u%E;PY&T=Mixw@ zlU)3hjYOVAzNLU$X!435655hh)CNtU66gJ9xzDNjxKlUK_|pV5u3QQx2jojY;TZ-~ z`NuDn_p#2=%@V@&Hjo1_Hyc#Y5I(urltLAPTus;Sv?Cooel=df#y}Pduh)-v-W2CE zSAWF2`K5nw6(x&mM6xx{yGBR#clW>Uc%>=v?sjss!vpX(dE9cqcr;-D!$UC39&qrc z6s4-&;IDDJ1dKF(U($~x!Y_A>ysCqRsvk$gfk!J1|n0drpqwXgN3 zjeigmpB?v+M7?s6SiKDuXqe>w(y$HhqR^2BaRrn~?*B0Y+?bG7&&M24AAlGF zD&$+ImKqGP6*Zyfd29rXAE!gA=xRxF)l;P*9%l=`g6Y1r{RC~coumzQ>M`NrhS1NC z-ZP6nlxx?VpOD=(@5=Y6wxUxxK=PUiQ$&R|Fc6f@uuHwFupm1HDnv)pI=)`iPm#MX z&F&w1wruAu!$1lKb6|Z|({1|cDKpH!@2;CP0DU=rnZT)ooXpypa)IP`ZC}vF#}onu zkAjJ9&i!3*lUuEUGZ~Z(^$eA~1z-0~ zC*Qzg+6TIh5G`x=L@mq14?Ymv>o!G8P!IkoZ6RrHNmxM1Pd=nP1SHz}*W29F4pS$m zKCfcA0U$5iQsXdURILI(za|bsE~h72R#P`BSM)ey(*IC>T?K4E zfSBKg(i)COKNTq}j_Nhcu0JPufANTQFYz@MisoQ+!mUstRFJ`|-d$Q&(aYqle5+bS z51NX1_2ae4Ad=;W`J{(2Ajyi(@5C17Rc)flZi*f$NXa5h#}6^sL`|XH7)Vl`F&|!> zUqxm+1HOL#d_FraPaVajqX1*(jt*}|_2XD(0L<*PDhtFVujZ_t;hQfF*Qxs!*h_C1 zw)EUEi6$qaVw2TL`86S%WrNPxC5KLTY25wFBnszXC>3p4n!oQlRyrt)m)>Kr_k2o& zQNq%wqAp>^r$SP)Hgl1?Q5}s(`KGaUAzd#2cb(Uo2Bcgu39EFeZLcu;%@AJq&Q!>f zg`|R&XL)y@XY^?=sG z+->57dQ~|`-m2e-aAgN>7!AryUPR zb8}3cLDBD*7w#Kggq#GoErmY+cvt2AAy|pU_PEj2#YQ%%l)Av-MCQY=u186N1a^dG z_3F;oWixGX6xF5FzErZcGp8fR!9*=^o?nfB*0c`Q5C{|41vPi+tIeAih*TA#tC#URpUXh6PiaHT1=2W~FJAFI*PIz5mFApG49R~!^ zLLhA}@p~%ciABUI8w6W6v6b^rLd~Z!OJtsGV?6V$eFQ(wycYV)X&CB*E#@>*&7xj$ua2{FR8w{PwANESa^s+8>ul z>+Wyo&jI-fFrI#a3N1_Z0$foosX#JDiN#Rx>u|trIQ=Lm+xBT9VUKpb2cm3lVT-3;GI72Q%Eg z`|IY0fkO0O_0P9lUM2dM6+B>haP$-uSz9t8050H);x8IFtxLZ`) zCDOK0dudDdw#s9EA+tfx?O?- z+x5YcA!U`Tkkis@vF_^U&2#6eHx#z;vwllIaT{f+YoDI;?tyX5l3Hc32BpZh3Kj9Q zHQA>u2?NZ@|Frnjoe6@?cqQ6(*o$NB{OC|3PA$lyp_9jOVs1tN6`~7tb%I7bwdhFv zJB&5XdPzD0uYAT#{C*z4<2+qD?}wWG(1TlL8;e=(6+?W*;dRZfUyV<>Lz(AxZqDo& z2?g)w+A}MeNs5@cirm4d6=M?>ltVWDZhs2W14|lQ##*cU`C8J|w0Bb4R`-#t4Xs^M8WgSYKR1jBU z$vR0c^X^yuDW{9(fS;?MnE1*S;MSGxgWIUJwflh6tsJVbG&PZl=9PY!&unxerM>hkSu8I@SVSRGibZ~9inNG7_N^d)~~MrseW*# z8Y`|jy28iB#*|n8w1_of&EJ+_YpaY!Lo;g~HjK+xi+AA&nw)9>^Ft*$nc`J}Y)8#w zjstJJCwz+XeksyT^O@}j9_OF(;U%J9C70PPIx9tqRqgEI&XqIkx5>@MU4TC=9Go#Y2owfdOsx+wAQgr}U z&T_Iw;LXE)p01|-!ZRbIGX|&+Kx_kbgK9c>!9*eqqekw3NT`(tX~N8>^yOiAm)A8T zC>M$wb~*pcx-3~ReyWFK^am@+zTEn037rTdSXFPr1c)Df)bZCm5MvK;@d7nIknrW*MtNFox+o5Lq}GS=w|0pzYu$)7 zRHL5j4Wpn>COo~hUfO7h**H^?!D-;hSNm=@Y$!xTzP3U~Z(9KI`;;`OEM|UK6O#a# zBFct~fgrdym2T+uEtq~Twi;v{Xg!*jZT;7(=^r)D>Mvg2EI_5FnLFeK1vBz!2he_u zyZ(ARx{5LXen0()PIUu=P8ITI^RNt66zFJdlGX{vS>G}utCKmXzih&s`j9hf28 z-VLk{QTwQWWZ7iJ^%!eMERcvu+~>oXLHKHf(PAe!14Z{pHRT&P^wE6anVv`XbZI)4 zkNGm*mmo6D{7!bhRzk!{@DW7on~t=ludbV1}Wg`0c8zS`o- z>8GympFDJEa5wG6mGm@!PA;+;00Fw>4rbG_=*QhsMHE$o75Y9@8){bWO)th*I$$6~ zD;x1t22AB3ba3;+WrHpC9r~0E8Pxc3*?g4=6i~kaWxIfpmox!QJT(};3VK-qxUKr{ z`f|p&Y#L=3amb{xH6P7)d4Ka1Z}tXjU%Z$vp z5uEF1FVcsL_{UpU9+VVr+CPIKm0&w(lpWz|D^V>2?0 zDRo7fUJ%GyWEN}bE83PQxyA9xovKzsmYyGS2gPdIgy zpL_D6gV)yeENGupe)VW3i<79*uPrtq+mXVI&gl|TlP89ukfXn~y;pw~M;f&Li9H8f zdWS6#M7$Hy-)?U;VRy_|b&h zq^vlH+)9?AC~<@GTcPcsc61Zk; z_G#{00Pz8o@!sx6gF)Z6uh^S|fKbsFA>><=!uZF%9egeGUgk&nKFVK*F_nnV<%@fM zZx%$c$>m!TTej2Lu;r&^hX!qNo^_RXhHl{|l6QC%^G>d;%HU;0yDu!wB`{h&iV5#} z!!=MtqnR+oKPqB(At+C?YlLX5GNfU)lW5*C#<5#boIh-jIwCQVj6YMhS6euX?)8xY z#w)}l#w$9tiNh&E5~I?02-8T1IvB%zIZu32RCL{tA-KpPBzfTQ(@C~#I;D7du+n{_ zpi2z(Yci?}pSr~n90~yOc~728hnkUxL28+@m1xf}4c7bH*XI*YP`-h0M2fZH`gJH; zRWZkHp(@3W(-FZMaL=EFM|h{H2p#*U+aKRVA2YN@{NVuOtL6p=p6sTJeIvv`fn$%o zXdhjlkMkJRhL2%=B#v*^U0>!^(3%^M*!ebOACHXX~xErq-}wkvlj z-erx9<4{3RLci@j{j#6_eOrvwh=lRI=Fdoh4KZixgouHi9MEM*;l968M9SahKM6c4 zRkjv=fg9c2fdrf{diu3D>voS;-}<&iB5Q0AXAN|PAZ#@DnN)uwo2nBN%4gbxZ4SntE0z}yDbBzHGuJ0 zl-aw$?`G9j|I`*}X}}Xub8oTY3B%WXrTet9#0a1pNOP~K> z;An+RqYhR{8sc7nvhO$%4JWEnAqF|$Ijj$Nqn2gqX4PpjtEE}oE`PlYf1^2P=@hWi1gM z&8>ukEDLt6uVYWoJ?R+|&-N8wc`1h@W!_)y_WcE2=ekcX@cxfb>Ze@44aEjQCzn!mDYV(A(^ag=z6!o{W7I}#qys=3i>4S!@ zYiSnPnv#B}o}=l6f^OXI5W5x}QE&f5%)J}RSj{u(Uk%MA;KUD3V*#`oz2?AHJ*2*yo^r^*+L3hgPstW*D}ecJ|J7gf2_Bh7p> zkYscYN?A0n?ClVx61Jc?jG~aVLMGvu3OtpNi}Y^pRILp@A=>;Az$)yha|5AL$vJruf;AS5)7Pn*H)e z+kZeHBle&Rd{Sq2z4l)F^BP2CdY)*4?mrXV*_}&Ql63}4T+*nL?NS}sW>a-OpNv1h zMVrNPbRf1auj{7sR@$XXeoE1srv8+*epq1g$M+0)Asz0giPTtyb0OCHLdP}tiPJiH z+ZVp6QNZ;HD1#5HT5@(r#@Q+0?FH{(tExRlK4tk~HT6=UIMwxUr2TFD%_YI$AgRqI z+_%L}h_~u924KGsAb(Q}rcq`L>k4j#4~7pC+Kbcd`vdJRjMA#Rw-gI*a#w#H(NVpi zhgmR@$c}=7dmjOa51{O=DS5M7C&OndwUlK6`E&keQY(y0%Et+@z#zf3UESkv*SCd% z!E0Lwyo?;Ib3#|+@e)7qEg+c`aN~qg@)rk#2><%FLZNX@w2Oy^FDBOM>VKv;z67e_ zgy0lHk*LgA6B>VSUx9!yo2L3BDamanUrYZ{eWT{dLS)T~+!Yt;>h2*znh%}YiRv@D z92T1BlFfa5ruy6LTN!`Ym$NsiDg#3fX5Xi$> zq&x$Jb|}}+>iLXEkz=QcGB#wX_JNaR3|{Q~yRB>91>XF)sYph>XO}XO@U)9!a4gbs zP}`#$bb$H=C5fCFIDDl9gOILZDTz#eEx<>FLhZ*s@8laYot^M#_as3ZjXEM6(p;c!)PW_Q??tdR z#0{LtO>Sm^r>0PeZlIa`gc@j(-;e!k{uM6%qp*9DXwHj$T=jS7(f^kF^nK#4E1MR7 z(gp~HK&kH1!#V=92+d}>eSLTv%Jy&DFJRqfJ}osRfeZm9MI<%zT2=5dd@c-&-FHBm z2bvR^p#t156y9q&n`EG1RB68g>33HL)OjCR37j_vbBpkZ+3ciU zsn=I|cV0H&daaqg$P+AKBYcFDwv|SJWBS|or{$1B&zj}SXW_17Jrl31DuH2I`K#IJ zKh-xUU3YhB_PZV6tNmgzk5uMOlY>Sts8HC?`k&hnC}eLc zIX!!`4+$E7Xsn~DCdsEYO0P^omX-M0*%IsEiNqM9fnK#8wZzp zjB8XW!M)d|4bjPg?l9p4I9%a|ECDc}-M-7^y4i9;9=plkXVY3oP4^_yz9H>&# z0xNSYu72W?rNtGuM>1Hx%i~41SO#Cp@ zHPqb;*V}|1!YN}zOUN*^*{r4Dz?%1AG$Y%HKjPJNq5km|imvEx%(h|s0Dis6^IHfc zN_d=2huh-N{Ws@Qk+q{Vn42|hoh2`3RYUR#g7@$ka(!N_9PqBFaP{lJRp>;|0h>a@ zr*)`P@diS9!E{6T9iKW#uF8S|oH=nhP>tfY2>Jq-;X zlh3mUbF(3C-Ow8CLp5N(zbRa28!@g8jCtBy5-OAC1(>8BhK`@O^qtNLw)=Jk{A`i- z3o6IG7KX*{Vaw-4vX|86&&u7kn+k3YXyOcN;*1QTpc2T+Yko@T!fs;`sR(eIiu=LO3k5U<~K!2dFB+n66obOBa>_xdnX zEL+*RWn(Mp#J_ZaNfJmIRg9dynC#a!qjUFp4>d;1gEh-WpY9tn?6j$U1yu2XOU+(t zYzSYSoB7lEIHP`w0w^gV5*JI5iL`-IQNNF=$BO-~eR!G-IilkC`?n*nrlkeor2cI@_^tQymC?XPRc^hV0>*nl zDTT!j@Qh40&y7UsZ<@)6XI{egFtoQxATcCkxw)3T*hUn*yn-FY1&s-%7d>Gz12Uhn z{yE8$?0`;!)V{vcyOQS1)c_tYzsHNY*o`c% z7*LU8GR+{O*xjrg?HG0quyT*g9+4J%wo{{LJ8HX|WOgN@6YJJL`br_-bFClc&zJK4^xk{Uw$v|LQ8y-Ijf@K~295DORFWv9aoUGDRuy0^3j9GvcJ0UA$4%{5VbM z4Y!IyW#O;!>f?3q=?mcg&W$PYa=;C1&I)#~ke`fOKZ6I+s|W;J`v67`ucX2n+wLS1MFOr0P{V9wEEq8*1oeimoQth@Y9q7 z3%=VfDfy+$OwAzaWXPyx!b>y>(4B|64br@Lhbu686L6;^FX9Ygy{~1cpZ$NGaEP+` zf7i%7wx+bQxuTb6i%h^52Q69KxKAD2ML9emB*sgGIq1^bVY!N$;Cgs^4<92AHVGpH z&t%BlgzXhQjqU$hUv3-*P9sXEZN?}R`uQpp&H?i|fckRbv&HXxUbaD%M(oLQ5bq&h z0@8VSj1H*${HF1!0BZo4RV{d-?)c|3=$kpJ0T6&KQGIB?Q5PZutMZz7#TxQxL$v@P9E8 zrnC|CQ~s#FOj8-Dd9K$vTKWCpeb#en`d`x*kSw%T$*n*LyxkoiblOL*_w+?ASoE6p z0E$DKkgyWn81wRf&Ay-&aBg|$m%^jl)*xG-i5`DcU-GwXe&9#mvQ*QQ$4-3-691^a zl#jJJm{%0`UAAbX3%!w3I4ihb_1|kQstbj{Z(h`K{MY+|@hbr%J~`JXBQmcO_$s?i ztZEz5Wig)y0v#)P8{TzfzNmtMs3)-vQOipxjiIe`7&=&KfO`Fqu~1l`&C1@K}_G%IL4 zROmVqt>bLq$X_l!6w{vooUP|5QcGBf2>$?YAn;75HeqY{@~4dc=1hbwliW%2#-oga4Y(%zj4KyHh(` z9j=P8$k{kI0L*Uy@|m0}aUr1N97;#w))hcB+1I%*H~l>u9Q9_fUsw9c`SB50^9t|ryT9GugjNWU;C5$;qpAn81$6o5yk~EU7&QDwEwY1J=IIUld4Q^f z3IkDT*?3}(;NszarfLZOuh|<^(!2YPu5~!}%QOdLvjnmC>D0oTw1?2D36i839thK&na$&aAk&T394Fg;V?iR{*h?*QyVt>6aCod~ zVZdT_^+HopVCN|(Rx%=X)H+yPnEh*Ly08R`io}qpd(M6MuAh5h^oYEZQzN@*z#8C4 zf744d^ueAHxx+!*(t<>~)4E$7NO?IAZe}J;c!^J_1oywUo&c{$k8*LRbF-1=K4Rg7 z$DAGi*ZzAker;SwIOmJYo&oLoy{pA%EmVKWfH~sjjfg^-*995`13n}uQop7AlQ+)> zlCL3+8KgdAES-WC2>b|AFfxBC3gF7RHwp@O=yuFHd4BLAt3;Wm5MIw)@2i_rZD45t zem|fb%68+5nWel+N&9y6>)2b=FV2fJva>`hg&D0d%(+LvDr562d`M)zS^(~Hf6FBL zd-ZUD^SR!3_6?+{{#cOPdg>k@F#JK66WK9%BgGdo2U)*?6k!0IAIRbS!}kKNi@$L# zsJe5u=k0ghSVmyC?e`JWK0|v#r+@)_Z^838BJj+U`&`(SD>xXtfuB{~X_x%JwR|YG zf~V}^$K{PQM8uR$oId&KhjC3ws1#SnwT9a&85vu0SGj$(9#!Uki{u2@PPPIF*H)W` z$K=2EPcU_AhQiBB*-=&_s3f&$fzv6 z_#rCDLT*XtS$K>PbYW8mlgGJLMKESU$hua~9r^_8@tZm=pnd?#qrUxf3|Cc;8!O%R zAwkum>}wl$;9tK(wLy3b+GK zZ}Npi#poOhc{2J|hTk^A`U#&V;C#TygOYzpE#r`?Qa}TbHT-ZI_Z9vFq(2V#UDH?B zeV7&h8{=pPgqt#r9hUmx=+X-5mDE4Pw*pk-9JHIT#MTO3rE#h&bDGVlvcz`!{Ipxj zLk!<#VAzeLI<~Z#@Lum88-#zmTnlakmp>iB`k$2o;sGd^kppv!k*7cVaYIxwp_UX@ znIZ3Lwj-ZQR%;r_H{i@Q$P_?(+g?uK!2* zUe2RPg4sT5KOQ$8rvuV=I*7LpSOJm&5|UMA((rwF%a8U)d1d-IN1vt|SOLd)&&K^z z0~`W%AEk>+w`Mc-ZED{&8r#taA|-E@E1$I{th2(KvKw|t>7o=oT;`Qdq%I*7nh=bk zU6h;h)`+xl0oZy9A~?$vUdRmrY_Lt$ZryfY8!-OqWodi~KeQUzK@L(`YmagTSJ^Gr z>0_*o=Erzzh+k^R#Oh@k0kv*uhi`85%)hpC6MZE;8LR&yjxY5DX@lJXs4svrV1Ez4 zx^!fnJeBWVS?g@)_n%5ThF(zvCcFv*YSE1l^d?Oojh7oA5evsu+SJEoM8%Dza|6Lr zW|{Ltj+@wq>ZThv?RoP^!J$a{@qW%|`$7=Qx#VkL7!|qB4M#Wl;HHIhOgA{5i92j8 zd*vV>S&k;jcn=!AIJa!W?cNx9nXfg~gXF)cB!qw#b?Hr&uhp}?aVa+6#GSoFV_B5$ zW%){YODJ0!Ysn~7VuH)q)fI`)FBa;e4e6mQa-%Z{d09m;gWS`o_{wG@E0FdJ?3JYM z@_t z5J~})#p_tMG_$Ko(cBTM1}?Ng zlZN+jIX`3wYbVVpOguZU`mXXK-91nmJ!IEn1Z;Y!aX!V>WRQC@)_Bs%Vn_c`ehAnP z`(>yV0s6E?TYLGf+485&?MLf>YAn~lSD}iLXx)RiFB(hb0)w-k6?a!jPV!W9_qC>1 zq5a(Ci}z)cTuRqi>za!B0Q+C_9R%Ew;2T^FpIYsGZ!{Mrud7o}B(D_E5@&W-pnR0D zcsRFxq!&qhp|i-Lc+rV;*+eUvzF&LHoH~tAur;5po6K^@3*6f*_R`aNaJAIieVX@z zgkwWwOEMp7fQXa~5qHs;?92ewm~)2=w&1V*U$a-fIC+C1WdZ5}ZT%oGV2cnRwO2Ts z^9pIpShsJk;;1`VaVY=m_6jN$N06>n5J%G{a!Sm^Pv|{+^)#Q$K35h7sg5!m8)7rAX~Df$Q2x)+?~8L5zF z0G%g}VI^NQ#ixjM00Ky`@g4>%h#B67{D#WP0e!Z9cs)W+@Gx1S@r0ieXp zQfVCowdDLuNouBc=$p9r949ENC-7-UP`xj!_zYcEgU65dclzhy5~Qx@+^xeO&5tfw zrS0crS98G&I#Lr&J%_4%Nlm7%Rg)DSY`;LOfc^2&e$6tSR>2xGK{mCD*dX@6jv+P( z(%uks*FTs~cKKnqI_pSfJd^_iMzhH@%PVD&Rvm!-neEid*~WBZ(X+PE91BgXnM~Kj zy!$no{v*ct9Iu(e1);L8zois*cSPJt(gkouH4Iw>=jlul@|i7nT~T@$C#;a^V{E8| zYtQL1CSC1fSg>rm#R8rMXm( zPAmfIET$A-G$WrsKIStV)LxTR525M=F>v8QR-xbIn#m+^xB~(emKn0gLR7TTGt?=~ zy-rkg7>_%GT3ZJ#KrlL@pc+=Bo5<+&^RnWw*#aat__7c7 zWrX4MK7?u<(LhGr>hsz2?@RKp$<1g3whh$;&qtjaoKG$`eHiza)%W02a|Tv}rSG2K zWyM;tXaaiG={`wG8HB?0$#+M+B(^A(Ow~bi=hAttfX1ScZPl?k0Oyk>%+Jc$v+?YQt%$ig#5Fm7 zlrMyEtS6!friFj$c|-F2v7Cy<08D0U?o>Z!wgct*>)7z4^(-2oN0v5FrRL8$LJDtR zr=LFSDk>a4I~zgwwLR+0F4>4b+S2yLl<*t~uyM709pDGt@8!FUO{zeceYHf`A6r#4 z;UG>fTt;1Yv^$4N&RxI^elA3ZDek$?ge$&OP1~?mKg`aW)6EsI79dO!vYUlAM9I%0 zQGMYcMY0JuqN}D*;3}aaF2_CXT6!9}{9Vua7(uVlO5h<@=%b)=ba$~2^KSkba6Jyy zz+;7bUR2n|n={Uu-XW3}vhsIz{}kCbej|z({BtUIrPYJyB-QHw)BS^|dz+3a?RIV$g9RVFQKJ zrJ3s`2F0dun2}AWw1jc^w`>KV(ntBS&sT+9n+KW zW^xx(5Uj!C;J95#6ymTMor5nNn1L#th0VZgX%U;)6Icwzeu+_Uz7l4ZoEPbUcmT?P z{USj{3^$bN^$N7ttcLm~;=_NNy*g!Xn-PUa-;M)DHK&2HbNSMF$xc;yrBT($!Zc6y zssCHMp*=+s{0qDt9cw}pm%W_PLxBb~iv3AHDA{HREAKU2`5zER0pO&`I#%!;J`rS> zNxd}4TJ^ixzGQ0_&0s)$0Og>~+?g9BSJYwQ!qzAO{1v3<{hQ#Gw?kK-(x1qs^do=U zevr#^mEv(uc>L$8_sp|HL?-148-QqCeit1l@2agO4N_W|FQ1Qw&!kt;}19BZ=ZvHc>&kqQJcm{y@0Lp;< zZ(K!7Ko{)vo;p7gZQ#rrF})ZRR4+YzZ8kwTmPq6U_dXiWEbBR)ovP38rQR(JfJd&H#HvIM>T!l89sV$)F?9JEQ4R-Q6sOAbr&M zab@#8qR-(B91rb|eL zjHAEuDvY0(ND6P5*V4#qpo4&?cGa~~z=TiI*11?hkxL%@XL3PfSO4$d4jqt>?$%B@cI~u3Ro{*|)uYYTjm6^Ujgd;97~Q?SS|I%7Fd6&4XDxRFkg<@(oqhu#NRARMJS)`` z@T%F{z{^A6tvf?t{$FLhTHS_6DZ^k-eeSOA9S8M$QI9PZ^8$>}ikM3fK`j(x&|$4? zhs*}HcAIvF{2>Vvr$}dRs6G4!9PH>XfcOB)u zyI*3iPpt2(|2Dq$$TjG6Hwr29XnniuVnKS2;}Z`IJ0>QQ)@mgyLO@a${;Oe~rQI2+ zy8%&GKy76SFn_n{D1Voau{b^0rlRN9BS8I8z6C7&6V$^Qe`>plDc2!@fNA1)X&dCv z=BQmI#^E#;Bh-)9gQ7@L_PJ=Qs^fcg_{Y;%f(5NCxOMvVb-&8j}3_tt^~)4Fk_6 zO{RlCc!F&?afBds1$P57jWzyB&PVI50sD*ow*4V3UDC2OPzI_B1#cEX5w-zf{u6M2 zC}#v|6hcgIvGb{DN|Tu$iDxK_Z8amb%a%pZ@lVUz_a4OqO@ZQ@wJR$%lGR6dVZinF zo?NMT*NNN20&5Y$9#gB1;q3Q?tTOD|4!*SnU$Y|=FU?2uHO2E5hTSqqlsWzBc)MZC zBs8;&Uz!YgBgOU8RmBRei-ocvX@|=)Gn@)1h2`mZ>r|k;D*4d452`%TK+7-UTsL^- zR_fdRDwe94{q#8*WRl}S7=c8D)+^|lYOoLefD=r``aA1FtVv3nev6t0r}o<0Hgt6e5QDD86C8s`A} z#hBCWnEY-2Fea9)3O%AAoPBoKh6uSp9?Rp0p`i$*h$L!jyI95GG$Mfqb_haxob!_` zP4>2c%GR;eS{>Kt7{lCi3Yf5ALqLDnKI(3Rj62%5TQw>_lBad@9$qO`!%2iy;XZy% z>SkRVSe*`7CMEyGUm?Y`wzN9BRTMtj?+tjq6QXF1m!I_a>;niq1g|WiN4(18{6xW_ zC>GQ*91Ic9kV^4%#_Xfx3tGsT;_`11gnO!isK}R{l@>q!bGS44=X&3wS#Z_RqI||%w~Wf7~NL_F-3@Uk{`rfT44+C{_B%v z`=$s$TkrJ0hZMt_0RQkMCr1gg&l8outKv9fbmhUH@?{NiO@r* z%h+Ibrr~+dnos)5z*ITI>xu z6p$4Bl33*(->xyf+#fTan=3na?zFV$N?%u~IBkKz8pKg<%hwKqgfA6fE=WckN&&Su zp$^kNvLh$fgqhjyi&o+(!UQ6sa1m=6<*}1ZAt}SBkMvf96LE20lCUTN&f_FH zl(jQUQ`oM_--_2T?dAAr{$_ofOO$^(-u63jIqKS4(6_`%d{X+Et^qAkJpr-Vh9JQH zJ&CC~nPM7kRE*Xj-R&S-669!76Sn(Ge+0JNl>1%g;wC44=c#9+K6iRNyDRl?NCQ%^ zl!esXBIL+FSI~?~KW~b5^Il*7(O#m7<=OYpL7ECgW8=0_PZ>$hvXWJ$gi zLFWC(LLSS801Uv3T;^G>0Bi&8=aB-5B#<+yFZP(UCO)zqQDo~)6071-q5Sm zBE*X#RYJcn2fR88c$Wz~_cG5Ilf-rAn2UL|bM(ZEG>V~|>+jBo2eeN@O=@p3g%^1G z)rp`PWchF-NU<#m+!pW_2Tkfobw-(h`S_-_p?*8vvulrGi{R}5w=*U~h>gCX$yhDJ zpCquzn8|)%vS<4OhS+;jF$U{Ekr7;iv~Sis74i8v} zonPQ7$EWkC*{@oJY$LuY43ae|f|8{F*nV&sQjCtCz_;4a5d{4H_vCK+LT+uRq;wCA zorSV(g4Myr--WRWOW%Pa37fmr7TE#$(ySJIUUtPf^-_4YY~)mF9`v_n*DsX5v+OPm zqCWG_P@&z`-ud;vjt2(?hh`Oq7^;@fp0$0%uoNvn$KtkcT>|oN1JZv^K2MSyuZgL? z7B)x^jx;-;%a2VF3=nBbBU4>0CP-_wQCage^w=qiBq|hI0fj`MX z^bBCZG_-tEfl#mCg=pLLMTBL+JDLnD5p^wmFsHj#557!sFKx$r(#95Ijsws6Fh1pm zYP%@8f&pZq%_%=AR(CA8vE_-Z1+Y<3QUf}Q6=4A5o#pE3X(G3v5234G7l;jJ*?b5< zB~tn*6}X}%ot?(Z3?T5gs5!f;6`vOoJfmXj@+gy+E#`dgShxH-9$rVPwE^?T6i2Hi zpU%nS^Yx)e!LJhe{NadIQ}aQXc?rxt#dhE)0rR1InAobjY@;i!A`-*V>$W+A9K#T2 zVKQiJmYBj6(0r!1uTjHyrN+GW1qg+ACPf7eFZQ=mB)a$8P&7vrZuUd(=?h@}hDbAp zzC(b1Jqkr`K_W8kpl-=-jrj!snHHB!dR2pXJ7E3B5o$3_LD&H)-whcvMQaeVeQnav z?+3x(C21u@b5&BsCZw`cCR4T-AX#uSN}Fixx1D1Ig}H+wzi^Jd$j5pM0P|G?reamL zUm_iw$@ov6e2^ipH5-*RR;p7kh;6A|Q1-l0fEa#x+{-e`p%L+c=bzx|YmQyTMCeD-TSQe$`#j|E`7DfuD#IMc{p z0hqh^Y0N5F?NXyBB$o@@B41Zna9F@omtW_5X`=ZNXa2EcQZm7hR*1SYF^6~xQ&TKIc(m$Ebiq?|WTZfV?+9ixUIOdX^;!ELO` z3!-w^(DBav-$nN6vP`Pqorgd1&)_TG-d{Ey?A`*fk><1^2>o(clrv!m-Pk!X9a;8( z@e+}nO=zm5$4K};Y31HPWWWT!4wEHal)oZR+_>ij^PM2;kjGDZZ3bIi9#@$SKs(5D zsAt8p(=nQX;>*4K{ubpuC#{!uxxZ)aSdxX&`+R+bBtHIP*`AE$p(#30C3B+vDHa*n zcN?4)$}+cYk?~hwo1!^H5M#Cy>-fx=bg#>GBh2MoG{rd<1dv~P1*-0DBF*&`PT6A*LdQ5E&93z~33X9vA&-*gC$=zDQZ=995%Ih7 z)7QoK^yi`0n*$Y0o}LD}MDe07c^%Gb!ss>c)JZ#E7IFd3HWiRR@BO0K&9mSCV=5Gn zfzP|nO}iNH-m%qp<-^d6bkGWyNN^y@`YwU+sx@#h0hSjfuKPD8PIjX62w1 z?w;9M|4pM5Jbt>~mRZBYMLDBD1+-~lB^^J)d-(kHB5oRzHMA)yEq%+4vdcd>ZMf^%|A13NXvI99%Nd90b zG4E7{Wt!O@RpExZ9y!4A0-3bC{bpHm6%2|y#~MEot9Ae`o{?cCE|D(2O?S(TE{vu= zYy%8^ft*+mltaGh(LjaXyye;tmzmZ5GHVEH=sj0gK8z!NAdMAgkVC1TzSs?-rg+EeSMQzP$#rDTdVnWv~dS<~yKklRZ ziRtbbst(~La=)^C!{0uU7ymV1Ml4D-@^F*iXYRwibP6vIEi2#xf{7Frnf_(i&q8`u z3donqSZOq-foeD=j;)%2jRKy*R@B2uTyfkrWM7}s;qxX^F>YIaLG_ME{c&t(2A}o# zC|@=U<1>a=kAqjv2$R88KE(Um^atErnlkzqGSBO_A)g0oET8kz+-6Z2Nf!9VJp{0P zO3J=j1zHgC<2XA_2}WHjZrFMz;kQil^Xk2tIq|ob*RO<9rd;sr(=57i%&L#v+;1P% zpC@q=AKeiFDenv2e^@UlKOqT|KLkj1r%mZeDJqng!GCRk2!8$!NyE3m4V4FzLgm}9 zSQUPyG-3DB`Bu(|#{U(m?YUV1$)BZuN9!^7tCIp}Jz&3^mAzhTQCVh|&<_p-%he2o zz!@X)G39bC@VX$BVO7|7=d56PojvQlyIVeUS!{zId6=yZkDQT)IkZRO0+! z`>!~@f6ie3Qs@5y^ao(nfKhY8N~MQ5M&MojyC_kvK#LgAU%Nze4lA#45EbtOiIVYq_@pZK zZWk7IGerlOhj)>G_SnylAScUkgM`V}GIKd8YyYqDnX8ccl51opz-abMuaFlq7qEW^ z5Fd$lvel{YUuX}c1R{yX@$BB9u#0uRYe04Ii7gMxDnb0O;d7!Qch-*t$yPl~Q9G7X zZ23`q7L&^vsucCfoV6VJ#2V)C|JU#_W^5Ei-*gb5Gw*{5jo)GaC_Xv5zFeUlaZ>z_ zMz)SLjL83M_=ta-tt)A5&cJQyylSBO=KfK9on8b+r5B`cZsL+sm<=ZyEa&H$k83(Qi8c*YxKl zhe$kF?{Ylj$&%V_guI_w@7M zUYB2u{`y(g+nB>kPs*$sytblIan5vRBFJtA8mIpg{NQ}k;OF)x_~WkImAG_Rg@Awi zzK{OCNIjf5cB##Y)WbZFV{VOdbIF}0jeHnrWDMA{cbd@zTxzfsdh6vEYnL&^EN1wJ z=Zk*y@5y40QABirf9(^RVC)u~%~pJq$qAQ3faa3<<81>);bNhT_|UsIR|jjh!CG zK->KO`6>YOxjy>$*<`>yX34l5_|XuZXO@zNz8r9zk=cVGvn@&M<{ASv!i-%0Gv^Q^ zR&k1zP+3{l;iJ$0xA*_qDssC=FV9L{4{#;9kC{5}Es4g)ts9UAHn(y7p@6nW#b#!E-gr354a*`dxhs>w+V_ zG9X6<-nPY`lDOv4@;U0&wWw-Y;~oV!%thcV-h2MPy}opUVl7_Q!hR}Q(-aW(b&PZw z$1icRC=T1=Ym_jMHQi2$`B4=?jX?wDDq7BT$nn2@-$#G%)n(@Jt4C@5b6m<3H|^=v z3r#$7i)N52?%B7j{GVJL5I5%=Ix64A;334LY)+y)Kl=QS-amkmSKE0EI*=_d6_R=# z0E{nPH%2{pPOGg|7Ljm0<@j`Tk6mvMYR%X(SJvXh{_ecikG}uC`!}ntw~h?1S_nqJ zjer>q|q1T8kwicYGPkAyv}?(YARvryEjmWQXOLp$^=M0DxeG8CayAJe@TdGC4u_Ig1* z?jI~v1Gv$%=uEW@NA2&gcO4<4&Qt~o6a9L~BKv^xITa8?HsU2vTopD>-qc^~;8}H3 z(+<0DNF@4&orvZ0YB9fST_%?euxDhcT?r&@hli41nQ)`4$zBi4k;_Og=a|=cZ~SVZ6Ex z-H=;fw(@aX5!cWq%Y=?I%zKNg>d-Ed7R$)$B>CM@Y7TU59{nC3oEPMLS&YES({^`L znOyTs$)dFwCcHI+T3lzVL1bU(0PBYy$AP5FJI6>YEh<~Zliig)Q;?Fyn2#T0u!tK& zyU~#j;U2;%2k}7~DStS-bjFo-p5+zWgQXWKw{UdUTeQcsX9yS$BQcW4X7e#^$Y}H}SLg+Z>%K3RG$H(fGZ6DUKJK{3URQq1CnJ#1EO1x@odw@I0()W&uyhIAb-yeEfU; zM=4f;V=0gO6}N+P))oXx$MJD3L2kI3oXg)~X81FUG>l}%YFEafK@O`2_Jx5|Y8aY` zjI#OQH7Wz?mz#XVD|u+LC00zl>yXK;Og4Y=Wp>%5`Lg#z#AnaoUmqj+*lXid-trVQ z#kvv8U_`R8VZZnPlpi#e0`hpeNCMkLBRhs&L+?4TN>~{v4rHeOjx3u-`O$jA%YrB^ zLj=M)B9B_)dUCtB#|1UCl=TAj34!MC=Ws?~FcRz|PDa~ZloyPo&k}-=fbse_o479hG4f zTVm^6m!FUU?+28-7Qy#^hb4LMEYa=coDH{m-3cBgRS2@-Q-)|~aMqp!=JVb=51pfe zjycj;2A*q?QLl^%=sv?KUwGO;DGHL^z{tvS+U_Zsl2#UxvKIqI)>PK^0V85Lu#y>T z&k;JcM}Yg;%xKHN>7ajm{SlpXU*}wVkbP-{dq@b_kOlP1(XzZ?m@JXQrS|IUsZ8$N zkCOyv0qB=gtwbHB-RaYV(eBegsD8lj1C&ELXrCjBfO(f#gG?~R&+f-D&)~U92b5WA zNS5j^avlNeZM5&p_NjNGQ#n9#n}|}xMYYfoRL!wUzExsEb_$k@kK~J8G?LB|V*#@?WLpm=yEZDoo8)Ig;9Nh++iPF z$=3c1%Ei@yhKD~&V0W7KhK-dOk3Nw}l2fpk0y|-uWcQsjHUg4jci!vqE)DUBeb=29t$7Bgrf)NxY7`kFnk28 ze`xm~$HK_UlI~}rr#rV-PzIcz9(E#c+`jjH+(`xahY0_uoJw^PCy&$OVO`v#A$xEAI!jgdS@f+F@n9ap1oUUvYg0?NXgp5vDLRB`EzRp6 zV+EFh@AZSTHQpA)LFgkh0e&x_47h&%=*Y0H8d5RZnSz+VF)pKibo~O(L+sXXUje$& zo<%>6uH8T^k}&=APsW}_;Na6@wJdf&)j$#JtfI!CRAJ;ldBbrE=o;H<|5O>NWtnGG zt6v?Kbb)YalAS+i2I$s0ZTiCT6N0e$z~Lc61eKLq(1V&2LSa-1+;X(sW%Z>zzBp=o zr-40nZ-k}tJ0+*FFH`re&eQ{bFQ5$Qe@ByF+PmzQHm~$pQ&ulfSU>82y_Y(DJ9|&~ z++eQ`AwD?`V99>l>$}STd3E=BY{$p$>mH8U-A~YXiUp(zFI^PrfswcUI?z8jvDszp z*+T^~kvmp_8noaGb)fJch$eL(F_b>+JgsiBUy}c z7Y+z%^zei;ehFwGY{n%rKELqxI)*Ltp+s2qLalcP%L9HdpzI|PEvXT`o+41TC}OfV z6MpkaZya;wpD`*K>4iMQOmF{o{=qbV2p{@>RoX_;>KDXHIV{pibiOI1xcyvCN2fd~ zzNQGZ$d@bG{A1J{2QeBEp@S2HkIX)7DVu%T(|vHQanCwdV9%P2)*# zCiA%+>S(mX2?Z1Vfv;f79OP?|YJtL6`5jqH{`SZEh(6&_i}G8kztkyj6=MOv7f}9k zvlp_#B`GI2X^=+{6v|Qre~?5{y=`H;5Vlb&CRp@)nVO-3=_kC`&UAHGXr zLWO)tZDuF}5-;y1u>$4XW^{aPx|KH_Pb85~=+w@F#)9j=uhgAH*Wt|^&j-gaNu3u{sM0#T@Rj0+p_9=ZL3oAV(kX9i4dH5Zu z&kOO&%O9lzhTvopZUgO3L4o5>JyOS1u_@H$LY2}Xk>CD#JbMnO zCGu;p3X7Njb*7o=U=d#&k?HPU_kC+aP4i*|6#Y|M zSuGz6RLq_2P&fbH{d8YZm?co&bE*j%;H-Tg{E7rWq2ktw3q6hrG2XJ#^&&;6O>k0T zYxVb%=g?1PivCdiMv-S$w;eWeAQytI#1G{sv+DF28*qJq7|f+HjPGh9P~J7Q4G%}5 zsS$2SSUx~Nx-o>v6pc%sLA2;2z0l+@d`#7R-!teZk@xDmv308z=0qe#e1ogt$B%o6 zzj<1*_cu?rw{NqL1H72@Gf@?p*1NkrMlG@9PP@l;h6X)?+B$xBq=kHOAns!#g|JyU z*12wiP(w3^0X+v*kCZua7{bO?a^hqlu0z?Tqhw?`%d3pN<({ViQ;Sw)8xe&+HD$1@Pa=d6DkYltR;a@`~`!#52| zFxw2A9}p|-`);;%B^hMae*GQcLn1$`!4Ixl=#&1LrOf$tYTWFf+B1b^Ema028p%ZD z^fg1){hjTiX5c65laH`Zzf?wB`T zBJ7s3vI*Xp^3#CcpgJv@vQu>j`Sb_qEQ#)q&ZgV=TD}%ds|GJhYq}D4OU=IK?@qHv zp3&Bt#L$#pA%WQ_BJor>YWwTtw!YV&5Uu1k$02e)FXREPpJ^P7 za81-7$z6?3Z}nZUAtKV={p$k(jPIevE5oMhG-2usRvI(&<@sL6k%pTAo;NPShYwR9 zF?3yDb<=aEq%>h{$eyX)l{m=2JTjw%wd0R`oj6^{l3<5lHN3;g!01-N?t$}p3(Gf= zGl;d+q9)JU@LMG4#>X>@wLfEf!v9sEYGV*ufb;gV7ndn z^AsfV#QZ3E8RGpZe9xSTwrNP8Pj1ij_|PfdnjesVxoOIzPRW^_*}A$0Ea1*!{we>m zGGHKT9od5gKxLuQpt;>N;&w2GWo@tDCo8zPzMMHvVf}^7YkXPxhTp3R+oUZ|gQ}>n zvAlJlPDU|Dy7q~-Etp)Y3G#7xQw*-e*sF=jb)B2M-@_=;xa~0*J$1mPoHIZ>7Y7o{ zJ=JnloiO&-Tk~xo$h9wR_}NhH+qFIa%7XK`Jbog86Q{VkcBZJB2J!a2@|mv@GdgaV zC)EUo8&W+TDWeR`61R@`E=>nHg2N?*a(roKmb%hGV9lgdu|L2apV9)a=D6``^P-YC zTaWYE*VqgDBV<=*p+<9OUX7sOssZr5xaT2=2PlN;jo08eOY^LWtJYX%SlG@g znQ(a+u-{_=?W^y(V(h~k%^_X|Fei)gJ6iTX19aur6?!7CNmG3AOGc&HnL+mlS(cEr zY-PlDgEK(r<7m#d#xo2N3~&9n>aO0}PoRA@V}_k1fq(Q2r4*E;2szjh1f@U9w<=*< zLTnHipO#qgUi*r!tf4nW`5v6=r`#O2-XC<~sX))zUe%pd!H)f>z8Kxwd|jMCX+|ok zE~w2){7Iz_WW7Ay8=Yji5^HNFQy4nn_-B7z42&H<)d#wP%8MJsY_}$?NyiD64P}QN zf>5y#(F4B+;>c5yu0=${g}uIi1!dDDIKl)HP5XNqGd6uU>z(6;kO0OzCN{{s|K+ z-vFi88R#Fv_e@o+X4X2Uvw>tm{o$CyB(pZT9zDcg0EG}-cV0<0u!r;0-ZO2@{`vCj zZyz>_2ySVYkC3^tmr78rYCy^@-nHV>69M`i zBdkL4KlKlw(Xu`DRZyhJ*CvO}@3E`@#g4Qp01eDJ-!HFcW0*JfP_dWD6NH9ZwPg5} zH-mAq+UO7*K_S0KVu2gnMhoholUP5DJW;4`REdu^@zXP19M5KG$uyXoovY@o)q6xt z^i&2picMX01sAS7_jC1|`PkZLq*{sv)f+E`8&wnJZv%vwZ1)#~@O3^7D(?7|YLUHH zza%qZOX0-tI@zl@YzlvrS7wKv66xZr+m$7+>}8+tjxNfERfh*X=#b`;QfpJTxTK@f zP;?$mQy!R5v7)By3@e&Bx1dz2;O(y0c;Zd*v-@gUC-R zQ7j6aCFd9(X6)|^E)pZ;)Sfu^JlUGe^Dh(ef*GJ@?OCFgTcJo-J(U(cViFpJ{mbd0 zB}6Y}KUTJ(#Qz4J^HJS7lc6x%N!0(_eyU)5895ajID%B_R@&f7eE!?&gg5}3* zWzNmvi=?-k9x_56(_~=rd-jhuUIOI<#PWOP&x-}?DpI4Xh7EP~3sQ6vND%7ZZnn>f zPtd%`dNVdY7*d&C7!e)@Rp|wQPZ)tIByZ1vV zTT?zZkO#ncSxT5Vn_IWv)cs;Mgl(Gz5JLu?E^hZjx5yqMWAQii4Y@jG_u6Bf`{y&0;W+WXliI z(`)S+wA+$ezeCO<{PDSXKI5(C=Ff+(F9f;ST_(^Msme0GytRKDW771W;z!aYUJYUN zv%jCo_99i3-}})%NJyjzrQGQKQ~#9m4x{DD%XmQ0k~97|naujYybgxTWbAIL52aJc z-a{?09w$xC8l#?^oLVKzuieNJ+_JPMZ;*>?Kb_YanO^dHQ7tLZq&Y0?a_Km6W&nIf^M7CYie!tj>b zNr<%gT16zWB-s3;n8>sJ%^xW}jsA5mHeUJ?4$5*)Lziv5M1~Vn&PmC(&!TzPFT_W- zaj%>D?JiN5vSG4b0+mrIaMO5B9Rw?%cGvhKOZGZVBT6>#e!~WHvKgdtNF8G*5$CP_ zgh;smVt)mr8cU{+*R;SRAQT>euKJm2xr&l;V)S`S>%H=)d-(X3hEi+XH@)jxrW2~F zZNw{raIH?~MrWFSZT3|tL5$1EM7d#^g7Z-Hral{TH@8%!_%~@|TDpj8i-kw_677dT zLIt zY9rx4d4WA>$;4u$JD>V9O!Xk0;C?ymUSxc4zBib(xS`?Mnq7WFm-0AO)}T~pgw?p8 zjZ0kZkh3=!uK4i}dJQ@d4>?`bwzh)`*1=dwim=vuT4q__nl{^X6|#W)gIq7cM%%~2 z>{-U%pL%BYTI|(-f^d;gam^fx!U@Ut`_RIl4v3O zqFU_R=139CF_+EkpWFTFipj&Gpb@N~`PgtH!pU|x{z00C`EEMbZ47ErZVpJL`6R`zbD3oV2@ZkXJZ6bjK5quEFC-q(!2q5c?bhp{r9Wtu10C zdXV`5I9{aTP-$WF+I=!H!eghXGuij%`_h=yy7j~id2Oto959K=N!-IQ-_GUblPSft zD)8QlmwWH|gb#m)U->UleKT@5D@J{DXUd`)fqnm@dAIX-!Kp#;CojcwcOt?JrIYl+K+w=dO zU@!G|ta)btWSLUiiUbVIus>p2of9=@ZYs^_&zt@h;Cg=$n_?I!#)&olqsd1d5%A@o z+QY6M7cIKC5{n2MgrHE#oEQtb4Fx@>!%+NS|5~nzs6A8u51PohRRrEGgQ&?MPs~a+ovMC$1sf zN3?v9@Ezn#{NLPt>aeYFPJ|0&^p2c0K0E1=8Rhda2VdEg1KsdT@Nm*?2*Oh2FF1G+A5HJgZHj3)7u9P^`|DuyO2_Xe=ITp)q# z@fMaZ+?60WA~eEmlMy9kyxisO#0W=oimvGHo&QtlO z2vki*%Fc>M0GEyMY?UG_hOWul-vvJLkjUIY4yDo;Ruh=70rFPvBU1S9&4J>!U(W82 zMjxFq93|Kb=JXfNOb;FfhD$Qn_U_PbL0Ga~x`alpu+|cIbTi|a$Aha|3Rp|Uq*p@3 zBK4U~lorw4qmliC1q)uO(tP>Bd+EDBF;wHuMb1;kMtDMLv5%bFdTp_}zxh7@I z=a_W7GnANwC;A6IzmS8)0Y9ynSF-AFul&vdXL4T_qs=%*UCmE-Nv1k zp_7)Z0ilbOGQrA}cl+QHHI;Kw4Sd9t;k1@^YVsQ^I_xa+mwdjEN0z^+81b_o?C;2n z-r~0)km2M)aA)JzZ&%356c_mVCl2+0}LXS;=%6TNH`3bSl2i2u)lw8*f#2ieZe{!^^Yp zQSxlmn%6lF5?>5GyE5?P)MMpO-s!nlIBe!KN&1FMw@3E4Q*|ekX4=cKoaJteeQ?oL zJ4PuJU>qZ&mQ4z<@}W6Oj(;YFKLrth?i+V|dhYpldea7=#f^uk_2ku&DSYkNXY#`&!W2LVR?PVJS^L&Hm2yBp@2Zw z%RfwiHB%Tq+Dm9A(qpK0?`zP_`g1FNfqM80Vr)Ld8m3bUu6el=UC5R|t@CF7oCy>P z9JS=lS&~~FQMndwRf9qVfh6n)D}lJS1GrlwqxYW29LSSw_n%yF%#^Q?OdQZbOMK+= zHm3_p^2}pPjSQ%T-m3S`F86Bpa;OsQ)NYv9AnWJ?tmnu!B+EG2xRUei!t({{hmkOg z=q_)hM24wEPw@whtkqe-%ioNzO+RND@I>rqwj~A zNK+46%$BuNiKovDH-qoZzo2N6`7sMCx$rD~7e!O9E#jY^2l!tgLOc;ST&___*9&9d z?$K1>@R1-bZw~YZs*W4v#DMj4jVDUN0t}YARVn^-AG3A-^g>zi>O*_PFlUo6EyK19 z2G&zMX&7di82?Ja5BB#=K23#A9j63K0YBOs?xjKhcNxbsSF~30hz9CUo!_4w)sT0% z-h016$Q?@}UqG^`rkL9K)f2-0pT3{sxZV4qWrV#2VosDz6MzZ+R(($axcckf?pMA# zDZy0_aC7&%wqhbmqVo@wdMwXdOHM1m`kuBT!=9vBmU(^?9Yc#>;%v$gvWDeRtF4YY zo~bNhn%TeY7&n@>Ukcxi!Oaf15aGS0Pk`4JJuGAqW&ss>Yde^1-_q$W^$y-#t7p5$hcXC7wFAD)4W>dMO=Q+gyLX7B3?IDBDFqqgvwX?KdX7zD;mJ3~zI) ziYZTbo8uiXpy$XR;V^_VgKz?_9}v%uB}XN;Y)q03eR$dta@SZ7R@xhYAp03yS@4pC z%Zv-OSL_r96Ded;aLsrwiu zD%6BMSmyQ59iPTjyV<1fj(;)I3zoOWJ$0f;2gT3P=^Ps7MB6D*FF^7{E@0iCyjQ+s zEQ3Y<^(1QVXyYY6j^JIHTHA#tnWg#)UUtm<8P(4jSbrCfXb3HQdR8dHoLyqP_P(x_ zaj%cL)4;5_t~o*y$6#NoAItqABwe_|{1JgyCe)MP@41kmfyJvBi|zYd_ql+d5lr;p z;PYQUWoJQdJ5$oz9Odj|>t9F=XHIR9azPou`xeP<+f17cMus7Se3BGHYDb{`0IbLI z9AQmJ_m_6|rk$Zr@t7VrGDtS-NQw^89Z^2n|~Y# zeND$JaYAJi0+gC+Gpfz2YagOz`^y89f)E#h3bb+2TiEJUc4M(>PNwG8(;&7)KQZo_gHJ zBNDvMx9YdN8l)NrqPrsq#7SB#?bV@Ej?$c#h7!vrZN@IsEQtF7>$ix460kX2317v0 z?UPV*1;s(v?!_$~anZaVwBj+a4;>7UG!`D({_bI(@##1-FYL{DtY3GJ($EvfLpNahAf6%3(|kU<%R zqN1mzZUz<$o2rPyk1D|T-nqT|0rW?dCg5C8JS^QM{TfQsn1ey&jn)ZqSHf0gZ8Nyx z4u+F>zMyI~8|8su!K=6`eWs@Y-*8T{(d@1B2k^WJtmjDNx=6?9#LVB2gcOXJ051GN(Wf;E%eAc{1i5;QEnH1P z54;llwtCY{OR=y698Io0U)IcWtyoL_&)M#6A-TB0IUiYw{5{{561iRac$(pN%#>H@8JKZ=T~N} z5W1et9WJ(YI}jHSKV3<|lICJFj~DYcSpvVW;y|{e9bO1y_ZbWx%6B(C-?euQW<48k zcb~U)xn0y7oJ&MPZ7V^H){FqP#;nj;_X=iagIcs`2ndC3w8boxG4);OI^)!-uaU$| zviqd{yA9d5Il>2n!dRKFhdk@w-dDaP5{G5MJt0p#{75C3F<172@(*eVVkKi-Xh$e( zI?4l%5AmEvx1FHsL<5CecA(_ZpP1SGTKpyWi72xn)QB&%L_Pw%NifQ z#;!wX`Wj}Q$aHMu?5k*_Sv6hviz!yZMBx7y^my5$Fxx+wJ8J2)uj8};+qrX)z_Sd3tERvb^yU({^?~ng ztMVKyHNkq4KvR1X{zhO?Jn-ep*r};ks=bDFohVi6c7j!OFNfJ^)yQi_u?vM%y zL+q-$LkN{qr$npC(T5NFNan-JdRGY0-0Q`q0RK-tKR-PuAHIckfqn=_`PB^Ae%ln6 zMP~;8eLUx2?G6_I8?aqOr*LKCM-~>$<1WELR&a_ZM}k(hZ3_|j=v886QNru01@uCU z!xHbIPWp$+dx_@PR9K=#$R&Ub$ny{(Vu_$wdq2 zbmzW&&ho8$Dpa~8C=~csC#kCo*_#=l<^cR2a^M636oL~ zSSkYuDC+`?b|+j_Yc(CjLjqW)z_Ub+eN z`STSxJ|OnikhtEik>)dzT=-!Q^?Oz(4<415%qNJ5H)3aacQj-y-$^`!Q$&!yfPDTBt1sMe3U*#Y;mzvk%ufU9B*m2IbGni{&ioGlzOXx z68JGzy^2<1=bQv{-h;-A0-pR3pCIk@i1@woT;p|;wYM9VWk&2bqdt#(rFE81o~Ht3Bl zDsY6=37(%F@_uc1sHNK%n=UBThfFr_9YzAJg`mZ^%p{z?6V*<3h9brUtDMJ zek7MCuRX5POKR)_`#b6J?924hJ|+A?S|CQd`)~2GIg>uNVD7diAecF<)2`pk%Sahh1$YarIj`M0EgnxKbUA z*8crpY#qwJFrp#EV?O<1uE`tDSXFpCVE;k(Eb*7W z{TXuoKp`AKP%R-<2pLUiFcQ5YC}y>W??Zv#1M#1{aVS~kpiivA{0DU0#YY(24$SeFo8=Ccy5r-djF3f21y-fsU(8x{>IBiA6r116KSRV3Drx#f z;$XH#A+ZDGaQ~Elum^P0V)Kgy;S)k3BO^XqeM*=e^MmR~TZ%imU|ac>_+I^p?IWYJ zQ^6G5w)T05yxaowE&T{w&zy4}aZ|Fe;vL%Q4+vxSX%*u8{z3@G?G;E$f63OA9|I>S z#r3EAZuLP~J@zxh7*L=v<3ssD8f;9YE_j73Y|kD=$U$B7cKnHVG@U(#%7Fa?@dVgu z<2Ye+RX}KM3&Vp{$A>d&ySKJv|FO>Yj#GRc>*eKLFUujAv2K>gjF zMX#z1*Uo>PH}H7Widz4cef~#nro3E!U=GD&r+3cP^#r&dK>U{eE_1+Cx3+eP_=R9m z+*B9D0kqG7^5>�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 z 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ⅅ%-B<`O*CXFn{SG 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≠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≶ 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

=U%Q=VRvq{xFhxmz#4UcMMAUBEpC%~MQM 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⩔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≀!74Y^WCqLfeTGfV>~}xcnGTZk_ueJxfuAoCw~b2eD^p; z4%w5cX@3u%iz&&#rHp`FchY1m$51&fSC?g)o)kd-KBK>ZFo{6BNL5;n*|t%W+&q4k z|Hp2jqRN=1k`S0jsIeC@2^L3J=vw+G2K`u<@U1ztUO#|P&@M|7rmtXEJ1hXd?GmnH z8PRlOZAav~kBjPd6lQvp6-j02y#*qtR?a0Up*oW%0EPXWga@!Ywp9HfxuP z2q6c(9v*D1K;)vaf-R-~Qf2{O0$PQ7EGQ$ZNa>3ZkzBcT+zapW3H3Cep>1!DB2w;9 zG`*|Lm7&jxf0H}|SHcB!k0`Vqmm~F(cCclB-2Kiz-}m%=@%lRCa&bBBdmNwlEE7}@ zk@!+?O`%Ht5DWPkHPG_F{A0@ZsEoKl@q`GgZI@iDf=}}&?rc?myup_hmu9?MdR+&t zLW3SRI=6TZw)>*v`ZkR|es+KI2RdOws=f+mhtJfB#z#R_3KYUWrp`!$wC*s7D5J-w zy8zZ4%_uzGHvdV{a}aX0)L^hPmQVF}(yELPPIsPA3m zryZ6GkB~;thnABG`xJs~2MM8E(uB9(paydQ$A?q|lDU^awL_V1Q>h|OEK=GHY}vK^ z6jpK_6$-oMo%qxr4yf;K)as}=-<-b_TgpJ7m|{JCrtcy1TX<^!B00FupMKemXU0e@ zE+B)zKNL`G_kTytEZZ_4hef&+_0{wrc(v)BkbX(N^(*)|3L=2pBdGi3xwId8fs}}L z&pe2RmzJ!0MROn5(z4Oma+oA!1ZiaPu6F@P=k5xUt5QjO@~3PQNH_~Lz~kJFTq#G8 zza&hktxaG7N*zApQH}|tz`U>SEY#}$vN71ct#G&0L{*7LJ zYlh)?yHDCkPLA?Q4@d=T4!YuzCquAYnel*s#0rCt!vPV0qK2<(9?9hjdZrEXwr8(( zK3EieXp@eef`s@Qs8W6PU+Z80Z_9)DUpjs3!zd`LG>?hb=LHp?$phtV#x4JqiwLYS zZ=vd>=K?LniyLs&`tX!)LC_7*q^$q1$pih}I_4VJle+i>-FlE<<8WeTIjing=c6 zR=gwPU|s3;D0J|}^sBCv(zcC^VwUqykjFV9XkTSI3t7x4vS6ZYl5+0>^Wi<@D04^9 z_Lvo18z6GH>}F>{>j#MnALGo3t(Sk zX7^)*#c=n73VD*)BOf2J{qj_G=B0@A-2f$CX;+B z{`J%RT|j>hBcjj#4+BJJ(CTXuAW5jY&+uW&KbcI9MTXU{D}=}h=TflT@#;;n@cY(H zZwZ5O9U)XP*6ZlrWkHP)l@qaIj~6Ilz5@6kc^t&3uKls9z6v+57gNhaI$X;+(rzTG zF7+tE0iVNfK#WZfTz@_ibS&uXJb5FvEA@Ko?hY9Y(b&-4O}~$42BC9xDWaNL$l=X} z9O_}*v(BnDVM0jRG}J-~1`vX$aP~Vmbtq8jWi)0@SX_LjABAdX@+6!l*CLMaWI7-@ z3Ihi}cYc(jF;-Xi&?={*V}Ex4N#|gZ%Ohdx7tj^I*0Z?^=mej!h%TuMDUb&0Ugcac zEuUJ(6?sH4UfKY9{s8QIRWH*qU!6S`J= zk?Rn)`%e%pKDFUeGDb83X^FF%{s}NuZAAy#KqGS>E0Trfd_kKlpPZ}SBsboZUN+NA zs*a||*i@1&AE!Mbl`dQjykVRV8MOZxSzABC7llG;U{DYDmK)D0xX;!DFdl4Ot!7r> zySI*UU$FhWQf&Wc`crO7^29N;=(%@cP~rD*IKz>#HalJ@+3%k1&onl4xs|u9tVtOa z25%VxTgO`gujOi*gXt&`FU00Q`ybRPX6B$hN9B4_a|^OAnHDf+sY87wx?PU>43#)* z$wjFqaYfN+yD`pCo0!e$3H7~(1+denf0-*oZZfs01mSEW4Hm~6QW<(_;ya?kVcgvG zxSXORRuzvigNGT&XxFo295((deuRB5Mpp6`63@{kzQM13%jbZtAQ;mmDsx@q5l$Gh zT>s3zxMaglos_Ua`LbHWztRY&p3NhqUQ;N?70}LAVGp$5HWr4g z02xq?zBcC}C`Zf}A|sTy3Q-;cX9ztY^{(gftG|?Rcr=x=_=jv!4Crx72RqV8He8IWE>>Wg1`84l1VvO);|k*ZO>N zuh6=)6Vj)gSjiZ_XN^e*fG)_%8#x$i?C_~t*`nT&6vcz4V&7_(jxw8XSaKy%Tk-VpbzCZ##uiLkO0%QAQCcq z9AVFLp`mlVb|>b_m*6|3yAF0nyRrCef6TS|_$QDS<@S;t_xO!Pprs*xC<3$81%2DF zQT_lasknt}xVSTQ>#Qme#EQZC&A?~iCc3WAus06l0Kx+&IG4xn87nP~d&!bAFq97( z`U|k1ElyV5Y%ELLc6HWkr_^o*?nhtS)bW%V9MnuwD3{)SC15|>o^8U*B#D@GO8i|X zmhXL_13NdHRwT&5$`Uu~w6ugfi6?>%>mm8AeU(1j8-v{I|Jn~hD8_KI726Lyfy&In z&9Pcj7xbX`&X&zU-MYx2Mkb;1vv{CxcAp&ld5H_v!*eG@!hi~?C(y_-qlUUvPu8=5KMSAPRM`(QTCqQB46I8!SUZA4K}rtqkN z4|p4O9t&Je0~PRAIU-(^H>y@b7R*WTFzRTT|E34QXGwPN{<_FJ`!qKNtmX@YHu{ln zb25g9EMal#6WrLvcQH`vIw;?FMDgJ4g*G+P$_x77_RE>M;k0+akoKRar--(7_@gtW18G(w7>$>RkTiOQ^O zAFa*9*Lf8IEeHYQHkX#?VdRTa1fhsI^*BF%opN8GSjk!HE-tT@#pXlr9R4oi`MpGn z!uK2#D?6v-4kazLCyYSZhOacMfzW{Y@qqnjfu|Xi+q9zd!n1N@{Hm_y0sGH>!}W_4 zYac%R=yfg;VTn%}o1C|VDpBICY^gSXg21sm<8pTLOlFs`p07pI8qf9n*ZPGu!@L1R zw-O_gH_4vsK`VttMD0kk>$@}pnKqt^1>d7Tv-dEXcAba5Gf0OcZ|8rn>rsr%ILD;> z5s8p4fC$~-&7%?7p|jv#w|r4jnx(zFJhH){aa02)JWF`i({n;VS}S1$(=gBG7p|ZA z>|vL#-B=1(e@&3qaL~XuU=jBgW>*$|o^tyBOO{YpmU1AqrT3=JvxCmLzE9fO<(`YB zGZHOs)Mg~;!h_og@%5C9ZCrqa6qTdMVkmyS zp0c{FngmTv2#Q)$F#yJi2h@XS=?Z@+kp zFSl6}-tKW5_k(ko&;CYS+y#L_x);{@WePf~oAs2*$lhVc!B~pl7~e2TC+uGPJF#9) zHSK5m5#8+sm{E$b$@MormKLIwGu$U9w0GADb+!zrU@L3chtK?LI|{KBUKnSQOcnK= z6l_QI0kk~cUxH)4^Th=7-{R30O=Dg~S~!5Q15?=1*HV{bo)v|rFWSWnCeLHWqtvsH z@UCcwRy2a2_GI^a*cwpk0M=`ZJ*m`mL1g%$subMHV+%hH8GvpS0FONbvAhFU9 zHbU{GHqPvIzMyg7gCG_~0NjZmI5WPjL~cMn>tRs1HB86~QQ`YCN&(pyDA%9ssw#t$ z=CpABCpq{_X_5i5L^tQt2g|V#9{MUH5Wn9qEtD4xAWMQ+~ttwzm=KF=- z`E#Qnm~eq4sWF|(3mAku{W^*q^D39k?W&*Eht9q_{(hJr=TbYWr9{xop{~O51>fqA zW*tO@gHyGqRbGLoU$$$ck^{J*NGEWLD}kIZ#{jqfdvN;w{$#&`U7WPvMg{DdQJQ?8 z&3DM_!jP+?!elxw zFn=$l?q7Asu37G33APsr82K5rn}G59fb}wm7BSw;V?Zx(bMBs@moB|C?a$o!Jv-n- zV^}?(8Cfn3#0@ltsf|c%1(o=>ko;|Zen6)Xq@nvADsh9!PlHJjbmY$jXI8L$ z8?+&a*2QZS%Pnq48Lhb4hJ4g5>fS;g&uoaaUi4uQ%u|@d+tn zZ#X;X#)Z2;%JMOl?mw_~s~fdHTb~1L>K5<1+oF9rc5T0go9@Zy1{onw`2moZhf5LF6Z}LA`f(Rip68giqI?oT>Z<7ywMAp#ApFO zMl?Tg@$u>X6|jCLGm|R$IYn!Ihe)amV?T`B%M@Bo&@|4H>dks-6NDVpXZm>`Lx~>2 z#Bv|Atu5Thbk0i`ghLk|Nh6{5Lcray)W=N48tB<*G5dj^<}TvMQHJbi{Q|*RSTJn- z*J|9)_hF9eca$S3xX)(Q$vA>Too%plX;}gLOKIeRp;+^<#(z8@*Z$J#zP9Ag`Q4B^ ze=vtQLNhJsrDB$&p3xp; zeThJTlMwMv8Ls`R`Llj4-EtfEA<@(V-|dS~++~Py3ky*3*OqIgv2d^*fMJ7&b0fxXiE%s_DnTc8NXWFDY{@CBFOYJ~NLx zv9`xN7l}!6+CFv4>$OdpU4(JFzC))7dv&)|D!e+gDH0yPo`qsv&HeOkT>Gz{@v-hm|+aQ~Ukqg@CF5*ZI+9t<>7h{c%_IM-vmzb zqt18AJDDG~Sw{i_tG`IagcLKu7ar^|YEYqQ1wh?MGr_cR(q`YwI)Qja+|&;NF>Wr( z5j|y8a9H5jJ9Y`9M~)P5W|t0B4I}3e*vxG2TitknsC%4!*mY7wIGsAkox$*6qRUjks(Eh^)oSr#; z7rv&bjqxY-zAP&1!Vu9vI&M{dH*-jx^0#6lAbv){8&9dvhn%=^?!lK6WM9t5)D? z^7-xBg57};wrJoQi}LU41jIMn*fm1?6asG*y4iypom%T4fLU$C_nJ@IYvUf|a!mH) zd@VyyFf*gCR`p1b>!RpISuM6~W|8-LuK+%5A~>@HO&BSt8c`NLof!Rjp(k+SV*&1L zZ)K@mN86OG2UeRc5;bOJ={raH)T~v>f~uBs84`;bad18pc3N0!7W`HG2sn!~LdAZQ zf+0g3=5Kqv^X4Tb_!dKX_j#h<_q*UWT|pP0J>lI=D2%$LRT+p*%NKrFI!|>m+q`FGJC6Ov-rHbjSb~p+y_P|VX`_c#!y`+Y!B zqxs|B*_#ccp(eGc$nP}k$c3+Ty%i@CTs6Dp*&U~?^~w%Z8RV>;5s8hm{Y&?G`YdfW zT>GMG;7?Meg>y4$pfZyUDRFJ9=@~Oy!!<;}{n9~Xxcj7DtVHb24gHMr0uDGnCZN<{ zot=iGk7L#*-`{B7&+ENir=zZjKG@`GrD9*BDh6ddjqPx*Bx_r2gSdwEvKC0xcm}a` zE%*m5bR3bsYJ%JOq_nxk@Yo9if>OYKJ;JM*8KI!tx;%97d(ZdxXKP{@1Qkgv-gMsc zUaXK2=@>|37oGyu4!U;{0gm-cYqZL|=d8S*y=t zju$Y@k{5iBI~fgn34*b{MFRb^-TV?j_XXNTr4>n5sKCwE^x{>7Fy}R0cF*_|b;3dgfj(Rbi@gr=;}*ai@zuc zD18|EW-1XTD=J3cWr07ogO&(tsv(UU*e!tmWNUqOJDkO$;mDW+wMJR)gkda>m!~T;Pa-SqVw6@HqF3AU(q0DlJk3}a7-f6MDzI!Gy)Uo)x z&(^(%TZ2IHwPxAoyFS=w`FpdBcy#fnO>1tzVh1JjC1zFu{F2v@Vb$R#tbAn+X3)Hl z@O8f_Oc{_*rGIV-e$`%VkVxUd6l}4O;)25ISaTG4*ny@>dya)a&#LhQA_s1g`2y0u z;J{9W%OI?aRwq_;QSZxFGj&Ff_b2l4*u!^4^LSC+4K)JDq)lQ2mKOqi5iXaV`KK%B zx<4KL(aYk51ITVbHCYco)&+R>K+R>Voykrdw6}9uYFV!J+oo3tGmD-EGs0m#SftFu z50j8EEtIFn$osu~p_#b4KU$~dStZCsTa%KQ7#=xVuo3gf8DrEaov;i8l=dK2epTsj zBSYd?Xgv2Bkh3kRnn6N<`{gq_kE4h9)urFl>Qt;k&kY+n(|7Z)S)9yCx9N50t_th4 zC41<^{*gSR;OtMqwME=_}~hNvBsHJkMXcB&-u}^pe~=#c`)&mJ_5#fHJ+%?p2k?oDWodwjF|a$ zrIo77csPG`GC6n^0`+M;dMYMm`Z9l~l7^ET;n_vLs_3mBy$*RSO}o2L-51y1NkDs% zyfRvQqUBA(ylCmfn`j+|DKS)hY&!ieQw;rM5~ahFZWA4ih7^|PPlmaGnm_vCyuh5e z>llW}eIk~=FRk_<^=GL<5B}1E#c85ckt;uounP7ie&$_)3DdCbdSg85cr_|H@{TR^ zhF4+cKBnXbt~yVpUeyFIsWw@kMeIz6HAg=lj4BP9Z zhhxJSQJ8Sf@=e`uL179gLLZ$+s{uGmWy)eJstv>(Mf@Vr@&XCh-GRE^e zeYHtg^@QddYz83S&oF66z4TU+BRpcV!AjJ#8O4Q97{C`WnZ(pT=}iHlrPCd@BmS0F zl>s$I>}f)N{|xT|&tvjr-zo^unKpx*ZBj^GpLY7MqBaxPq|_-Y+5uh9gb+agZww3V z*tU9emMU!D+*J5|J0PCL%48*{*NPHmY&XoZit%nJ5{Wx5yRZs3;)wDUpIlu6%3tywpovz*C%=x|>agZ~{3tBfIG?l6_*;f*MbP=OX;CV@ zm;X!ND&jN#1a+)@ad8vq7~C3guJs5iI8hW|-Y#DyB)*Nh;>6X+{I~Hpq}+-F)Dbi> z`>h1O9a%~7GyWnHG|@X`l&s?s@o|`=(az8%=vxFsV1MWKm)x&Xe5#(NV{P&nIt+4g=eYyaaSt_I~fBU`CZe73n)YyoUFLV19y zwC(x`1Gn2gj$Kc7UD8{@5G^d9PzB=z(UVc>jk}#QUO5kq*%>BsQv!rb*h5aC9o7(mIq###Af^&?8m~tus-o(Tq{&<=+p7b{ z;NxgbNGIqqJ(Zl8;2(&UwseZ*n&L_a981i8Pk&-;`Fhx`f$EV^!A?0+sK$3k&0{*p z(B8?eFuZL=qpwmNx&LD=3^4~B+HY{zOC%b*G5Hk2hV#^g%%t7NEDUFo`Df^k`B-jCQGm! z>epAm`_|ztYYdnJeP3QJ0M%6WKx~*{&fqXmF8pl=;#)D`e)HG&=!_SS* zGnVbb8r@T)M6$2O9)ysCW|b5RM%Sgr=`0mp#;~+qh%x1As4fkLEw7QuLifNcz<6hN zff$~*e*irO-|U$1U-Qvlu&QtWV3OuT;$l! zEEZf_XL{siIY}T%5xkET+-wv)X`$YU7PYoQY3l8y*$l@bay179`HvFrOtm1-uonc^ zONo(r&R!G8i-duLew;c?Z_^N1=z~13CW#!d(cn(5tNFu63p=yjgwOu=`+}YQV~*y* z-Iz*jC9Te2jgA7H6h4Vp!Vpq~HD(TfWzvaAnmEmwHmjuUeP%zb3~D2dlimX^l;L}c zw4L#y#Ux5~&6~0 z`^sRR?bTo7pEy-!wzMYAdxLb7+XS5*e?ISy)|iNKB9Fr@Cjv+K1Hw!%Xvkm_Rm5Po8IkDU$%!2A(=Q^(7>HM&^zqg*1n z*?glW93pr=h$>_D+0(SQ2Mp7>tj6hrh!*!O*TG?$&99D~4W9XO;6R`!cpo_a-(H~M zDxeBycH(sz7F6yYumt~ncD~J9W8J>VRTOeE`4{8r?D*gZ#0FEm+!t<}y6YGqw^04- z`R*4GnA~c|Xey}>QQv|Fs(n5}*SYz|H9kaKSyuzpy-i|0^ft&A5J@kjNkM9sfTPJ_ z?yQSm-lO3Z3fgjuY!7I!#Kug%AQckruA6DGwmZD%-$PCLhoM z`+G7=d4XqXwrSGW&fe}yWJk(1m^To)qAuUmcW|-DVsYlQ8bfj5G~ZIE-T+=WFTsd8+f1w5h2PmrI3 z6^#$*|H5z&&5TvvP<4!tXQfzAbI!TizKpsoS{|b@6Oc#5nRBr!X>Epw<|~W*Kg@kq zR31yPF76QA-CcsayA#~q-5nBwTX1)m1PkuLAxMzm?(S}PKhJ((W#!y+_G7L2r~mG$ zF75iNE%_73uVJ7Nmxvg`J9$rau{37)7pZ{u8`M$?^w4k_UUT-J~}T18l=L zji^fz0tP4%VFSCBh7fF5y0g6<+#z==oRT@#A-p zU*yiJx(!URCpx6LO_QTDF&t%DzFm1uF`7_}&L5^&r)(vcT_&Hm;kWLA@XL+h=bnoA zj-c{5SNhEF6<`|&kBkxm`HB5qRK2qpL%*L~L2x$!v<@Ot4+dq6dBxdF_UjF$oz8!q zpThHZj0g61oCkToR||0!&EDeY<@B#KbLBGn@g9-1?B{pN|8;&+=;S59Ah47=rFf`3 z|J0xO|1F<~EKTvdkS|gnZ`ztp{8sla>{tuU%{v#aTEn1?3=!^w2cKufpw)?ASa8}OXcQY3 zb{dPj7I-wR`MX-bji3e4Z)GTirGsI6y2M63UF_qeIF~7?!r3It`=}9Yy`K+unkFS# zRgLO}qdO<#aX^Mh+hwkd$ZcrrLVm(W^+r-4x{J^qOd$V|z3)_)Dbi7xO@d=JhtB0$ znDeLoht7%TQ=vrada=1x+hEDXR+;^HRp6`(hl0b+6p_vrcixJZf&Ou!hJ5;Lm*^zI zT4Eztm3O}J85p!ARf}2X$i}D`^bd^}6*7n1cX+C(CU*lEas8j!oWJ z4N%*8eOi;3-bfFf@dD_^tQuWJoOX1swEj$?+sUkrD;F?!W}!dgK{F^n24_ zwe%IG()mqceGJU|h=g~qVb^aG-+rn#Ah?8}`r+(P`vdJq$V5VydMev1l?U5U)Q*5w zwE7yp)L5)@f=4i*7erJ^7{SsCEQ?%Q3?kd|%_dvNal)crk?usG9gvg@Ag2S*o6=+L z)fL@u-21Oprtgt|*|U8>s6M77wESqE?S9+bJi_Iq7WUKqd#q@_6}U-i zx_ar_bnu_{|FQfWd$@s;2J#xq>Y(^@T;FmO-6dWv)alvqteM<7*(qA<$3JxP$4HPK{ zC5{~^3fO%P_?srZ&xZM4txq(<3i^erc>XqjGg*~#=jb3- zI^b-3HT5gC^Pmr+v35jb=3`^)`^h;xE5^0Rq*CD|NOKxIT#{Mh;nC&Y7nbWuZtXPs z)$!ynS$1xfsGhJROZ*ekeSX1JpuS!?epKr&VlTezeM4EWOX?)QZZL!?4Ne7SmKf47 z5`g>!(ssr>f#eHakj!mRvJ+PNU_wCz6G}Yp%PW^-TudWh-QKFV(etp3@fCN(+*m}# z&_DQTL>C`??Cw7+M6)WSk%d?4!gMbIOIN@}O_Izbt2eiX{FP>TPN3-`xi2SfU{u0k zFX$-aQm6u1NsK$c+BDBM8eua`EkZIT1NlobYoJmG$VZn{j|5Jafi4>zx6ePP^dc$Q zu*RT1G}u>!7*}Zf_W;-P7OlJvH+hr95-z9V;-@E2JomTpJO%x@-qnRtBZHrhh|`)t zsi80>O4FB!t(q>rRW5&M4q!YFl-Gq}3(jv2t+us_^+(B&LVcRf$SI3xr(p7$)ct`u z{)PW_c}?VuL+9f=nB!dx_gPmnrhQ9Z?W?@EUcS`9Gj`gxupvts_vCSSB(?Gxn+qs& z;t(8s_)~x5e_LKBV{?T1l2?yUTV&LmIG=3alGpsX4mx&$(qfN|)g!lV@E#SyFd-kV zJIn%e*m1Vx70^GGSD7QNA#{@I@P+}}`>;z? zEKT@7#5Oq=B4mUv@?7;7QH#IGy27pf^jQ(NbHyjljuvQ#$;mY~p|j_ZFyRQ>(n&rl z7@LuV?dwo2wbJ`qVho?zjgkRf9KMOor35QGFeBcI`UI_Emy0=ss#%i99I_`Hxe;$Z|-5AUIE$wxWXJFK~=7Ndg^g@lZKIzW<$ zt2#a{fA~&B^;BNBiNyX3=xc4czikyQN&3*D>5A-%LjiqY>` zBs;)73<*6leH(4511aIDupEZw$SKKHc6z@nFAGAr#nt6gQ2e5SXQ)=fV%aa!gKI{@ zd5@XC&2qPJEUow0VF_OIBe$9;jIS*>4#N#>ejIuayUc3sxvi<@%sLsyjD(ysY06{QAvsgN zJnsLe^^=lx{jt{5vKBH+GNQd`CB zbu>gISn|4n!bNV))~EZ7s)T5G#=2Du?jVYo9}FJghib6YF>}`f^{~XeQF;Dm!plBHH`|njZX`vrm;!ke>OMybph*_0m1} z3|cNEt{+HN*H)E3UJrfFaMfII(Cp35PQ!*dYwu3bXX)9hRw@(Ti=O!Xl4iGi7$Z2D zu=r2K4VH|4RiG&bXtk#NY9QA{gUQM7qeXJQbXbvz)YPJ;(M`HmWLH8BLfiXa{d^$Q zTt4RHAV>+a5YFm#g0s2G45Y*nVkcp`Z=Y)QnKTf9`{VoD%r^%0x4fH@O3_`6Lyjw>!Hk$h&f;9P^Fyx0zYv!#1fIxOwg4s>ySvg@Nr12>Sj6=1;Dg3vHW_Dy`5GU(DBi79)_UjaT}Hgh(pcH=LcNYKcCzvOtWq`44z+(_*{UAU;1zJ?CdHCL(( z+7VCtjBXd-Y6`}j)f~p-F#e+qAEHns?u&T@MgGGjBM74x@z*&`Q6adw^8#msdBkA@ zSk`-zU~rb05RIuj*_TgCtp>8+WFSMo6t0eo+TUsKnll)aJAXEpvuoh{rwkpN4ioA! zHnI+sp&I%lh+?WAUTQP~`QCA81((_cfi=>X*5nwKXWVt|D9ILt8$6Wjite{za70FWTue2j zx*>>h=+4Xu<=_Y(S>9`lH1dx}tCPKTKhn@V@8`G_=WMzPpZmk-t}UjDZM9O;NEgGL zW~_w`cyPJFvMNlLzy|8>dPaJ1ehJ&mHGRae=tA`%{DuDJ2~04S8$ONBumL8HjWYec zGkyeSZpTEwt&X;8af7O_c4{m2i|tK}4^H4^J?tnFa`DM-KA#qS^7v?ioO*FVIce4f zAJT)qF*4;1pySFYH=jR^_X@#pQ_f@+x=BPCrrljU=`xaU-OM?>8@-D@PGQrFM7lfQ zam)1)t;x{eEba%^bI%M|VGvdI6I7KYFn;0Dl+ImEu`uniGO!j5xc#(sYk&0Xm#Q3ItMkWA zV#3G66r_ln&jahd+A9p5JIN`3IO@-~o3a%mD{7chZ>uS>TYhCqE`ga_+O|Z&>#uD3 zK`P1ibIf}7f_#^9s(Ox#XR2s{vZd0%)ajKCOcNjCh~;(24eGAGH~{VIPUYQxVJKd! zL3j#ken({jySo6RWr{nGu!K00t!jY?R7Rgy^6L~!afg|8>T7Ot_a?6Qe8~eoqDzU! z$5fswgtK^&1|1K^o|Un}K;V6O1opCcE|~-eqr6+tH6s%L!ejK4cx{AB5y-jc^Jd4# zU^xQy4G=GA;jbX+ZBgG?oc7davSMZi#0!E*NuPY|iT=hGOX;+D_Eya z97xZ>$=8K@D4dj>jb9w)$04y*(rGuts)jmG3mDVoSS3^16R_wnOo8j){0F4>Lj_LK zy^{aVoS^#35o&;y7ckixxp;^VcqrzojakCq&4)aaL1 zRLQwL&LFSeK8ao5;+0fEjR*$>r@(wWM+&AMb{6Gv5#%VN1V25yKzvIPbQnz3}DG3LoC6nlr9L)M@NwPk|4fuPGJ2len15E zx-H-6mxgDZZ*>wv`8E(g@WI}oR+apd`a8HMiDKEMM_|4ah#$!KSY&XyCbvo?g-U39 zdL7zY@~plOSq5S{zD5R_@|-e|b(h+jv1;OqGyGs&V61lUVmNx%4_#lsnIjc(=CRFC z9920gd@jzMF~c-lFr^9XcVP{Wt6+Kg}?Bap- zJOe-E2@qJLw#QsFSXd;O&4A|>A83b~7JEg~w$1lA8@6(SVcZt$UCQq`{eSm$ z@$Jrt9Y=_+Pl&{Q^v(){VCN@l&eikO5*o!AD9g9mZK;{tP?E)ILEig97lT$P8j{&P z<+p^ej}LMBD1H!Co_F|CLhkYbUb#80&ST*b1t`Bjdf^pfxqHvt%}7lBM|ha(t||Pb zk)f(ZEF!PU!d&+GBCx;rSb}uB=QJ9s*`tjHm&~_Bp#M}2^-ni^jW2MIS2-V%(FhJ1 zz+IwTo8L`630hH!HSCwZW$!<(%5G)Gli^o8v3w3Wu=B5I_b_niqRdB8F(0Qqmtc6y z-UHW%ViFI{tYjv{v8=}PAp$ZvEum(d+lv|ItlXoWuss42n6C{>WndME4zI3o_%hId zBEJQ+X9>6eTr7`>DnDo~w-2&~=56afw(DAf*$V>aUiwpj^Xe`ATZuDJZ>D#ePTI{4 z1v1(*^{4t5xV|vd|Xd_`nhk&A%#}%@pSci?Iv*MEs2Dwx4j~n4r z(h6sjKKxN~=-oFO`;6CL<0JiXlaSXZubn`H2QIT4o)A1KT(&&0!~T}3hB4&6V=q~$ zJ)>*IPQ#DXuceePE3e?Kfk14gw11`mgmB#eFUiIM|=K3D8%p5iKkg zcKX29D^PDkfaokK_ptL{TVK)gDQ+4c)hGG|$CQBBtfaTrhb`4mvb$W2bcD1l%qqqN zhfN#wwe>B!F_6I1kZEZ9F{?5=K5P8x`XoU-*OO{G=)W$AXdKAa4*l2GXV>pvKP*%K z8y<6aDu@Xh=}*^ZWNzY}=kQq=X}v15a*4zJzqUT75q#%t?OY-m%SA1_#-z`Gy1u{F zpU42b#s)#xO^#D;Y}4$*`LP1#)LVEBi;Kbm`FKBZiWu@F)H(2!zr|}DR@%+*?$r4l z&YWjPlUP{*>$C64=xI)C8l)-|9m)9_)FQDMFx0;iP##+TxD&ZhV#o^I)G2lLJ-NMl zg!Ljg@ag+oyv94e%tF2>60zyd5*Bji?FC@{Nupd7b0BTCdnaX>{)tkS=ilNrOvnRi zq?lrBh9;pxi=TPDfblG_K5#PTmMXA?n?>^4`d|e^S|-yl=zLhW1nKa@FPd5!eX(pI zHj-%Ed|4Qk6J56}4LhLye2XqLk6+8*S+9w?rv1>a=S-LWVjSSkiwCCLH5X){8aNNE z&#?GS(I?=c40`@mqE5RmtK)C+8sGY4{o`3Bk2I=&=o=}6==#_qM@z`^;xdRKMUgY@ zI{@=Rp*e-M{bG3C&R^9x%%sN;V1!0viyA=~6-|WJbnD%={I07Nz!vZ4fVoO%73<3t9a8Dp4Qw9%r7I1j(5N(-I zu3-*O8Dj+3Ko!=PaPD)X>GChS9mhFGnCU*dOV~`~2X{vyi27i-3}eJE9GVtIcAb?z49N!07;cVo~@)aATm*=v|=9B4}$$d+oNGoW5bBZ+WpX_(#xKlH1y zOMZMy9<<}ly56s2ZD10%sY6e-f3w|ONl5TedCl$Eeb=m4s?^Iqh1JX#=tYoOt!DWS zZQ`wbhThGv!*pIpTK`MBQ`!l4(O>V(jr5C@hL{6+UCPp0O-Z_naOa7*jo zNe`6adb!HA(w06YdJ+nGIMbU?@0mBU^S!fw5ionje29!XUxkxXA-0h&M^mJ_P6Eci z-ZjeF#%X>M(A_3mwBb@jz0sH8Ox^OdISTe#wxX_$_<~ zmq^*eH+P$E#&^H$^bn>{!3_Af)cm90qt-b!oS$)k0pky?pApoD&~Uh(?S9=S(OkZw zsx+v2y6bfd2)|#Xl&HOTkNnXoTcFa%^K%rz#wk4C+V4Po$9VDl2jSO;(5_9hLF&fe ze4V}|&!tyOF(cbp=iGtQ=|Fsk`tN!#++vezoKQJ`(#c)fx9}a!gI*FuBNtp~+RU$- zNd5BJk91GM)_gtbX}H9y>l)*3+@RiN$yB|7Y) zy$;n*Tt;}7@;(**t-UW1FiK$5>c~i(4peHJ;@IIw!lm}fa#*H3VTJ0|wI%@8H}NF1 zH@3QTc6-tY7T{UQPy_3mY*JtMabbB#gEypF!{}KXy3Iuqb^8PEp&*$-r;-YlF&&J| zFuq15k?E+*qSAnr0rA?zp6q1LDUwU=3dV34hvqq{@H2du_=Hb%l z{Va83FoKEjP`Urg*T1#DGk>i(`$sP)RCbIw5X#Cl!JDS!?{O}PED$|XaF2;%0{idS zp{toX3@;(LM#f7~ABj?gMY7vuw@qc^#+FkoDB-tC=~t`qQ0Wwbw8bPe|jrR zBlN3jP{$%rA@MOIjp9y$}1HuLSqU_WR{r67fsmN6e@y)Nh`cR>llEl6q%% zgKbeX9Th367p(1ijsoKbd_l+z^>GIz=PQxO{Q-4XD--E40$nv+&CfU?!*^S8nZKnb zBB_)ZCtXHHv}ZvJD4v`NWl=#c110IG(7G*nF{l@HdFi|!e@Nu_$tAy2zWqk$n$d-7 zw*b^v*4?%-kY-g*y_XBFKB+MXq3c>yd#LO8)R6vNXT-&Af2yyrwlvYR24}^`tQ&`d z?_BB+^f8P0qMoi@YEYRX6Y0Eps_j^VdWBXgaKGwP5Y8c8f0N_wcgE7Zt2kASg^P1O z$4Fb2rn#}gOl4q*HY@q1X!rHEb0DLICceg99T?|;)$T5}(l4^QRp)(?v3xsl5LRPU zkh;7HKz^du(M4Hf?PB$ml210>cq8`=wrF4fP}Ar;vy4H2hN}N-f9(G= zKb@AOS_U$;iIoN0DiU`s)!*W0^!KC-_NiddS6A$J-`0&?hKLrTIv{8!U(Ua}B0=j@ z|JV450a=TwT56Hl;M56ATtU$Nr~F)+m_$ju+q2c|pYSoGOl<$J^V1)Oli2XZt`H6V_-7$GM#?wrTZnC_A zgc@BW-bU1UJ0hy?_j3DzFEF5G8_RXJ+-1fN_|bv;z4!=!Tkn7E<>#^19~SSb9Jye7 zGAsO6ybSb@->UcLa0J7?z4B}As;+SVrmYzWj0b`B!}F9*W#UN0JP_j4+^dI#T4A{R@lfbo@rE}*X*03lwRO0<*_J?9r z32nndiYSL*JpJ5^pLSD%+IY$S!av~q>dBzU7>oV1TacB@OluPhd;P%9P_x(ZHl~_6 z$v{&ni)rwif%S!E0>?)F!QpgS|K!R1LF0%mlsF{Zx^~t|jKS``$_<#oo*iyyXdWr0 zRPwyotjhNPw7$?ZP*1_B%eZ+6XI%ZhRpL@!SidDBbQj?!?2tReb)n|1d;swLTAJ1@ zI?v1dwR~%DmQ;#I{+YZA)N)d=D%*EL^<-XMxtmu#XuA?w21Y00H9sRu35g7W{xQk~ zOim@Or%f0e1=evSy;o9#eEx*iI^tVzfr0pWo{53p{UPF2{1@ zUlyc0kbbtPV3u+U(a9rV`LyLbbB)wJPbYlFg7yAqV~ff~VW27}qM*Lhx%+a}$VU)# zM^{N%vRM1BqJSG+x$8e+t=+3DL z$47qAPIqi2uER&pR8#qCh&_xXG1Bs@L;J0+p6}Mun6_`N7x?@Fk=R~dcd|JUimDUBBvPsZ69Sh=hFI+p{f?6!6g zPiZqBC*OFF!%Lkx3r+a9_=orBNEfmJV_L7--w#%fP(}VdL>g12KqCAYO?)d_*+|ZqG2rke5y&Jm9PAefo)5H1Q{kb}!fm%)sbQ71O##eTBH*TjS7q!6B>P z@=xWpJeezpA8RLl`kf6iLr6F4tn-#XZ940xsA6hN88Sw)xmj_|{Ybo>ww0^o2x{qZpz-uQZ}(=j&`7fgb@G!Xx(zqJ$* zS*NBc#yxU7cyyV6@!4$nytjc{ZU*fUSnxRD-t_Xgp(`#g(TyP) z4vL6Yd6D)&c{YRzKt4~zgsG=!BXKNY4CDx1?p!uMXRg?p5-pN$$D&CbX_ewcT@L+S z`jH?nLSJwu)Dv3IosA8PM#2%|M;y;&YztasH@yCW=v{7=3*eTn1 zatMCSb1|`MR82QhF;9%Tsn||>k{jd5w-IqHuCXVbOkG*FfUH5hUea5wPECWrU{M6Hl)7m>IsAXE~Hp{q;u)i^ySE=8jlKSzh3EM zP9j&=&Z%dD@;J@2OBoowm5}-~I&;5%u1%rUT>e}81;p=(%othtfg3gyc%Do}ch@cf z@q5*Qq$#UIE11DsMob%bE_8p2-_r?hV}5)R&c^YAhVU;1gPD+TJb#_Uc~7J{-eO`4 zK>)<>HT=SkkK&V<)a^{t#l^6LW@T5xtY09tLJ=nZlvSl;sl-enUhpwLJin0ev0~>| z=ui7$WT$C}WyxDJH2$&#{}j_Vem#7&MawjpFFd5L@=0Z38i?Nmp11rdevcWwk=tUk zgnzvTgL2@p%GC80xv%zhMg!H+G=-%Fh8LE|}RI$c~8p;9YQ zfIsfn!cUfWH=M3UmOokOR2%!uqv+K)4t38j0eHtNQI0u+6#W>WJl^WukNNWrzF*urz>8F(RtDD3z+vq&Ed8?W zU;*bm-i9PCGNq{e9R1=YDzR$-4vF1w_Pc``9|ra=!CJM&0FJ-XO&|*VcX}m676*t` zIgC18G$-=wsHI8+nsiSQ0do7nzxu8ENzrwx;l{`m$~UUfFdzQw{4UkgG{dud#BH;2 zbtCAPe;;uE2wwR)^C!b5o@Oj7dLLk&eM6ErDFbTAot2vgl+N}A2Qj-+Dfjs(bO=V6 zQhq%N0N+guf zAkK#ZaKQ2E5^HL&9Jjvl?o*IafN(&Xw^&DN8?bTPDwm4V%yVB`xh@9M6XMGEURq^o zF`Kv-ES8?R#(Fdt)m6>(K-(euB1@i23?{wO7fD z+~%}inHltAs6+o$l`IZ_bw?N7Tj$Ya+QD3w$V@ zyclVwqy<{*h#-mf?&pE)BB6GVIX4zM*kSTu4}!Ite6}G6YOz{a;v8nd3E=-vfsc`e zsBH$Y%aJ}Fu@^Q1pXYket(cHiPd_TXp7S2a;sKu*SbFh(Skj8DJB{ZNXgBCjR(hu; zDr%Rn%*Rmi5$_w#~by zgARusni-x09N(SKMpVAcx^p$h541x=t4`rWF#n?bqG3YvLoJKG@H+7KK-%W8eN~2B z9Yi# z#F?S3E(bltTvh>}zeS51l&oxI=U~A;?h+p4grtrxuUOrN9CG2!FriMom~U#!z+sA= z3#2KKjC-FUz0Lv0drQ8NTg@p@wSQO{{&b$D?dOksOTK~Qqu#wNR8Tnd#z)*8Ig-CK z-d03Wx3&E7n7%cugKEakHz0nlP(QG=d$I{09|Ccu-UC+v(cVhOG_E;)|Smw)!UvJI(PSh7&qbk3v`l^y+;G% zQ9+{gg1pV4&p9ivoxB#&Nqej@d5EyPl5tlswgpX&1+8d4CbtwfRS$4}Ol#~0VY z`MgC_c9BSsVscI_+OK!tr=dy6baQ5A4j1}Ti8kZ*?8tbu>)ny} zQx6oZW|l{n`0oZu1&=m|4+bZ;v2q zHR6!pzjP_uX>C=%*n$PCu8qA{7*o&MR6A~@$#5V;vvQpbip7GczA69kRS1@e{t6aD z*U(%_@?wgeC<*xgN66`%1WVzO;@)I)cHv5I+IwLBzNWy%RvWB088odoaXAu;(wfx7 z!R-sRol$_0|2@d-C-a#C?!L5CBwS-%LGI|0iHyvexR@SSDy!(j4fXY&GH2B}{M<^h z20?yV*$?HC*1-9R>0^rJLK@$V&K0ht?HWb?X}-Nar<_{;XlNxRq3KB1VN4)hfs{;d zzl%k4QC7QKCAXg$uF>3IUpEI`mB~j-?^@<>^<`{Ffx=7!6kq=rqA|o$m^b+il%F^z zYG$xJMkT9vb1ftEc+gphjzpN0h!#ILYiE+eqZI$vK3-Ee8jO&=;Gq-u$&M6rh5^6# zTXbo3q0YlGqCxa*=7+qq76+lIr#bB}L>`V#DV!}^Cs{l4w@%U83(%!HnJaE+S^*w2 zT3m;8gll9%*5gP^nX@3a1qd(u3NK6zyymsXhg!h@!v^OcX6hH<|KP((IAVF*KvF*P zbR`Q%mXFOkQO@7|Ww ztakN?>`*wh7bImbwF>IK?w;P`LZ??Dx;jn5vzO_2J$ zh^7p*|H9(~#{<&Tr1d}Wf{V2&INl-5?87*`+Z>Oun23@XUg$#g#C^r*Qx&PF5c{zW z`_y^wAN|iwq3rdB93$~za? zNOY(uC`E$?5xelC?iD#D_atxlaX$HzTwE)kkit=t#C2;6E_5KZfCI;SYd?-^%zXQ% zG&qamv(q>0>3Q<6_y2G|`Zsl=2rjfJEyWri<;Z#8JSyLzPajH~3NAjc*$IJP0mpx9 zKTd=(We)U{_1P_Q^Ox5nPoh;lM4zZ*;Pa)DI2reD!AdvPPx#Cx8=!ydPbN#j z9CsE!auL=mIOVzUTq;w7r*4)JrPoGQ3h)X$AnoKCqG+g3ZNej0X&nm+?XbjZQANLg zHF*i_!z#@F{RKEbAe~2p(ar9?|B)l3nqD;N!U*^rNRJjwKr5&Yhrp5YfHhHdf ztDZ)#^%K5m`$j6Aw|mVb0qVr}web6;TjleZD}-a80&u*y{N0dlztxk%!PQiecUStp zUvB=^--V0$=O%Wp{#G83z4{i|gh6skgc;%x?Fhdvt#wfH3lx_ghFCV5eL?k4p`rB0 zdsOoiI(Z!W8fzR|0%-geU^2k@18G0#Pr;4B?Bp!-orqtXj|za#f%Hq6HW)R&WBZSQwRg9A+hbBp$lahLm>8V4gBMqp|~Kf)-Iu&LA_ye~sVZs)Ge^ufKn) z7UG=ASWz>mG2=mk9IX%`Rd&|&W8h~0slN;SK7Z@)>LE#``0m1ar)o#(@R-%zJpRx% zT-@lPf-5UGyxkkA{lC^f3^}|-{lA(Ku4|V-)cHd_7A7a4D`uo>47L5A^3pNC{H;I! zKkfgZ*J!Bp^$0{cGY>Z_ey=C|dA{wbceG*h7%LpMC zXf?J>r-1LjMFaCIEK`n6)J^u{w;2s9Xezzf;`R)63@-UyL11y59u}Tx!13OS53Smu zjHMel6Pa=GN$hGR_y0CNTx8}GC-1-`Z$cK*3j5Sn+Yjox`bC%vt(FarWKtX26PVwn zQp_c?`g&<{6-R(DlEexPoPVu*wOqiq{}AsgKd;}RiThX$H|mwnj5@cdT2a95HZJh@ zKpG5k*s1OWM$W+(p8{Z`gQTpYIFV50m~~9Wv`! z3taF2wm%LU8t!c5?QJ6W6cT%{p}mREjOxFj<3DOi3%&58cC+jM`g@YemjCGC*J0ic z=^9nkyy3KUX~nWOM%BTS=3cNkRZ9G?`9BIo?xL~Ca6Ws~uFwZ;S{`5_o%x_CVqAyM z%t&XDXb%6^_M7H7E<&5Snyus&8RxW z+f&l8RFI8t`LBIXkXJGzNgh7^xu^=4&u!g`HmjPJu^J=s!=#@Ch*OtdWZlCVO30s1 zf^6LQYIS(zzItXCArZJuoHZ99X5?*UIaaO`{``%5fVuGUFy>T}mKUo2QiA%AgwdqLsw~tc%9Ki8-p(FVby|T2&@ZV2q>!C5>2qZ%4lnG6U>6y zO#E4CbvB{EMm~Kv<-rX~OiGXhx7Ve;$$A+x&U61J{v2peMXLAd3>DkxLOXud_C*@x zKs3nLghkk$MZ`R(U+RY%%-|dx^p+ual$#Uya#JUJe-j{aruYfr0x#!~PjB8(248}8 z(|57Qj)IFv8E2)zW4g0lk1~Y4k-T#>L=@D@{w0N)gRB)5m2Lv#>YswAXyEq)(!lt) z?Dn+)zm8yoR^(k*u8S>7-qi;b9R@0Hk9RB$CArS1=ODKDHiH{6x8DomWX4w(y{JF1 zm_-EUhF7WLd_=flWM9m8aaG6`@zt3a$lnKj=CGy`{x+6FwHUq{X%B0fIf-I3wWA+7 zEFgiw*7V!=&G-&DUts<}@6}vVuVZ1dLs7#}%`_J6=Jt4dym>`LI==$W4|skCuc+f2Ny+)KnlmoJFM$>}T(U9B zOE6Q2oBbwYmO#k|OR+Q_%)X(Uutq~ZoDz%6(Agd_* z&{A=%&yv{kfea^SU*B-RDVv3O!c(0WbS)d0_lIdN_3ss6(f-;MIPbf6yF{b8SY=>Y zQ38H1ApKUpW8+;YYPJU|C)N-XRG5I*rU%hA)hojm3<2oXukBL$RkN>pu{f1-ZqNGp zG-puFex}5P8LikQL9eT*@)&gB+583Zzrn}t)=*(OkJQ1ESrUD48*lX9SIaxp<&HxI zEk1WG(Rb>#vcPK#VWZ-C<^ksiq=Dx>xcJ$I`voSXx6s>qQ%cuXjK8X}Ai4r?fLU5%MXQE4NY5v~q!K0q3%-!=P_1~F7nXSKulaVe-kbRdPd)$g=p1bWsJ z7AGK<26?NqvN|W>>xW8l=6=}oBlh@AA*y_t-ia>K`Bt6@4H2b%G6YMFDO(#FK1_U*Weu`&p6mXL;Puei{7wFAds=;SKZl7A17Wl z+xFQvPkXLQqANVj+f}v_P+))RpALFBJEVhHKDob4q&7fl> zbQ7ZKXaiI+JFvB|Wi2Sr`cl|-{F3K>Jd%wU9qSp2`K>UpieJ)v{&Ajeg-W#LdUF~e zc7l>c{yrLnqQndNDlRxg=wpo!(Qb6-!?>NCD8f4YXDH=_>z9;eY(0M-SY=I!;8r3c zkGzH&;So!ZNvIjmPW>O8FJEqGku)YF96`e;i8?+jICJrD%h08n97nC>>lRJ7sO0)| zeus>6vQ`IGT>nsuolnn^o$^k#^bp8DAl(r{A=?c3II<}TUt#Xo{C+WvY$$|c1wN9v zXWBM9z%t{gc`hpC#yn)64PFrW)(6)7u)5K8QQYKYo#cwme?TCOaji{JF|IB%ii0cUdH3L3-R4`DfU zBzm4x?@fr8o(LTI-^1iO+%uoortfo6xD-1I58(+GORDJORPK{)P(qLQ zxb&zrH$#SG*ls~%Zv*|W#IHj=#XYXC%~{^xf^$&SA&n^;OIkFaBOvzz9-i^G>~Up+ zVNWPfz|9^Otd>~*eLe*^U&0`SA!y)Y9*j|j;L%G}V!oy~dA}!+>Tt|rEpL1s#zBR+ zty{F+6w`0UkxJsgJO%7ujjgcj!cvZcEYsUZr=625ggZ6K1e0~L5i0$Piptj=C+{TG zCL+31&P?-)Rmb|Zx+`QPm_zT~Tv|x9nv$q&MXJw z6G~hdbe)6xd8!|~b-uCa1ahk5c}X9*En&+~sFatSaQlX%@Dv8-ep=3`KwoK^Dy=lv zHu_V2tEe*%yEE7M`aXn+Uon~4*a_5o6N5h5Jk#tXNc6Hf2H4Nq?+%^f>^AdhRI=dg zH~I6{JjVly4E1^Jt5dmp@3PaYj<2iNalVE7wVo4o@2ns_(=)zzWSJY5{$uD2ettVet_{P~PG+JaRljZ1(YlkWrr z7noS>a6JhBC23Dsa_ue=w8sKk7R9>2p0=k3roOh)KYh?%+&pE+(-&$Ubv!V44P-L5 zpuNbAAztOrmu$c0x>3et?xHqGxH(Q+Z?DeeQpfH^n<|lce;HK{2Fe?d2KI|zIKUpR z1XGO~E%r3pPYFHwugM=Rtpr1h-&VMba=Y(@2cx(ICY|U0Q0 zFArzJ-#Di7eurbJ8Gy=}H-WoN&k-b&@34Ks%wX2x)Je)OIT@aO0|?NaQW)eqcmR!3o=YB*1=Qf#c7ui{L~*@I5`Q~O7e zsd4N_c?CcfdpT~RJA?*$KNtir-`}7S}4%m;+o0Bgr|547>sQNlb zfcO9zU#14qVR1`5v*c=9T$qR2W#{(D_^5>mYjuvQ&Yj1QN>k)^@!5RGCgmq&+{Y*V z4fA4FGuc4b*DHd)kQUHQRT$rI0+_seRX!NtmFMvut_}PGABZ3a!E+@ed$4LR297OW z%b%@}%A4X=H`MAl(O?5Nm`A8Nd@q9~>M%`)R8x8+PJ%}@#&t{ayO2J>>EleK@*hjj zS8194b4>d~z+8)fX&WA)XXgKL_f}DHF2UL`?jg9ly9IZ5cXxM!ySqCC_uv|WyAxc4 zySqF8zMgZz$~tSG?C-yZ0K z;f+PipqLfG>E{Ewr3XoA`%V2`^ul`h7*2RD-b;KUgnJ3 z1|?<>dw3l9TIIra%vkjlLG?rYoc7AM5?h%S;M1D&!j?^_$N{!ZcJA)&*H}lVoz#WZ za_P?W%W5{9_(>05c|8N@wDkAID2LDP%ynmtw6!m=0!(-UA!)^LW zTj3GMb+{>lMqJ;11XOzO%7HfYus_d6r(KYmlX6<8ayuvp!(4iyV8ICX()I4Q*O?cc zq$j#$xJx|N4|)7M#OIy%U>AvOEtp?_y1x`P!{)9!5?&E*V%O;C)?_uOtmR@)23~-s z?DCb=qxu$}I%JjKu>-@ZEtDf_yB41%4FW(GQaRBS z9%Nng74uMK3xn{xn5w{PI{ooK9~?WKNq@Cu?Ur?6-pW+ehxb6na=w-45FDe#8|m%S zz34&VF}KulKxY)TLft<$D@99B_O{asMUB2sfNbMs+tvBCR*P+xr=+;qRNlr|a@2u- zV-VtqPci4I#YS5jf(drP_*CBKZWP{nIk(yzO=oLo85h^{liK_e(-7yPjP=~0m6A2+ zIUG$!s(H*g$A~Zh5T8Dh&7#`R)P+a+pDVsnRQr48{@3_b9bb!jAU+yl)NN&%`{V%* zgyAaHXR>Fh#js23>s7QhKz^kZfJze)mWMclWCTyIQKSL(h$T3$WMn>M%BT~nZH;`I z!&=NEGZ7zv8lV?Aqpa}J_=q?sC~Z@B&*L>-*ND)s?)nbDH43rp|JH$Kfodo}AZ$=t zh9FLOHXP|>Jm4{eW&y0H@f(8vMTF?0eW7}PqvV^8TFu0H^c*2?r22TAB~J0rB9x%F z(R8=VJ0BQtCOs)OY*z=~ElE!pn0bj^H56db5&UwC=n?KOi&^$NK9NFOQflvX%*SHk zl&R8+pz(7vIT99qUNJC>=syYe_n?V;<(+)3-B||*`ZB*oVJ-&AwhV^WR$?XpzL-Xa zJ+Q63*yi{iX&p6zv38j7>5J0Ij5eH1hhWMpRazKSOdULt8iYp8ms2NU*8F)51JI*1 zO@8FeYorJ2SRzSGDj9Kd4~dV)%h$`LBM1JmeMw6RiK;n7Y+a{Jk$;jS+Q}|X#lUqC z`M>558)M_E&+s{x?m6N-?ydv6i>8ASY|z%CZos*$j6*Ib8kWKWuojHy6VXiMkVe2E zr0*BCx-`k1-1W-vnG}H>#=mM4E^&%wkhD#9XOTD3{i#2s{GQ9iD2}M5ihRkjoV5Zi*N3{Uj$v(m*zCn9+JDrm(ew z;*|ZYG6Pz!uTMCs9FWsLanCPvh|I;pf(y!Q7NHlK>@D{t&I{*}Ap#dQok0FRUQJtu zIzJSVfnE94)zAI>JXY1Lgu|G}Ezb#j^6zzE(bQc*9bq05wko?K#L;dtAAes5FccJU zT~{)n&o1MBr`vAchF~;@O$IqaHhfH9C?qw(!AO*)nWxi%TKd!Yf_c68=nq2nhUr`( z;Yui#?h&XSml}@c?ZZoKV64Bzo^{r^)C}c$iHww>A_QNS#Ks>+EwG`roviV6^JrDp6Fe@xiQPKZ}d`6&uuysDM85v;#~keXJ;-UGQs zj;hd}n_OMrNiMFawh&_6){UW_L91Brk)0??E$)q;PKB}jb0XhvCs+=Ik7FKOJazaC!ZrhfcIF8h?j9^Zc6lsi6haNc-%os+XtYTt%mrIwB~Nw-HXkpR$LY#7*5Dvj$J# z@jFE%>8V%$W^M|WfP$b2gcp&b=j-=Q5c{qBF^$A^Sul~>hCuJ{H-y9Ps%pgSo6Zww zDpXYprB2TGjRT|Nqx+cPvdIA}BNue5OMdY>qIn$=C@%aolEUhvP+y-;`uvfgve@3h=1(b=6@9@(9@V)XP0@>TXkA+;3Lnirik<<&I+ z#)tb=GiMT=#a-YHWo@2r<>+9rjtb?5iadgoNLx?*AUJUNdJ}sP?rnagv^-kZJ?EyE zD{lqrc^0#FZULQE$Qs0y4X_@SAh#A-0qvj7|uurDii%FA87Hy zcdEP75e0VNy&D`;1+9b@z5Gg9(Re_k9%^|3uJuv8r8-sv2iFYE<_cBFo|i>+Zg9Ie zb%on(z6+G?VYA?~eQr7~=UEl_V-YdiOp5u+V@y$7#U!SvZl|k^<*Jo{UsXwA%R;2Ez?jH&)_hSI)LPB|N?O zHZZX@5Uvs)i_x(Rv^U$MEHKODeWa!T2FIbbNkdmIg?4QKrK~G`|2+9E|59z^R$kk3 zECVazBmXwhq-n#`*K6Cs>cbBkZ9y{#>a?deEeuU^n7B{FS$j$+G*w_E?AuLAnKoTrhjWeUFl|$0ZrUt zk+#l4ReKKdLWN1>|4~l>aJ=lJeQ`YD)R0>C;DGb3h&Lap8o?iVzA`FN}Bt>IdG9xueXVc%DS+(jw zcYx@QBMRgpt&y)yWAMjNkrGlv9rY#$wlI1PLFKn|{}hkRBX~_dsU>_;%8Zc4Q98u^ zudO#eE`;nQ?2!2*(w0CCx)$mKib7M$ML&L0MFv-oD-EVT*_H@27Ghxi->AcP@Do?Xh=_bZbc&EIufbl2K@6R#cvuP#kC5_o%?Z2`A|IMEE*ZQ5FX~OX2 zVX=6UebER$vZqDdh|I4tO^L`*n`@IsD+nCHz-U^| z;qTJtgZ9I-hS7|i0s$&5LW1+CxPoq35Nz&u!!L-(eWxOEQO%Ba7vW~N3{Q4GH2RTMGRFj&n2JcZ zJp*(}15>F#1 z?rucb>DJ%A$S0kxs|^D&xnz*HZA=VsSDLkE@<}G^AT~g5`LOipGVI-E4T}^hO?TMg zvk0G#|A1Z-{pQy{8>!i>2y+?+lgtN+$ev~kpN>>?LfQGJ=PfMW2ohy}FEbYuS$ayR z=CA)XKG1+~pFq+2js7O`dIM_p|}^Z*Xlc2!{8o=@2!lu+eh&wTm2y>ys(*1BIRS= zvwjjV1aMl4=3O_A;Yq%Ts5qe1`PUdwB_{;-sh_h0PFH$E0QV=yw7awInu;X##XIH- zjMxZk%-jX4Tp^7Gp;~?e91lSG zcwRS1en472c1ZO=x>xI~N|H_AKu012>-_7;G_+J9amHuR-=s933UPDhReTwk0N-@YCLx zk26tbHUbwbc!?ypm$SLx55GXP1Lmthk3t*OZV24?Z+j9hjgYt%z8I#s1Ie@$WOd!x zxisAHPYd#<*wvRthx2|HJjFA91tE<#9AXXmjyLfexD=lOa6ACzim|q@7L~>QSIz1f zg70MHuhKaQg!M%Ol8Qm!pr3|QQ;MIALRd(89I(S~u+1Y90Q<3H5Ad1QiDt{{@4TDr z>G!3n88Zz!Lu>TWKU$@9?tT%)OwYo&FEBJf>5sBQdMXPS0T+52H7A%g*V77%ogyFW z<5ZJYd(GIg8iH;((G`}B5POL5jbvzLvzJ_E5cAR4s+n=D?FA|c&6;s_-LtJYz`G&`_0YiULmJqSKK7RdUG2jTgv*l zHVsCMe0985_%)@ir}xK~ldt?<58)gZNN3V(z`4kk?ZFD6uf?^^)eCg>B9iH&zG5o1 z{&Y{-iOSed2Nf4Q?r9bLnNyE;Dx5<=%MY#cRjsIIQH&ZCOBzFFZF%7CPv-bxf6BLo z+DJ8?Z_F5uwW{-jLZdzpl8N?`dd5DIbzu}m+CP|m6fXhYxp!kgI2Y{W#mVfrY7L%% zIO@l46q|Sg&VR~jKdGYHMB<<^5&Yb!jIV4a(_<$W zamXN5ubU*@?7j!tWE7fArVLTPp>BRYww5H%oubsM?wOx8q&)TcKn!{QGvy2GPk#3MrSb~DM%m9yk^UqcQ|Fp6vqI^O#gi||vYh6EnUE&q zlNhw|V0WS>-DO$X&&FgxQN<3Z3l=Bzmer(BlN>|^wzZH7JZZ?Yvq*@*D7_KuP%jb) z@BJr?!%^zKNR3@PR|jvdvAMdF-WKMtbx76??=r+3mv6m7kKgT|*A3|E6NjhCK!)ua zjq3uw)wC(rcv=3bzXu6eT)LxM?FyenPv7p0!wZ$wozH^ha2WHAeydI3Apa=85J4r4 z7P$S0v82kPp+FnDC}v0zKi=5KUz4XM9Yvc}@S>Z`mL^O&v9xx?WIW!1MCT!&LS@67 zwUHaBBWY_I8%Xv3>}Rov7kk12QC~Tmd2j6$;*Q_cH9ZrXK>aK^)tJ#-r0VhgaOEGx|MQn(*Ij*S&VcymRfpi^dIi8+nNH$6 zg{bo;fQeZ%*nB7@m{HxjL?-GT9lJ?nKZDJea>gM+Yx=hv(&X4-1XV%?(o=YqzaovHAtFV5zk+-47qbhl#Xhn9^IfQ-*+ zWsz~|V?=#D1T&>f4!UyBoN*Nm8OX-I>Yj3jHLLVF@xswsk)R@tu7OAM9pd0I#Qey9 zdebM$REvnGRCH+M1WB3E9OW? z{~!0wKN_!ew-$7dJm#DkwE)=zNtvMk8Xm3g5mOXZ>bPH5eBnW6&D4b)-5j&;mZs3y z`RPE-|7)Ikgd9P=k<QY}5?j+}*(W#y)L7`jm-XFCA?wl{sYH67o3n?yR0e>p}57_Ti9ivYKNrzUgJ zk|W}L>1xl)lo6Hge{n>?AU|tZnGU6kPuDG77s-UrZI)@mm$duHegN}ttSOshEpJPe zsvm}Aq*2}vFEpe}gqSp7Z3ogGNkgp?Kicn?xYYI$M2RU63k&v(7EzZb zy$ra>x_t>cKXHqmi$W4c*?TKR4iXB4n(QCec#gl|zKcB1qj5BVc#j%&qz6K1RoHP7 z<%{`(v`Qj&$0E0f!ZcKUXp_wDphhO~bbkxsv1JzwNf&tKE0&UaQYiK8<}s40tH|@zMB% zWzfUa4R*i&U^1M(&jRlQGK+J5iU!?s+789zeSO^i+jtZJQ3=QRI);}0RDZb5Grh$1 zzNvwBj^Gv_$YkZg9*Y4K7xr*^EUD$BSO!<=NQ*vGr62x1suY5Bu4p9`L%P?njv!Zg zAIYR!+F1C$9)p&iE0rHH&!8@Lh7axzdn^zzw*N9)S(1q8;_PRhBho{&%=LUb2LpG=yGTCy*Tu7!C2oO@K{Li;V@eg8;PoL$BPy^_fc63?ckdh2iqQ%`K{}#PE*vvQ zcN>~1kF(V|n|vdN^5zNl1bj$rBiUOi6cW1Ig{7NdD2Gz_NAc=0v~%)s&(nrWo{@90`z4WbU_1nu z{Y#L`QKTvFfO4Kr0?xt3xUgB@8?0Chvuqwqp8(=Yxk=uO4zzwe0Kr)t{6ZvlpEv$; z=iQmFfyvZha(D=donFx~FypQ*Utq2~@AH?iQ!-R#b(hAD~{S^uKTITIapz*sr!-fG} zjKq{_9R9%_G#cu$kR$!3=Ph1m<`>zKB^nMrMOt%Mt;HP8N<}ZvTDv_R=@@S%Ef+w4 zj@d!+UBtqcn9i6AE%E4lw^} z=UF3d%Cv&L58Y>5PtF`+xp{|J<^eOx6Nblo6jlYj32r?h@L%p zIE!V_25zt?&^x?9cnza?NA1#BF@W?jDfyjx1Y8BY_I@Hp@#xz6rAl514;jxgaS7%d zL<|d2x55voKcI|!UplnQ_hy5!20hT7LuEGEj;S|EP>p)Nf8-;#vU-#6DZ-u9iM$B@ zWT3vqoF1mdo4&eYl|7KihD7u-$rM7GI`zb)FKkX*h*#o4+7cUeoILScMjJ>65+O@V z0kyEyjd}VM`{aV6sg#r%E-ch%PD=mV)&8E1V`(;e-^-0Y^xg?0CH;x8%x=89!w_6n zRpGZ3tLh17P=e-{%XcEKvUXP5$*a~u%3{MH`D9uJhE@Z zrD*O?rV($KLKDlFy<7X2%gug#F7Se9Tuxx^lThpd^p1$}B_MaUDvWA>>W>&aQeYh7 z=enX05|}CUI1>N%`Wdr}%Q8kN3_82--lV^6z~>Y} zxTz!DauvkEfPkPo3BytQ-Q>=fDgU2ayi*;SN_f#*IqRL@NE_6f9gNuJ5#;?-nB^Sb zZ_u?LPM9t%l$>b~e$b;6FwBT7;te6t&?`$grJ$5k1;ou z1M5IUp%pXCFh6T?W3dS6@Cgy1{(v&UX(=rk{fqB$*07o>Ph*(Nc-VK-@$aT`Z0Rl8 zE1yvRul-LTZ5KJ0U;aQK=$i|bIE5nZ!ETSmd`W?PQ2WtWP10qMew0s5aYUN`I0{SGvIkd3e`-UsOJ$_fto%DYQHKA4R)9FA<{fW?-ZjL zlAK=`nmh{M8y!%6Wgm3DlGdysrvS~n%{JN8TwEJ0q#$M`;Qf9I=S<*VS}#NXput8VS&rG1F|{oI1R)+plbA~T0JaB=U_21}#T?kjIh%!3JJ$TEn-hpIpuX-Uwi5{#y8#8Zp@`wWm1wp@Ll&8J& zB;QnWjvhM+2M>XC(%eo!=ZrrLFVVF0hb82b?N{tmA?g!;Cj?*OFw1+qlaQsq@&1CK zeat+_RcDg)=;{V4P}7co#MvL9Zx?XEFw81_X0vY1V508iU(zwuo19cKLIM60G_s^6 zPQ)$(+vHE<$LGJvBGOE+>C03~H{C|RzMoU~XBmJ^7m(NlTkRdq{EzdQe;Z#wJyw94 zi?9-INy(b_@?jDI>w6%t-hI(bEVrUHQ||dvr2`I#FZ|n9KkbEyONT583V#q(&7I+% zUrBP+yymn2IJX>v1OmhpKp8L}TF77Ys24O&u09(*NN6FQ&TulrsMl1hB3s1krt&k@ z5nwzNb-q{fSM)SUIN}DM^!k8&$pXJJ5=QZR#16u0Kp^P(iz;$kzL3Kxxjdr#qR)vzu7+jm$M$i79-kgt=T* zs>kp-?hRz&{ltv!f(+aAED;O=93oP@j?LF2cT@tT)Aipdfn+hNkI{U#F!%% zY`1CF$c%ne0?BF>g$jD$f2E|}VV2)HB9a`c{}yi!erlK1k{57RZ|@~J9eu(FOvJi6wC zEQSVAM6e9)|J(oj)8CgxY~yd=&Wfvz+>4tBieXWmbdwXSN?cffp}rusRwnt==lyTL zpL8Z9<@XL{i3@_3$@_vw9Qbs9oqxX`WhL^>5gAH@39$b8|Mver`h6WYxgZagXeGMu z9pxf&>L8=vr)2D?G4!^Fx9?4Nq6L8U&OdtI|Mv4t%kkMkgrr0jhP+Bt-=$(+xXYb_ z@kzBoq?79#fjZ>AEr!okdEH-;B1BcZsk{Gm`wseT)%=MdKtxQqJ@cM418w^z!%_s= z1UQhj#$P#lw&^zv9Z5==FR4pM5zJr8t#V5TA5Q#qB&~7 zdgcH2`}FT7Q)H!MooFWyFTW|ay6vsFC0t~m-xQ4V2_O+OssYy1{JdMV`z*@fkPEfBXLdpAX2F)`$npAwtgu ziN4wB#^6C^{%yW=i(82kCVQ%%pnV?Wva<&LxA{`@Gd8_LA-o%jWV%az8q%E^@)|hSoZT|uId_cam zZ)T;Ls`$gBHS_1dQ;_u3-{wpBi3L>jnP>M0EzS%Z^WSy7 z@gkP%{mFE6bG{UyIQ(tC1mbNpt*T+8Yel;#&;N7O{%`Xo$3h z)O#ip}k_KPMu-7Tkbo)7VZTaU3u)och1cA)@ zNqJiaQ6hJZMg3t$|2ALJ)sAjrmH=asD?5K1QX_`@ukocK2P9g`HY47Ar!C9aVdI{E z+kXH)ACND-J|qb{7fCu{*VC^Li$j6^ZN5Y^3fE|^}NYdrK=!As;+U>)<9>fh!|p=MnCG0k54XXC#qcq3u5 z{x)A~;{{&lZpHbDE3;C{=BzC9xB1dsi9TCo+yYhpyy~Re&uqm18eh6D&hoG$WktS7 ziO3Vev!VL8{RiOl0r?WHje<-|O+Ti+3)!K4YW|P^Yre!Tp%jj3m{_Zi5rzhHhJmG6 zwsAF}vakZTuT@QPvM~&JpANA9z~Vi5KcRM7lTW>0@C~(*up-rFF_P@}lNl>G$3EA1 zJj-v(L)=i@*AP5Z8dyhdYHqYB>uYG9ztrHRtieq~MkGf{Gi8o&8yACM*40Dv2+1wT z`heWr+9KWV(zQ1P0Pi{*(b87{W@nI#vsnmksrOKgeY z_hoJ9>DC^u39qr-$EfhzGq(f{f|3gE51LS==V_kl2rx^wfyi8=P8ssobENjvA3Y9M zJ23){mQ3TVCvfj`Kcof|d^OhaWIxh(YeJfyI`LPA#Je%HVQ$Pt!ci8<@X2PK?>HN{ znc4{cpVnvLk1I^h0egkls~U~o6*k?S-p6um()Sec-)W{Jb!K6r&n57szvt4|_>}sH zh}3_~0~4{W7C1Abe^0xoWJBE9FF_^pS!&0>R>yhVYakKn{t7Z%_W#;?mtDo-H}dYcJKXjB zlH$f}@u%zkGQU#1<+l*K91NB0mcS36|LuCuvbu8IIoZDr(Je{r4Q1ob^sS0K;3$hF zJrMUY_%WCacz*)0KUU2>A^ryHKc#+|%~NS>WRYjG8IOgzb~YsEUku$Dy^2;?xa zN6x)CVa=dPv}YB=DbS~hxl~P+77G^K+*$mR9rXR2gj*P8e-!+*HEF$cshf2m(U>_K zx_W29Ka0K3tk+73++I$-F1PiO{kzRiwtj+N1!9s$X*#um{CTXCLOH{El|i@3u3|yn zbO3lC3$Q-ijIwy?w+t`MmED(VWqwTv;=m=OC6_!3`CB&~PGm8!1j@wu)K#m6Aph*nYb;kLs^X`&mK zkYs*}yc3D)MbvQ;f29A!=wPCuf0POl1N{I|k&gfebe zWQ1~^H18R(f(LPss1kt{gKa>40c9y5(F}}Lb6&jk5`kDE=_qjAGQ;qyBhkR8?eX8u zk3b*wPiSTH+F;g_LD7FlKJD|2BB=*LD3dTT>Ae40);+llFFQ&?8YlrxOlZPdn@Jm~ zzj?dX?4T1-%p=PcW-ZG`UJ_9OAxT_~@O@LyjPE@ZRF#q8j{he)o77ZzUPsdBkoh$+ zPT+CEQpg?}T}A;3|7wLhR+j{M!E7HXf@Zi4@NCX$U+p8Q+HOM+ffLA&R| zt}C%^CwKH>$-^#bYDPdgf6{4c8Sn$i@0d{~wWM{=ESZzHm5#F__5@_(fFNM02+zOPI~0 zxv%pAHtAhoVM2dLXd}M<6nldT%Ds`=-SV7!ipRu`XwYwY#_-Q5%f=;yipvV)Cbp$U zL{LE{-ohMC#X7+3>EnO16j2LTLdLQ#qv>oQV_`cwd%lZdmC}dJUuW%p3>qVp1oNq? zlsI+6u=8>In)xo>XcR7X?u(mMd2ohEsJl;Tp$(`npgdNFvxm-V{+SZ&fG3>8UIu|$ zLN`^Ev+t<;(|Mw*y!c1;W?ygc5!lK^(dT#^35wSV9b)*oT;UaN>DsTv5UnKxhtqWV zD8E@1W?Y^yL>h;#GPU$dOIrSJrjpHxR&CEuUR0$aGav%8na`W_0|&Hs3&;JeNP{-%IMLum@_i4y^xlzLTcvjx$!YqP;>t zvHhrDaru93zLjUQ(c(x6D>odin%qqiYd@NA^*qfD6?V_*H@k-TFzFk%xR!580;ITf zojBZG^eltR|Mm4f3?}KoO_O#8uMslq`7jgpr}OPnj2+T`+~=Tyg=^H|!~FA4=NqtJ z3-SSFXpk5USM3;S6J8Y}qgxv!oVHMdS=RV2tL=3o;!opTFP6s8RO~Gv!!$$>+TBSVog>G zqpshvt9%>HJ^a>y&eY$*e`91Nb}0LmQNiE^t7GaFCgcQ3QOu?c_^3Bi<@pP3LzOZj z*-uuh!RLz&31P=;-Oc_UCCkHMtkzyT(Q_GuXjXOAHEh_be7ZUgKs*DK!wr~(Fc61y zg)8)!B6WKtSiAE-%lCC%(e6ol_}v`S1J*AlW`)3qV;v*ep2valYVRkV4ReZ85~#@b zzGnjIcy@B|0v*w!f{B+DkBy`Vkd8tD+#gLTO@}pe8c33Zl~=ZXdW~`^nAMAgAQCrb zqH~iZ=-Dfvf<>AP${e?O++uZxo(6l5>l2@DT=16R>wzxu67ELvAgG`$_m2*rXb7&& zf~q2>9$d%hIs&pSKkYhbO*#YA4^S42>d7mB5Wv?}ky&*2b{EoqRk}lJi>#OIwVaSm z-k4b3aO}40T#xf@ADjJzO83>#&}o?+yB2#yj9Je%;lA3dIW_rU#qq&Sey z9P~>GUds^v_J*b%j0L?|?j*N{u`2Oi+1v1@YLPC)%W zl7G2QdIa12aLksCwsdiwjb&4aqKW1^F51^~^wHkqBYjaqh=We#c!j9nPsUbDHvhEN z&Q+ynkaINnUfQnDR!{e1ro%h;KCZcAk=0Z&7Fy9j)WfNvcpT|_X>DZ%sRLf|a?`txeF&#Dj#r?4;ssUmsWtzn_XGem~=V)#GPl zV*C9geRcE>l~b`P2$4%kQx9~6kAyQ7SP zM*02%Za^)Pj9Q8Y1LJ!&bx%6%X)5y|anc1AN&MCO?v}#qjm71t;))d_6Ne{xjLz3} z!RWhAc5OArXYIQXN`0F67)!#tz+Vu=3kEsXJTR$kAL;w-tAW4f`8oa&2RB%gn}lz; zQtm==i;YKiF{pY<4{3Z&LqF&zGP2l|!c78oB%?YXrbr#<%CB7xxMpW_?0(PB23c1^ z9B9tJ>i0OKs{41vXs|3Yw&7DAV7kj$mZ6AJah5& zTF%l@sw6qUmgR4qSVHXOgJeh5jCLq@88IgcEb(%IpOMF;UEX^aPnr2RDA=vDKHfpJ z6a1Q-mZ&x1|DE5SCTT9|XisilyQTA|_peXWV3t1{%}%z{E2zy+Uju(skIG^(rr)je zB-a3G8MJh@&c+Lc3<&ARv>D+;gG)+uIq8jRiB!QLq^gkOE|peG`i_!*sx}?}cSPu_ zur=%y->^CC2uI^-96w;S`mL%UkdStT48`mloEc@4{Bu+`>v5!Fq@n0`3}oo$1G{?I zLAyBD;89cw)7}n+W^a`?OF{2qtCJ2WYQ= z@p(H@J@@AE_aJcoq#;L9<+Bqm3(!f+v4Ky1Y?C`YSN>;ls0fR!=PqeKd~vpPA5R5- z(qp#W4$&X7Yo-g)h?|NSATV*i+G$hAdTMEdA|C_Ve<)Y-C^k}*=aE9au>yP}a1~Q% zNcA;o;+7?$oQf#3qEv_U?FC%rZ>?qg2T|MFs7^uHaVHCyPS5Q=yAsch1e&FSZb_x8k(iCMKrLHiTA~^F(8V&E8FwRur>Wd4*e46=I^2R?m zPG`G};G-B6T8V^lcr`PZfwI)%)ngVu(jV}1Ve}Aq1B`c6(CiMaa;AC1kLoi3_FqSm z)8bxS4q8g6*5AtmW?uX{((A=zb+K3@=W8F&;??HHIcFuwNIl4xcg*5i!t@Ldzb+zs zVWyWcPNKH+2($|Zr#n(Kil;DL<^D~S9;O5k|5rb)s}KmPKh?vwEL#oPkF?r*tz$Ew zOOFNO-I61`Pbbl<#VCwLE4(UXJUuE!pZqEQhw`)Tgw(RlB`_4bljG>t(6U#AFpPw- z>k<M~THRzI48u9ZE(}`0DOa#|12r%)fEv z(-Bd0v+2P2N|W_UPlES(+*b7*NoO>cv%#;%LqG-!q3A3{(z`F~Tww(t!TyS`5L|O- z`n8Q4PD4`f9;sc?aeTnNkM{kXse5r}u*D62cfbV;$fe<@2h8dDKjAPxf)Eui)R8?; z-ezjfRT6PNp1gUL-%f5bfb$I~*BN9*yvbSX371H7jYQ7Yi@~itfH8j&(??=%chf%RBj*w~1S5$>A6fa9KagxDhl$rfhX z(W%KVub^AM>p!iR#Yt#oT_e?raeNWL`Z(TqS`(+{%t)a{&Cj|~ei0}d{82m~zkeyK zdy1oIB2J(FpEAc=aCX#v2MF+$H603cPgkqO1XXfP>M4&yWOCe)NDaf}2rZYr{3em- zT}<98-!p3X^w3vp>IBe5zal}Jz+udYX(v&AS*8v~Hu2ndKldfW0j%elnFa**+pdd- zONR4i4XZ5seV5=~l{&p~*z6a{Sn_&!nfKt?r>msu+b>~=9AL%=AI(3lU9-2`OMsx# zQ8P2pREQB((`M`fR|d@TEaCKc;a0^*@jLjATFC$@)QAS4UnNX~mkiIxjD)BR|4P~KcyxAB@dRUV}0 zM|_D6*MNuS5GZi$efj*h=zvU26vGFOadm=-KpXpj=gJn)UwnxRw=i`nQ=e8fOZ)|# zq*<+Qu4nE7DJT?vOTtm0a0`eBmhgA7mikl-WBu)M^?|QPxxz30xjAL$SH`QOHaTZqgE?KJi|lgBka zrk}vqAK?M^a+!#sY(wxNg5s^xydLTQ>v(XR&K}KA_I%e!b;TjIO}hFK9w40cCstiq`r-p0yjag1HzWyo5P0%`ELE)whosIz2mo#U!a}VVG{^Py4O7 zT3X+-SKrDW8!Bny2HPr9ny@$X5Ce~Szd))z^i%_V#IG;ff<^idwRn%Tcp6h|<8s=? zxgM4ihx38Tg7_&b#WKe|xOjo9V1H}|SY-A`(A6$`P!CH#Yq=CF7^S6V-Hs@(V0VyG z{(sbcQ*>rsvvoSQZQHidQ77rx>e#kzJL%ZAZM)O4t&W}i@AY#oGJ1UD|IT|ZYwWA4 zwN}-v+BK`JIcqL|U%|;NE?&8lRq8jpWHAXI?*c=HXPsLST+4nPoUQ>uyIgd4A3fF& zezr8VRmTURTti7x_tpFwT4DLmk`)u~3eo@(a~nPG~Yo#Ch&a{8ke9p2%G*k-b&e_8hb1uhq?$FbpXv62gkO=Rk9G; z-0-Et48ue)6n++OPnWY9=W3NHh!uewz4@xx{CTUJ>_DuRSL-7RNlZ&9^<*SulLSIp z(N|Px=G-Ugn`f%e-A8-K4E!$==7cxuG9i_R+3~A9WZU92XB4bvzQ(iqWYQ7nUDEU@ z?{AfX!}0}AN6Abt4c*PYqUT6o()kxXK@>-!dt>x5fa*Rg0lAwU!xQeLGW`-0w!Z%| zjln)Y5!4DwmQDw`l|>ws;GhQU$x{l|_=GJnU|0obTlh7QczR-f6TB=M>A zoUz+sg5VobZhrLnD_};vrq{Ybs0t^e zkxT5ZNRZ7PUOeEMeQ^~IT-qR`nz#u{UKH!Tbm&1M8&M~a9RX8>x|uIx?}Q0MLfT7Y zn=aLHuD=m)KeG>%QK)#7rx6!~=0`;rClKox4{)K2*BN&G{ln29yb4)sg?vX~`@#e_<;o}0DiQd~4EWv=Av|myWS`_u~ z9$~T)szcaz+OcYksvPTmNmFk;4-|CgwqS>05FU=MHPFYch0v6rh~8+Pwj3WK>Jve z6vAUl^Q3XmY^mX_VzvrMt4k^40x85H|%2;YE|S`{HqIf4so!@SMCaXI-8g zmR58ZkkB3gTM0j_p*`HM**kMVyHS^>CO4RRwa0+Yk&0Bw{F4!pd|o|5#u|K0w`|26DW%cgK z>awJ)fcp||bp`$Ko4=Ew%M@d7z@e}uvRTX(zb+VeT;OVUQ%bDRC3kj_{3+j^TBF@Z zH7usN=ROtIhvf!q7lG*$%UW#@&0q<3SR>CrozQpYd=J_-1>&0-$ zJM8)1S#ucrG71>~0r&NOghY*}+)4s{1%-J%rpO;Xz?ScXZhl{bLn1pTfV)3~AOI=p zJ z(#W50-&f=L6;HcuY`37=j1$=lcIDRpXvemHg^_Ya0vaFNuTY{{3WPQcuYHSq9Df0@IK$e5ikDwtPh8$ z0l6&mwLS??S5cEBiH)EosuRce?z?Mytx(P(4VJfP#)4dCg)I1sd%*9I=Vy&&P2%wh z^tV-$yubBFv>oudgi`kXeai;mygTgbHTm<{DkD8LxL2r?Kwc^IpZTLZv#_i)_b<() zM;RC=O7RT$6KPKyk$kEnM%wKJgt+fwM9EmPdXoLLFB@0uilu|Qlcw?P?cXi=>VHu0 z(;V6=ZC~MC7guW_y^2|tvS8i<#(%*5;$E?H2T_9zRiZW?HZEnMMzRB;YF#42?yg=d z5^XpmTgtcT0z|F-^?BP|bUY>Q*5^OHdlCxnaxMpQlp?ivZC;t)Ha8)b1GKMu?DtU3 zL#U9qe>?`%uOXTzs(&YY$OF7jfHELHS^>^4@s@LN?>h3$P5LbY@)=f~e%ld$<3q~1DoLk|=^TJShl~lb;+`2JJQ5)H_o$I|`+4qA zU1|eF#Y*&JhSZ8*nJNFQg#ivTyo2V>kGhX~wo@;q##z!Aa9^|q_5_P~?J&Q@;(5jT z9}H9Us}83Sraj)x5q3n1OEe(HxJ(EvcuLT%ZEOMhLzpb?Gp1p-<0opGD_p zUTt9!3>l@rMh|0vJt+bDukCImXdG!(YWZ&WtT$0UgCP()VyqHZ&?gy zWO!)<(NR4*F>ANiZYdz8YF&n5=;+xBN4+j2vlR^>OVCwCy#vmOhy`6BnKOUPy@wTr z{4)U`)sdQ<06@HuC$dXLr^GP>d=I1z&c#A}mB(3S>rsv4dZP3?Us%CH*;Tim!!RM6 z3PfAKE0c)3TW`22H!3nWTJ_`O?YYofYOS3KoSqaC4Gg;9V%OnEXlASW=@v}5 z(*(1?dinwH7ohyzm@7r|!p1}0pk*2P4#|UZU2}HN*jX_@zMh?tD$nsVJjD-bJBmdI z&$CpSkZbH}O?=Do?bVCx`g$YOW6*}nQkz>{EI~6QmrE~^1taQY{7frz8)d)@aQ+g4FqXHnRiUE2i@$sz3Z-U-0{_84c3_xQCU^fr%s zb)x~D)``1M-918q!*tps!t>728ebhY)jFnr6=qhU`_aTv=7B+!jME$To#6-5Sz8OP zU5lGpnbFATzDQr9J_YCZybozKcGdg+lcu?9Gf~|lF9O;JPzKyj#dvWiitsBZrxVp( z6$|UO__O-9Hxrxm(#DKpKd@9|UGJL&(PA-b@~RPd8pE>W?S*+AxT_+vIV%U4m0~37 z^(LQl2zwdsI`?EOgsh1*>V1845;Eq%-V~OJC&V>n1HXWFr{pZvQbrr5(gX~oNePYn zXZyH`R64a6OoxmWb<~tFMW4!I36ft!SF?;_3-tV!jy@KH#$!*0K=Jn`^E8BR;9H2= zF&b`=Mjn0$vdrFdU+n(Qbn0EOssAoF6A6a7$F5QRxA?0Km)@^|!Y~GN4(s+=q~|9R zdWatF{)uyB=(dI_i$d>zn=e0aK;V>+cE}p29>TWT37I)tZ_5)`5S(_^(^_jCgOmEd z%}1;@Yi<`)lRaN!9n+?ZlM2f&p(O84kIh;!TLe-=8}~_j%}~=%b@=B*GvxF zJj;plL=wjoFsj<9ks8ZXy_KmPwMdx~t|&F3eE?pxMM8Ez_-hw$V1UIN)4 zs~D7A>rh%8{croLE~^901><5+Zc#S5EF~^@{81T~Oo) zN~yYDgwz0)3{Eoe-}YB<4EyiU=PYEIP)AhFYG`H5Of>BQ-|22%nhtI+kOmnW)@DEu zEFQZ9*a(`s2V5ut^Z&+Hn1mV#Js}axNe(N+O3t5y^alv$i?y)S3hXW?{XG{CrYI&~ z#6~Z@=j$d5dt*3d%l9ap0y9>v^Bj7q1^o>Lchey)mSje6#$yxaeddoAu`waxJPh-1 zoW`Pgx0H+E&t=?HzQgMuRV$P`HCi6tNm@jS9cjEO0#o~POEsq-IPw>+G-8K=DQ7f1 zyI@m$zdEc+(|)U&TIZotePXhW^3(H^XP%>ydzGplq?r^ZsIukHpsL8_&^jo%rF3(>hFR|WLX;ref>%MZ3e$kep54#lGrpv@UVnYCDslf%%U-) z@YU!5+M`a~O)zrX?sfX{HAg|_WXtPb%#h43iWj4cb(#ypogzzI0BF^bUtb;8Rfi`2 z*t@R#y z#-psLQ1~qQK!QLZEEvUqcA&`!VJ`i!#fvo? zNclbCcNfXG1o}yd5plE8z-5;3W_fo_W77)$8e4D!W3~Z%g!-iy*R4R72ftwnU6-Ag zCr@DKYuVfL2q-!AeR7v0|GCHC}bxezEubI#8RVR?E53iH*l_Lva$V!Xb_3X7IHvo8dCmpuPsuv? zz2i=-c32ZZD5BlKu*o}W?cV!+oDwv|7p4N<{GAVk}s7*M2N(k({(Qt`MYC{HCOs9he7W9iRxsnX%;WmTREbin&ukMR7!(qleI5hgmub-kto562_<9{ zx?-J^*kg>8>{M*(?9;=Scx# zI?+)da&^)R>p17^V)EH}qSRZLy-~9N#AAPe+INzK5l4U=Rvaf@Hzg4b6Xy6T@fkk) zZ@*6|dN-w@3D@T7!Li*C=Nst1JAE^P<2LRieXP%d8qZAKyx6mNi04Y@Ujva2ZO{BlPFD~y ziWo?ISUA6Tpe89Z>tDJ6v@&73{9a%tDR83C$5Zf#sYpmK(9Nj_+_|?zK7w!ds97v6 zp82zzWUs5t4CvM@2JrjMi@s z&}kp~nGJCa)R0|+-(jBI2AVlIS7%pgxb}0pa6j|6*L&amug_sES-ARULC&}}Djo}P znkwe7l>?APQRO4^0sXD@&o1<_O@7WoRc7e@cQ3sE)Zcz~p2~3>686whQ34ZiO5Gpf zFAn458cSdD$zJX8rICSdd}CjY&T3kOp4U#dwK(Y7_W|)mWZLEY+(x_V+*1Rp5rYXM z*?LOfm{_)#_}og>Bq97yb2G15%BOmbQdSg|#Ph%?))BBhcKrdovP{dTj9~e<_hr29 zalDTW$r7FN-256Y&jQUum>AmWsGiPW>3)vfY%`QC}}hzZL*v{Viamh2rCTFnCi^JJGs73r%2huJI#yNHJ-=aQaRd@Hr@Qe z1i!fdMX8L@*A+!ZR^N;I!Lv7ag5ZfNSDTgsO&eJTO;6h~?pg;T-b5G|s}bb=m@~ zLE}@&&+-pI{f4uO9U8j-DA~WLAXfFIFtL*Bf?32wolro$F+RCk|*+y@Lb`I@^XeBfjBoF>EovxGG@K~0;-XHloy-gvg zd{#3+p{rbXw>C;;R*RX38+CFEUsZFFE>C{8-tJh?zJeyz&|mw7iTJ0#oYUKdMv^wu z{@lgUMDIl)L$X(c`Q2zL3f_0LD2&w zPZ=bvutXXfkdtbNTfO%mMo#!s8ZwXQo12K6kSN$rE8rGK_JT9KPFr{&~fJ_=+QCOyyOx#B&>n(>w=vV=7>b zdWgOv{q209G3Ar&lfe%v6^v#HDKp}wJ6T~ye#M`~8#Mfe83(_}0p|fUt1k5-FfDPA za*hHg>9(~4=8LywoKh}9xIZFA2to;wBXvCZ?g)@L&P%AwYB>8Q11qEkfq!f$K)bxK zrPxd`%0wgRlj^jCD*_cuGeo?>U;F{gcbbPNc{LBP-guBd!+~kAb}_6*k+PVZP0uB02(!2$yh%Mmp8(!(K-sm;oSbEk$B$Xf z9h~5$^~RH3X|QakcH8C0aBpmA_?GT|uwwGYOdIz3m?Mm}g4q_8LIb`CM##8sq& zOTEnU>l{sR-U#R%&9d$v1h^`q!7yjWp7TTrND!nRgN)S81}kG=Ly z!l7oWd3tWiI5r`Wm|4Li`@iLoYBKrn=e~E4IY{qkacy zk0j=@U#>HqEW07ZOvToP%FD-Czip7KwuwucTlB4KIqT`Nkd*~Td-ctqX-w|vPypvg ziv28|0DY8Og1OuFJ4MF7S7-gu2QTM*IN&h=K}r+(#%-OWiz}(U)EZDx0A0lI)Avpp zbQFWLkf9BO0KF<~hyq$tnnS_OyVR~O(A*e-qeOF%RM#WQ3p*9?y(QnY_v32*imQ&h zr$&EjXTpf7Lh3^&WUB?g^(GeTR>4!#v&P06t?wsy@xe%iHtg2ydYTG&0i8O>_#2P8 z623=1Az(cPP=7!fH}F<^b9RxIHd`W}PY$ef#;!fUx)@<~JF6v^sr?%aAitcC8}*wX zR(cl$tAsYp?6^FDIAO z>|ObQ@oxkwsSV-dfRr@iXBm4T%AElN&L7``jmBiv$*)g6sKM*y+n!VAnI#vaKzDmV zggJov0?I&5wTtYNK##!MuTEC(a956cNy{Y~HHY>GmRB1Gx2#(i_BbKflo893-yhG{Vn96&-^n-I-Qj28z&33k{6HdBt^0Nod7fS8L4_Q0 zzhq=1_X_`fnUfB(2!+zk?r=!yYJ z^AYT?&*o?An)SEyW|)WtIwEI;h1|tOvTI{{-*lQ7MjxwYm2g-2EvVVs77d&jNL^k}##xVnr< z;SGq_fk`wioOXDF@tbE_t}^0syv;Wl`fc%FgI(Gq!q0DibU#)uwl2XdqMO5?4_I1c z0iHLYoH0+Z=+mgU(g7*ANJr_`;ZgzQ$$s<&eK~}VwWg(R#kdi*br%E2w)zaO?E*}* z!sC=+%+ZigJ4dzuSfGT82CIn^0X|ptLjI?Jfh!xIlKlOh| z)~<0H*Jxbmbqp~A+7T!>s3A8tZR@naxe2AB<-g=TQpJgl2MaHR`TM*miB_|CHd_WB z$bt4u?QdonBCB^_wkD{0baqC<-!TuBk|hV3-nOPqP2@Pb*-qtGR_MqSh?u1z%xYt3 z<~hPrEkGbCau4|Q6N8_wbly2f$W7lTp20)iz-Mvn`$f+<5agcLtfYx8K9-h*nR|9h zo(LMgQtk&f{MaS#%Tp((%JO6Fv$i^HGfhc_E7^OgkfEFU+xd7N79+4Kx@&X&4~))C zwaCJ7_von0acwUM)X(u48B`d@jCSXZAd%m0gbA|)O19a9rZ~2I#O_F?l-$XDN(3|P zTz~y45Ov;1wwwuLQY2fPO|PBG32ksmcj_IWS);Q<-Yo#0W)!^@6ozAD!S6RgksA`A z_T?F|6o;L+s-I?Z2N(P;7gO)w1lsbm82g|W5dWEqJ#asP8ge(O?UXF}K8&09?OdsP zyo2p|zNF>M%rvy_*a~gy7S9RH?T=J#Q#k?NUqJabAToE;LR20HiAueP0H{8+PMxQ< zCFDYjUXfYOTWvPhGQM}p=@&a>5ni;_1!)kzq|%|D#+Pw*0sQPt%m_THUTe9n?xBU3 z#auCE9ByEaJ^6lSUOyIyl#r>bP#A$qBFGy*rdk@!Wb?p?lIU(6B;WCFUU*M422NlJvLQ$+t6oCjL$~m zV1qt7#KVGe#UWrLCr!D^s|V&_0`|RZZpCylGOXzV^#hdEsA0d@4)v;aJ_2u=bS6K9 z9fjj$wiH7OH!brek;LSk(^^JtI`FHkYq;+COa=E~_Fplj8(ecgFr%?*rnyuFY zCl|IsWoV8n^5kD;>NfUMme;hx1hle^fbr`3=K=S}BZIg^#IdsZr@Zo-B?$ZmP3hH(4UG>QgxF^vpyeMlWhyumL%O6(z_1akU^ajJO51-I zZ4CB>8KtkUet=ptIhCO~*;^@6J`(1&gk&mi#iY?{`2mU;ZXPkDN6Lco*p}~t!d!ZH zfNm|3R7BV^1-j-K$vj75EsV}lW^XZ4oLXZ>J0O1zA)P`$j|MVu`SOGiw?|oBb<56p z!eWtorfg{fmn zv{7o@2Fy-~&qR~6TmNeENkBa7Z{I682l+#c+4U)F8pC0bU1LaGfb`=E;kX8+%U%14 zCJIvIvl_2Ac2A*sq4LEcTHz1A6?SlNnFFNsX!p+R1x6gP~ft#{2tm^X&|0f*7kJX+UG z*;5rrw`ti@`TP?mj{NSOUQzuzCL*;)pqd4YJ#o%x=d*HJ0}LasERa{y8Y2anpGB-f zj-~z$`QCrc?{=@^+ut&$;+rw-I+BhNhOhk|zNx>k|EL1}W+SrIHKScv>D0TH{m`Fe z9Lo(f-YANR8d}qAcOPupU{9DioI^A-m$D1i>u?Gam2gw$q}ezDJ$r$pIy>_YF(Bwg zoex>JMsH*rT8cIKZ5L+SNBgt*x@@jbH2LPc!d%SE9~EjZq^^UO-|Z8#tAUU?CWKsn z^|$#2*mCm<!3^^irV!U0R8J{GAmg`;jA(a zQCWQLH8GsP`QBhs9I1>+qkxES(q4_nbF!n>;VzoNVVDh1x^S9P_n*O4Kb!XCJUnD) z7!WVyh*kS0K#HyY|5tB*yuxG<3>x1a zU*2IABQlP^#Y+t3`^qK65e|CUtr#miFd&$Viz-C#IJ0c|KFwLJnN_544ZyO(kIH;8 zcehxnduD+B8i05SNyBjXO6kPnjS7B3S?c*@B}_=&`47u<1sS;GmoavS_#2!-ebK$fI~oJ8Q~U;F9Xfx( z7=9nhhh^9(!2EBke!>1l>5jJ|65&PUA{jH7Q$W5xysU_m$AJm=ER__Qs&P)9ZQ|X@ z(^ro7BSXn>``XHKx+~t_kL(ecdoJ1sJI`E>j9VU^QLc7~7{&qc{R*-xTlf8DTiKuD zeUCmH2+iY1MF3i0yXpwXHJa38DA4DRW89?*Qynbr_8nZDz549E0)DqN5p59X1YOsT2hSln%^TDoskY{ zM)?Phb)-Tjw{y^STTv;~%oP}xb7}EhJP4WOG&Nq*x?4Y)`<1!r#_A>WHe+nfg1}+5EqL z5Wx72ln7RNHyjDeZqx3+kkw?W_I*M za?H^PWmTUZepQ9*Z}$asE@pJ^bzgJnT_->-8*jW4$~sR0`#Y`x>tF>G6c~nl)-NM& zUl3k=hq)3~ePTxT>K!IYZ4{O3=KfK(ceF(Om0Pyv2NA75EarebcxNOJtjjA_bgtT+ zuq1-LKu7fV&NmXk_&f0)5nMPZ#Ja~YmGKHIVq!C>dLXeNoT?xbv%w&j|KJ3)+J;3Or%phCYbYzJ`h7r{cWN^rSh`pFpj@5 zkRHX)xr~Bv}YZiTi<|6R1j*$9(>0`mRB79LITNbLVC6 zp<#J{vHZWLFNX6NX-RxS;60T^CWEpu&S&~6?Y6lp`(I;2xr6V+J&3Bq1#Vt^>o8LeJRW z>ieJiXTj?WLoJ>Dr+y`$N};@ly#-elr~L|*Fpe;lxCShQ{?GCSgrI^_32#$xP+@Xu zlok;Pl+YW=<=zR4L_snPJVQ5hcvy?mY;vR-ABZoO|FGGphiDFmomFQqA9)WW-)f^4 zyt48q(X!r*-edXtC*0!K0rUOH^4vfl)h*Ria=v1{3QBb)a(;x6C?r81OC~O@?J*)s zLt?UT@>*7JQws{pFyLOHm&}XLl2%v>9i66=ubh;C_zF;tr9QX9V)0Mw`znEj>jH%n zs^AgM7B2Q)(_n@w2Bb{-S^gXRk+C>*bn&oB`B8)XO?k7o2ok0PD!XtSCv+Mpno1S_RB9(8210uC2gM_Rni>+#_#Ipluzv>d zf2^?9rmj|wfAD^D9>_*m32?d+67xt=u&z7gjf4bzQMs(s#kZ_V+`Yd?s`{1aVUZ9)5$%_Up1nCPDvS5e&{NfWaL!HSoPo6fX57&bV%Ke7EBIozAtu~) z%(>hOr%FJ5Ka=mw8$Y6ieY^I)Y&}f6FE(35ePpAl+%0no!%(-q4+d*S;vaxKwfh0(r9=h4NdG%$SAcoscrPuDSNJPn zK2o7};RjMK)sU|tgEx#J%XoKaBo>~rXCK6POgX}Bwf3LpBhN2D67)OaL1zS-82(5| zTAW1laoUkscl3&=npelP8G!vZKdcUrf9s{_&!s(jJX!m~f78A{koy{rgAW@v%$w~K zWPU!Wtylx|YxRK((=w}|s7tBDOuMq!04B2+DFdP?tUikFZDy#6>7D&l%^13*ltd&( zFf9!dx)WqSMUcNC1h79t1U>W59l}WHm@tAG@MvyjO}h(hEm{3E-&E|@uuC36^RP;L z(I#`|@3y6JP2XdPzwOTeO2#+*(}l3^AXKg4y6cEftKs&w-d9L5D5Y?`@LX2xs`+pU zdV4$&9ofDcH&6C&AJ|>Bt?l#ZA<%h_l zDRi?p_^kWAi*{fr?jgdgOW0lFd1U-)Y&eUbsEGKuAj!!7`KIGzL%55=_# z{;O(Gxbw%`FQLq&mVD*9Y<3idV@uL^W0?Oo`>6O1y7PxI`db+hfsgxe?R{pSA3+^V zhS+PE{@0}=%VeE~e`_E3D{8%N{Mrk3B%W_0NbL7`>&t9F9yM%&p-2(SY7kX z2jh^hEdTBHNx2J4*nghZHY|tl9yaxF|6BWjeIp|H1NvM2wN0z&;ggdo#xOd3`m@HL~#CuM;*E02vZ3))B)@c$q;)Jg|aa7W)r|2XR;sx&gKEZ!psk(8F6sw2; z^#PRA6b5#Rih7x10?ZOwkha%RvswZ&4*0MhS zcdDMh%i8)``m(vP;DxIK_Dt<@CsNIR0q)V??$ZvPQNa;_48QpW8-J{eXuu(p6Q63D z6=_pq^d19ISYD5Ffh)MOh*~;SU=;n&#Q429{rGP+O`NuOAQnf}*3fUH)e>j8%?cn6 zOqW$!I+lfi{lQ|O$9cO9K;j02T>pbF4#e|!VvXLD8HS$!iZsWQ~9EJa^G(LK2Hr8B9q-9~LcLPYxQ(Bz`8 zNN0^M4x>8mhBq|;EDU%*Ka=-$+wYumVUiqToppSc@C!t8@lvQD7bAdi-TlgtiYkl>Vr#XP1v#qJ{cjOmD!dm35som+z zI9{Il3_F+ss?8`lkiX>*N%H_Pd55N8JUNP1R{QsqI|GLaQDD_w$jXG~jEKk0hOCwu zz2I0GS=vHM;p#7xD?`SG>?!5+TY8I)2PazBkL@lq_D#A{z1Mbc^5kE#0rC?d=7CH# zet9MT*%Ww>)924S!!GBd#^X?!jUgs~#+9@IBP4M3f=iTYi9zEUpISx)h=q|3AL+4(hHI31M;rJuBC z*AC|wwxtQ5g-piCWb3+yQO_1UWUz0B8f@ge-n0KM>9`$@gy*`;hSk1x>_-w5%_^@R zDnI}1zD^yXtXDRiSp;X=b$RktG5)mKY|It*LL!&vMPl|^ObgaPetHbM-N_c7j;?yp zIL>apMzq3`h20jPD$~GB^5e5kN2e@qEHqLZCf2RQ-c)7*~uVVBnyz$yH>)KBe- z2AA$^W;Did6U?NUJygnmy7=j`@S47Z135MbmEG&M%*3xG(@q2};C^IRl@yB-6#vgk4mG z0^wl$1JtgE--%&gkG}(!5Fw3VOtq@~ge=x%R{s3kWwaNvcOaq`#&Q82?@+#N@c;$L z5GnFgv3?n#f0ffE^uJ=V5l}?wcmK+5Y09cH@lXXe)MUZ-s^WoBru(1z*ZZv-o#w#{ z&`|kNs-*t)w$Ah^EAk!bA7b;WJEUO>rhxrQJEaY0?@j_Rvp~{g$(&UZfOsGt3jtqt zl-)PO34hJaQuBkRF1ZNpD=Aqgw{EZ?Mg{>O|4aC6g6wFN3nFdePvs#x@uRwX`eobo zsB+-ecQpI7KQ|w1CrqmJH6PC=c3iGKTws68|Du%0I-Mt7gtUViwX8>OrlvKM@CfhR zvVW3!f0Q`TBm=BhGvI(;3K;MZ6vE$ySZR|-FK+pNrO6w5PNCDqQ`T{_ssVTWWu+Pm z{c@Y_hlqlA+QZ&7G1S1qA|6qgVK3)8Ayd}D4Wk?e+hrHN;xWMu28ah}j#(`T-#OZX zWI?IRS6>M{arxmoUF)w0t}C`FBi6$I77y%wLkXIG=*gkQpRoo)Cio5kOI><>x`VaC zCR^Pn-*@!cd^SZXD;;6XINo%uzApR5Rd4Q(H_pu<*}6uF4HPhaT1kI*!xgjqP`oYN zY`R`HO~+??NbS0F5-1eytu~N>x;E()tNTD;=%!N9&ErXaCEMgGY1ccP(R%2=|jN zaG8hEz+Qw`87!=4#l8%KUbG?3F0~nQap~SP$H}Bk+0*p?ncJD1S{OHC8>$FYheP{q zBSkStvSm9D#H+xN`P?C6B8Io1ht%oY4{~$$v5UmXMZszrh8pjAJ_T#FM~XsuBCB>j7UH|loiwfFf?lJe58Joq%bgE%EpgvP zODUB$L=zgLRewR)wlj#Y`8nrjO)MlgO##*`dynb3p6UB8zQswOa`Br7tk^)0xBJ1; zyerY`Vt7%|5buZMQvzu?sCuEgFS19&{cXK+@<7bCpZ;peaLA3M{|1gSL|=Cic=9O@ zJcMVh_{nt!aQ>s|pkH!@((ZcVuD;&3nPSkDAqrb6iZ?5Qe=X}sA4!DEmrS8{6ge%c zp4&XxeX80$X^+T8b)eB*#QSlfio>&o%Unh^x%EG&G>DB=qMQi(;eHY4LK*if>|x&n zTbM;rpeN7lY!7F;IvL#UV$B`^>(@tqLfF8w78D0s(6=(f4F@k&aZLsVb)~=a>XXx` zg0>G6g3A8H2Qr{5o|J#pS8M;QNE%<3OMI-~5Y>M<2Z<0aO@77MqJxGi0Ih56*wr7IT&xSq6pMo= z009}8I?uAV61lbHy<}1IV4664Q2a3JAnZ{g z6QktsCpfKRu^&wgC(axbd<;fv2}bqMfc@%k!^Ii=<5>=f^(weaH=@?h_$+I6{z_}u zkL}<;3>D&O8HI*^VuFBGmG;T6b&&-AZNEAVrUOXqp-9--KFF*p(AWF#Z-Oy$Z&`m7 zpmt+Eh>7mnD*3L|kRu8G->kW$gz$-ckPxTWw-1EBfo;w0U$?u9*1(CTKQ#=cVuq^> zo{K*K_8+|_b?9_W_pfvQ;q&a~JCfL}vYUV*1~r$g|E6lA{LJ@Ry!1;rK(bHaTx5kT z4}kFPUHnhuC5AVct?2)w?wx`wU7xq%*qGS1ZF6E{V%xTDXX0dHOgynYv2EM-w~yEV zU}|c=U)BB{cCDjc{WS0E>So3*)e(Wm+$>GzEo|{rP8!g^C1OJeC^ca0zi|8xbl#aiEy}r}UkYZ=64DO06O>A(`L6?GcaWGvczetk1_^3=D->}H8|U@>yYmW#m+ zdHjNV)wc{kc^w6?4d!pVnuL(b98&?87~Z=?*=vCDUb*B@qN#HMKDipg<6!vp`~T~B zU)b)5;swtk8@rCM5wtiLwt@ho&YBFtX4oR&_lgs5n_DLVheqbuUFJD}6Yw#G+0rw|uF^SXg zK9dhRmIByB>hT4VSHB<@k zEU{W^SvWgP3ndibmyhe;*0zn7&^+E+WFZC4R}oINuEU?UociPZ3~(O=Aisz${QKr@ zq!8#pIY~VlaIgsA`?Mj$UYGx^_1oYQ#P@H^KM$;#8BM+o7!NpY9xkkX#Wp!^Wc?{f z?NMZp+u9w}9vobAcDb?U&B}8yePT0|7GVQe&(+a1s*S(KkeSB!zKuZ*n8X5?|5#4Zze_^9sqQIo}1(PI7~C8SM7t-H2I2F)yh6)R0?~gC4{$KwrG3 zVqc56KRU>?D8&Nh+QNf^EJkMc&p`z)0qt24)WWev?q4z{wsPcIvLW#hrIrX^L(*Qf z18qRKC4~N8w`UGS8lm_R?2Iio`LW(+i{qc{$r$F8A~}Jwgns9Ysm&AH@?W=S8f8GG zr$_Fw(wtuC;4p>i-`Z0qI;z`+Za+bEdtCYyJvaBiZcq2VL{9{rWY8EwdM%hPm+n8= zQ{705YTqr$oN;)PC2%J`;J*OAyEI%z7~Lb0+4?~<)$@E z=m*y_QMVEXBR$Mmn)Sgxpk@v#1`6xA%%OA**dMIf#aG!kdtx*~?Ee_hn7P%Ek2ckU zQcFvmiY$I_3s@rFUp`Q*Zme5w|7v}+vFxgM=9tQBhmTedlrwMetu^US^%LNGqBaG& zDmZ4%FWOC*QVo+2P%Aw!;Z{p6qFN!~;e(#<7=U~mq{5K785)>wl$AO{x}QA9g9&_r zX}psPh``A5oj$Ly_MDY0qNaNaK&K!bGr@(RzcAX_nWBmLrF8@@PFLvG0sF($ROT4r z-1trl65-l9y zL=83Z9NH4`n1CwCQ7%Rn*VHd0i?$2F(ap;ovzZmp#7XrP>V+L>Ab}t$4NcJS9~xkf zY-zAduRL4(VPYD1K$wx|6M`n}s?pB^g}~En(s^zDZD23}ZHtgP7T+Rf7Xvtv0An{b zY&36$yl2+Gvn=|~7s;=O_bOqW4ivsWaH*?(cTUcDB8k-OZ|4KX{yK6F-G(j0Sd(hc zZQ{4X-KY5x=SCz+8wU%X(rQnD_s%nnukLcCPB1ycT%V$U#&T;JCTBq&^dV7*CqF$9 zx~Bm0ZDNyw9M$&TFlA*?Q-JaXZW~R$7vY=WutJpFtEuE+QK;hWF)xQW%n=i9szmq0 z&@3~j_g;p}MCs+Odt?TWSp>dLZ*hluYR6a%+MEZ)Rjvvo!Ks^mpHL`>BP?$meHXu! z{Sw3eO>F}Qwkn^#jtkJ9fbuoravFqieLp6bN;@>E=%#XVsv_!>ww0Xif)SV}TRb4Y zsNgW(8^w22vnrJ381;7u%hy{Fj5YJ-(UPgr)}|B#3(ExX`JBLx*V?=53ud594+$HB zUAWaaLHilTE;dKI@sp-dKWA-qEENreeGf!1rbtayZ47LbZC~YJ$g2Br152dtB=K)E z^zBS6sHsIcgIQ~ma{9EJ{iz3)Fv&gY-B1Z@1j)-DWq6#Bz$52ymbD0n-_a!=XMJvZ z{cTKaO9Ax*lq2j$!WL4#BrkC0*D0LiaDiG=YdkZHd%eO3JMEkX&;ssP8uaO|{J<1Z z1?y!;>ESC02CR<(`H?pRstAUsxW0sPMOSSP{d)^FtR0$+zdq-t>#tc7Zb0R%AL2gV z!TGU%>7-ip=RiSwa--|VH`$M>l(K}#qIK)|fRw)$ikG8dyhhH8MdZ1z3fr>8HDV2mDH-xy7KV_ zoKet2Nq+yg{ZElO{zhqSn%I{phR{%W0-*mVi30eETl-PYW(d}SWHRPNrt>t^2;;D<~QLI1j?j}d>TzW{@>cSK#@coI}4gQ zjEz*$Sykrz>DEtZ2f9f{GThS^#7gP~a9?9cp+QWvdeN#XXKBg2?qDvuTS$70@~Wys zTpSzuN~+U#?~9yd#=-u&oLlHeViRsrXaVR;7gH8*S0Ial=c#1l>`4-6W(!A|veSoo zHJvY@|M~{%h5ZgA(GVu1J*xzh|7IfnmCT}1bDiuPD@`~(@7uri-#HOj33j-_2RE}Q z;l9PkTfq4IZ|7AJWu>~o&BloD1G@U1ZBMDOUe;9Nm1^w>3o%)%;ibNS@p(6mWy2at z9A^JKp#ja6#_9iceCCsdY_sx}g4|GF{=RZpRs@)T0r5Og0ph1$u3SUS-uSrqRqtW| z_hmfFX8hO_QalKMGI~iB#~V{*(J!;NI8XD?3sH;W9j^t%g8=5=0;cYlwmD+Orrtpe z1;Jo;&`5b5?+&%&($?6T$Gv)lf17`)bKx!LuZ}#0_;lefAq*4&>np(hKIb@5M@6-e z4H*@!9MPe8>Qkgj4r(DX#MBCmvLyP z$(fm^!y5gLTwom9;d1vpRvwn z2TXIXW^?J9nGd%0mDyvj(vo_NSL@Lb!yRE+6;*`9$7g)=3X(^BeC!e&IT z?SA3}B$|?^5xw&zr@!z}9lHD}AHgijg(rjr^tkI`%5m}E2f%nKiJ|<{D`Io1K}+8gT#1I-IUyx7*G!vi=T)OFAb$Xp0e5a9WojW0gi$8i z^lP_X#k3Fnj5}n+j^4zp4{kAFyf)hB0iWL+UVU;%Gm}Qt5_He4P7g}TOmxxwfcC2t z&iuFWx?+(Et0%{SoxFUwe`Hz`>T7Jdpa$c4Od^XykUjM~1mJ#+i=mPr3mpd&Z2u?K zx+wTUFTNkdYjAtWGMSH#%0+m^@ zkxd#P{sJ(bWqcO8@fIt622wU1iY2=>+hMua7rZI$;|ND{v4p#y|J!&*>V)Kn&I2O> zw~&{z_mr|u3kkd=|n zdJ#_ZbYIAb-WrVT+v8eOEzGW`2exr1(BiL=!O_H2sceG-$R8Ub9TdOH;6|aBy6%Mlm3rQF8?JcaSk?D%r}g0@zA=5#w;#-hgowe9^>#5%?-9ZqK{V zrvEj6ca*TDWUGTFE1}SXWm<`;{gc1Xu*Z>aC#rmutWi?-mixjL>X=Do)qTCx@C(3c zOY1)WU-S2QTL>Znx7rh?$0B5LlQQu?`Fn5@CR-~0f;sFJ-#m$bnLl@tu_PwRDl!;` zK4Qx@mh9j5SAg|6pbU#bW6?5&%!36<;TDRod9Rf>>z05-WpL}ID~)}!(X^qiA8~zf z75l~phZNBI+Wx3|)y@Li2|lEW5nT|LO#dT(@Nz`ae*PFPf$)7v1;NgtRRk?!Fpn#< zsJpx$DJyg?xlelbef<;u&=7}>h||swD8R>>gr2_bVF44K857H0*&S=UQ!nd5OaB=` z^qpZvev2Be0m8$RaDQ%uujVr^wPzRGbGhUN7v8BvJ>cTkS5xn?F*nJW^hT`-PIiJ@4O9n9Gza_Ve^7jis&}tn>m`{DUs6tIgEzyM;QNs)(tej zCsydW5xI+C4D?ex7zyHzzB)o$nPOFJw%w+cVwMwHJuHPM4TsHiYIfER#lg2-sTqii zdqBK;{0l*zvP*h%`Ca>0r%OmGQc8tk2XabfHh+4;1bp&w&|HP}eZrWB@6oa>Dx1Zf zfcg=-rv+uIpv}y5jHAkMpy7=956&~(R=;en_Be!x)`(Sp+I+o#X_AQfam9}g1dD+? ze&p#2q*zZWKv%B)csJiMPsZXCiLBLn-%QhocpNb=iH%Z5Hzg$#6URJ9x6UQpbyWnC z$HUH6K3{to6L|ouwlkGh<)Slt*Li$oj_MYw^#hM7aL;@G9-(KMM(FD9gu(Srx6zyA zoQF8f8O9G&x2oiv7_Vewjo&xAJ0Zs+*-bJde7e*<@WVLg-YDBz62;Y*Xw^_$OO3CL z*z~fb^jx*kd4}pd<#4!f4`IM9xr5K<8=rk)94KroRP6uRSI+YT5j58*w00IG*8Yty(xE8bilz^M?jlri_(7AEJrHkhDm6t2{m;0C&jX&Av7~;*U zP3sPbi4yh7gfJp@JVI$RY}^;UNaYGiWU_8{d~RZK^{-0MFS)}OCihhK>0dB5lIZgx zz6AGA`g8|4Pie$BmfzkJtl0zFAKV5$@v^WvR1D%~7IHL?0}wA9>>w5z*X9JAHG#kz zAgEo!*skMcZ3WJ^@*XQvkJ@QQ{erV;QmyQfWatR5n?@Q|yfD`&1dy=JSTPlxAfJx>02X`?9~~N}ZgM`{FQAXR4e@wrpCVgy9;|)|nt}*ZW#;G5 z65P!vXC_Nufqrv?A81*l8`~=&q3>Gu_B)k%>%Q@_h9BYdP4AeE0qTF6oVc|5>tSS= z^0c>GnPmqMfBH)}sxmBT2J%e0M#HjMY-#GZdl1LB&$`0<5`xJMD~Eh_PcxFcQ&E|3 zbT#w7+v2)=OD(0nH6sS1hBOrRq^N-S{%lsuiRhR|0|l}A)#cl>6gRp@>C9sE5 zI}w*Em*AUnbuy^G&2ptGK$+-GqA5P75SJTzcU#(gu$~zp`bEVq$#19ksZ%~ECIIRW zC|gXFH$Fr$mjK(w*XWD<^DY+_IxM&U^5ocS@*b~^NOA7!sb{Zp^+LYDSD~&fo@c~P zvNwB#)-*+t;HVr0#;xmo0pu(B%T%Zulot!8sJI!$Zgmzn#V(aRW40XB>G0dyO_sOB zuk#>eNglTscn2f){+hH4_9b9)+0mluS~Kx0L zfjfEFK$q%QE-Uo5daf>!GLQ=sSZZWU&jhIBjHbP8WWy8;o zfnWdj{sbPy?qX&77yGhs!(C}kZ z8KF~6(_deC}Ozt=Ok}gwnh$Ke0GKxVY82 z_T0AC_njcpX9x>fF3H#{Rheo16!Js1OQp}BQ+N`|JWTFl`NA5J$`_4TLu3H?JD7R9 z5}P>}U?McE+g|8T+GYk;FR$=Nb`+3Jbr+cVpjzLuB^(F!--?dX576%%qyCn^!{7UI zuyWW`37?q%;qD?=$}T1A!YuA8IfTsLPhGNN^-9cMF~pbJfdFdf+c7NE=XSW?CYFD_ z5!I~wU0;h0%%r01Tz)5o9_~G|PPkXE4S}#sEPEiFqkx8VzH+lYC=~Oj*JVT*utR0K zQ_`HsD05_V^#eG+7w*o9kW0yp*PbeO=nKCQYA>q86xhs62_S!9ht1XJ?HHWKkW&9c zvLI9K8M!S+Au670Z&$?%o*2ycw@}TmaU}hw)Cu-Q>R;+UfZz9@WZksGsT=rIo=>EJ z1*K>OG|=9X((WQu`QEe{AZhFZ@RFE`DO}`d({fq~?0!lJs|_TC3ZlDx5;Ifpag3vo zU@ zXAJ94I=IaYgB5xQT~WJ#W?+5ei}ciy**hnVNWow7w!*_tZkbYC$Ciw+vV{@ zTGLFgn_go@X=c#wTsZWE%E}m5;es_6SPpttlwsiaTdUsgVoHe2aW6sYq_w zy%kYr|Sus9k5pMBS&2c`G`GIciYSWE!%B{7JldDG%Og z-JNegPkD*}^#zn)lKTUs>K%Tn3qjjx*BG~TcO}%5Vb<2Qa0#Cf?m8p&BWQkuY2{^oZ(Y<=F{6K>Q*Zfz5)s25E?$Z{o9vjf z(}%9cfL>(Ky};G^TmB`JfsXYhvq;D?Tk}gI%qwSpt zeM6G_&QB6r+8~CUSGR-2Mt1`JuFn6uzMUTv9qy#5nWu0-FM6JBjDONM{DPtQF)!jE zC+Z*oCR#5`ZvrSwmI*?IHoT8`4e==Izpn2Ij3^0YeJ>BbcaarILLkAP^c6lc&hCc5 zxqKy_a9=%Kd~_-YL2D&WosU``MFAD2Z2Pb4i@x|J;7hJsvXlTr5f)IW<)8GGcw4L! zZ4t{`m+=`kj4T1qQ1|rN-D!5>lXs91f+qUU+ZU1x_Zk)leXG^9Feb{<-~Dg(#il+o zZ~0YP=s8aC<4e%$(0|>&Z;w-U$)B0kLuZFz`5kbNf2*%{?zH^XD`Qf0OcLha0Qu?P z>g%n$zJ51$HrL)j_R4lhg?5RmAsNm}SJv-3Rz}Ad?w(~A>*Nt<`E0dXpbX_{2lS_Y z)V19P3DSn2m8GNdfXG74a(g)r{1nt^(UY|Gn&{mo6WCG2l+vZA`Y8#%28%PvGrUJVTtDZntnIkwlN#i z6y-Cux*ON~emxav9!@&yLLc@3K9dM)Q0R-W4s{$_fh)bk)1`DD)JN!O%_Dr_n3FW0i@CL*fl8i#OmQYZ#$Fqn>T?rGeKJ>-(3Z%*BwdEA2m#{vDyxMn zQ=>nhN!_E1kI@x~T971qR45qRwDhzR)~r3DY^Z9N!IdngPc|<$fff}fVnR}W|~`ZQ_?`FVbpvlj_)0jWr4TL^r=9RskNnsES3WeB8n04RQD%(Sbmip%?+3bFsFmRQO|= z0>zeVr^V0*bShZ?uzm5w#_aHB+Xe5H$7X&~ezK#2(^O8p1M)%C7LT+Hc;phX=`O+8 z+cC<2pODLE?Yh86f)9k><8rP9NSa0620ppu!)Ly!p*T7JEg!@NH$#U>1>J~^KE}FR zO6ecAYJo*6#J*uW+ckG7&p$x0psykddMA+$-ZZthx)To+isY3)_0>&CQN|@&)Wdr{F)!D=|>_s=2+uF{VfqQ}&=_ zMW}PynAe($tFL)lvYtmDlLo%UxS0v<95ekb{tKug*Jt-G4mCqR^aLN(#&R$=5$nz{ zN;-plbC9}f)%8#PcpWw&JU>La5y#YV>ia#q2?>9~Kw}%_nKGFMxS2uFiM>q0ji)qh zM(dA)&xP6KmS993cFMNVX&P85>bX)A@QQjX>IiM_ZqgfiyQ&QtD!~2}kPpQ!u}gwQ z49~*lmzH6EW)%?RyPS`)>F0=tgVS#${p0=Zq}nHMheH6-#;nLiI>Z~W9|M#H?Wk=27b|Lrp@GA(A~iXl?cGnBw~4N$=e;Y}jGz zIJID~T@9T@1~@LVY&a~jdA7(}mQO#F>bj$Gb*6$pkI4x&-PWr@ zXW8u4O)*2yjqrddqc=ImGz2u-+FPq3-;x8{puG8T;O!gxE?A`4p)}>TN}Fsw!7tAD z?Za7`maT6)kRD|hT-2un&gU3uwS15QLujTLbzB*rtT>r|Kl!U8-W#jL4{L<84WNb- zXUoyMIzDU@Nivo5?wSMY4=5MoP$fxp3A!mXZOGeb1?T<5hyG*!U8TSV#Fz&lx^i>F3TVoX_aux6-% zj9&!Ndp($CyLy`AR;)nNwO(uxAZi#g1Pd!-#rI%mqKJRBTV-QDTBd`^>^c6+0I6EzO_!B?ygAfxiKPCj^Bi+|+{S-d z5Lb8(Wc#=IQ4=NNG-I$^KjOub?-(dDW1%Z6i_$|XX}`Ry#o1+=>j$)7`nUT>W7l6^ zm`suyBWguWv`36H7hmQ}NQ(llHfgBcHe5b{wq^Mtd-^h2Z@-hc4CDpbFnbKgr%V&& zfrzS7%~oEpiwL~XS%lzK6VJE${t#j1-negt%LD^eCH>Tc!9=pH>IRDRK2A8!Rb0Ls z_95OMq1$uO2bYy^xKhh2y>IpZSvj$(o89j#h7qfbX=#Ue4&Y{a+~1-xmG|MT&p z;tNBfHO=IN5fjPpWaXE?jTbT~i*X;ZsC(YlVfjXoJ-q+x@nVm7&>`f4p6zG;nk*6O zSpA>kg`{TF1n7C?v$kk$MXH=zIX_c#%vuANvP#!GaX+;7)ZfMnbbsw*TL04}#LDHq zhlG)bG4R6vj7pEYA{pT>#@V!9F&S$1{1{yG-|9iI1~Z)LY#ghxZp9)Mf)u7*Sxe4X zfAWu+1uLSh2osY0pA0E-#Hbc_gfptnY_QST51icN%xhb5DBWpfC@SB@pEDoxGBi7g z`a(+^+9O`YI}1d!jKzrQ{ND7~zmeX83IjnqS=*rkzHdoqI*HKXdeXj!kL#N~aQ@7| z;h(^ARo-2cz9Z}xzM}cu_`K|grd6pfbiMzD8Y~YOF9BshewJq=!N&`fq&COwk+Q|F z$GchZ4-2T9WKhoFA_uAIy{>tM_!E17t{pzQ5ZRu{Nc;^Gmxb(|#Mx#atq01(y*s1R z1~g*2Vz-LYbpF#ShMC)JuZOmzx+N_n*I94v#p#H> zP+3BFZv=iis|UUjERH6bN?M2=?5pw)%D?p&zrE;}aQD=;pIX zi_UY-CbSeIGGaDhM?g!u870(bxMbQ1EF>^w4e-3xOqriXL-$gFybd^ z`IpF@CU2Smu?}?FYc0>Kf8LM%aP0y4=#u7#1|15#>vb04F=4f8s%E;@=YF(enCT1$ z$JKqtqgxmU2_M~35%^LSfw!qoeSqJ?pXBiZRxiUBn{ulH-M*rQK)9t8Ju;Q8F5Q3` zPD!XNw!8SBhUT@C7CA|Jren9$$H6adY}6lCVYX*l z^OUQnU{;e4@xFF%paD(ya#y+_#`&q5J@;)j0@h#e-rI(PYA}^GL6PG(1cM1XKR+f- zdFQq3#kXF~$P6sKW;IDM)gJ91#X4f>&u>+d6f%T5QA8`GcB*uh2OK0UK8VPsN!CY{ z*iS^SJ)sT(`?HTR;y00BMj>&H()V~CSGmB2dKO0}uKjTca3^9r!L0wbKbxNcH{$ph zJak#%#y0P*b1)Mi6rdS_SCEbx7VkwJ13H8iSE?Ce)tjM^$D z$i4dKArE=@%IKqYfI-VD7nTvxLVEv{@q-2gi7~&4kyn4&R? zcuyC^9kx5x(2(7Ak|N2J2g&wLjXe45g`e6DC}g^X;Qg+RezVePbW0)Df)T2%$Om9O z#_9AMF;9MP1L#PHot5buxikL;~S<;JRu3bJ`Pn1U3PK0 z!q0~Oh$IdzP2|DDu(NW<$_JcR_SG#j3DYY)qP1_I1(G4a+l0U@*T?v9-<+Lva#Ks+Z z*d>Q7-Mp1GXiml-N#*_QOW{{%$FKG@W|F$bw#vp`@~4`)>ugOkyeo}!6F>8ZOV+Xt z>SQQDnr7`esBjoXbWp3rVd8##L1tBYIqPkiw`Dn1?j%DB)a^AJPF>-V6x>y|pNuR)zl>CjvKx(dF_>z$qZNB+&yW@HT*m)QG}kwQ3v;>0AZH=XHG*oEgK zgfxYUgWQ?06iJL1G%0OZka%Di{QAY8<}D`t2wVejH8D6f{5abP<^?9{5px_bzN>A1 z{CxYQ*8+g}F1BADxwEy<#F*!T`$nWVqxoh*MDZ|eF1HIohzCP*uxATLC{KIf8 zTrNga(Y=Bp{xsv|dvNBI$w=eRcw)!5rY_n);rG&;DzLI!dea@CG3eNzomqb6SnuOC z1>f2)UqdumxrH9BXA|AXt)O^?G}z9{n7+*Bws8Bq>)^f8-1C=dTUKSbnsah|^8nKv z*T5b#9573!27jYG>N0z6acQ4em$5 zLQWTdPBV?`Cne=<$jF0UHty+!Il@>`m+m8_k=6X@UDUX^A*+T*D02~@zt&Ic9r28r zwg{4AlE=7N&~Df`J|(+;zjNS|Ul!Ve+xxfv+N)WekAiQ>tVt=eoYgi|oBUux47whV zp^FiT#6z5-_9uKsa3Xz34->H(mvzRMp~M;TA~zAzRr@?Ar0muBG=n!gESfp#=N?)D zd!AL^aJ*nTN5=hQUT#t*RA)?)R7Shs1eUOO5Zw5z`QYqXJ78U+$~n|)h`{AFOuq@l zQfv;TBRg-7?z;>K4F=9lF?nAYX##1-elI2MuI)o|=>evsPRMf`V(+>v6O+c=0w?AomBTe-1V#h=lPjX>=y=ZhURfc1IAI^(@pz;B&n zYD+uHY-F7E8ZoF8g&tC2L;V?r7YI^7Ja^v?)6Wb~rbj+lB;wI)t1@;G%*LhGyyO!{ zT{P9^bWVr*EaA?=93m`>B~(uL!rZ^bb6XCjQ{|Dh+Kx{A2wAYYb!^`|(rO^l9uEN8 zX9P}@{j5ysBhNP}nijdyILs~{J!(+UFKkaJ1X>l2sMX=}_fc zuF(T)pu4(y?l&^52iXOo4BE;k|1v^3T*ZS8~BM zW>y@0{f6mC7_VC{iCp<%Q_BRZr=GI-TUxlzP?F$iqV+K(-M`BVOkF}Eonf$_0h zC?`H`TTd`v%D3mke|jkTE=5_{x2c)`xA{}-0o$I`uljK+T)g6SocOqo-u|I#ciT9< z#L#bzSIRuOiUA$bPiPATXEJzUfkCt#)l}#nmBYm=r7UWU6n%3q|16eBWg;WCL;^xny;B%jpGFB@DEWsRrpL~RO>>o!N@c?p zfFHkn`J{V`LDW8Q7=wc6e`CCYWC^1N$7W|`f1F-?9iAUK4@N@^DJ=okE#<#$+jSXx zjR|4{`RZ0CPT@NWBWVj>GWLD>dKFy}d_L5!sOlX%1vQv}y>Ge-iE76OFrKyw@gGGH ze6txI-#9Y-1rh#YBoSLvQhEh%`UviWzKs8G<0%Yy=6BY8l=mN^DY?_{wqFMk**(C0 zujutKopeJIl%4z-SalM|Fs}Vi?M?iBee$Y6TL%m-yoaLSrNIV2vTq7~PBn)weOZ4n znRo8hoE${!eWno##a3=7qPs~6pueI;=g_7YxRJzUtJQuM|GLgysXcm-kGyPp>}`#QD|K$PY2<7f8nU5wi10& zZOE1!<>$Mn>@GfCdzE^X1+%xa7a>s+3$J2gCztxHrOG;&p&dn(i~4&$n^uEvVqU)7 zDPVI4xkSyHNc;pao&w75%F^vSEMl|wK@+X38;eQY(*^?91XS`x_30P^tsnfPt6#mH zbx|R*C)sx)wUtl+@qswGY|Pzbt1(V&y+6aSyTnxeJg2xZ&g?Uhu!IpL4L|eGf7d%I6&dBmX(^t`{Y8UwE6?U1jbF@8 zY;vD8_Ex!wS_5?_G)Ujn0r3iI3k@FF#YQz)VKTnNGl$Z)YR{egDmha_w6WmKdS&lYugx9-kG1+0o=3gb`v>FdNj1f#bd-X@>k z@)TuGwtSH`?M5Y#9+k=Avd(r*He};bD)Wz4lZ|f_rm<$@#Zb^?9xU+$MlfhQdGV&9 z&KOXK{8i=&*s!n~P)Ur3=H=CmDfd+s*vu;#QcIwg)*^2tzt zI0($x;#ulZpj`))S2?g`n)A#pZDnUM%!{2*Vb74jLesYp-kD_|myazc(qLm?$xx4C zj;ip{Bj^CA2^IG2G36)mww`6U`i>DcBE{Ew!MEL}K>pII0UI-%3e-G~u&Xu*M!^v?;nO;v%=2lwPs;*MwY!(fA(!7Z-)FGrCWD+0`b z^QPm|V$+|OnHNQdwT_(1z0TUiF@d)~WgrQnB8WLqcualm_Na}?lXvP3qfaW3ah*f4 z=B_3ZjD^vl^KV!-HuK-NEplyx;%3f#Yky2!*#u_VwCR4SgVuh33+;R{p^_>e<#9SH zs{dth=m`NqDQIWPZboBeNdNoxuujpN->#gI_$v6=tCc9)tU$WV5NpcM{nGGG9lQ*C zwpP|1c`}VX?Z&pxOQ87Lled?()JzO;pMOd;9JI=S1{4wbAh1AtYo{DNk2cO&t%lM2 zii!q2_YbHC_~W0N!fzxVk1w;E{{M$Bhe!`U#hpharqf%M$t&fT3YZVxXBnz6iv6q8 zL{aQ%rY+AHNMPzkk~kZT@9=}yqfeLs`JyC_@WBsR+04^Up)xmPn`M8?7yTMQxT!5E zOhmbO>-*b4=$awTfgR*IrlIHvc*50y#}JS|LY$0cmFcHQ9%U<_Hcg~>Me-^cuYAaM z4w3gO*aA}XP_m59f$^lAh9@ssXimn13Q#{l8E{`QN5^zATIypnt(pJ#Wcu$G(2_4g z9aR2~mQqaQrl23Nfc+QrSC_3;Z#}TlBI|e;(ZS~$vzdQd;Op_kk?e1RD8}pW#|C;& zutGW!79f?D6nim3vcphxYYFMf>%*9dBSAL5U&!tw1}le3QNfyNM`C^uI1V>=$0YNL zaJ7*xI^<}F%$Crv%BDk|GyL%R%^V{Y^{M?D!N(sN1Pb(J53ByUmydJ|{bW)Zc#^h? z8~e0wxa+cjK0}7(>-UZ%4B8uGKz#vaV?(f}RoXnyj%z#p(I?{$GZHU4F3^k$@{WI| zW(3qSMVgPQCLQ){adP)$@?A1t%k`^^r`a?OovO>LytNh;78B)Zf6;!WDYX%PJlc0( z7SKbb*Fo;_C5_)vdM{TW_eyv-{4OH`_3km;CO5JCHq9^#kxtelzG+xPYgqJ zByc>nm7MY2G*`l@&}CQ6vUB)lw^Tqk3s6-Z+Tg9mU0M{SV3y{W1iQ2#+ndY%o^kDPX+osqp#dbWW7r z%BgRbyCZozCEQu64m!IgM0$zJPL|Y?s_pLth95L?D@RIIkIVbSkIE zcOKZVM@h%QF)|6jd8EK9B+6bwtx!8wm?n;P|JL8~#R|U<%$~$Y^Ei@^P@&aCv3)ai zMT-^|B=DFMQ&u|kMFI5pACIlFOd;vF(_ED;()CBToCis~V<_tLXZ88*+1DV`|7-r< zf$@uR-U)$%*SxEfHnhFvPyYTBYpB6Q=Q4x1hYJE|yl<9+oTDk;UUm{3Qz?UbH@y0P z&EHFP@!Cz;T#tWN)RP$h)^+=nzfb9XLown@>YDtz#e&K&c?qPlgda}d@9u^2`Y5ot z0RN}@4)A+lq+G<)JU74XTxU(ytlGV4i-G%G#2N~8b8owFFz?GacerR1SgMjF1E-IN zf-Y=P3?(zRhGgOSH2!vk8?A~4Sl?M#fH1_|ogr`ebZViqJplhS=dkIgpI-BR4O^o~ zW&`qf)5Vv5`_+vj1|@fMygdf!-x1`#8(TY_h?&#~4!XLmi+O@+!Lge&>1NiX?vCTn zINS@(^um-^5)kB}wK}KY1Ge6r17CJ5ZJe;90Pzk=25GiOBh8ZDcQ$rK z>hl_acn5nw{O^aTP=9H5{3qvRF&x2H7 zc!&Y>H4cU<>1lc0ueCKR)9kBR<56K2W9FVth^rFMEp%bmuYc>mt`&Q$sbH>T6f@;{ zxl21({qQu%3jbkaVP76E5WB$avpNh{_{$O28Ntrx?Aif4lmhxs{+dYBV_c@-bDEZ* zI_b{#QTT83^Z(!eYTgoX4O)VNqKghR%V@Ck`M3URb^;8)Fm4b7-eq@r%W1{@U-#E) z@);pA%@5?Y;kmF$QhC$A_1Aw}Zv*1tC)zSzGe$}U2AG^dOXfYckwtnP?Wnr<3z;EX;t6 zq`O{|y0oY~F8(1rMYz<_TbEn0MhH5U3qw;txXZwp80uTd4nho~D4Y3x!Pzc5W*!*K z3FArd>*?3%%rQ2DRKWWY)*xMn#W>;(TDm=GR8#f2UtWRBK!Y@&C@UmN_boTfR?>+g zU0NIG4na?SYHd#cB2 zp5e6{u>fnKZ@^&VK{?&VD*Qe}L)pxUqJG)kKimE_5*y&%Vfe&_uWfAp>$&*3lH zOK4b;t?qqDvBj-=5$t3fV{cuKolTGu>RW*+3?0 zm`XFvQDBcv!N(-B_#}E`ld@07O5oRY{aW}LAH#YL8@Ui1o)RHl?%!$q$WTik`rLVx z>NlrFv*+aXuKV^iiPQsCY?xprx)Y3Q=Ht53839t4^6<}}oh`WPjVdK#4;9QMW1Bl&f0Iiu zUIj3JtpF7>Mfupg#@>Zff z7;rz+V6-wnDUpELc6#+7jNlW&hdogjqfO46eD`!;r`S)MA1MD;JOgTe!JA#xgx$N%y#(Urc}i}92aL$ zi{p}ipEK2aDc2S`4$Cd98x+OqajaC^F_D}+dG+6EJ;b0l(;yJ#V`yb$8sVRJTTHin za>kKGZC2C60Mr*yMtDWB*{T`PN>E!b4Y(LC!8?Nk?k59gI@*7|w&GBwT;|%k_?0CI zY38*QA%X`IGJgT_f?rwtq1HX7Tu8(WQS+qTi5jm>*r z?>-M19cPTw^S}3Tj{U>hbARj8o@=d90@U|hWBX|%ynS(Bhp}eGhPK##$PfOV-3& z!21Q_vBEdLUGkzj3^nBg_@c57Ic1wa*B;D2w%bM#q_Mg2BNwFO-@B6Zh;Z9# zw>AcJS5wnXu#o?tNmJv~r`5tFq=#i{@O5IE$WjpZ2kNt_D~VVw>BRG_g90 z5w*eHPT68buS8*B$Zj zt-PwJNUM|rn})%0V=PsO%m11^sKezWy%C#pkj6V9BPv29`(1m`qx7LxNt;51jMYg` zQ^-F5U$+NtGO?QlM4er~%5^geemTn5>>*7S57Lu#H(_D&&a}r;>{`g&cm}`2sV;>*+PW9|`@7z}I?tk4L6cDUF ze(!^!*TA0KZVI)kQFfO|uNBe|bi4A)-TrfTEOq$7eyd3DXQ|9jr24t|Jn9AABW^O^zm~ zkdY3Pu!*)5MU{$C@~(n0Zncww)sy;RhpvFZqQLHh=_JpkbMr^Rto4c-wPYtePXf*1 z$M$0l2A&c65iQ_)4MQPrs|S#w#+pF$bm~aO+0+EY{iTJjU(n&Cy-w^~w5j^?%8}wU zGegdOi7aI2#J{_qz5sJfyQ^hsc!)(SlK2O{Y@lN)qmnaz6$7aE;|jwA1yJ9ip^b`- zlTF&^K=L7QwrLy@7%$A?A#mS4LnI51K#$jp+u%G{GgdvyTym|E;7NNUM82WfshRd? zJll-3#Q*iSB-u1iFp<0^Sn4yb=dlcvoLOzRE`?@TcX-ps(DQ9w!%Goh{G_y;zw zg(X=iST=~bN+s#+!Iw%FY50ovMl1WL>&ri#ACv=@IcSRW4TvURJ|aogr5d3ic!k~_ zHi3EN#*z(|$N=>VEA@9tAMO*a+aR*BOAqpr?Qd)6VuoqusmZDYto&#d*p@Ikz#c9& zi}XINr+U0amK+^#`*iVn{0@ciB0o5oL&__i=x)Ni4~0c~!H>47oNDqaSw5sWW$T)% zLeJSGrIU^OzJ)d%#*`l+P+P*u9#~I-eM`it!)&yo`#MWIxtxx-`gQkYW^0U^P~+w~ z%P~plck8L6IZZ#AJ_(t~0mXfZZZ%t|3@Y6V;a?g$Vi;|NSYN^Oun51a*6YRM>i=V8ZRQZH%FOAo-Mx%A(rmpN7L8* z1?HK@!=ZfFnj`OLap(sI_J0~b{%iii14Gd$WAXwvddHvB8#d9B_8u9s>4nVZsFG6}1jPsDJMLl$rN z(>FHxg7;;D;l91sWxgM%pEcn5rQ_ir{638qUC{$Hno!rEBAOx2VB174#{gl(s2S|Z z>SmVefm}>B%bD4v=m4l+c&(n8Dk5;kab*ERQ0b7I3+*6A0$s^wbSsXH+10(^Q!c50 zt)H+{YhdYkzfoPKhvxSgAtrs(prulw$>jTxaK@dz7MqkoRSPnyS{z@=hk}esp8y1) zz7Z2q-6H+Ic3n{6xo(L*etIED<*Rym(}Lx9r-5iK+bWq4WWqV#*}>Vl_zxv}H+;XV z7oV~zihrp6RBZS4U2OYtOQ;F6_;8Q@RE@HcZfWDk>xtL;WhR#={A-Ylb3$@Iej$2< z{rFlg?4Ow6f|QQyp`^6d%&Aa)eYEtWSH~y8O90YA^m!&pq)n}nB({s+-{^#Tw2hOH zA0Ns2@Z8T>g{7UaE^h1Kyqmxb1a`E4V58gFqJE4u+f2YZztWO;Drs%i2=aIJXRDU5 z$s$!`nC9|sA(P_b9|+>B66fLhx7gFVyoj~lw!Nmmd2KyVlqpv(*sXEkEcf@FQzpT* zPcFs0J@|c43d1#NRZ*+wn@GP%gV7&no758|wL}!&7u$TC8SaY3wO`jr?!u<3we4R- zo_kxVM4dSqpAGr8{de`uh$xBW5J@bFVq{)wL765u7w+o!DbST@r>=L+VzF`TzpJm3 z3#_P3B&2F4@>o1=t&m0|HdGzFPw8KDm`6bU-xiayQU#sd|ar({rk`b{4ufmY-CP}iItB7D?Qd6 zULNC>$Rf_)^fbWv_#n+p!BuhbmPiZq$6p(X?sZe$@AoaATRVk3Cov)#<@~OG4!FK@ z{Q_xYp5mTwD)*<$QM@N1J#&j28ThQmY@L_CU29!b{GIJsFeR^jGWPV{Je^KQ(of3V zLf3GoYzN*ba$=#Q>}m+CCIq@=*~+C(Jd2VdcC0-imdFLBB1&v*w3=>q;QatGaQ^`n zTyw`rDR)Lr!PuB!rY{yiz0hlV8DRb;lTMF!hY|4j>mBbF%G*7+ukufio7uZc*TpPX zeK$zeDC}u0MjYckl(W9M!}T-iK>Ywvf9~X_yM_MkN#<4vsx@#H#VFf(?Tq3)Qr;ju ze`UPfWQ6|&7ODxteW{C2_t<1yc>s97Kn#4}$VR*7+&G1zN0;+9>|OArHc&4HT)z`- z#wbCAP2Q<7c!4rLicJq(zjNC@+H1$pk89NWO|Xm?UlI-LO!T=nrQL)VttT)Wy4v7N zZUh_2PwG6LZw4c2%hAC46sR8t({0GsB93=fVoG3HuuXQ@$O3isdjI3##caA^u${L5 zV{Tc{b>ZikY)4EDJJ3K2;QhXa<1~Cbh-?rB#pec^a}fCvfqKE;?O(O%KUD6u!Fk2) znVt8QdisaNb`=K#3M< znq3CQTOSJB7Ms5B#51VoaeeZ7{-EDT(=={PqoA&eL`(%|CI4x>)if!0;`vYsiT|@_ z_1-_zIIM`3jO2&+xU`y|u?NhIgTaG@G@?+Y_JF43B37wu0`H9Hz(7oIm z8+lk_*RlMFO+A806xrYxe!y{oJZmBP@#ZiJVh|XQ+gpQ!FQ)UKdxVKC*S$68+m`<7 zp0AI_p%ZdsHbBXa|I>Kf#Q(U5yh(ctLJ2bva*4kAwY@ad>`oe_z#0*9<;TqMYx*f* zeXfhl_^5eAXkVL4M>NRcO^~9D4&%s{V;)`$Ze-6<6%Jg_*k~C_a~k!ST{vY++WeEl z85pnSVdbA-d_PS*@YX9?UkajGXVJA3tK1_pH=t^)Q2dnUQWUnuZx{zz%s0|=PQzFK z-FPh#9uhtkx@a@f-gKNSwfayyc}ZpizU6r--TfE@(+c6#rE>grO*8g32KTg%JyZv{ z-}+b&3`g`UbPUb1T6_K4*a2#C{lqN~ws@jT6j3k6e!inek&8t2UuDaq!S z$;Giz%2?d2^i%MFMe*N_=ZvK0+$CBpHWYb7^Ws-SSfnyJ`A@%WvSR*H&ICF^GTs|T z>!~SMTOd5jIH?dirvmjf*Hjk}b$1o}QPIUL2E9yXwAzs!%ItHCGLM)uedgQJX5O%~X*>A`a zv<5&xAzJ|JEns}u&{HF&N?Yyp(SF0?u5Uv!;K~1k(JX8dy_7_*LV`=^pT-Bx07_H( zsgdX)nlHy#=5$3U@YNtD7Q6z|`-2s0+V9O?)8iQX9GRxK)}f-yP9Gd;zsQZJb0OnTXrYe4qQ~B<7LFeT&2vlbntwIfD~JX&l}sd+k+U{yerP1` zpYqECsOO0^9MqU993-Qk=a!46r!^M5Ta;TlAK7w7y~EPLw+(yEUwDiuzjG;Nsd9XG zUoO<6EBsIM|Nol5s6RH+mTdmWOx&Sb1zl&y|C+yGVv)h9T_QGl%TMT&R<36JzwR$; z*Swem3+aNLhyyU979di7*I!`6qDogG1&zX^ufRKq3_AT&e}TcKKTD)-cumv8|Lem4 zar=wyg>F__D;{$oD#t=`jp^(ZZpG7$JnZSBfr#ESC4Hv=*KMdCkJ2MrbB8_7U)xFF zdgf4DAV zt5k3M<*V|8-a{F{6rAtc;ojDCN&6^y0z*Si5cbm!J?`5wZDOvxp3rm8Rl{lwy5t{DHW24G@>grX@TJ2 zaOts3KDfOlx&e-xmBgouhEL39*Iv6)Gw=nQq z6rrbE%PMp1%vHg95Lp^(XwSgzPvc1jHg zQStEOr8q1}HWt%FF?XXm@bj|J@oD`{#?t0^)*Xatvfs{r*g6HUoKCd6ELc0u5whSB}5Cfk#eAAZO$6=pR2v=D3AC)1Z>B7bHmgG0bC0FyJeDb~T z{^|U_p%!xyN2(7+zM?H4w+A@|jt7W=^E<^sEaWRK+~LoqR?4$+KhS&bF&XI40Dfa$ zXydh!?vtGg^xi5F7rXm zw`8{wB%vuEZIR*WnW`UfI4`59M!c!HS&+Kcp2{H7)%#|XdB>dgSf9MhxuJ#zixrp} zoB{klaP#8~y^%K5y)PzH0v9rmW0f2zmuj<$9D)jYo;SPifS(6qFvuaB+N&%>^)v~Y zB7L5;J`Ax7(3>~a6l;hLw)F#ATKAVJ)OeYg7}&BL1?~OotB#Hvro;EVUl#0lEYooJ ze%GJ(eQk@Twj9yl^j|KlEP;G={|%@Yd<2`gk?lGu1JD&d-vV$>g_-9pp_b(I8q8%< zyfmBeZFpUEMV9``rVdk~9}fo128a%8m1(!?ZWZTS0!Ubf}cHjW3{+*m1dr{_ui*!Lcq88JhitKx|rIHIsW|JH1pYt zwR44ts09YAfyyNB_*HRh3hr!Y3%Il`_~wvZvZOFu);{q6n6G}JdN(W|Az&BgMtSe_ z|I_D){zyM~o2;tzh9o{MW{J zE@N?ALHZ&#x(H^BvVwU0UmM?qF@};Yd`fK?$jmU)M_X4MlDa{JSo6iJt#)P}t^=E3}^5wpxD zI0ROFi3V&Nwp+FGi{TecIyvn~N09rdtfaw@70#&a4E(69KUHbsnAqObz=-S~iZ>+z ze;+_sQrssd@AfN!a=e;A@zWXD*2^SeIX9ikj(1?$nFNTy-+RqIMbBoj z+Cz2TPJNa&Iy7Nj`lt4(nV&+V&{GpAHh19HUJC_I~K!=5GbHGr!GxW4&D${HHEr+&ER;c5tm{5Tg38i?(U1 zak4+n-zTkz?~p}$)kjvxq3mkI&!Z~IIa@Q|*_f96>_F&x{_zP`C5zbfKl=laVVDIrmKK|+P-7Y!RLv|Uj ziuNR1sIaisW?UJqJDGk3Ii?hn<3I=dTmR|JAQe@|3jfxh`?tsU?9|y)33{T9cq90zz6dKEto+>%y|)Y*_o%%nTm(7pPe0$f zWXU$37o~s@gRARp;)XAm{6cwftND_isO6b=BxmMD{)TgJ|V3?tKZ?O=Cm!kgx_Xe_JcdUI+`? zKh0lX_6nFR-qi6kwraNgV-Z6Kw6W=-aSin;*S*^=rlF?^TL8|30{a-D+Ex zSV+B_t}R&~h#|uNHrGsFrT`4V?QiE%|J(Mbiw_<0c(amd&%-OD+5jKpVkHVY?>QWr z-X1U_I%5a^r}-PZ!B0Yb7sc~aUZw6cDO!JJ9j3l@MSJ|*aj(WOVdJkqJ-+i*VFVJC zl`Sj_=j+*65Rv+Kcg9thdle^d3rMF9=yCt__^SDuV;!ghLd!mlfY5qxEN;FPz5-|P z{kkX#&aeXCbNHvnmq^DEJ+9A*R`8Q+GJX&_m*M1jWD=i+Il9M@1S4&A?N5&nA@orv zoA}Q55Ucmel=``Jt=Yoh3$0DTP?5{LiH*k}uYXmwO>;H`HeuAA`9IpxCf#{hAgoiZ znigc&ynlpPS`qoT`3tH}($qLoOskPAvplz62(zTztGBO7?%6AR=j0OM#qlMSUI9+} z4dS%~3Rmyg(H-!7T6&KkQtiP}j2jS~axp2EHYqdQJc7d?^2R7M%F6cH&(`DJir}#| zdmBJ?r7R8eH&hy$p6+yr&R!SbV5Ykb+!U_&o@M7+v2(;@+n zZIiylexyC}_u+2J^1b%^C+DsXJEyN7lhtEWpH&GWnDK>9-^+TBR;h|Ix)|GGM{>pn z7no(W(4C)T4Zf*gd|MBEzYKgHK-`U9G2V_BnNqETW9oCW6@(J(QPwBFx={cQWs&p= zKKZrtO-&XedY#&TX6m3UgBPt-FWmmkK5%#Z94~*AgwpnkWt;%x5~6YKix-n0YcbTZz0NadDimxKV68+X2p$atsC` zUYWt=^4Q++=X8{#V&BhxV6{b79wjE0LwVlD9AVaT`ej;jF)eiI= z{&lJ?VVeSwpVx2=6eg|`xIR)4=Y$Glu1;Q4`n>HXQ`F=1H{a-Eu$^L{9=_#Uer~w# z5&7U>M^UgM>#T-&D5b|{s`b0bi`mT;Y=nPLvP)af0Xu(N@kyAIk~v6Cn7V9}8AL0m zOUw0_nK2i}T#0>HYqaFpLI2``t-+CBg30qG^u$a-Np#SvSv3dE#}k)ri0AGQY{|JH zQZ}GaJI=Ouh;!)Q&g>iEG=LIo>s4t!7TOfkI_4vK-@*4+R7feR!v-&o2}ICY9TV5x1Q>`v8zF{ zGk&@*hm-&4I~6FHay{pAwH(Hq&Ea^Jo7_XEa(%T{%DT;YYHO*kfv~lCfQU;Cp}eZ3 z1xYO?$v^(^;ASq$#VDnPlsh8!sRn$RN!({GF(&haAKTlf4|J*?=XW1*QTsy~e~j#D z+hA&yhWX7 zasggk%NQzkla-6vb#LoED79KtL~$g@~fG=#M&-v(+Be=`PrXJfDiV=~Uz{ z&;dMOsuuYfUVLR)hf>nh2?6gaRXm$W@*%VB^DVUtGx`m2TTHo!!sq54goV`75S-5kW!K3K?=+7J?+hvDKokJ1ZD?6`@iss|a4 zH8;#7d=>)5ktxLggx2)sXHD@Hf?16BQy=iWs*!ofXH83=Ps)=xo02LPf6Hfqd;u{7 zcr8MTjdAAc#Xj8y_1ij7g@iJ8T{VFScJileSagz*ZedLi3Uh@IMj86>MPbBGTxgZN z$t?bi{3%Q|T7~+~X*RQ7sF0MSUYWeHMTbdbn&UJp)||vP(v-Sjx*ZVam=q4+(zpWS z#nYSRi&joo?b2mCcc$X5)iLQPv+YCIN__aGW-f}`Aa7wjM!iBpW*VD6&ccI;zO(&) zeNG!cewnQEObU)>kP6)}Etn*hQZj(v>FzC;Y?qU?Kxt=o>*U~XZ9q1%_LOf>rA|pfRm}|%dnOZ(mo9+$U-x&u zYegDzs~NYt1-DjOr1w)5xr&X#n!6Xona(iII~BBQUTOX81j=E<8=Z5eaO&Vdf9IDd zM>~d0YZH5wH-Vc0lWKQ=-_q*Gd$Fo$kWqOh^S6FFkiRK?kIsxZv`xGzsw^C4w}_v7 zpuCKd%lY8kwlf!MlzIPk{un!!Qyxm*7M;zQd53m4zY7}{A-ksGX=)~T-yN?B_nt|xPWD+Mv#da^~-k}`7 zVCB(&GHm<#EDgvP5dW|9cV(24L}2e+J)!6DG-dkD@HPIn!+zqg63DeGIH@h(_|EwJ z|IVMvyX~z(|BSo`E!KP8inE^A_yf-0(=No(p>U`CY@dAitI&Se|KIFS#Jz%@jC(1r z1J$p!g4{d!clj%-j_EsHq7Be}?_Rd{Cduu0`6DaG9gl#;D7m9`X~lO3hd`+LipV5J zqj!Y)txX~f>re~nB}b3EA(Jp?vP^0n3goqXrC8-iKF4xwrZyqLBI@vA!ImGxM2rgM zFim^|*;yTm9-BY8CwO6Amf)`p``3wdi`-?dbX&zkrX5eL8$y!8zUGwQPqhLg5aE&C zozX90zXbcSso(kEaZCi$&Lh@~cLM8)t_{<%(Cz>(Oh*l+xm1xaF+PRIpYqLOk`CZU zO$oPKE@{P`VsUd@=50R0&d1J`G)DrYxQjw*!F z_nJ$tuh5UMdU6FF@#nS3w*>7n$)&gg_Xp4(hbts4r--3jzX=U1EIG1MlU4WJx}3$O zQDDb(lG2BQHFz4Be&JT*oK@CmgguvsN)9=Y;9EE$iUDWQ6LuDcAo~(X5&(g%&yYS` zAe0K$24zipiUaG_U+vP%d6>gtJKQSyXz>QG`hOr_bTK%anda9%c4&@z zQyo094eKumLeAYN!S$LV^Hz4z!2KFky!2HoTLg}1w>wP;;C=ICX{mZFg_Eg zen202|1J~1;zD(t%$})N-sf!;>a}JEjf+Vp4@_sRHTRwH-eFyLOGxP0n^_Lz07G#_ zu^490R9XVX*Tz7>P{gdkH|PauhK3Q`!43RcgKh0Zzn20YUcLn zZJ0}jYJc|;Knf5|K@Ob8S*E9k*E#I_Buy(kGA^NW09SKsTWU9mUdyx(-dh~6JAF|< z_@-s1AMytW#_#q+DpM%Xf2CDZ7rlq(A-_kToxpOgI#w=S9E?h5b^6r`30%LQT`hJH z>y_ThvZjfVah)*hfqI%o_ZaBc4YT22vQ(tSOD9dBt?RP_$5qN{)P02Uqxh)qGcCrY z&WG;;AaULMPUqZcU*Ny(GKdh-&gPt|0PD{$Y_y=wLBFV7yP`2Tz)sE+S;!`3%Pq+`$QN^jqpz}zcCzZf9GTuT(#$={2IlpVB zSbA4Je!WI@g|}-m4)L{=^|V*}ck8F(2hwlQ$Ac z4D|%B^*in$rm~wh%xgpfxbLYqua~L`y`!YIut&ADD#`-5t%ucL~M~&RIm!;eHnM@tP`2@siT(%w| zth?j;>JeS8JjpmnQQ=?(bF9Mw*BA@qS6ryC?H}N(L0(#j;~P|NA|F!OvG5>DqGtv} z%$%E81?z8(f$7oi*R)iKnn^{oJS*lq$7(Jyej7&`b6{ydoB2S$1k?;}fq528`f{*477OIj(Za$k-Rg!aA6F&AFld>d03)|!tDcs|o#%Yb6u1b^ek z6jSJ7mcn@-b(JvkmR;A!=ab#NYBFzeB5!0$6=mwp;{f|7ciP9ZPiVZm;EHT zV^}C0CVlYJn0M3KXS`ZKK7cr2BYXM^*%56>Fuys14}ZCfmv4cgzyH~7hndeGnuP(& z^K8+opr$>y;mMJuzU}$7es*%sv}}LL;1w=Ifc*Q|5-DcIFo8z74r09ijha51r-2zt zg85an3#!ZYVmR!aqzC=hj5WB^4`2ypF^s&Tl@ihZ0es$-t^_~A+waFMBm~#}gTxD< z7^V=%%3P$gHAsNawTZ-bvxU@>;X_}Ibs{x)W#9Y#Hp_!=iX z?ZBOrD$Y;ZfhJYl=1Z3cJ&k?!n=lMUW|L#Olh6KJo`}MBfC`=LvwfCu8C{s5u_v zdOmfm(6nnbGr+0xVWHqSWdZpCVoYnZqL-vdm9qGH!(UrXl)3{gMBnJVYfAJ*jFN2@ z<^Qxln)MXf&ferhd>FZS;n}Gv4r%X~It)wkkIz7+4>F!H=f+{^a01u69p% z)4iDk^hX54CDrxc9$Al@ngq=gBwn3wB|=tIS@(EP*5l;4@>utaehec1+T%?zOCCDT zil=Nje>#8EM-OokUp?EFSyX!3rCi3ai4C~S`J_Suo{(gI;^@Z?%pW(Z+V@sc<(f9+ z#woyEm-uIFj@6#IWUuOrFF3u{i~83&+@BURk5q?!A}b8?`t*SI@)}M%?-_bZ|78n4 z_#O1jSRnDgmLJtZRAHAw35&CyXty6JOOC$x*=unxwoDqbBARykBxxXV^8P%VMDI3B zJO<(OCAKIqKk9Q@vYcw5mqqkFnp>uG&tT~2Ww4lztYMW z)0=bsZ5w$@=%1c%vQnuX7tbVR^lbfv&hzV#%rhsc#j&-wBclVNIn9)rE++j6>n5=o zB$X%DplZ{F=B%Z#_i_HjlY^0iis^T*!1-pk7~d~xsSV-y9eON@gZFRx1E4+C!<^xN z(v(04BhqlDRPb~kE4Y3eG+0uS!lm}Z9fZL1PscZ*rFw?RaZ<`9L94BJ!9iy%X|SnS z)qd3jwsJyg&oX@*ewJmy&$`h9U}OU?{z~D%_=d&j-kr5?g?M%AfrVW|d6}`>``&Hd zG(HN|jS-m?P4!pgWP=;mERV(M~WEyXFTDl*k2_FR9St zSYuM^$b{6PA`*(!qlK)7Y8jp%J(uij?a%By5@OkX2%GQLunL{&d9y%SQ#6nxBrjl@|?{U@*%H^D6b!`zelSl*6 z2C9cX?Mr#l#FhBcW2Y`|TjebB*A+nx!lODkI?`k&xS`%me58!)OQ#LeTMxtr_KPe@ z@({7aIg>fGp!-V-G~bSa>0>_BGHqTjFB*4Q)%Gf$=%u-gbzbUro_YFJ%9)h$5ZRKA zK-j@aSY^`~))nazWj1PTK{LB{OT<;WTj*Tk+B7$)Xi6v0uJxf6cO?6G6R=@!%q3;n zh>3m-M|gF8-qBc<4x*R3Y$&3odl;ecdqkW>Lma5+8f4;;DRB57x|HIy5F!JQ6(ly2 zN;x|plwZpqT@16zgtNUAS>Qlczno^(e{>&Qvu zVOw=r8Mb94%_eqoXWnZ+Z+-X;g8;uP2^s`mkp(;!dNuTP2iPBSic3Z{rSFq3+;xh^ zOvTKe4D{&_n;Gj2)fRKK<$c2o><_I;!KZ>t?rO33l^JeHcSr)~%WIhG32UO=4^E92 z*V;dVoZYqKxMxIvc*xzuHkCPO#*gE*_j@VeQ_z9(F`{fi<)%YFX=sxzTM`qemrSZY znHGe~ID86!ui$6kIY2ig3-);>8WZ|_cFVz|XVzoTCU$)dm)gH8Ws$XHcnhBMt1Qh} z_?rW$iyt2MnvNrdvv}etVKc_*Q&RpT3S+HDc7=J`30o%*_u~z#TULlp(v1YQ1LOIw z3)2q5-un5oT<=Z0{lJXV4jSM)pxwQ@=U#rI+ zH$T+pTF(lP9)4J_yKk19j0z!%dVdf&P z-BNR{ioe-Taff_}_7xx0xA5c?#fIRe}j)kMbsGK6dNGc;U zdgpFHGkfn2zbG{jG%=;Tkz$pSXTN<-xr)M@nA?5R6_n5pjq?Jp z-~uvgS5L#6I-sVV^YJHsl*V1+15R2#!J-~=tIlijiT!pToQ!5q7iN)M@$J}GKGR4? z3c@)lW%pI_z1s?x90h62y|zU>g~|Nt4<-d9H!$m@@$em$k@qNR+jJsNVNJ1o5AN8@ zaX2g|J@aBqBEWjIU`1@TF&6JLF4WzVOM?X~`4d87(1o)Lz{Il7=V4~yb#|8{=j3YXDb z2RPg9W)6~d#LcEYwm&!mipeE$21J77hZW0DewBW0t?%OwDdX!nAa)E?i~t7xmV=$PN^cFwEUB?+{xSPqub7dc#dycfvX_giz(u zfqH@Fpr1;#=9je9^fR0%Ajyfq`+p7NEk>ZzO}Tf@F)3gq6l7wEO;eESsi?nPN2gFE zY;c>smJhER*NJ3lffQ{TNyvm}DNN&7PDKqqdHQI0m&ttF5pMT2$YfMV`awy?^Ri=~ z{Dg}k8+jW!5yW=JCqb6!`qS2ZWBu`9ImMa*LstHFHv3`Zrbm?+!oSj&nn2d!1uix# z-)09v9^Uf(n-;4W@fszo(z0nuStYZ66h}R3sl!+P zINPZEiFyuf4C0gkPi$a65a>?`Bqv?8^z?{%80ssQ+ArIs?(i{r8aoiX?ki@$7eV|@ z&keK}`);};3f5C?*O;_7ivgFQ8#yPRyw0V_PTkm+_hiVC{_Xk0_U5gCqu5Xho}wot z4P;7Z43S7g4()K3w-9$X*Mr4hPVN7mKP3aKN%Kl;1vT-_V}7EtVDuqB-3pkt5;hMT z6=l6D;1--ohS^ZRR2`Y`CQ$Jx{cZglkPjg4?k)2px{x{KLBEDn4rxsM)AllEO%=SW z+}T1{ezf^j#wTUMGXI`^j>7#6FDY?n*69M+uPLof{05Uo$ww~|F%mz^$Px5wD=&_W zMkw;ob%r?bK0tT5($h4Ws!Y&jl_>dGv=DgzK>S~`7g_GlsQfq@^0Jd3RcVN2wtm-M zbP|?(b3P!1pO7WQ|0>tr`hU${>P;|g?HkOKg|`TI2xDR-U$YmWe=)b?opgx&!NtVd z7WS)wvGsTDMQY%yTvWaAm)n|exJzNdVJ&luAH>l`-bYMlR2AoQGW^^5{y@01os7>y z&Ra6M4up!uB>y;`%E0|Ko8}m+Iowe`7GS>5++0=NDqsh>)RU|tRHnFt(nA&pF6eXA zIWZT{TZWzic0rhpY9pwon?aH_L2mB~oG-6oZr7}4-w}FkQGo$z5L*$@KOLWw`zsge zt$y&s=uX#xYdtH@dCTH)%dF3Qx`0 zH#v#DKG0{Y0itPl_QgxA0vH-(VH zoygoy4L;V<;>d(u#*EfZiUUbeNhwz-R{yZcfk zv|x~OF=&=v+j5}`HIyyo-$qr~Q|nTep;$ZWDhrNxH(KBR8Xv&x8X6+bWsCbB#qLdv z;pO=dUbH0`+0bYS4eQaey^#*#X0_^%+=DbRha`Sy2LZAHtmbULVgm7hRP0K#m+2TR z-%0dna-*iY?fg=EnF1p%NqpEBMV&*UdStEVW4~D{`R-LGg~S-@P0BHOq6#}Bm|T}X z@fa`l(O4iA+F)z~i#8hKTEw8UI4%7_pByACzqa5l#FHSLR6-$T^MZr;`crlndn2Ut zMnwhRw}WIulQAKTd6*BZ{<2W8d`l$iIS$cVI=$zIPG=c!JPbNup21CBH%gd(zOYn+ zA5(xEB-Gw}eg5ogtE?<8lmOa?HUGQyGs#WRCsxbnG$jkTeN?jzxzx_AC=?a>BKDOn zQ!Bz~xYzQ3;QMfWBTy^MoE8?tqv3Qdff^TlYjCb%+!05Q2itW|E_%WFr^mPZ&dbEG z->6s%rXc5J?(HmflpsRmqaz6WBcji|dz6>ZA32=C^t1!swLoeI>3Y*$5vSu8c|D!< z$g4|LLPVt2N};lHRuvH`qrR_-a?GC%98zjs%g&I)>{%%?DuO1rn}vkkPum9hj$)zG zy?|vL$xI7z?oZRR8!qX~1f}Y?fl{XKy-}w9u?kTMXfHs#WYmDx&kfZvRQoO2U($1e zv%FY6GlrEkL+RKN0js5@*SGPku_=g{|9qc(os7lkHGP+K8CYAdyf5U;L(clD+hj!_ z7OA>i&5ZFVr!Dk;XAHTImcS2}qNSM``#Q{=G5T($7dqx6(O{}X30d&y+3Ac-3t{yZ zlJj4tFG3~;G_&_w&-D=2pflQc85!mey})WuzNKh?$AIZ>WwhH zPo_co`7H^{@cW`THz|iW88^29PK^)Jj0YumFxZnY2>D4;d#%dM&1?R+z@f5-FicdI z8t#~bND17cTu7i-B=3Du++&}EloONR$xo;7*)S9#w7usdR6jxAHxs>sDi6`8T-Tu| zSu}P!P%mM_cJv^~&0luDitt7-A+C&BG~JnC#F(_$1@Y)`LIgIrU@X?gh)eH>KnM)w z_>=@_4{(^JQr2C97DeyLMZP_Tl0OQ6;0q=a4oVlMiQ0^J*IjSE}_Ndhr7xJu1GJ(Xo!}&X*-Rv6@owmyKmm zEC;WLTEgh3c2qnTSh+TBL9*9GBO0zq0QqQ%q$XiEo@%Sb@iwxo=nIeoPaEt z6dqZY5#prmzt-Z&S<^R(fqDAzp^TA+57 zej_vg{rIPHZ_?MLjrd$K7-Y?SL-jn+xF1ac0}kWH2|>%>3Gu+SqSn8deT&aP**CP2 zS(;-V+UiV;6rNM+BLvO`G?ySfD?!XU;ABzsQ z1?<f4SvaO!$_^!-Qg7aF zA`U8{*ZNoBJ2y@rkWU19cyLqO&YS(mp$>a->O{xyAu}pumF0#gj&%Z4D>*gZf2TajcF>o{@>et(p8Pi$p8gntdf1Or~ zN~Bmc#`rZxdUt)UZJ}~SlgC(O&3VrW=SO6R{qO22P9gCaWv?tH^|FP#CVPvnPfi7q z@iSmKm|Iw|MJfzzUemuJDw9>sa#tjysj~{4c5+(M z1j)x1RSp@9Mca^S+-6fMY`C-5ae=hOZT;0OR=hc`&lh%MkC`X#DPc42uAF?k<289f z&&bAKJwrhaPGg1jnWw9Ip@8kmovp3#bN1VEUD2iCuVi#vt?Fxqu=CPNyNphKVPJB~ zP)F%#Hk+z3kdkW7oJ!_svh6{roX&D#`(HA>!?bHHe>Z<7i0k~dDy|f#Dp-t{ zVso%(kEjMYB1EWq(xWeJ+VM+W=$@v_b6+p1X~Wx9OtzNywSIZ_Qsla$C(SVk-<;wA zqI5SuWHaN>=yt*PS>vE2tSM|BRG*m9ojQcatL^MMNu`j0{c~D|d+b@YnGmQZI1P-v zMwa3``x&3boeoE8mn;mp!pake$oJpQ7tN@u^J~zx#st}YL!Hgo`Cz0X_@SdSnpvKr zXd@uhb+n-{LbyyDe!Mt}1oWljoOe#z!x@!&{B*-rTlqvy7G8mf;W@y;t&0tuPe82b zMk;2|)VD;fN(sSYDK>{V%I<20D%zSgo0`cfPl5fX{m~wjCtKC01_oopDUR)h?^H>n z9b*fuikfj09rN~tJjy_Sv>(kP^r4Ig3<`D^l5}b!qg&{6^SM{ud4^+B)^Rj>M+Zpi zjwHo*@bV$`f?nqC#Y%j!duIJyS#^e?=H?LVyw(=Q#U0974*z|LLJ-XGM8xbO4f#Nrx|v z0m4(5TmRd2zjb;g9&b>b*fH{n6IvIqE;}p6(`)>w8phRTT7JAxSZO+f(Ed>uD0ay{88^lN=10EX0fz!vcFR9McgeKDJ3S?TxjHV?1a<#X8s*sYkc4TT6_a>-*y~Y;<$KZuF9Pnf4NjFf`=hde-m9Nm$XuJ zF^aWC6hMl?zv*6a0zDKdz}73AV4tN&s=r9|97MgWmH!9RMaR1wS zit}SZO`4u$OjCU{5|@Ftp5#DxrPZ3GaB~OTBW-Th<&?NUaoVNDez5p5R!;^P&kDo(pdQmgUCzIu`bw1|>)OQ)s z)81@|9N@}Z_q_|N*eO+xW1cswxfT;w{))$?G`)gEV6JGxjNbM<5+_h6-(e557a(4T zH#iq7EGPZQ5yFrWveHjdQ`~P;sum9tJMAmin0%ayL0&Zl z>bu19$ZC7!q}%yyLBACstPcVG(M)pwmq~&%_eBlL#>sCrP36wJRZr!|2?(PIZ+&j_ zYJq$JG0-2e)y)y_bu(Rp@3(eqpQ$M|Cj50AR>)sj6#dMP7Q#Vd;Ch^D42L7W%>TpO zHAeUKblnDxZL6`>*tTukww*M#ZQHh*G;ET_R%7G+fBwB6vbrAh`MB5IJ9o{TJ2QLE z%sG2LqwpZ~>5A1%2F(4)gBdysX7==cy%@UdK+6FxR;N{bDmeWfRLewbKS!fV!OOGG zc3)d6+FMc61#rKQ*-c(5Y;N;~)`$}LNj^E%`X>Vh4_OebNudMi#BUPHf?u3@HXM{Z zQN>h8nsacQRc_fuaJbGh7i|Tw8F{-|&vh}4rAz9`+50%y4FsxSmC%svy+NY*=G*6hD-aWBu-HI|7HIx#^Y#4SInL zWLN@PPCt8BJZLt0mI~pe3upu6j~Ap3Bt-aoa!*X6Quk-JT8P@D2|v6xL#?h(Ys^L< z9c0;5v*TE3=*>XzWL|f@qkR@6_0q2n_N^Vuve5@$ZuB7cPZ=oaPKBiR;@s^=VfKa< zS27)$r$6cHm=)jpdYLnY3#1DDlcD7({4M9?>}mQGZf^d|^)5YFUywn`# zag9w@bI@bdhfw3eBwrj7rZ`Oc@`JKVVcq1LV{>-kIA{aL-}`^2(bY$R zq;!Lfx4Lq>uR~WWCVM})Olb_2bMvI;a|GqL~bW;A9ox)K@}j|RZkviAZ8^U6JyrWy}gYSgqe|ktgZJNk@^{l9cAJk zg5+*5a{lDuESfve5<8Jhc(NyOWw;P+L`f$f9K)iys~7dU})PAAZ=83?ujI!DB~ z65u-EaF#-D3m9HIy%;` zzj%B5em4Fi#>y(`6-#kFnx$`kCamO*bSO%8pL$(tD?$*|6o0V{R2(6@WE%e|wL}s; zEUWk1cFsmmI!U8io4p~M9Dxa6UKLdt&b$rp;UczAj?=xk^%1BK$#oH_tshsc?EoocyqkNMCt{sMcRxdRR11hem zN|zh}PMRP7UK9_3PchP2!b3`q*=ssc^As0bhW4TUZCC~!RQ*WbYZIfvkNd38gOa~# znPk+C2@@(1xYw#t{5_pI2<-6ftQ`ir$C=~5%mVrolSUk}u!S<|NO+r)Md=aE*swcZ z7-L~)@eK`pZHv+!Oo*jtO=fK`fwN(x6gE*=?s}&1i}Oc?2Cz@PNT&vi0Qn6V(b-Uo z93KPFMwWQ9^EUEZBas`TI%LXXG_`c5(SqbL8 zRjgEugw2=^ZiGKK=#c`IH}{|rqq~0vWM?PqvhNmS`16K`Cb-!jLH<8I4Z!iFmetI% zyOvXLoVM(x#-8ElPHB|e5K#Mm+bG@elC@>OyvieV(QYmODMm{(I{_*ekpF!rWb@xc z<6$}Orm4XhZ?Zm;fM5Tv`L&x9ZC6T2ay=BdKK&fRm}*(}Q4@lhVt3H2H7P*Q`XTD= zzAKkNxVlUGbWq;fHu4l=QU@3Y#5$=X*{sYhTa`F$+N9q9nS@I~jFnF*y2uh#;DE_8 z%UEdsj*=FcyoX0fV?x?R6^UgD-LUx~tOWWofkAo7R9&E6At1dlki3(QKfJz1{=1`L z@ausMn3WS8IArxP=JP#Z`#-|MjcGP2sj@>S<}~^JRAN2x((f;mh&p7Q=^0$_pBx25 zQG|<@2cV!{bZIn!F`|}{kTmm+9hC8+;}_wZjX-@$ph<$)>3Z`J5sRkl-{Ux1oOqpQ zUkHcXX>skYRlN~LB%sNQDLI8m5!+W$jmlX!h5NW~Zca3RQpIr{cxWT6Ssr)cxY0Ba zMhO{)RJ6YNbGW@l>?i3ZVW3m;>)Y#wQrDE_iZ!Pws(KAK(!f;i_;=ZV1w~@UZwY1v zLT8{2w^!H0doLWB$AY2BGDMTmYT0qfl}fVKXcww)#T( zQGdK@#j^Sd^%EFWWT|=`kZmF-*1C;b*u1%n8QCv?k-Ylb<4J7~P2C)3G_~Gjb#&EA z=_DyEWd-7g?-giO%2v+k#u=dhBBa#T&fT5pa6#_maahxvu*ybCK>8;KGzD5>aa(rFJq9twk8-!dTQ}D3re{kOVm(Ed`}8ACDN@@ak%}=%73P!2vcEe z3)aUhH3Cx2gz&Sk%i(ABOZ>H8_w;Vo=(yG)FwXJ_6OrhB-t^0zcTfHREI}G`|JHBd zYT?&eKF`szh3%qTqIKU-gsDvGyf@{>TeJmYG@dh4jEVIL*~z1S8jr5m6+kO#cu7O^ z8Hu)J5DfcouTLzQvN0?$=J+es+SX4Y#D;+W9OPejOd1IlmNceH{Y=%`p8?k=(g;&> ztx3M~z3@(=?$qknXHk)|%Z?4`8dnT{WvcNH`3zt_rBP0q`)GP)wCEXOe@D#`=fBPO zBHH3_hMqXiIDP=@E~o8c!`DxYpNl&^pUpt=O973=1Ma_l^eMF@z6V-~sgdwfq5-)c ztqUX)@H2{*&iE{~NTgCI%da%ML-)95@US~6AK`s?|Ca0GtHTkFvP@I!!MD))-uIVY zc&I4IhUn|_7YU}{-lBEUK8(5Ap&48AddWD>HWz^Br6sX^TQk^AVtjL5JXev!7eC-V zd>Iz)cGa6c_c5=(pTtuBd{G4pqq7Bwf9 zU-m~xjYzR#>af|*5D6dRBt#J}t!c0k7fNdwi&XOO|3p8+OS)FzSdXhgU?VdWWmP~( zF8%Bj+dsP)%qlkuGfG5Al9%C%NQaR$?DO;9biZ=_nGI@+))89TtucnE0Y&A7{YQ6l z%gdjhPb?dA2d0x+3Uw2~$qhoR@f*Ty3Px23PYoB}+MKR_`tsjizZ*c)fM(!v7=1i& zd7MPY7WAErLA+$+6GQuwF58efvH{ocHT)|G^)pLfG}F(B8?_ynfbmp4QAT%8D|9l2 zpJNUc*2S_vTAu*Rx59A(V9Pk7(qk#w)-wf8|Mq+{ST=8Zqn9*2;Ue*fnfYu0=&zaW zto!W+8uG#_n2oMye*6FUFzkIRuic1DM7lt!%l9;jj6a=kf__@I!4d=riwbpR-jigY zp%mq-Tvm736aPk!$YyuU1>?iSO^{B1{3HbH)d8;f|MF`C_V2$N%QWt9?3f0?LV=aj zHl6aAAq*<)hufhEnPK`8^}J&u{=2{TQGLvxMp$WQ9fvT!82QU(-fS`W-6*^rE(;@M z`-oUEX-EO;7k*UVzgj-DmqebGhIOiyG`9Mt(BX#g#KTq+-t{m(BrBdzli1BV&wLDn zW&7n*7E$>eyDRv=`n`|duU#ppV8x+G%-$#7QeA$2qXimse5m3%i&##q8;*i|2GrC0 zsJ?%-e1Wpky@|~`4uoisO?JLeh)zKU}9QFPD#X?_3d^Th#`B#ihE z#eH|*mv_wvXE^fg6eCA4`pC!qV;1Fzh1FY1~HN-f2k z=X2uIGq-+jY$)$!;%VLUqblmZ`}=_P*#$_42`Vx9AmENa%hGv@JR?xE8OQ#z=b(m& zk)mW|p3Q-Jar3h)Q8t0O4wcw_1bqKLjpLbTJYPs?2uA6cU-__(lxZO?H0&U}A3sCt zXbNJJbN;8l4_JTVxuB%qJA?%;Fj^+h3*MKtlN<(bjHCVFOzP3}lkzA){bRuQ|J}Hr zi%ftUOQZ_j_l{y2Ib}rpcYdGfEg|*Dta=0#sie-M>5gR;2m)-jY{^uz*(aZW_xAzo z%e0uDA3;b=P^QnTLiJrK-mbJu;Jabhg1-f~h@kUdOAN#u$xkf-OL>}UUd^cH1APDA zjRE-*&6}66947O&RewQ@sd8BD-{wmx_n;#Su)c2MFzsK#{g3bd*Z7iC+ybmk+D1H@ z?2q7SFC>S*&6k2+b&|yj8FhL~r~6beN*4Y$U*fJjaoB^;EWs1fh6|hJmH*p(iDJE6 z4i)E0QlctITm1QJ`QPSC0VbpYm?EiLduCR1^ebvj|7(0n>#E_Xr4|CZZkbYuC%O9n z={fzo=Oe)S0QnNTymhnhekmIGuZtIZZtBaw&6i|=bTU5`#DTdJ^AuDm4Lbd8z7$1s zY>2R=)S>cnOU4jTp7OW(()j4Na*pym#*Ij2RMGp2)&DiVq^orS3N)L^6I_^ivR$&|ar9~hM`M3F!tEXv^;Tu+0U}}|}dVIjf-{wm}3o*>o zv=8z$tRWt7zy$(-n=h$H*ygcfyj($O6$JYsM#lYZzGTh0@fxLVOXDd$rEM^eL;1hP zmwqnPu?poCtrp(2nLTH0XZ>xyB&eJmlEZ2Y37H2Qo`SV*{I~fM-(-=bEJ!Oy4aB9G zC36D%-{wmqZ1r4Ju&m!L*5lI9#8HI)HeUiO#a#r-03vZ&mH$--f5ZO2#+S(b=7!4% z!)=CkR}QZx^tJ!f>jz-{fP6_EA?ba=yK3LspuLCmQy%Bv=1WXRL7ow^F#|cmTInuI zsx*I_FBuBA8fO0RQgi6Uug)WRpZME+DfmZ6CShRq064pxw0)_F#s3;#>W3s?ce#2< zAmx@}f7b!C0Q~>{(-@F1!Jrmq$huIX{v#)hXGsILNHHtJ>5l_ff159%cGRq~|MoPp?hlALUQaLi+k7dt`Nb?d2}P<055la;k<;vd zjW5wsLKB~W%SaLfofw-<#0C7P*AKw@0r`?6C#}_%+x$+!;msLK^s40F=1Y|pmeTZ7 zmZ-9Clq1B&)46|}FF_5-w<-(Uzr7tJ@Sw7h#{F%+)H%>C00zyywGdB8XTytG|G&nU zJdfU3$d>{MRoq-`4isP%J?$K2Xn*}}zLZJ&E5r5i zhhjTIEahH}C-&dwOU??+O21goJ+NOCTLyG3#{V{7$_FvLm_dJHlef@NG^W&p_}hHR zxj056s+BsB`7_*AjdZ)=-{wooaOZ6Z11P5(lbw@}a0B>jgKM?wq6=*I^=a^|tr&=a z_a*(qdkP)6sZ@z~_Us@`tfq{2xJA%VUiMc-(}B88H_zM;&Ve$cKSoEG?X}*Iq9HK zuy4xIf^EK>f;Q4A4YDBUj?O1%o01O(Rp4DX>ObE8J>>$tKA+4^BrS8FdQh zG;-J`J`bb^Tj{r1d2B)cr)R5F;0&^kmyS+`u29kE#hahgNvIm}Q#D3qUth19%u8PH zqnyj!`b(EdJQWg0l~BIUkgJUf7_3QoGtPfT%$)kD{m4@K3B>44BK!^3z>ED%1$z@> zm$zHve6G~l2cFahfx7%9E^e#t z^%L~vPr>;0RS<_G6&lIx_aALd(d2be;fOO_wz@$$2s)Rpg|<4_WK58ItLN>s)b}RP(S@ngDnMu+ zFWi^upa>cRAy3XNHmXS_bFU7Y!R&3$B3$V4cr1t1xuWe6L&pxgwQO;2=2!ahpcLRB zF8|iS+AqP^ur@~z;YHdaORWU0)EYNwquFxq!YM=ShqN@gksx#X!mILKB2UFo7&e;D zUb93}Bs06`%WikM`KKH6n2*|TKa{X;GvH~H2~Xg~RLIG+%9?X*mxbfiPTHR=ZHa0B zQGOtQY2209sM%y%p{G$T|5e+zCScpu=AQrx)xJV zlt>H+xIwCQ?<&eB8HYglSMAn{*oDO;OPToq09TlPF z+u|BrSDrt-59(k68_7W&sBU?2Wi|huerHux`3Fya!_d~rKS|J>=vzP1V`nTlP<;MY z4hHW?qvzHHPDBf=UlnBkyoVxcRBSe!*ui)kVYw;x}3~pYOUT2hcQO8F)Xn4gn{znf@TJHpH$NF&*mesj4jFMhDg(14F!+~sEg@mL6)LBhmL~z_FC#8G47MNH z-}Sp5GS7+Lo$17CU_;@gf6J~TgLMlY#$0XeRT!L&+(-F+==_{9g#rl>-X*1m^ydZ# zcj6SoLA#SqePQ89WHquq$P%y$*Sv%aYSXM+_vMf0h7McW*Uc|G!sQzkFb?WM2)BQT z1Y8&Ns_4oWnFeKsA3Wvi!41)yDaT(E39WUJUKpnd{_4IYC(L6YD*U=$%PNNjuFTiQ z{Y%`FrZYH!;iL8emg}9{MFh(!ZZ{^{$qT5>sOVF1oh8G-%5R$Kbe&0Xm;tVLfO?ru z>n(WW1^ufX%n}AWG#1sLqe$!$cC)mZyvx;RvMm}Y(!4ks&AA%$R~euRV>3x_*}sA| zFtO^*? zU@QM?_IwEJoC-UHAYAPB)K0BRa6?Uh!*(E*>Kb;i=j}y~>hV z&oA6q&dI4k3GXrP-=j1ggN4V)BR5rszzfKwuyL!C2J8nR$I%6Ad0m3IU;TN};M0rK zK?Q^ddi}8>@f6hcBl=l&8_3ZlqK);HJ(WUbJJoof0+i7`-Y;j4_d_OLqtlkpmfqjN zwbWHN?M)^v7dU3hmnNe&5dh~SKx_t`L6Ex}M7||g7Gd)&jJDpC(Nt*bD7oqW(@n03;OQY;jBHHRjX z26q=n1c@Xj%QRa$UcDq#Mo-kZR!~#Yyro5J)q4`hdssuWU6_d9$4mB5rA_=7;FIas z*kqMFA7DTCi4ts=V3I|^U|1;mgJnxEjh0@eWr^8UZ0XIxCCqB1m#b;H5CgUk5X0^; zDV98iOmPZR2$U??ao8VCnFTLPxs+*#@)tPkqJN|>!-A-6^I9j{pEXlNIf;V(dv0)a zf2W08GtU*f@x0PQzm1|#fc8Nuy%6WD{2YZGi@no6xLC3*RM*aT9p6Z>4^M1X$^TQi z058TDyyMRzDtnx{u@@t=iM>wCf=~14O{(Wwq%a4hUsENG4vCUDuEbA{hJIY-#pAUc z#A1W*A4eDtg~Je1=TcNMA(Y}O^Y%PcEwnAcDWX}xoef%9et6%9${D33#up;7OQ2AU z(z)(%==STFaJPl@=j;mL>)c|wkNCByxNkp)fv<#qFjl%qCQFJYwihI~Q8k{LPe{vzDip7CkJR9jcs-JU ze4{qVvC#Kt4eDYkg#0ivaJ%EG1HCnB1mVzrCsi>yu*j)N0b8Hjs4m$C1=#N*+Xz7W zeuM{|CJeFC4+X8YGZ25#jpgUqm)1WT2SPXS?Ry20Y! zW~M3;nlsNdMCN)5qU}Q!7qndA3KNg)kz8ip>;$|BV)@Jt8V&C>P|0H=h#froaf6Lna!DcK19D?Ko*K3p@_J4$|5MmMswGWX*m zIYj$e#ejc27bmPa%pmCC7ZzpvQ8ce(E^au>WS$XIeB~9_?-`SQJ;*2c zOK(S_N9<}Z=6v(m2h6%16v$l_R2#C}AGQDO)|WaD(WcZLEBV>vxFS!L zxRP(~r{M`)yEyp}9{a#Y`>9>26zwKvL`^m>65YE!J|mS%6dZ@12l!*$>=XQDW~n!+ zqqtnSkmfO#x6IwW!N~1X3$Xos;OwZ{iEgD{L*@kj6&}vd=VZ~Tm-pVqv!>Rb5Gk8V ztFvba>06dRtDcSde&%eyYUxbk<$SRd0hZ2-62=|CKUHU{3s= ze?)K$B%6Jnw;~bM5v6I6chIFLhA15@Yicq*l}+AIC7S$hJ3g`(U^(+pe`ZtI1N-U$ zQghl5vV=ApUAz|>&#J0&0#AWFHV?r3OLRU5GCkq3jGLgGit!mX_Hncv$Zf*5QwcxV zJ4a$!i>8wXBIOq=C|?CM&QaeqMA&i=fQW7xD5*Am=<8cuUp-BvAH+|4K_kC7c;DTU zd%b;iIj+270n5bUPMV_ib!AJKsV#Z3fknI9pc`Z{h>f-&ybGKJ`?92;W5o@X@}WOm z{>X2qyFb}5t5Lf>(w9h1*h(&ug8LjwZn4A@4suk5KTuRqPWL#X$&0G)T4(x>OrEr= zQcu;G7*Eaw`33}MB!g)Ijh|GF zhRx`Laok1I`nCa;ce?w{FR7q!4lBUOzz>E=ev^|ETM-T43EGhOaUt5)#GC1C9KN?z zsHUYAJ9W#+S{u!qi+(w>H|Hok>~!iTrqm(4>c|71SZCn-0%#vV?5Nwu2$7C_AJlTs zyEkxD;Dvp-6s>pTeP3qBPOM^~BCrU`jRCRlP2$K^dh+KHo>Yfg)b<%~xGxv=#&Uwok36^097f2cc3mF1 z(P-f(io+)Ghw?y-8Zdim%c8j} zMsZwo9rRX5)25k@N7j+xy<63D3B}sO<1%MiXngyKFHU`d{GpJCG6Ii~GXpPZnUd8$ zPR$>Q777}YlXj`2+Z(u5=p-9u_dc``x;Pz>y*2U4UvA^c=wZKN;-$7Q_~n^TP0hzq z#;>ZNep1kx#VP<*)@Wv!$|LUrZmVsKgxSiu;)AkT&txet1WfUQ<7O(B9DAGF&fOI zs2*rp?cd*{T=Wb6V7UbxBfP-9nb49r=U$UzK=d}t!^N67>SjJ|s#z_jiMSH9 zvk))e6zIHZRy`5<`gDDg@C&!N+klmO$9-?KspAscn#pfuVH03zcB*l>>|uIe~F2oCe6gm4D!gt69e!gI-{$EPZW6; z`+)u@?U112vxv`x4YdRpNaymcjrB+S9}CqX47kG_k_djtxA6jwLAoE2 zTGrZl@yXA3)e?TZo5c}udnXId4Q3WqD~@p`Z!7n!v@1_mF-kU649-s$-KkBo}k`-boDBgH;xFAPQtEPQHjUJ$@$-;bEl41t_BDN?;wh4ebn zsN4td+h+1X&TbFMyAC07Iz=&$_)y;h(EdHlckexkr-W0--(#z}?QpXi(=mC0WramV zAiG`+5H3GDUva}(8{JnHW)6&D`&Ec_UG;ODeB$tAF@$?&K8rrob}3)Xmj+KP;d6QH zObL^)Ks%|V*-WjCWKFcK#Bd?R`4r%K45*jMA9IAlA3Wh;uO?ePzV=-W6P8Kd6x8=# zFFAdB_IZEzPuJr!6onXgtCpWKPkGNJWy=q?0WV=`CmywqoKPa3bpw!! zeEWN%Yz5YIYAX-th?VR?AOmBu57=2*$r*3T{YCtEhMCJ}138KUV7Aic*5Q71vF-u* z`m*Mn6MCho}m#$Uq)Pa^E9~1MzMm?q{`2g*Idg~h~VcWB-k^EV4XrmgZ zu$%M-;d=lDLea`}C2U5>0=VVGw>+|fY7WFcnr%>nPnbQW&`r?e?b`xSJNrT~Nuv>h z@mg zI8G0{57NB<2K5w(LPD2A&yNyjlrlTbd#z^UOTokpi<9FD;ecCfFDhu#C56IrM}^jc zi;Lj+P|pM~U(2!M5v1|yVE61uDTO>RGucP{6R+?#T4S6yZEdP@uGN5*Ihmu1xXSM; zJhUJB^ONl)-{%e949ffJ^gJMN`(jAYc(|X!8cg^E$3HI6L!04cMm6fT8a1_p<#iES zSt}atp}{D-iCgn>fEya6HcM>_UDMk2GUC+oRH>Z9b{>T5jitHaxW+>-o-1>h*Ska$ z3DlRp4|`iUTp?vZmQ*EtE<_)}h_^9QkI#%Jy@GE2uK!dYD0%SMhnb*@(tqBc982OI znG-__`ow3^Bt8oYgs!$z5O9Bp?4?$J^IEp5FV3+JkJO4q#!oFVcHK>k+-+4EpO0{3 z+naKB7(l-E*zki@`Tg_fn&79jy4QmdBrZ5fCIhw|C#cwPlEK!4b%NjfXlHrE~t#}b#S4aMr*W`-}Q&KKQY?AJ3#SsvirPt)aS z^v8H#6W|K&zq&506Io%cL?Y=Ftf|aF)5WO(&VPUyP><>wMB3k?3BL~kgS^wQ!LbI9 zE5${_K)*uFyJotSX@wrpKazVPO5oV;>L~H~R;i+0v@N9~kibk zr(*((skI#VZ2gGmTbW-C!P>e?I;0- zrblqDdF&7sxaXYBE3J_ zFA9CW+K%E;qo_8x=|*(DC;;xif#zl355@FB;;4BWBy2mCpRoqDhk(xrR<38h)L`7s zh{h+7M00v%kA0~srm7Sl41Ym?VTsCUK(l2znyPJ~2W;<0xRp1{wA;xJaqcEA8~>c(Y<>s4d^iuc|7 zAxMP#9l>IqG&ZVVKteDn5<4xaLRy*(EXeoi@KmOfA+sGYA19hvz13A|YIK#Wdj}to zdL2xwyUi=xFJo?rmvBE*V0W__ zv#b4kI#t+I1oq$p>Jq}Zc3lu#bj zfeJyXgK(gQDNdj7yP77v=h}&Eu?M1FvN{b+03o?!U>N;vofC#;^wCWN`;=zXwZMu1 z+TJtI49V~~W#z$c2(LBR*4?DNaIVkY*p#80t#w#I^V>=g!8^kpbAVNN{lg)jLH-wv z$<+!9UH#t+?s?LF8Fl!6d6B0YH!sx6X(pHihzyX#KO>L@tY(Lm{xsjMPOZ*2Cbjkr z<=Q$2>w{)`217?i-uJ$|Oe20Dh4vg*!15hVI z)bE;K(-|3i@I4-xUKv*B@6f&Zq5~C@rg`?}3snu&D0ziC$Gk#G9xr%tU7v(sZY{yj zpbxfzV$qPx0VuoM^5oCPLKJvUQ5uK04DI< z2vQqPi5auYa?TZ>z(Z4!xzSy>Mf0dwF{`UyljUlv8xoN3jl^Ay815jNO~dIgzoGCh z{T@5mjBh(Z*vl}>7Z)D*x=rQKSaeae06lZ_(f_0oZ`{kcg}#l3*Qo+N*Hw+%ci

~d{})c$4wBhuP=+@#>8T44&f9|iP((LQ0H@ablQUZ@%U;)v}3g?*3RM3e?iUv zqf!l@Hv*Us_osp4F3TBZPXA3ynzEcsX|7tGQx6W#i^R}V_;_fYUyG}GW|!6P(~@dG zO*4(M=#TpAuI7N?3Nbgx3KnFQQ>Qu>sD9+#Ar7Cs1C%YaZ!#fYc~tc9>i9AQn~`kXMXOkW94T0iNfp{W@3JCpP3*dl)3 z;UyKLFXIPWo6?s-KERD&2kEpLxsu-A-w`O0yK}sYTgzBDE9I?>Gm5pp&X-B;)>yKx zn%&D4MaXn-bL4uV@izDs+tM+)WViJ2jwVpc8@T0@EZju<9~}ngaf=*5NDIpt7*xXq zixcz9stL_U9C;Dn5%=aIR%oLX-&1UHz|%E+)IWgbhJMWE9DeCt!SXZObcl}w<36R! zaao{#ZoO`)#=lAJ0QoQA{j!EhXvYV)Cixz_+%@osjg|9^_-!@0^+GTWO`x{h6&jII zE$MH~YHS`ZWe1$|dWCpz<5WH*XTQ1D9hn={9)|(*m20wSE_E|vZ-^++z{)FliCx5D8Z&tvGko><8=*Kpe7}KX;4Z ziZU)(+!4)(w`w*K5MUxQl?B6HbK{Pi;IV`BuGZRqjCe`xk(;fR;QG<{V`h&f>CPIK zz-@>u3pr0TWSQYM{9Sf7PY_a27!~>HGssmDS4qlLk$?c%Z+N5{CyUi`-p1g^))&S) zFx={A@jyXKjrA1R7tl|Y6;+jl%0N-iyO+8Q9Hp8jic|!NP;R{YRSz>oBtW0uupZ#= zKI@N#IJ3_LXg_PfZJ-i_ ztFmxbmFvM&E=)o##hN}kU+goE&ufgNC%dOga_(q9v01iJMk3}xr3#iGDUoC-`kAZE z&~)G@+320kB2~IX%utwj@B7p8*g7`>bO|;xyOnh_B^mZLm}#;IIkzaOO%hEZ<{@S# zjP;UFiX_+b)WLgmLFr*3|GCL?@xqvzXY6_DmzOa^f8R|%!nMk31N`wP zm_C8Jri3oF*U&x4Qpm|>-bdTaciAtKvuw2uN5d)EI zu<8G4KG2D9rLtNMrGT@kEp&{oMOQSo;7@07_3fMB^@PFTu{)s!IBkk-Og45Wg(EZupKGv3J{!W}Nlgs_ES{vU^;97>GB(2_7nFz$s(r zzn66te)6O2U-3>D)dI;=gH^mKlm9Dh~rDgARG3@?TG5Txzs&8V5#R+r2-b0AsW;r{q$2Do1VJkM=J5WeB4 zj%G|`Va2^Gtg+b@9(pdkqjK)D{*ftYV}hN-HVVewvR~R>R>sdt?a^X~T^VCwqD!GZ zgMQJ}TC-E%s6qR)a}WqRw%IUM~pLrNdYQl%#GG7>gXnaBDgXlxWBydY~ zTwsJ3anIxA$m7N|GMyIBE!#dCkAUS7XUx}5?NaNiOWHTShne}}s)&4tg9Lrh_K?8O zVfWD=&Ht5~m>n))Hq*G#IUY%~pg3@yuuw?1m6A2j3#-M~;xP~_M5x`gcwgGU zk4Q=gurBfUUIf2aVc=xg(G&27a?z)(baLU*AtIax-mP6NY`gdjF8GYuCv2?aPzLvB z{A8(^*oNVBQlOsx25~f*!?qf!B7jAl{FMeoNIsRh#`o&7T4?nGG}_*>)1DDTd%94c zHU~0<`CM`aChe%RK25G$j|tRjb;=b}p(Z>4@f6cbK*7m4kk`Um)J6dn1$ zd)d)WevR(C%&Xgk$S)!}N|zGIPav>tay9#);2DF{sOld$4$;8WH zpQ!5*g9~u|9B`U5=+Qi-E4K`ZC=Z2PEbv=8d{+;?(uAEjyht-|fb$lWKW8H((gfCv z6JG8OOT;SB_xGTr!rV7J1uFiJZFd94o4 zUgch{dMiF6TFU$jmAC1|JpoRQ$#9_@AKrdEqx?W~oB+KBP=5$eZ`ch^c17b&rEA?D z{fm8ox9Kpfddk5hwMzgxdOcV`eHP&SCgq|{R@9wIo^&9PZ1S_dAb7kI>pP1m4KIB7 z!!>dYM%O&OP5!D5%(@3AE;!RA8DM__;*gHfHy$9S604D+()1ZS!ZKyFU`@IqAZu$# zcqcs9*^l;<*6K4q$wPu}p~y2_`@5Xlp8 z-Z8%@){v5PE3as`0<(ZUdn}eeEtJIn8vfx^mx62aI2TUPC&L7LfWK9tNrYILmJ^pa z4fy{7>RW~h?^>EW_L$e-MfSYKD?8hLL3PO9D=2B9P3qaC*Jq&4v9Y1j+x;n2d5h8C z^SUVX!c-oj-jYMk;J@tmKY#P}osrnkP4^W{zT7Wk{H{MOiVn!6XFhgA9D!U>7x zoq9YbXUEHDdQ1pDLxNA{rV3G)IfpQId925~Z~H^m364NRDR6?D)d)MKC!}~zyN(7~ zx2@13ik=MRNYq;;^N=B4`+)1~3C-SomxcmyL-DSeJOehlG6Bm#CRFoi-obC_G(9bf z2jS%ybh%(xg%y6opjAOF<(qU~!nT2i{4I7G&QcGXvuvNh0--EeIQQAAU-xpza zJRzMgUbb64vsz@cgC@-$_%PC4yh%86@H9ow1NIjne)d(zU-yKMJHo*Y*5D%M%`r;$ z!a}PL5Kq~DQpkuyT zxO7|LhZ=fC(4oi8>L5U{w$3U#9Jz2v$`*NI22~|eZj(Obe246Ig9_=Qfrn(yWRfz$ zup}+ujiK0D&I>FM8P3yXdPQn1c`|lF&%m_yPy1EW%stqE{RM~t{i#YF;&71SPVZ#4 ziqOtI36>!XZ7XBLJDVK5#M`Fux~PEsgh!euQN%0Yxt5rk&~crX>^Le+FL^V^r}?}z zQvcrSg4<0mltjC^YjECi0-S5m9uhQj+S_G{B(`xsO{{ECx-#UkG{64A2MO#t%S%LT zS8|0%#wPT$Qx8dF{)Seb4rXGA#*WBkl17+W9ZFZ6VkN=0`i}VbR{YfW)ssw=Ic)nB zDTbR;piR|NlA0U5@iC@OhO5FXQO4S}m!6mfI5Ec!wa)3qqReVEf2uh0{LkQ}6SRi? zr+6VWHa2`~S0d)t=2TL;&yv4U9zzOx-%vWyA6}28`)sKA-ztJrKje3I-+XaAVN{XY z_hp4gZ>$^XLCq2%@$M__g~XMMp?vyhYKv_ z2|j{V6e?@HuvNh0ihAFO^WSN$TLXZ~Jvm~TJ+9H>1HLeqID(Kuso5)68?Z^_nYyAL z)m_lJQmSIZ3SZq4%sTC~X4gI9;$eyZg3ji;_BZ^6Y-yh9nCo!)W#h5Mfd&I!ig_GR zZ=7>Do^+y-*FpN~v@A)AkR-&oZunFgpCs{eD!Gc7K=ye;3y8Oz!J1{DISi6u=V@+rNw{{)KPB-BH_7U#S zj-|WewqlhA@(XiZqReX@%bqR%wGBm&e^h~2>HndA%t!VAX}Pdn8R$7|0QwiFLya{s zo1t2Yv+XKIQVruH>HFtjTj&4ncyOCcn5S$hmqULl!i%hO;_wCzD&-oFiqpN5sp`p3 zwC8_2{#w6MJlt@(CD)y`#9E=@DQ+=Y>+CM{w*j1)Q-Y7eMcIEl-ucnL&;tWDt?AUk z9;ue3Qjl4J* z--h@yHu}j^ z5i+G~=uR>Oq<=c!{HxE?jljeW?XKOfxNdXfFoAbWpplTHoMc#8j}WPT;`(&+x92Ob z`<}ozqIsnFGf}L9e;h}Dd%ha(C@$3xVG>Fp@GqsvXiZr9yc6sf+?rxsc)zWRQC|so zetM;axINjaHc&}=OBb&vcOiz-1Ak{tg#*EZxY$8JWeBaZJ(F7PtUY(reRODs;_C7i zJr-$A)-TmJJ^8sNqR+uiQg>>bwsi} za0aHlo=#u5Sc}LKUslcTdO}~JeZe}I=cHEEA+wY8wV)>i?s%}t&8H8N^v$W(hCO|j z)ij=Nqz>@^8T}68d0_o;PmhTP?viK%>7y=wyVoGaV=D18+XB3Ov4fAj8ngA8_2`Q5 z+<}6cbdYm3JX?27&x9B^!7sS)2{4}KK&29InQX^ib7dU_4cnL(Wm`AFAB38s;L zIvf51k%Ehs*zKfa@_43bSE!*p6g{U4hm>6Pnb&{@0b|Em0duh<$yfd;xw+!}-N2fD zOHt_CPcv_vI3i`jbn&`~2th;#MRU9RYT{C}0cG=_`r6A;N$WV#cY`e(ljr#I6bWc~ zd)V}VyLOjINAb)bK8jaH{2TVnR|i(=)asJ)#<(>9cEx-38>8E6r6y)^13J(Z!(ObT`!ZOaHq4ntu$eUe^$C`dg2x1qy_&oRCjQ&z}Ly2`ex>E(+{#)ICix ztioWSqtKeOCJ-!<?D$HZY5~?58=iQF-j`#sbs6jLL270kKn$$h{K4r%fOKp4RV_AIs%Ekpz~S zbr=&eo~oW+ZsycCEE93FW-Uo%`M$Iyz}UN8`iS57!r_$mE3l4b+@A>@r;Pov6^l^t z3m=>`4$TThxnN7%NAbz<3YwGw;8r5hRg4>ha_+=U<#q%+<4Nvc2~jRgnZQT_HE%#D z_;MY^;7efg9Y`ZT@=vg-TwQmW8b%+fW|eYO`xn&aChttQ@rfX(mX`m*7a_;t>r>!0 z;4gdB)k%!y=@s`xd_$`A_F5h$N#y+kds9C0}D(j!WX zw+TDo{jt|Yq6SD{yWC_*^!zRcOfD^=ZvoepQsDTJ;Y6&+oF)ohm1-~FAojXa}^Q`vfsCP+f(7%=?G*uCtla|_Ya~zUu{c^SDf`r3pXa9su(%8#u z!)DcfW!HQPD=LZu!Vb=~Wclp4_fko%m%Ie{KLcXG^RO#mKjuI)V2i02L7xl|UhwrI zia235&^_Vt3Q6ck`lE8an&R278U~Iv<<(xAOLE*`b(Bh{*t-%l{*GX6tub%}Wx`oQ zVXOsI#0ym$oq-t@bU7&`5xeLqsLLhyWRRJw5gf?h;6P+g`oT{jNQx6(V+mRf9Gpdp zfYkVWlv3`4VvI>qXml$bvJ$f)wIx>KjI}rjb@ZyT**%N~hJmc;Er?N<=ro;t!Ud zysQ~9aA}yztBXRbjnwBu9J{UXTCO_f8TV?CA|(j%hLGLE`U%p_`S(xxM6|twNT3I1 zo@e6LnduYgeuF2t_|H&s`2hlW7UtfwQ82a z$R-~rCwjsr@xA)uKUezcdlhOPK*vyj|JK{JnErp%eM5BRTl02o+qP}nb~?75bZk2v zCmmZI+nsc5b!^*7N8cTvJILyF2jBl4*7}`Eo!Yzb)Kj$sU3va?|A^NBF;s$?zxU6S zn%s1}Nz?hzN~Yt!_8i`|p90=q6cs{2CpO8cd^sY?QN!|i|J-gBzcGTXYQ*?7%5-p$}!S7GGau0jt^B_;2S%g<(bt-UTWVij@NSOA3S)MQq4fV z)wkwk0`u;=4qo`+YWOEUBRA4|~?2Kh)tU=glMMk3e-q&vB1OJzQGjcxJXR2N0YwsM>Mh_Ff9mYL4oYGlo15we25I|?1u$vRab-bxq?VjvUYDXlIrqIJ`(q@Xs^*_4RhJw zkdbWG(=e~EW_q_!pS*Yb-j0n7o?wObBCSBGttt0nwJ1=zDwcHhUc#&Htb@08^c$qX zC|Wu^1lq<~tD+QwKa1BGSe;{KJU@6u6i|kLimjrY@x!*G+`S=|b|J7f2REM{?$Ck0_vNw`Q2hm1&6Bn)yV~b;93*hnp3chxejl|zIF|c+; zqEUpd7ngz~JR1BXM)o4k7+M)>wg=K6ms?Cqvv^sYcKvl0lk)W9SA;ZF!@^1;t>O1M zrNZ^aSzywQV=>Kj$EW!p?1L9hpXJ->Qv0jbdqYZExiq|0u21KGn{NZ!(_AlabMt6B z_lzKkH;XkX9)Ca(DKa+BxW6#@rI34}=vV!>1Ed$IG+MC8blar>b#id38hDTu(}?(c zAcicCkx6^Y?`tQAX2(=fWf0il`1$K?V$j)Bx)#`iK_y zooz7O(C4)C@T3I3=6qH&MsM4imU-KAkV-`{Orny!2HN~Q#*_`iwhjk}6 zv%{q_lap8@1EH(mDUGhrpoV-CZ>o$Z%k}7R>5)WHg6;wd5G~rbG2nvwVV$`MY1X0> zb)s!~gUXvH*%uMYM|~!r(extWK6gC)i!rZNNWvE|-m(pY?{OFn;8$eZK4*m~y@ltF zOZwlcipLAj!!7YT*#6ge>)}0kqHvC;;Jj)vfb+2bVg~g4r{-$&pV&%abc9(veRfpl zHx3n@Lcd2CIb;tp;}Gnk1IKIjUh0u|_I8T}@uGJ&gO#adCD}l>FLqf!X3$h)vpb!5 z7Pyg__4mA?DVZI=%5RJWhW3u)%sa_F2YhoB)LCK28^0AFugl40Z5fg@@Ys2I_7TCQ z@5K;IBpNeSyOSdL{=tfp#$-29brKp2k1xL-0YNj_)5;k-m2z?LcKp8U0!7|a@nt(b z;?sWc>7ss!(l0rs_+gDBxu3eu2rkL+qN%i|uD5O_QJr8lHgnGCP>^)k$k*Fp5bUVK zjY;iF&3xZ4UoQ0X(ZDCKIXfed`{yi;u-JXvqKFrLjb(XjK|z3$v3WUePpM zi8u=%XYL;{eJz@pcs4IOEJ1=HR|#v>X{jGKAU>ut_0t=lDstC<#=K5#Qwph{)ecY^ zsMp`GjZj#zR}qpNH@E@H zUtBk-QO|~Wq&}Tmd)3qIwnG#P1hj9lVJm4gS0*WuAW#2a{kFXOq zj(SViE4O_nt+UH6Mu6`3LW%MK^#hcLzL&Z*_FSnszi1%U^rtcNOgg_Ngf*nhT+zDR zolqGcNS-%+@y~&aw>LwQ!C7?!6CGNwWZXTiLi@|uGPX; zJ!`gyo1F!PtV0r`8EE)or+(H}Hc+8!)z9eyvcm?lTQjlOvyU>bM!oY^b&Y$q(YfUr z%W-Cd?x|HI-CgAXLdfMC9>of8xi6KK4CBKnrB*g>k4y?I^`|Q;xF6LUh@sh-K1(qK zKLg%TQCN|CkTm~q_Y3@Xxy2AOs&-H$*inkW?)%YzxT7xu-4x6F~a{%HnQGs=Ks(iv-QLwc?EH`;#4+FPWod zf`iPiprs3*+e|N1Yy^Dhsr(xtef#zAFo1mS?2OGfdcyVb=Q-;eRo{VwA2BY{ywRSC z&iJomPJ7!Ml~)tyq$S(3WI3P?6G{3nz|NxPRBpA$B|kZP>`#faOAdmP9?^j2lG<6q zA})m)mQBDV7`|-JkO9F(!6c1hNnW--~@W-+op!7FEu-k?tY5nDz* zN?+-M1m7Kc+Ri&n^N*}VetU8C@})=LU}k{pkZny50-$|AlVgDt&Z}oxs~gL`;@;vU zi#`@Z1ioNQcwbUEX7Sj$k9~&k4)G{|uZKcL{oslrXt(6M9>RLppDIr5$8bHpD5Vc= zM*Gc~Z+7)8i!;rh)LO9GaNlyRKJ<)Ia(m!pmRPG&jCZlYZa-5&u;ghcYp53I28eeF zBFG8lNMyL@AeC4($iND8)3+=x%qMpN@sAkXN}Jl%xOT?t4f$<7n{iTs z#KGncsxwt`ZEy>t;FBmb$8@SwbLAs=P*MwnXy|l}7kT#8r@(XIk*1i17izKG_R5ZXP{YIDQiEocXt@MY#aE?*sdgO zrMYh#%Y^W&_U5XMN9r0cHDuDcCNj93hJMhS^-N99tW&I1!R^{j}fxRRPE?TbOXhG&OMEyed9B8|b zR>YhEU=gDH5U5Oex^U*_q+>? z9|nrpVB$1UZJ0J3!J?6Qq+|RUn^O~DhDNoJ<)yKc(|9P)<`r~OI0IA=HmMCp-BX!H z?d_bw(32|tNPzj8C0^wUG=2NU1|g!hF=L1b+&o6`nZ?qKGduBpF6ib}-Q~CAb>qrB zo!<1IYU0=tFulE_6V7_3MWi7Avns9&z<39U4^>!ir%wx0cGq_zI}QhQ_Wsv+my^== z8rg8n0LIL7=t%VfqaAa5c&-o%pXWm?T0j)?vnHuXj4#s4`hQD_7NKq_4^|L zC!^MX?6LR1<`1~fxo;SJ4`8Arv!d!z+pGT89}H?=bj-z(jU;2r9>$nk+x@Tk14YlA za+2fWJFV)uW%~=!KY!~FG%x;HNgbs9x)@Awnxvaz@n8MHw`BXHQQdoeMpNC2`!S~2 z*UkkNjq(p$MW2s8EmEt!**V2}^(C?NE zc>2cir}nxZ8QeB|1yxs<&PqUw``XRA!)g{LPH#xm0XuP+Bi{e@pwLfb;>-ON3|c-4 zmQ@}JOgm~krX+78{>uQ|q8kgiuZb+y5`411C)nzTV@Qt~H29Y>*Bwcups!6Z1xZ~M z3RZyeQE?TUObf~7PGY+2$AS9HgJSvWiivr5U3QsF*dz)X*x%jbWMw3pX$MSl!1|VbiF2xLe0F-m@$nMz zPyRfm=UvgW8}Uh}oWg;OCISdu42>jve_gD6M682k6(5 z$wWnL(_m_kk*)KRw|d4h1Rv;dnN6pY`|~~45Hl%_3TUB1mM>3;@Ost%cAq5P@td2H zXAr@qeTj$=v$9-@Q$d3Yy`T%HOdrtYC{3u97l!`+^L5`xDsIXb%5=`vqpaqEY19@z zATlz19xKLF_gt*}&_URhErqJ2I%^IptXi{y&L(bS`qHIeSgZEU;7-`T^0coJyF2Bf za9=`vMh-@I&ggBFJWu!NyAx$Fww4B40!)FK1gw>HNRY~!$Fu%eyvBwr!wMj@Ps!w+LxOU)IE$K z<$_ZexZj@bizp(QEHi5oI_pF;7rsa1^sw2OPt$32L>|)gZ39Yl*S=VbkBs=^m6rG| zZQmzoUHSDqGJgLoK`P3pZ=e&aIk~IR3^g`LD~-gMV9(buQb!WYh4{+&@EsFvF%Pqw zHNk(o;!8X>?j~>h&Cd%nmIr!gh^VY8gs5jPj^9bG`f7v!5QV?R7=c(&xo*y)F!=kz z56z0#y61Y9e$8+W%EBn{*fcRl{3AbUxLIq$8O@gvGZZf)(=G#;4}B*8I2B1ZmVLi< z4-~uL&NLdJAV}Rz5Is~-p3x}@7M@lB#P25YC_r&8x$<4+im-l%+c6$W?lK{uuw!Rf zr*i+QU9hzgFW}SIma&DafDZNT#zdbt-t+2r)pco&KEB|x-{eN1n{2V^Gzl~YdRjfC zgJU^*>J^X-v~BR3R`fgJe<}YgUo!VlAHv0XHz1s{G<13pQd2WktcshR zF_rlt{+e5wrxg69hE-JBdI2AT>q`{iNajcD@wFa)R3;?k3QAw>-X`aj)nOrgBQ9AM z{z%(lD|dETPP}qaeP-X+ZyqXEDQ$&Lve~;ukb2F6U<&Bo{;$n;aNp+~)|T=&B05QIdYJdhHjsmaJYLp2!;AzHnRclo zH3!Rk0tOdmu0PWc@H-6=T+|XHvp6kwm*JASc(GAeXFA@s<8+#&Ui~q9>c9BN2^AS$ z?$V4Ghv9m@ZtI{AU%T9QZkW&ybZssYna-mmf4L5&vu&_{9rf!kPZm#WJ2qJ6B5{OD z9VWd-czfEoc~6|4juO?$m23lb63m}+-!>#@kJuoU$hftYDL58GwZgl!;KwgsJ}S)X zx5KL9z$gh4>dVUxJL~<{fi5ghTd9}sI|o+yBn1*vD!gX23#bpE%sYQpjZTMP;zNSf zazFXcvZdMuX==gPWyh_bNNFe=m7nn&SOZs378-K)bVD2wanLgZt5^GEn@Chv^40Df zP8-i@WnYv))SQM;(oJYvn2UB<0Q2|lEbQm!?6lZ6ymAN1AR-zqAf~i3F7WoC!5kUQ zj~A4d=u>DZRvv-;JkXmOd%}yq&EFNyBWmrTP=4okYS%d}tCSzBaNd6zQ8>6YifZao zl9~C8uk-^O+~sRfK?E9JIrtAkIpwAk(TScS3ZapvnfsbI5i!SmI9+n3h?))0buS%QI+agobSw-)qr;?yNU5AAmd z28d4?qL5c;O|O3~6;U?m!YTi@bQ*V_E&l6pJo9zs3(&FU9B<4W`&&cLxW4u}?yWF? zJ7zYc)x`SXnlLTj3hKrlV7@{BMbYZuxMyAZv`=w(Hd>H0o;j6si9xxQuid|Zq$W>9 zb3817@^1WoX2nLNA+i5&^Nq4ia1ZYheunyJ0`xbHp_6X`IJq8*j)`J$Qy$I|knf-M zbNL(o44bu`v+xdG9xo`0!c@V|QbobLog^NGHtf>_<%0BfY|X8OCJqq2;Fi9Mqpmrw zgMX>jOsI+5E>cqqmjL9a0OD~DJHhEw^|;X__;RG3TuF7=w_LBNJ3%3jd22M%gm%f> z0d@$b?7x`t*0E;utK6#pWlv@GyB8#fqPe4Ri6=(sf4v`L!8FVxmk|6=CrYDc@@0C! zd1sWKEaw;Pb*q$Xcc~EV$5QrWY37xm^IXs$|NZZi4omnV=lcfwzE@ux1{_BlOir87 zN$5*FDi=BpB`j8@KmzH6`1@s{(#n03sBPC-wXwgoGbceU6%Z#&Z-^45rTHY&5GAWd20{w#V>N4Oz2rd)wQqDp%orqn=Zx}s{D}M2fpWL zQQ>Gj_gCKHfI_LDg5m83oc4ZUJEYwFOn<<9JG!FTaMNQghELM04MDUOPlfr6Gb;Dtg3%C=`5)sxjO&7GS?um|hlgw2k`x zM^uyt32L-tNHhqfJ9k>lRpJt;7pcqb7k;2ETx0fk37hpq2BtrUpT*lYc?ao`VS)%& zOg#u}g$yVXCU)>q6wR+G!?f`@v@9Th8*d+eGeS@+|K6PM>z=|dsP|GW%ZEo694vj| z98(I2Xp}1_>ajcz3)gXwcJ$o5zef98JQ5glcUpqWw)H4gB;7X~RLFm==SWttQemfN zX0XO-w}~2-w0>WTRZIO5l%i7(HrfDUEq?1=8WzDv+J3aB;XD68-ONRsFXL;w4^lFd?!8c)o^yHTrQ!@WR6Z{XY58X*2! zYPEg8bHuAqYr$V%#-1R((^xO3n|?C0B1m689gCMbuD4`Bi~l|GiLNwif^#C`v-=MC zy&Mc2w(X};uj_{V6D68)7i^92v?=S;03+KB*>)0`E!YvzZ~e?tnln7|FNv(AF!6F1 zan~eB8NjONCW%{Y{p$W+(>$2x^&S0#qLHcNf@m1UnFBPw zGiJbA1(44}B$HIZ7(-k|-qoGy!0DGpi9?{=E)0n=y?8x zE37OCu;1>TLhd))FRQ5ReChiTSZja4o$&bK&ZL-b@uTX4(3lvoz9L3-5izV?jDFAH z@=mf2WGaA{RV^@IB@+)!5_Em93jYX9h5qJmVEA1*CIWV!NB?i@D;)S3=`T|u^n(ST!juyH)jD5+NSAp-^jr#vfS)=yRd#9sjO`vfh) zx(TAmt7s+V#NTs>t^YN@Z%GSPE&KK4?nN)%(Q=J^L@zMdgi}w+vD>;QZ{OJZ$5W6S zJ*aQO_QMkwNNxS*tDl)aXjO=pF6nPf&0zL84ENE*Da$2=7Cbj_~2~&A(Vzno@F&crfp!qOyb`vWv^#dqL@ z=&Tb57hp29K(y{B3@`x1d^!O34fSa~RDZ+lEyoA4jwue#0)8qAp9A zgr9-+0Y77MNt*wrrjyAVeK_f`9M=4~9UHcy8^Se=6IDH5Y~=1-aL-MW$JE;*^%`xN zG2V;$MSStDy#wdjS&3zOPlrgaS~DFaipWD8s^}v%SjUeDeh_9)4XH?k{Mv(aFU1^6 z(_C}kt=y<;VxjB-5T6Ci7n^IYEwPHH{(J|K38bK2GDA06{6Xe}E$x~WfeB2(6!W+F zB4Nv}6+glAL3FzRJSn&Ys73;(0{gBNLA)<5|BSEN>eC5N)gobnPqeH5rI0!0zuuSR zj|_xoH=Veaz^2Pet+T8AjKA+e|0tVv?9IbbE~;aYZIK_o)#J#yV9LxF$!?T$Ovc?E zEefug=6#wS%4huDS(;D~QMhMT4ASw2Qf8ZO+Sdrz5VEs5^(UUr{IAE%s%NkDcxVb` zxe_UBLR?W{N$<+f_|4KX=u^Fw%Ufobe89YW%Ez?1R%a?AG3e2`3S)8cl10FT2$n?( zetql_60&+fF)%)x*B~ADKzdL=R;SMb!_-UH1L7;9Q0U2toSs{}^wIWlK8_GYF|Os|Vy`g-kggA<1!` zM;kAAV5rzqIg~^4D;3^A#L(@k^^;m0p9g>88SnNc2jWZWCGMbZ`HYW+3`<6)eXq@m zldY?4G^-=D%qAX)b8X0d&7h*)d$eqy9EIqL?yQIE2H}u+6(nH>h-b`Aeuu{vBL@qK zk6$u(&v3h~YLujXywc17CQUbgDi1ItH^Xx3J2lS(k|D8rdk6|7Wg1Im9jU`=I3?sE zdS%qsBjMyg&~*JC=jyYYwj=Lg+CLdj7Lr}mX{;1N-bd+2?LFW>=cBY73Z7oMjs?$J zWE0*4mOochk=wmM4h|PHGY7$PpZgA(`*wQ5zR2tl`@8gfrBbx3lJarMfcIbf8>*@d zBacj|Y8}KFFVC@Hc>(t~XpR6|_$ADNxN3s0;?Shvt>1e4H;>?j3-313;g_ox1MY9g zU@}$LR%s9oPG!ITgGghCCx%6USaFkD=RwXG7yT7{f9oPki|dw9g`(^+6gc=Tui}@g z=<(Rl=9#|Gk&h*K#~UvwkOpHc7O#BPKf7ti0r`|J%TIrT<;#BT?Nb!~a&1s4fbh{n zsApZ`7coI)PKGhb1PP_e^hjNYDj|Hw^nfw^Y<^*n0EJtYyh5$r4Lv%*M3}nKG_#Hm z^EID-EMwuhgl~&OXw$O+h~}CTCF)DQJvuJn`vo;z+%fBGX@?w`#O8314R@;OX!?r& zFw(+v$qwXud{5!D{Q2Pm2f8=V0$$i*=Oz?xLb1?K31Fm%JBFGF>E%DrC@x{UljNY~ z7z=SnAM7Z;YTn=s>Zht7mq9+Wq`IB1sL54KL!kq?zq zfZWwEJx5CvdHwVcyLzSW!97x~AqLFx=(`0K!gtJ3}pO^u@EoY_UNLlPFa%x8Vr_S6;>S zy`)2F83W{+#T!aus+hS?W*&peN=wdkA_`XdJ>Qj4==WMrkZf8%{8XmHTnI5(4k~p@ z-_B?Ahk*Y_zgZ^Ghbg~!s%y*%D0bIQl97IXZFAG%kt}Ch53%O>3kgT%5PxbH0;q#u z*NE`XtC8Q@U)vF`74eRGLU`m>)O!^Wx4)2wPqjS`PFW9)6&b9wN-WKYb}P7rqCV^O zE3zs7L#$cl!BOsZhY+iPL8@P>lNB(k3)e0Oc4rp(4 zB?xK%1Y-Fm!)@8FZArGhwkc9il5bKwiPW;Irx>K4*&9$_!1oJa33)pO><5reu2F@i z(NV+lp$IG4ZZ_X*dQ;x~g1E`7IgLZ3;27)`O;*NNPO+e$5iiM-w)&1!R`YbTbSC&d zo8O4`{x$Iq9Rjse1ZVxg;m1UBUzb+#blM?Jv%fyyRbv2nzeUc*$&W_3Av4CWst++p zo+1LwN{mY46U2ve;Vk;#&j0p)1M06*5XpkuyE_f(q@1a4*V;W`Xs%;7mduP@&6(J< zXOKI-w+9} zAChRGo1DB_^R*-lREjtrO#tI`tU9FkayZ61W!sH*Of>Q)NgbTAVGy`U_1}e31_1hV zZG8jLYaP2#CYLk$!o-fizxC&U`U1XB!rrrg_ETU8J}@yt%&;C<(K#T{nBQ)V<%l`| z=Z9~N5+L5AA%B)hgFf`&_pF_c-;=PXk{rD-z*g&#xU8RSjw|h8K4jI^l{z%-^e6q; zN-5 zPj&dh@n!e!7&jbn3S*GI6DMuY7-$9{4#)R7bTOGjh_qT{r*40f@8$zu}DQ^ym>SKeW?7Dl*+0 zaNaTutIGQ_vK-i{I>Y7Lyy%$QoZ9JZ6m38c2V00>B`6(MrZWCf*@No)_$-~s*A(h7 z9hB#%$h)0fk*Ty(W9Y_K3>|sm>^HpvO_7NODep6`n`}nv7KVwMzl4Z%&VF~xrUypAS zg1IzZje^bL#r=pINU|paJ+NQ{l-;0E^+hIbTuUSI1{lrXk zn6%`uM`My%O@RD>3@o?V;IC1xfjk1=k4kE{m6(M?Sd#PMPbtX5saeh)mSuvtELOz* zk*MHqJ^ZolcpgN|uF|8iYa*zynv3)A0qvRFc7tSxEf2RXFQEQU^wA#?MWOju7G|;-SQ$-5h&=PdGLSDp5>SJ?vc!Ij3ll`AP*;_ zD}QUxyj>mccPkp3N1S^q9Z~(m|7y>dpIhT`Bb2YiX3dzY&R*b~*xCAtb>CU8LtSjt z(Azg2j-k;pp=5F^jo1>+s6haQtxf*TT_ z@mc}rm5w3<4n$tCyX@m8JX_@K*rT?O4j6B`2MX&QvP#VxoB;DFuqbkAGfCgl=4#(R zwT#Rjpg9UY`oWN`I396L>4r+}TT85Dzy)d|skZe5GuG20pT!rzd9-MG@qEDj9e{Yy2a(CjTQmxJJL|0q+%&bDlD*x}Y4WGh z+zlAr^-U`l!1)zV^=dEBAKmHjI=9(Uvc;tktq6Q}xlHL_;c(Pj!oi^d>!k!SP(%lA z9!V;p=$$6d@J@K%6?#c!O{nn_sg>hKO4q;bpOt?RG7h>-CXsZ(CX?UZht6`LtDaae zY1Zfa10f>7{HtI&$4A>(;8#}@q#ahtWDFoa0LGQd>dH+jCJ=KumJk9_%m0#K?e1Nm z#+OL5;$H!E>a!yDBDFhR5U_|x#>g8Zta-WOXVjvoxN)GPM;-Ugg(WqGU9PZ+W3WGA ztW_$i^W%E%n!BE-x7KKKXWWdr>L^ec2V};E^56^1o!n64K|;79rkKv7o3Y|*7|!th z;^DW@imRj$Mhw-HN+~0)4#52#pV@y5)CU(LjKV7>8T_0wQfq8z&TI557nM-1#AG-1 z@y9n zYIipqQc!d#I@U1+$WPT}<@eva7iioB@^y=Mozy09OM`eWLV0`nhDfNkLY=nqa8FGy zHppK4C4MYZH^S;OeF5h;S{7J6OPjP=dE+)LM*3L4h?oO=$Gw$AR#*jqdV%G%G|V#nvXH!4T zg$7MrDIgzamzbUG()TCO3i1_?`v9vLyF0D@3GtndrM)M9&vO4__cA$1J^PCm){kS? zC*H3Y@an~QsNFd$BiEV2)fTC7)s{m9&K+6D30@omo1@es~{`5n}L09bG;{T&?=(kpEuBU16szTqL z*gO(N_+pB?8;>iypilz>G(kVBm+M(c)0Pv&kw>DEM8G7^gWgCs5pO*Uv=M`w!GTuJ zjLUD$)jQG7FlZ+3s`}Ir<4p60nn`C1Xq@qk(qnC{5G=W572*Ul8XqxT+~Y(&DL?af zYKE?r5rMvCtk+oOvAY9t|JC2ksSv%6fA4K5m6TM+I0F2^^|0C(|x z#uvy+I&W(zjzU&7Fg6oHWd8-&4+YPBSn+8QN;?{m44zxa2GS2j{+Jo6#UO@G*;Av_ zDpVMgQKkPc8){mr*1i}We*HF4(4;4T&|iKa~Bs~*Z%1}vK1hIvo@0j1C7zN zj&2RPvi9fjzuv!{usFjC-MpzMgIgrteRl!@)b}&li@+DLSTEU3_WRUZaF56qIL^R_ z9p@T*xB;H;;(6*Z;69&G;(YliNO=qgTukRLMqG2ah7KsF*vZEGNB!eU6)WqmcA5`a zc4wS-g|HwnZou9%{xMxv?;zO0&KRZGB6Gh$e&I6*Z#-Rci!6?#-Zj>V%#5%hxK)rn zs{cS^}27sQ|W1DnTs5f)}43Z z+COTCPnF7IFn^o>{Qvd`^Rl87LMU$J2X~zggWxdVKJy3WLnm-UKnp62>Xk4G&<++h zuT^Y7;w^kl5^HIB!=4a->kk0=BdelG2v)jj&eH|691NOZno#`}zmt@n7b1uZ=4oJ3 zJpuV6pZP<6LpqnW$opL^w+s`7lq?#hHjXq>GF9wO#Z}{J^9hO$*w-XH0~;wwGon_r zgLuTPtUS3MY#_Q*OT~@fI`-Uv_raZP`n^O+fp8*XeUYQ|e0*o{F~hIK&BK<}r6S+x zIs3of2i(RgGNa^64~t+Eb9>=_KM7Fl?7l|J4#57njN*;kq)iSbud4cs zM#yywpg+*oQ4%{&s3_Ub<^|I+4k|DYdb_hdl#q#&srSm+=1V}%)TW4c#;>mp0~K1% zt#ed{2t(BmMx)=F4N1p%iIL1K%kCL93nju2d%jX{`#1-T5B98e+8YT9UxpAEE=Df8 z*ZymK`2T$#CPCYio)hK6zxn9KYx$kl{q1=G+BrdE7?OQJW(>l3#hsq{Uq25kIX2ed zRn+GeYy*c>UL)dvdmdP`8sMFQ^177gB*5%4&8h#_{KI7EeT@K^+i`&*UUxUN0rKCT zhrD5t4`=TOD*P8pnBM3=rT^>a0XEeLt(%)>J)vYQG^Og5_HWO_e~lMDQt{GS@f+zv zmA}Qz59Xrn)vChhPlJ3QIVo0ET`@dAo9~&`uG(3{NXL0ALD1>Ni%iQai!B#uQOp^7 z@}e$3SB~0|+|%?rE3JMgvhgXTl4%}hiBUAjB6f4W7`{!X*56G{Wr-EZP3X2F6{)L7 z$)FA5z-A=~_+`VZelY)&;i_$tIqV4JZCkoo8|sD>_}DZ9!hu(}*FvHxj~{&r`S7pz zTj-V98-uPWM|6Y%zrOw_l$3@qxz*bQfg( z`waqdEa>*$|D4mCv+sDWHRjmv#f#@|5Pc#e4{6qkDV%UmK zDHBcsH>bwMAzmUHP0~sTLxiDE?ZTG6zg(;+>#JIdkWb4CH(S@YCQCyiN7v2a1m0ra zmWS1}PUdqZ(jcCBKo_PkxD;4eqt8J9_F4Yx`h39BU>jm9E{M$aOrnuFVUXHhNY%v^ zFS_O4G62u_86Sr1hvXSvi!!JS^JUE!ecNKdd9+pXUsVu~Ep#afzkrdW4B;ORh8-tI zd-&&Yp~ox;LP4ghP>TGB6^t@0pNU(5k#?h8Pdesf@1ei?aF)qV>g_V5>!YRM^iATUI8~oz2I%pECbD@0`GTgC1LcHBzL$0-hOz2i| z*eWq_58TG7->a~sGU#~Ck-%*QtOC#32&WR1stw$oXA#Vw=?C~7_WYf;YMu$%G2qqF zo~zK;bkydcP@|GU0BTk}Gg{Cc5YNE9o;{(e*11FR3he)h)0tfoVj(i~l=92Sqn^eC z{D-~)KI`r8ZlXQGWu|OdM*ZNvDqJu@m;p%}`|K9oDL6iL{5_WCP^Wnk;!U-f0T|k4 zmW=+(2)Ss3+;z{aka4Rt23oNWzO_jWB*uA%iv+M$!EbPy=4q2kh4Dlc&0}v8m-0xl z99kM1xUe+^4E5ZA`T)unzJ1Ho8P1&7)qSOXCVm{RIg4PHM!!L~AvvW2H7|fa!>iWe zip6YFAPMtr6NQmhk-`Dz(aMc-K;5CiBuGbpzh`W0Idr}?SBOdN8Go(U*`V0pW)u4@ z$J|9+!cyxR`BQLBorNw-g2k=>i3mh)GQkuglr~6|ooyaI6VLf*RJzA>TPtQE?q)Q)Xp5XG|ErCg6SLqR3?Yv?n9x*x-2aoBAjoKvzTUSf=2KUKkUN#Jya2$qfPYm7Sz@5{Ng(> z!+&giV-&IdD5CsU(>&~3R6<4FO^&iv+US*HH%#;!0(DAFF`YJnpbp_M4MXa2&iAH2 zz|PFR3{YP{x#=5+E1jR?l{IL?rZ$7-!a$gcOb_lAjql4pOA)HS*L}v{sYo>9e(|T# zm&A0PJy{lp1f1t^^DEAF#^?x~>zI|nBk5e(b`3Q`?q;KN;RKqauUig5>WQVa2hN2a zt5Qnxp;xRJi(8OI+A^x7Amv8!C?zorec~k2_f|Kc`RNt^sssC&agH;8Ql!IWn|W1n z0Q}flqx-|U`0S!bS#iz~eLRc%PEC(_?lld7`M_0P+vfKNDF~fq4!6U+eBP% z1Fqhm`B%YaP^B4F{y)!TN9$P(fcs>a*#Zd+S26e{lV-Ii@kR7S1aJm5RrHF@mO5J< zUTl5>&U5Iyp+n9H_u^g}U%q3ul0gNyt7jLxfb350Y~0=p?W;)4dPCX3dO?K}!M!f4BHQ06x4Eb`#R zp@phGQj&+XTE4Ui$!&UObEs;CFz{sje9DiO@oH~9{?0Qp-e z<=Ympl?b$!hUy-tieJ$H_bD;eoC<>6&RCV`Slj^4uf5j$YGP^9+wGJ6c!Uq_ zF#aq)^Pl^SqETONjL&3fyo=+kwB&N>*H9s`R9&&|$h+X0{B3+@__e*3?=zks{}f9_ zN^*sOc~1Eij#9T!8#j}jk)H;vdwi|m=HWhD&%=v9_Hy3?aNjZ@KNWDlr_kbHDKbUh z`#fFf2lbdg5#anjt~F(dV#0{dsNt0~_BbCO1ws0KEF$tL*$34c(G%}= z+OAQh7WKBUYcaMVG)^cDHG{Abjh&j9TMIVGWg2~56(~k1rTWle4R`RD0&H+huMFEs zEyBc4{hcbPRgJChkMay~mI_zPSTE?|5& z+2;jc*c(}Wa!R+5Mbs5qR!Px?olXCxb|5$B))#E`U*mgsG$d}5L7;4mF(kuxO&!x^ zt@&Ne-Fgqskl!YX(l&{o;V*#%3CovH`nQp1OrUH1Pu(9sUIa6%TiIHez6s-yU( zIT_>R@1Vi@x`6lpGr4U4qQ#F$YoXW?wL2GZ%lcb?pu*R``Oa5xlX$8}7aAtT`mqIJSCW zHbd;^4{FceLM$WMQ-CJ$8rCzG@5DXEal>3s6lGzbYW`kF7VgQ$GdOcj<#QlFZve_! zFw$!Ov_1jkw|@BN)KcLFp9HXbuxt5*iSZamgm6B^r;S=gNNl7HK(TYK#(9*8Rtiy? z_hkQe#V&)Dcff$+#Q0v;@XZb9a2s%*DOblQtP8vy1$L|U8suVz(4e&|zg?rT*>L^W zuUcG~Dtm;rsOGqFx5O@if^`KBns+Rbp$`jZ=|As@L-IKewT(c%i~8(5sI9AWm@)1+iapEirF+>EHE6ZS`m!&j70g? zIU(9(PjbkD+(*@mC?H=fxm`v-IXaN&G614$V48eGHLx0+Oc?)aac3y})aqMF;9Xbh z*pc%FAzFBwg1ZeSew756Kv7eI0R6jaCk@_502bD9@QXU||~e z`Gk}^D5z_5mg+CYCjCNU2o)*~G`c|V&|W+kh6yc>V`^orq4MaxvmEgh+evEgrE64F z{S|(2MS2!8+4Yi_+WvvK9qGO2UCCQ=Ny62md6B0;RBS|ypZyljU5E$T8Y!QB*4D5xu)(mXk0?; zJWc@4cM(;N_FLWAg2wcW!X8K9j{@e?%e;8HW|{{3Ef9u`Zo;vK1D%u*g@s#)vbVE( zQO%&rfb~3g{`t(J(L3<^E{qUfUD)EyoTdxPqC5tqrsA2aiS9OS*>#YEiJ#4mOAY)O z%>m}$*7KkJU#2oL*zJxZY!*Jprfo!|531qw-5BSMjWcBu`T~AKNT!S7m(sTv2uS}B z3ieV5s0#3j!EqAl@?FKLfY%ccM*9cn0+HXxunR5|IknuC8Q^vs)s>calYxNUnRnA! zU;^Ha?W%ew+``DWOO3)CwQyG^RY`{x(OCY(FsW!q?()XZmeEqEpeE_nWDpsEh`^g^ z$2D6gJCnte-|PH#9E;-cYbn->4YsYZB$(OTG~K$UqOnl)w(=Pql5FG5j{HnN!0(LM zR?-b?c%dXE%G-|tXrdChC&QwXLp2A=QzgEkqzD~02tTSTHCA2f)Vd!zLS6yicR|@v zv3&l5as!M_iM`bNiehXKZpvrUTd0zBE+{`YgC_x`*{|$@EGW$K#lGFN_CwHo%Nu1h zSdH3IinmjN@F`AnY2H;R2~D#O4dXTW)i-T`_smc=rvXxePEiS*i1^DvvP0C*^(Q6w za4(%TVm1kHh-CIuW2N9d@=Ge$YV2dxvI!tj6pqj}ScEICKsz`=Rg6gT=qFSkI&<-d|*)m>}V}87_tc_+5I2g293WhD3lBPT^;v{HCmFqVDA4%k!#UWg97k z0Aa87(W^?qKF&kww?UjA+?c}?I`6@FyfnbKSl?|FP9^})moy#zU?7`%fV+xxhWvD& zguzeYBR=sb4iyuSGGkM+Vl#qg{{DqtIJ3d>HyON(pmA+`?9=0#jqz5Bk!+Vswvh>L zFHEF=Ce2YbhZG{fzPs_d2X>F6>MNUK$9n&PCnH{LGsADcU~MgydgocSd_aNw=ngm9 zf{X#J^`YDCTm#e(P$nUAFyfuRU>Ha@X^7KWC<4SE0e|0+TvvbRxL3n_OioG;!~woe zuOUfb2LXRE;0cMRhRlI_dcHL*{wOfvpwBCJu^?+ z!=#tG0&fu?^Hl~BrK~x;)c?12bzKdQIGp?=?4A7fZF$=#$RJB}H#LNXN?bAD{PebB zQ(T*$r3A+sztj|srz=U4HlzZv3it@9xeV||ktJow^E;s7lb{T1K?~Ur9$$waeo7PP zQ>s>Pg5ir00Qmy3cJ4PJqGEv-&p2=*aI;@lb`cyq&m*N6D z{EZ?~3M32Ekjd&a@Syes-RkZ4U>j!bNq5z)xeM$RuXCwY;T&B1+y?UgeI3si?!;Y9 z4gw_eCi8UFCfq5ZWt?BUa|_b&{aymdH8a4H<-_=fa!?-KA(E{}{e$H0Rr=J}Yqn2d z50Cy|k1wrp^r4Z*gwXCvH9Un7ickM_e9?C9*fe~>@0T)fWh#f3cYbet!9)>rD&VbW zyMghbv$kL(@m}NDI_;{<51|$h^gO0WK}vu1AKit!ZlpVA8Q6Z&9owTXIk{T3G1$oq z-bh{Lht_bTCsYKBfC%j0YWEyPnrzMwP7SZA59m_cU&K&`Uf%3Ca~g^3flFgK6`BnsQbsEH4>8S2K57qM zGv($fPB6LN$k2(|ZiQcbhq*kRT-g?|&`ZCpL}3^sn-p>UP^!>p)Kn1JEvV@Vq5 zvo=kKwy2b3M}g%48WGDpJAc4L^H#@Cp>`jsFARU3xm4|D$#uhx>QelfRw65!nqRqf zWwLsdJ3tqgK9`cC{zGcB?;o!rdODUb)m4$wXD@5vquEgqXS%x7M?|vEMSQw32i=@S z1t{JZp<=U>!hN zzgwSp2D>R-?1JDpY1J2$FrD=Etd#w@xsdNp_5-Moq5hUq9qF#f*=jgRG{nMrS5Cyv z6;TRz!57Ml9TPGvV0*+18vRa!>QfCAF4FgGiJ<@j3#ehJ%Jdps|fgf7Jwj9nd$wJahy-Cd~f0*kVYid zM-iZ#^ZdSSGKhVw@Veq;Q>b$UyBKP zL_<~@r)kL1BRU%%1{1PxbQOU^;2RY=50wb{N1X6QH!UwC!e2+)4PzF|)r(uG{JvFU zK~`s^4Ys;Lo>y>*eG^!%InC$EKd570^&Yns?DBntV6zoE5N@e`cmuKS#gZdE;8sKf za`>m1wf)|ROGcirr9P16VKGmZ@HATk`M}NG;6&y%G2BAexW@W{VFTsw;gwS!6eR9v zo&$4^v3SsQlB(lcSMw;S4PvSkes)i7&oTN}xcFuKo!|4Vi@v)DYWqA+vW7}E8LekB zQvRPHL(S$3DRN%z2Q}bbeTKlYDRVnI+383{K)OrED`{3EUL!mS-sNm5ZHhQ(Iq1t_}LIJzU47|G>BsI#?~XeQzgibgDiT30IF92i9nN0{?xT zsPD<89>U}f>T!vTc{pZaLKup|mSdr@!2a9jj|K+u?=07KO;9$nA>y=SP^XUwF(m6LloxxXba{!RtzV=C8q9VZ88h}vpINRCl*6DWTVs~D!U zp?k+L3xrQtBInxazdcxkD#Buid#uDDnm>lP3=S_sW;tqV=El{c5dPi{0Y6P^4$X&O z>DUz+pHF>J;Jw2;UfGht*E8ZnPmR{B_Is%=KtPfWH6^%#MZ}~zeXLZ0cQ!1Z#hzh# z6qHv*h~Q0yr7l!U5=%9Vk)z0ydar+2+`midD5l2DZYY&u<7`Fauhdsm# z;k1YXE#&GW#+17p=jAvWg{4u+XBzzm>crIsfMb#v;=zs=6}VxIh{CykZZlooH(rjB}xW5T;cx zg($~7U3C1^Fr`60V_7b$x(kFq9D%BVBO{SEKt8FP^pIYwXeaJow}u2u5%xfN8tTNa zy>Q-(N(h8M_t&6d%Xb~Z3=bsYC(@d3#iYoQ6=j}&C^S@aDu%*K>Uqu4)P3BuNtG5n zzgRRZiqv(mC{FXmk@7fOzO-Cc8i8&_@Idt2haxUcgYqN{opUX$-TD&V-{N7a$aHHa z-?t8Lpn>|wA=P{>3d%4!_(_`ZZR#iQa9)=s&qE?ceq+EJnPiv@*YSq{^Axv*11y2g zYwU(O`<|u^;tkqW=v^|{?7BO*CZj_&lB(CW)|GHdAs`H#ho2+FiVVRi7o}Kgbz4p z26FW1d~jR-ep-e$`K9CI>%uXWcH037r3o}y*PSSOp4c8!E6CBxQ5ht7Nf$Pkzfg_#!6uSD@9&2 z;PlS2(i67tu%37S`rpMa=CC>=3{a*e70r$;*p@@&LA`5350R)KqrLV=8q0w11IB+v zn21Ba^+R8ad^6@^Jo@Vp$EXd~l3s%FKey{cUTATE<`r@}C)jSA!5TJ`vmUU0Ww^xO zUmwWy5#aSkedW?YZ^o!+T=77>gCm%W9x_nQ;91fVo3hyim0ni`4KFu9?9GGC>REMLg~w>z_bR^0Cz)}5H62CTj!j}Kvu?{jNZ~- zzdUDN(8;FW5u9qv+jNw308ND|kPi^Aeo=1*y#x*XtuYC=pO!relmp|rQ~pJvtf-&z zUBP{2Y_7>w`(W+Iv0e{i!}J$pU4?EApX2OS&3l731IKA$n#I;78nS~4Ay+Z}U}t>( zws$MyupG{z3}Z-OWcwV_YoLBz+xVuI2WLj1iKH=pdln^pI7=&r5(68TBwnKaYrRhW z%Nkb%6Y(w&eo=NXTWTh_&pTys>*?)&K`>qi#-7nZ2cMv2|Yu=+znpTpHA8b?NDAHBT^q9&sjxK($Wf6yaTqn>z8X^u^ zDr}7=HlzlAUlr%KA2`#js1^?l2B|_$9Hi71-wnwtxUi3N?uQ@A-_7UxW7+k_dU{M$ zt>#FH_UzAoRr7RZEnz;MY;y;bnMLoZmc3y`cqN?nA2a`?=pl0%Mox3Ji*{XK{$}3= zt0K-jII_UbXe5C&Hb=fyy9vo>%N5T`z@6>UH2c4k;L-_*PA;i&9`-P`Jx#~^`8ITkQajzprBFvT9mk=pp^Fj)Yp5M0a?7W_*5+Cm1v;!K}ST5lq-&|1;@|GF6S|i-TWCuMq@`6&5(S`z)&3={~NdF(+ZAFE$9{TSJDBp zpY}DBlBsfvDxktQJN#^ec_h+3oCPkMVuOOCDv@`FI2=E83k*9%y%Y)`K}fgMgWbyQ zA1cv`x(}gRf%9X+^I+2{!)hb1{uxXMw9@%|{Wqz2YfF_P7-|UM@vefIqIs`9!9JE^ zRpiblCv@oOh-))Jmz#7LP6@gev*OFb!7lvZ5d(jy z*Y~!Cr{V~-e>gkR(A8ua1SEW2^YVCJf5n49K6zkYm&iRg5o<~kNp3cHaDj3l2JXjU z?>M3dVVtYhD0zi137n^Pja#(D1EY`bL0tVE$Gy++nc}$}PlxQeUVrj@m_>OUK`9Z* zAWyX3rR*{^*8ldH(fTc~@ogeg`OA(NxZrnmwx;8b(vs3OnD+8ZuHL)jfIl{%2Uef_x^l5WVl>wR|q4k#oiqnN(bxWL=z_N zI!ut*Z3MOl;w|wlYx?t2pP9R0bd$=9d1H^OP4Hp-`96xVCY5?P`bJNd5w)`8Z$yR| z+WA4p#)#5g5tnP*xLAywWictA=jdY+ikqJ7%Y{q~)xv(*p$btu(lzpOgb7NE5r0(^ z(ir*m84>H{>YK{YF|`Bb0~yf%{MYftyj*aQJzU&rjU|L_5om`3VLUWt~hB$)|MRp+z@*Sn$^E~=;McosHOhvf2MK|@N! zjypvSHW|M<+=%o8Co|c!)A!epXj=&jYT&1;7dq6hb_A!nI=&gg_)AndjMi#(zc$>i zF1a}ia04BC+A*5~GA9h&(+g*T{>QCEz@US0IjVX>dw*@*Pb(llp#Ra8*^;)Iuw|VU zS!3L)wDa!%Nc9kG4RW_~t5^T)hYCU#L^gt6Wg79LWjIBDu^L-VYL#{O<1VYx^d4@_N8Wv`&z__w@6H z4#nQvvNMH(HS`9xhU_nW0-sl`nSg0QkA+>>1yyHPQnj%fvwrB9ha{b(Zj2}Zg=EQI z#n;PcY=HA=upIb6*tpvF8N9xlaT{Xyc?#j`^WfVjj2-Hb*Dd-@azZAskBWJvpp(p2 zH~7f1p2hQ6zXHvq;_K9pE&0zlggvCn+r<|#prR4_aEr{k&B5Bdi#q%XOv;x+a{qU? zmO_qSZKR&V^a*N4KkFYnP*%uCqimx!oB0+#CZZQ1Sbdh3K|C+?=W?fhmb#u3_H>!{ z`X5$KV)r7A=j}^yZD(oWzi+LV3|%jwil(fnhs8oa+2GVB!ZXc+e&k&-koD`?bLqW! z_ddj=h!Wy-zvaOxvq+~zCLn^vW7ro&aH+_ z&3GZj!mY|%t|~86y{EsrNdT zG*BLAY=3G5*3@mF`Y#R}proWqqdnTnZ_AYUQ$*;X5LA~?t!0Z3Tnj%cykQaSE=`7f zCckFd6l+E;IS^NOUoU4fe;($RiV{=tZoB2_D0$+~G62)brzhfa zxHiM5@Jy}P8c2ljA5*R^F4T4u0rG>FO)huCLM5+)#xE`r+@`v~C%|2!d`j^z?$EcpjpUhkG0Z-PT-mTR zfZZ6Ce{APKfNDGl;+~CxN5XK9HEnpkBj!V_b4ffHl*K7&gX=6ROEqP)e(4Rvz4j%t zmG@;EBN7Js*YVH7lC1vBhI6RH%C;oO=ymenG?>*So|mfM?0!e8B;HR(IWw^2VZA7YYaxi?5}Gq2aXc5? z!ns??!fM?TwR2;K*_1?UlV(jmpG_U9Kj!)8`LsQ>I^~Ke%k(Goun1VppHM**No^{$ zyP=_I`M`W6v)@O86+_{+ueKipi(zN*fP8@Xf$O27%?Q7{KqyF~zGU*DcN!wr0ds|!usLr(u97LO?qHf>P z4pBO*Jc%M>bWvi`s-x!@YEGa@N7W&w1Fx&@F8f^Q9;qr)JVBj%5fy{>Kvn)Qf2@wZ zbCjVs%hunYHJX;Xu$AfIeC*K|KI|=kEL;j!a)gllNpG}cclO)2P#O9-JXa^yGT!CB zyHunngJ?F!+O2&MS6tubz7zTJj(QQ9@_J->`uvMYCQyI6^_qIm66g^2nsy1G8hs%^ zzCg^2lO$bW2`a_zX~Un*w(#!!2Yi0gr+2VO0?Bo$=vZ5SEVL|+gw^YqAjo2^B-387 zp}4-V=BH591&0(-!`+raGZknYzIZjPnbwyw$ig$iO$`K3b{;jB{N{w3)6g4!BN&M9 z>H>6A*#A3On8cXih{!(r#@imnjtR*Sl>ITx7b74Lf9lx zoiDS^=lSXi8-1z2DGmvj$_*Hu3X+Y&dz*DV8-ZCHAh+M{K1h6wks!KY#W>!L&UT{K zS<6)F+c@csk8rb>2HHy>B7|ix-FyVYIfvVl{=0Yglhh@@=}~}B_S0iF$s(bo#RByK z#6Wv#4byB^!UH7T6M`8h4z7YQ^u@68UN&u{9e^QcLqArh?^) ztZ;dct6uULU2xqDzk^wvreA?Gk=%5knw@$(1KoEeP0`|~yqnTU9@CY-@(cfJ4__rN zn--tw^6j_A1{kgg4@`~Sbt!_Kh||_>Y0)Qxk0m)_yUoc9Nov7m4_;oK8xnTC)FnD| zp35&zkh@fbD(Hzm*ppg3z%({3fm+a}asHGlasOky{KIAqoEG_`YnFDR!14V!^p18j z#Me0!xCfwr<)Nti2S3Eok!b%^&#-3S0r)-s)xW~2|4m++*hYi0#7Kv*O#?Y%tD|9H z$?HDNsU=3h^|8WXaU|DZKm4cIVXHRWl*|6K*wXqR4{mlZGbeL8KYV!ebqON{T7F&v ztLS1$GAJI4mNGT!1+y~wJB>9It8o$rVK5)5qZKC0dW2j{N&SPPFEe`WxHw$%?03f> zEDz>GUZ!B@t~Nn5Lmk_)z$AVH`2lhLH?w{;l&=zV*rkKLKE8`UIS`kPwK-ap7xZ5? ztEUUTQBWH4)M6i&;esg25uWg=2qxnTL{43p zOAGU`*;7f%e1Cd8Y_I^ZKcIA@My9B7ZxHx)h~Hm98iDeE%~zBq_2dR|vg*Hx3Sc?q zHq@2PUay6R{URc8{(X507D~7sObWyzA13LV9B>AEL4zNl8Z2&r*8N z{?NL`%CX-o3XM%o1|VykRK5LSNnsxtB#iWYe8h( zvT-Q*-l<;qcVUrc!UWPTsxJEK7BnuBtyQs>I&G*FoXNS94lN@p-kIL)En!S4ksi{S zv5d@n_UGjyrj@T&hPz^tI|m(aC}xnqMs00>z5o|(2*(BCk4atxFC=Obo1-J*og%Gy zsUCNc9l5EW>FhTUq+h0q-upm)|7w3;446SxSZ9nCy#3;EtaA9%#2*V4ykUtT_gmNO zS=4gHn7=G}ZJ%&rP{k{6SGjdDo5*~@V;7O)NjfyKOA^jeBszYhyr48>NtzdNqCD`J z>DZddN!yT{!sb}I)SO43Tn>HZ69m;Q5^+o(`+i8oM$>o}=dZ7#R#~>D1A&lf@VZ|& z9VsJ1h>c50 zZ!%!2ujz6ijEzl*IY0BIG^wu~UozGgC;#?6=4;pDJ1DX+yIyRuby>zLDg@U&?407$ zqPzo5^SAPZ2C2)SKU~UXtMhG)x_92SDc=>;b>Z1`LDrkBO$Pm9S020Hus+A|?21Bs z*nJ)rgiRL;6Rm-a4?2deP4_MJ)t#z1N|e)|VT#*BVeUQ)<$rAI8m9Kg2S&ny2EAlq;<`Qd@uHJ}^*@XCIFN z1zA}W0(hW*r@?LHEJ~pqf1>zE2XnqE`X0YBE5b;ohuZa@ibeT)lV#uEYY&ure;1pq zfmy*&7>9xu(*y5YRqs^6YOd)ub?Ya}3?=@+AIiXHwj{9O?dgTwEI9@J-v9V1=|BKOhyw$YAZQuO%c9wz&Pn%o-`e z8RL7dJX_h_TVB^pc8V=TpHSAKlwE@4Wj={c53{gMulY$~S}K=I7W!cE+OtQ{%;CMA+h%I2J0rLhOp#sfO#8TAR8a81(`%Vb zY?udM*56b`)NhwT$L573VpMioUlEaCJ;NTP8E&ZAE!;y+1-sB@VL6d}>)YT-7kplD zjpR+!?2oR={5yhBP488zw99eMv^0d(Z=`S^AMyu|RNiVxVz$0fn7cvnD`Jc$)FCp4 z%=02I<^exWLYdSe6AZV)ykybr3U*Mr)9eg^EIG{=3!W_lqg0Fhk10TYH_~wUa$U3d z7k|)AIGn#1)cGX&e>B@!7LV;TA+}z8cYSTr_xI>Lvs+Pj(9hL|*dVDBxzY5DRL=x$ z?(mZMb&a%fHq{P-LlRj^rAH>&MqFP!6|R&-Bicl*{u2(g6^dV$5;lz~EIHvLZ!n5F z8{Z1F_Yz<(@Tgyyly)1l6%{j~K?UG{*f(5WL*LLotmSM2*NX#}@uJl;y-x=tRv2(; zB8HIKUdQdZ2)Ob3s07D3FgosN1g52o`$j0OjvtcO3GS4=<)AJ~Rkx z1XvLo!1&8S{AYCr?3|+keXP{6kT=7BjlaT=2zuBDr$%;DGhqqJmHw)S@ny{2;B{Y6 zPS4%_z;e6J4D9c}#$R>ll2aY4fBe_3#d8reEqS27P-uTn6!I^1(j)jJr;X6_g+Qc= zxLwDcFbn$)oY(nNo8pL;jGE!SX+8dmG*#<+^Cj&WLO3&BT^^nIQN-E?z65Z-Ecq%G zuJFksy90r*O2U@-uX?b5oi8n@CsUcn9v~O>nP$uyG-I?@;qj59OOAsN=HBY|hug~nUhq1+SCj=8x>nNEE+XMae zloi~-T5i#Em0d~U{Ik%%_yND?fA!b-?Wk?xc??sLv*Kyq!W{;z#xy`ZWcpLgkP6Og zJ&vlT@I8-NgY=z*w7gOl_{cJ%4s2;oloHI-T3=$m;?{kh#Jc|YWKl?*Tgf6*7CB9J$GuNj#5Q1p*&)TxWK*|2vs|2rCjB2bz9*04j%_R_ z_owLn<-Qw_y(rlKQ5@`q=OwscUGtjyYrO!dZ(#kyfg-jA%p5e#+E|Vah!u z;+z@SQ8TAMgrh&9@lQ zNQ@p0*-N6;Iw=z4^LVPRt-$vIF{UokTE+O!118uy53B1S(aKE=eL-&Z$PSiF6G#WH zZ^hX@W5V@TqLVF9y81dQW+$2?%b~mo(e+?1dz4CO^c+J0jD4;UgK{{RuH~Pa#2(+M zR@xT^{EHza1G_oBa9i8(#Z}26Fox8@x!HFXhP|{}`zfm;Lxq%G-PfhSkAVHzt1Mj^ zMLk?*(27Pra$una%FWC#AD=4e>`*W_zYW%#vHsWmbt+^pgz7*b<*e@QwfOXQg;fCA z2dgjh1HUte=yH=du`ahGauTYhFrHNrr{+2I+9^lH|2W`CRgp?OQb82?ASn)iQWHDNQOpZdx~Y-`>xd4t z(grwx#5k{s?qO2~kQQ5)g4!C60rdmK|25vi#cTY!rhB$hhU1YaJ96oL;a}N9Q?rq} z?G@r;am*z@(ldHa5sD*KqoC-yukOTJ(LC5%B7%nA&?w)~^Ac(cs&;htU9}TY0^*qY zsF_-ZJL?4wX3tu@FvPFrB)>z?mT5euE5U~AQz>`7!uF zM!>puFxMM%P{t{Z*t{Bq*lJ`-j3z#hXgZ!(JZE4eFn$5@&5SZXLntxcJ=V~*32Sfo ztG@8PdSl@GfOt1jnbq-<^ogvw{uJ`@wJxc)mnXZxbO9y$s&`PeYJW?(?eey{#}IAfJ) zMa6`Vh04`9d-OUFd9yV*-0zS{A|LOTVcF%o?Wk;E|LGo~e?ww{#6dRf$dZh<0Ef)+I#>!8VC2z{cBcJa3tAsW)Sf2-M>$7joE! zDAYj*y|0EB8S{Vf;C2~hqXKJ294wBen1Q2yUt@SSgNLSAr8 zn-80xwmB?~wJSAGr%&{E$9(bW-Hq@x%~F`JB;48h&W($6Ps_~ONz^E9sBQu#CYzdw z@pn;ss9mz+41x2pm~IAKeXHU?n@^B@$B)=|^Qr$e{|2nbzN&Hk#TQx4OQeBeij61r zV>81&{HEL$h2#-(gTI84h&Q9bi%@y%^fFR7HEL( z>rI^~QT<6erJ_S8FJSJN0p!j;hHTf|C@NYSZbLwbeQCA+J<0VVnebT40NaWSof zFMDdw7*XY!75QbsYvph%Si+kQEoB5c+41Y*DTKkyqqRnc_U^ijI9`bWjN%p0{%5>| zz|d4Pe{!CqdGx;4TY8V*QtNLQ|C6snL-dS#PBPBE@3mJ?550T#NSL7)iV-o@c3cZ* z1q;w8;i@gzCQ{T$&75V9$H*tFj~O+GqJkWaAX)vV^|Q|_ajoH(5ET1>yMqj zhKNn;2Pl>XZl@wLc#EDywlmRg=bC2GysDQcg{&gH*-houG(OD}G*uVi|Ayt|6Q&NC ziGdCJuyC+LNcdiV|1}>Kv)x!QWmgz>iudFEag14_U{@Lodv&A5C&RTcgI=HO@FUb$yd%0yX4ZNuHZaAj|94(!1|Al;`FblI{I^38aiTyR^Q+CkN<1^hsdvZ zl4{Etmk`@9Nv5F%JlB+VYtO#pRvy7d13{(I8ba9DGRY2ihPAx-wunz3U|w%z4(V%N zPC!RQ9P>be8l3W8*+E(NZOqQ@@I0+42piT&EPsAc(&0dDh_a+|Su9ciMEmuq?RhoL zZkSe*!*pIN$a5yM>xc-wsnU46`9)fwUeDcRN5xmfK0e6r%F>_ra~R*=3n`8U-Bx{{*Ahr@Z@h>JgF9c z*{{{YI7!!TzA_i(06a#cZP5Q(&pD(fF(FYrEBYHMC*N92_TFTwUsAl|4r&B;i0a$I z#$p6Z3A;LJX&Ske0O*c8s?;VCz3_)gj~G&G4emr}sZ5d}ttYEgPfYg0{3YY5tds1` z9JBy;4A1auGP4%kS;|wPO=H1t1IoR3Wia($^ZD%p=)$Tdy-TF`{Bto`CQ>fKoKu%p zJ~u{M!I!{O^2Vs2^4ilRtwJgW%YI#XUfMe@SXJN3pkO0wbU2IOF~$atCoMflq98>g z0piGobN$-&zs?T>))Prgnv#s#CX5Z}ufCGi?*0|;0{_1ZG|5|)J?%fLUnmm`SoFtv ziXdKE`ZdD5rERE+ZO&dq%H0ejx^mgZPZVxkV&Z?PkNFKV{T_L7-ECoqMe?JL4KeI( zyoNU6VxZ+Z;$sd}KxUiwOHgGP`_tnWiKr7^9B^JD{WuvTl2LLOa!OU&qD3=|-0sKH z4Wb+<(UMsYtXEvpqKHS4r8_h>IC!de{q_^s-+!&=oGyz`^rLcSrgdSn$}jymRMkyRRc>-*=a>*VvY|> z@)hdW-JgpsidFFWTC2Iw!RR9d*)MjY9KiUTAH&A742S8MYB&$`0`J5FnBUFti5cC3 z|4i#(dT^VzRj~%-3&gg=I!y_ZiLuO3PN!GrOP)YE5Gx#h-RbB_GRmyeX^HS7kq5y{ zWSTj*Il2u8l_8^?cwpMQIi`g#szM2v9QeLJo+J5D`^DaWFa#Sm?+1xe>ylg(=`Fky zKUkp99l2)SFHGR~WYu*}wIFS1SZKYTsR{>QF0j8h<|FR*eFo5`POfVLFE|rG`M>517gz&5 zsAeDQB->zPyMt#Z>q3GipZz^$J0YwaCSRAD4%;w!nemWU9WEzcKUv4qg-aCLMx`-+ zR5hd}S^)8R1?CgtKV#ltsOAgNCb1%9DA@C?q2Hd=-e0jyVD8*C-I}houq7J>FD8o0 z?^%co_igWatE~}$#I6=}HGh;5ck{jk&X+Wv&oT{-2;)YAo))FyN%TPeK>V-sCB8SM z!EEm{S*l%;x@fZ^M-YE4|Ez2ThM=d^Qzyt#;Ax%wIa(Zbcn9kLYJg;dG3L|FE3>4= zd89FZLO+;(8FnU)eCzs6B&33&QJf12#&R6_2j(_!y937OchYwgU*l2V?7Ak=)54yi zZ}>P{rpc@V+YDiU!tQ1TF#R7O^sc&Due%SsaZ;NNpf=5;ycmJ&0Wlf;a$_NxRKcz| zU}fPmH$eXXx*ibK7~$STu^obnQLC1|j&*vF^+-}piArFMk95?VGZ-OUaIQUmr<>=9 zerBy~tV1Yu==~Jxz{u1SFP~;Pwo?pdZ!+JIH8hk1g;J0m33|0JA`^0cKI3aVL_?FP z^1F#%wmKm`W~Snc)H1w&RxlYRe|5Oa=ilRmU{|5>mJjf@gsJ~KZWfPoVQZVZ6p4;h zMm+-@?h2$bqgv@cy=DB$KU`EUR#MX=DMpF}IkK}6xSmk2zG#b4)|%w4eJ|+>8~W?L z{b%g-186_!>k?y8Qyjy{CCGvLd=F#bzf>?`)Fw0D1!j>?5n+jgf3Epl*0*qNX@J~R zPoC=`yea}Y=X|hEabuJ`pDA&J-^+V+aBm>}Rz5R-R0T18|CwA=F2Yu7_&F(!wvDGW zgGsJHD0X%2zz1swyuhfbRxpoQ29y71O5B>~;TT_7aOA!%c4sd`iftc_%akG)u{J3am&P2x+wMcZr7j3{l_6&h zNd^G(mBc*t(ZNv3VQ{XQ3pUu`A|sXcO=sfe4(0SxLHbX7ra=DWJzoNt;~TA8IsEZm zM%ey3|7(h4hNh8lJ^GsJ&lQx7(dB#fs=)V;!?9?z1qjNz2%V7PlP9TCWa?A|BoJKp zOjg7;n$ekBcwaQ6#pBR^5%T8_b=f|2$Rf~2BoC*Jh6oRxw;l_5p7};l&l89TJwR=x!f){zbpKkf`q%Zg3fYg8Y|J+i zr0vaGD<+aYM80~Oa;GRl{uj1YUIv* zw|g5M@(V&DTv=xq(renwr9h|1#ldSlPwmd+j#JbhRm=LCP}j&NpM7{}j-a*#VSxTC zXumj%Ga#~pnRzZz+-c{#eLB{vEN%_btN7hil!qd5-&GXkJW{yQCV$__Ft9%D0b}wD z$RPcP#)%ugaTz!<;P(XL|62dA`ucdcL`-S~p}ZH=&U4hpy9b6NE*wjfw$9bp+~pLs zbr*l(aj+3Fo3H-@p}qkb(FQqhH}zZ7*9n5H5D$muo5(dq;8wWZNYlAb)`hYabIXPM zrjjB_VN;nhmHTJfp>bZOZN={l&sNV!seEy$K!5v-m~_^7Ma~4P3=?gjM+i5N576Hx z8j^A@;B&NJ`$TADq8fn-Y!Af#ct_1tkrHcPF(~{F)e`ZM+On;P2f{%;%)2kJTFH() z2N~vJQA-<0ZGvq={ikyiVN=#Evj-4zaV;_;UGkM@J_+Aa`Cje}zF?3rPHtf8MQ1t% zVZH6rvoe7oq}7E3{pkS2_1KRDES^8w+TCqILR^9U`B#5>q2VQtcwzo1SY%o!F4+ej z{82!+9n3qVO{}TOuQhy5TZ)IgG04y}3OiEM#2|E1HHqISKbDZ1_a_5>CJY(HDBp8b z?l!-;|E~v)QK{#d-6P6av96{+M~2a0gGtK>#|j{e$eC0+>_#_5A%a} zp72daMobZdf55;92$O2OM~8)3?64L~ zv_aYVdE9~dIWN>OOg#cBJeSXyM)`2Mn!x@8F&O&M)KjbnPj^wR3d9g8C{PZ>!274T z#w{JNJL1kBrBc^ea!Q6Nc4d#l1Q_7%76t`6$EoZ+Thi$tQQVfGzTdiF9bG=@py$%A zpIY_T_BcIaYZ2=8IzCf0bjR1s<6!rtgc*7O^Km#WG>x%RdSokt9~zkccfu90KR|pO zUF_2C(Q42>H9r$pA@$e(N?>~zrLnh}L)3MAsHo)qC!M?U3WJZR%qE4SRQd_^LzRD! ziYgp#Uz}_i*4Ly1P$Vf`BhS(DHnHOR5W~KZ(C%^yxDisZ%g{+hZYsqeO+Q(%xRYJ+ z$cNV1x2EXd@n2OCE!dENEl=mGfFK`kM~?|fS6WNKWa4W!k=C(5Ruu5?PRs|Xj0>K( zxHXj5gi7eIL?v-(0+P&_X%;PmU6IZK`_~0qyKe2t8)I3G8J{Obr0-m zloqbC-ha)1q5b)@$0@;^aMVGU)vF%h1LvmNgnCvIIL_eS4!RKx!?ra&>Z~_LD$T9^ zzkP%~Z#=KkNWx-XXHAaeE6cfM(HP%4rWoVKf|(+5pkVk2-*9r zz?4NRTC)i|ufL>y)m&KS>b#gcnIaIfg(}CY1s}+)<@f)yXV8bddaQ~+Vp8G~tDa|Z zeIctc?lh<3%|4X>!nefiO6s?1C5A!h*}sHY_Oe5l2C*#&s?I%p8UcF($E$Pny=Ehe zcn0}HwXq*(^W&drZy}$ldj1)U(gg{?t1b;qJJWfVccEccxnKS=PZq+rPS`h^Ez^e zihT-+zw!nDTAu_eQOouMZV%j*XOOh;3JRD^X1{(Ef3Y|z|1RG&Pd#7r@HHsh zO=t>jZuy5-Y5B}gkTOzLbXn!Ott%wB!kk9*vWhFu zmwXOZeusDYB*nBSyzJ=sk|X&2--l#wu3CsGDZ}Fk7kzMdTiq2gVtdE@=*ST(=<4Sb z_yQ@2a^WJPns+mK}wy(w~ANdoey-VIqfc652ok$b?wnrkdhE*iJDC910PqKRGD-m`lX-0M{Rq7Qa3~cq$mT41C zdM4Yn8)NZ%r&ElMs<)qRVm;%j<33|5ud5W6*nieB#$`nW)e2W0XWd$OW2#m;!a|E9 zF5(N=7wL#QXC!&8Nrt80qCSFrn~q{UEK7MWKBj=(x)S8?4`b0~PxNNBmIBVVe-KrA z60zvPz97^w=6$%ecrQNw*ZI~jP9PWj%%9Ak;!B_N4JidwNA>0xqj89dctyzM=*+vH)PwTaZfe>B$Wpdo!cf}8Eby{C8X!}n#nqk|_sf&Uw zh(hpRE!R`XqV15$+WPC~*#GPo%@`zHCW|Y(`!j#PrvEjV%$?Ix+Fq@m0SF_HpokH}0_5?vUlZ zQ2SESZ7ItcznhPmkn|3(_T?b}DFgcxA^y8qc@)Y)cUppa_19zvknH?|ws-=&b^OvK8RuTdbmGODpUx^hQ1vILp;b&{b86{5kgr4qp1D)iT!`^3(w~G zroxt})YeAdkKUX{%MAx?@*Ed)0>%iP#L-rGV(zU2X%(8apy6_n9Xb|+tW z2JR$ez-te@!7W?&*O-9`N`TVoKlawm9AaqUQE(2PD>b*X*<+AM7D zTP4O&L~K>9-|37)+b<_5{ll_Fzw)mI%t@LtieOV`3U{UpO4~!+ULE$OA;yE^RrQJp zgMsHCke2<1N~6F|!^c<{4Jpa~D<2QkpAN>7DB5#J=p)fy#V3xC8lW7Af#)BD`80U6 z%p@IJJCv~0ey@w_S#pa{5=H{~!1`h*IgIZ_nGw-I|B+}w@H5(TsYELR@`=R;4xtYn zL5Sj(q|3TD@o{`hF>@N^w1;9v({YlzJ`TFQ*&<^|V`Pum*`}VXWLMbiA zTY{g!&d|-95I0TJzbUc=Wlv4CPCBE>hEnz`oZO=LzG5l|e#!WQaGk{e=GnE2(t@N( zmQ~k0_}e8pyCMCI&t03&)=bVtZQ?~bGiEzwS!hMxKPvSuTGXu#lF}F$kC~FK zg+E9VliCv5qw()H{&k-WFrW2b*N+L(xU33n8fcIXi=_-9a6lsmx?27H5OKytZYw9% z7w{rqg;$KfG~4Xe?J zN*aD07$Ms9!6g>BsIq|i{a1ZtJWIgtvqw6ZFJW`*-l13?Q2)UE{eP_=;Jex64Y0hY z@M}ieMlb2eQwr&!k{>haBP6{1R96s%-noKkp{E$-SMFTgp2006%X3A;2N_P*;8wlp zuVnLoh;9ySuvuhv4q+5FofiaCdhncyM-d z{fF18o;_VPyQ{0q8lo=3j{ZRh@~1Qf7otG$E8|z3UyTv0*^HkrN?QI>w?X64Ksm2|btM&B)EK5)XC2v^uZ$g9#a?Q2|ANLiVnt4TKbp zR*>Csnp>^VjkT2k33}{N%T38xE32UZX!~hO)e*mRp1v#Z0G99sZA`2W^U2DUbj))b zcLRqRG3{nTAMP4l80PyD2bK&EN)NNOXsNEq5D6o0+ak9GE$&k~!fi5P>nX(btR)he zq(kWb^HS~(M2gJovOoHZRjb_!9xJO{kri9Q@DuJ}|Es>1{A3@_xlkb|^EKXW(bF=0 zn~tsDVPPlN;i`)xKA}Lh2p>nTu|2+O%TBB&PzblDqln96tHx~TSlIEiPUKOGSzO-D zxAeff@SAR3)F232Q%@NA*Wk`x)Uc1eZU|O`e>)HP8?&vfkG6K69WSbBx5KzoDpcUs zsJOd6Fx+>cu-L@Cp9_1&s@&>AkmcZyhY#_wG#%s#$LeEB_(Avn5){jaVL>_7<4jn4 zZhqgwII{Au@vwhgPr!Uq!tygQiDUA~$Y`4Eg?9-FYunOz9D783H$MB^A=I{kz0brR_-&$k`V0~b`=$G1LX1wsm zE6wN3W7>4$Tq0uGT2pKjnQ589C4IGk@sL`Eg`Y$q<|H@ui=9LN z6r6f6YGEIVFj~O7q#LQWizuG|iK719hkTK{&9`Qj5)|c_*A+>nq0kNj7P(LFa_d51 zPE;X?eTt>^G|K}Vh0ipjQjVu`*U0+5u0pkLCqDX@qcID9W5s~VKzhslDs-$%Z1a9F zsJg0O?+DR9o)2lLvHFYKguLz&7xtf>Z@3v&_d=)ZF7m}t;AUTR zt#B0eh>4a-1)OGMu-kk-A5@*|>thvct8WE093~I&dSxzkT0td|Lv1KBp$GvXc7fNwFBgFTtB&1))%L!0|vlaAYVqMNYM6qFV?}aS2h6 zCA;b-8PM9p6jP(B8 z)hU_x6EuxQ&neXI-37X#w>W=G?+lzc7_0xTX%knz2?1~Qe1(Mub1O_)SOnE-< z;=H~Kj^UMJEK9{94XuKFBrP%WETY9Hk(0sMVSth}uHuy&zyIxJkgPIj8+k8iXMQNj zG*-#BV2V{dR_?`4l6)#)69#?xH-3Qhf2}{0>(1k`(N_3|+*%u;xh7U;pgO5f)$wiA zmHKU+cCoEg^RRRv?^d@%&3x#Dw)T02?rJc%H{FFCwKkG1Uwd*={~SVFeLTQmn4E0R zc?y}F(g7Ql;|EoC2~zq#HoIB| zAn_t=pGjdZ_%$gH0r>~w|JpAE##GmVseDb%X^pL(lH52mQlk_52xVOa689ccxR?U{ zlP=3~YoebGPQN%q>R3Fs{))n3NiDv1y{Yau9@~c}G>rr1I zi;_J@=F4ag9HJx5JC7`|qY@%0%(kCUTL*p*U8O&bBs5J-Kvi%CiUzVkJmG!)TCEM& zIOKDV$LVOW(AY)~PE^)~)HPOWn%Y%zD4iGh)PuZNKHMTnk?==+hTj;*hYI4WM*ZDp zRH;?*ul)=EYd+cbX~M{7y^>cj+2W_3Egv^)r~b(Xy@=~1RPeHCfD z+f}al;+mrdRl)xOo)*EmdBxGF(OPhZG1WMasM3^Dvh-C`8@@_ZV+6}fSBIho_Vs^Elrz%m)RdbAiS5JDAL zf|n;U5i91EB=3=tP3HsAL3 zR4QC051shV9jG)A5pW_R+Yg5fq?1CG`4tR#s8KGUs_)1=}7_VnCGvLDj>&C!8XcCn-Lvw5=-ka4gF0+E4fH2k{toN0&z(6Th{dD$1a zhI|LvRUNO|!>l7lj=d>`1Tns2a_ffg@hAqpDxQ%TAh4lk+f3Th^871hU^8tE{eAXu z-(eOg#%lMIK4_M7a8y53DMc#5hna78^29lqVQXGkS{$BXYvsjU3ns|(o8jpRqzN~X zaxl~kVSmp^I>h#*F>0UDL@q)tgAfIIEOCf}yq*EBpTFV%8gF<2rLn#Hb(e4C<$VgF z83sn^2mAD~AnfWq_NP}u;8Fhb+IF+jV9FGGS=jm;z7F(`%~97AZ{u_8c6qZ-=OH@G zq0O>Dh18-uT^8cF(s4KlmS<%6z$;~whnJ0%I6WoXUi$G+HF{io?8A}rtQDt;tfpGe zbPHp&$g%w$6#ut<_=9%!RkI)OOw*j!I@_j4SNrxA_~}?@46<$)E3&C-P%zSp2^+1j zz?7{2=SXScE7T z-x}o9@s)pehf4X@6x<8mscJPWrsGUgCyV0e@0wjJg|ss7w2Gn@>pO=zcA->f@+hTT zjl_j{BOMHb;pQ2g`GdjQD$0l&`)ILnC1EAQswy zpge&1zvjDQR?QnGrx$aD3TU#%z>b07F$`U<`9s1pk$?qKnTH1c>wbk6ZUC3>eC}Ha z_2I-^NDm`xOG}Z*Hd;ccNSIUo`y|)D?pNzI5JlDda>zQczf6@cc!&RA>*E`q?`oDU z0#)a0ELPl^^4|1YCeQ*ShRR|HjK>=E$+pX{dSc2SE08aU2@+E*Bi(`eMyL|YG;V4a zYBhg@@aG0AF_NOk4;xL93pt;(ugu<cWm*Y(rmSuYa69InUqjs{BnKlTmhQ;~Dpb zjY`+}LD;Exb_(}>i>~>hiG6-&gSlX4OAk^FUldVWyXh4LOwg`<_A?a zAYShk{N~RT097B&R)s`;A33frJY}~B@$(4BLlp`njrXU+&t$V0WyywI0jmZN9Fv`s zD{)&J!U0KeKBd5Wf&My(o&MD@X@>ChxNsvy>x!bN+RQ1JP+MbQKabr0IGBm(>)Qm- z5^-1G`)@$~0>uA%o&xsYgQl*BN7AjdlEc(^s18Add(vjkoE>=QbURCib|pAb*2v#3 zRI=h-gvr5?r9d*NFiT9LIf~qoCn^2O#pev(L{-@Tb@kd%l+$HAUsf(mpyjh+&Wf;X zR+rU=R>jL?7BC;W{yFxeO2Y`}8krrv1PSQEJCa}#je=qZ0ggBXL2DU8VE)CeTRqnF zIefBAA$OS09qurYe<1$X{z|8d`kxht

8^)Q{x)b)1UJLNu((7l&GH3wVu}jwHk5 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

F*2 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

-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

#+t8niDE;%57fG&+ zOGkrI4Z>)T>G#uLVc^$q+t7|gSbf3DFLc=bQ^^Fr(RP&|ye2za>+0v{~YZ6I4#!)b-olCUq+Bb&X`9Fz3@WNVeo)`vUeoa(YL|w0o4mN)=v<|SL4AL(D#Yk4Tjx(W@L|-M zzFc%{v1)?k?V&xrNTdxFsH&>ZovL*&Vf>kFt5KdUnCjIG>U^oc;W|c4ML*`{Af<6T z>Ha>F!~D1(EE#e_Xqd}NG{QP?eIKirzWzcU+mgP)=+Z98g&lz`4tyRc@BY;Glk0ge z7v8J9^}bWXZrWH5Y8*oWF)lQ)h?V7lobW;Bb-s~9u}JY!j986YiqQ7u5EWdfg}_BwGH>{hRX}ei zJTd%3c?MsedL#)qk`V7ih+se8L0MX)Dwq*_NbL9usK3wV?)wAFpKN2|=J~p3{^HWl z{e1!_g7@@SYPH4$0ucRa!a?4TLENIW_^PolPN;v+x&!N_F{tBshOD1N{6sGU=Gvmb}*bVJ6y1GlL%G^Zo7kjB1&oC{v4v zGD&iF?(tM=)XLd`D~)TWM1okJ@)WD9AgKFwm>R612t_ZW7S8m5JH>aZ^W@TuxZ)EQ z-3+_78@DA<1K0O4{~E}b2R;v!!%BJ%MJ-txJ}~7nV_=MZ$vYD0`qAeYueqS*pjNSY z1M2)=6?BU%H#VZsXmg`1yZn90bH~FIO0UfBz* zqX;C@RZ5nAwOdK)Qd?JbYWV8sNg&MZJ`?-O=A~Hc<6+XVe?*Wt_ z>nHVC{SNT=#-O;;pfr4@!yv}ADfk(YY7$*&uia0h4k-}F&tkGg;zLzRb=%Nx*c^XQ^T%DR&5#>hLhUtcAGSQrDyilo zBev_k7vqJX&Zp}%;+yYW-tsCSy3|QKR9Knw6d)V#gBp@--BUp4)Hi z$Z~Uxw|=0G-vtC!zWC%gktNq(Ej5t^3%d{laZ#*06?lb4F|W5A#18x(K>4x$W5B-$ z%3`ChO>C2OPm1u7AO=rD3S=K}6sz&Imp!&(TwkF4Sp3c`BH$NvR!A?K zadr{BgP1Y!d7!M|?82!ey(0CSdCYYcb6N1RW2%)Ku{P}@BF%VsL6x8Pn zTJGvybK&qO-lm2^YqdV@|JvW-sr{L$yt_ZwunQKtAb*e9L=VZNehXn5O(b(S({I`4 zV3+!lbGA7(PKn=H-?@ky?+cYXsPUby?mM0W_vRY+%YGdSKO?sjbA|GIIVXO{JWe5ceC@{s2fHv^ z>XmHFmTQ=aIm+053OscGL+qF0Nj=nTRcpNEIC?vf7Wu}AnVdjAdZMOrJ^OYS)8K(9 zbQ$=H$7B3iitJ>L+*E=l#B_F(A<+-EkKuof;0b4X1slwMi^xUv4To0|)PFYK-imSt z5>#(RgkmRxI^NS9kHCbOHTg3)=MQVfQwR% z{lrI}!YQy8d1(OLZ$Oy@c9rR5&2~wr0G7&;SuL@yFKH%5r;7|BYIXTM%!(P*_!jLA z*#5f>a{0RIsmj8JFD&ialccwTc46%cGUGhz$Nz)(f%-g#Z;fQrwJk2ov(h;@H5QX5 z9?jpEPL7U}R}*JeU~YULxBD{t+~3C?CbZu^w>z@9Axv=wkD68&Kcu+$P^m!2l~PWB zY%?GDJ%IAx{yr>m^<7_!-`dI+DQ}sVQaZ^TRM^!GV2(BhbP(7q&=!LFehw8d9rBUR zO%fnH5sRzv>K{i!`0~JcPF6HW1XY9O`{;ZoApWPDMI&kwwHPLrc+V3(yQc8i`~+bC zrI*C@zYT2FZphS-Bo66@zA6|wL(8YTeG8l?__Z3Zd99jgkq8R^#|I+ zI5LjU#i@otp@9lBE4xqXWA-51Yb*)o_UAYbY8mtO-pd8>oA(qlQUv%=#PO~?)YXw* zxEj31{z6Nc#moV5e%<HPmf)P zW0K4=ml;UALoa(>aBP?ABi5RJfO*lEGU!+L89tU-e!95eqhZcB0V}6@U_M!%+IJ;> zlm8Ogxr9nxNe>Fh$JJ9#{6uEG3r-U0Wx%EPF#6Q`ejp#W6Ip(<)7_* ztY6?R`lMZdtkpN`9-u=UJMf?{jCZjV@zfPV$?#J$+S!n82NbyF{cTvoVrM*{^_xCi zSLM;u*s>bIN$JBy!$pYhV{3P%mSbI%`Jc)psMyQc5}|*S`c#b<)6%*h1gsxjbos$$ z1MXtdTGcZxEZvU>oM&*b$$zheS?(SMwEorpz|6YoW3@!`y_}qc0U`4?tPP z<$iQC#KNsWVDc<}lRWR+mBkA_DSXqE>rVb;^7Yck?AcHgf6l}@rcX82-+QgbcEW9i zVmOLgWH~}UuuX(B9_gkGE%0-enV|>A!zlI^X$zyu)Lh7}|BrZ4VS{8a5_%wBKz{q< z_5v37|Mu4s(i)ZmG%!Ciu8%|q+g-yGuCHqJb*hWzsr`AUDULDb<6Y}6!xhXshY1OC zOU{1$W}|`AaQ#t<2JYl?;A7lDb2k@Tyj(eylG&THQ{L#KO|@}E(7oekS0SQlFKktp zZQn=bH*^>q7iy`(?A4T91Bk>hZYInY6NHDoFIdH<9^<2dQ3-26pTxfu+h=n(Vi z-`a~meNW5RYyRMqKyVI;LDuw!nceEHeck_L?m9@q!UGa&ObZhIOPx@e%x50fty7^> z4P!bNpgk#HSvu=w3v(3Dc9w3A+-d^vYyWo7rGxC=r369bGi{HEi?8M0`RRAftv}Z1 zdVN)+`hmX(l!qIkO!9eZhM0}Na`Y%2@?NNmY%|)}DH&uT5-eceqJ6t(ehEpO&|1;) zilwsaI~Ig^nu!Jf4yo4o59dp>sXjW+_)^cKJ|D%1P1tvo;%)xukwSWnTpOLPM;zi5 zdrplRVcOQv8P+u4t={G&5bn$y`x8g+?#*cQF6&_Of&I_C2Vi|Wb|2gVvQC0@&{W8L z`!3Zx@YeI2JH~IuUDZAlk|##CKz)?65im3nuL%|s^$rck$mBPgVO9bLOau#Qsxr+ zkmGf^fd|wFD6h}!A4CO2`Q8xaUl3esPrZ2E$=Td6M_Va*ZR)tT{Q0T&i1kg_gGF0z zZ6hVZ!4Z?LGK_00lSya6h0I-Zi)tq6f99Dz)gB*<=K%F9!iHv-P&NF88z{jIwKLx@ zM7B%R>6kH}(_}A!@2M*E*m>f1=9K}r2;(vd2meA$u7aIetT%?BGBMJiU_mWo1d_eA zB0sBRy=kzdGOQf4E$*yP7-#52o6cdpA5SfUFE>{ z2g<*eg3F<}MDDf>6PYg3Rhlemvn5TfpvJzM6 zUly%%A9DMDvpCW?kFv!K)5=^Xr#ZOXz~RlDG(Nb#tXfW4%$l=bW@YznMHkEwWJU(Y zBh`aCEy`(8ry3bk{aq;iEFa4U*_f6RV?^_5hi3Gu(NVyg<_ z9oUw1juao$_teN|BTPAQ;X50R^lDm-<74^;Z~sWw45Ai42~S|tTot4R>PysE3U7iN zM5U1ZUP0w6YQ|&we!>?A*Jl`l+lT5k%Uz8bc&ff6Yz7iPRJ!KA$V%}=ltQH(w%vU} zY$rT4bGMC~j~NIAuJ2Rz#c?~Uo50FPk2a3wdykEu@n7{-Jbjh-PP;}@R~NcF<+F-C z(0+mP3q!%OXnfzbp)8l&I#*5nCdf@mYT;9CMHEF?tdjt-8RFObg7WXF79SX5|Bzi$ zlPihlS@qTwK%U*3)Q&0AFC1txEEr4uVk7ij^{%-O;hv@W#wHs3@keIC#|D9R$#&L( znKb_tf^U6L*RIKgEE_vUeF-A-PCVE$NB7P!r2qPS@+J$CD%QE_jm<6e)E}d6BI77V z-+n2}#Hg78T(8Gu)iDS9 zdlBA)k>0_t{X4%>ila`pCgROs?n$43lWe>V>0L_Oz(MeIpb`V#X-_ zMZ9Bz?W7Tv>BEMjDJ&u0U5h zU;kMc%~7JIvkQWQ(e6?SPjYvmCDqPA6{xfrlH!dp|KRE%QjN08ljIp~VX1=z{QhJM zEu;O{5Uq|{Yek)@jzc#%s6F@1RM{1`jVJKKtvTY;ha zlwPm*KC1xNANc-{ozG9@CzP6E6}WI{L~Y!@Od0haj7PA1Zymz%`HPl?Fex(6jZuP? zhhm#5SkqonVjDA8fy$&u*?khE+~P$A=BPVeX1(53HLXb8rQtjSY`qSGGK>qex;}#& z$&B!(6y#W!+ofzt&~H>j3FAryJ>R`|Z#WVJUUpEo%!M?LzPt0#q4=NvASswaSbVvd z^mjBuvEUJlz?rY%XR*J6<5gHwy_E3(Jr++H7ma>+ z`8!C4DBI`0TXvRDZ44 z-EwkD@CE5srRTZqC~U>Xo^$TQk1l)k99WW=en!9BxXi;@+*N8{-H*ItSIEQv`aS~Y zr!tJvFLv!n+UNL7RB@F1Uq01;Q}w{Mg~(%-JFC^PKXvb+NAZTfrnz1na4ZW9D{I$l zW58Jvs=V_xt7fXyu_|=;1@(HaThW)T&b!$6HAAe?d=DwFh3w#k^=heJ1bbe*74@7<0_qoP=}6=aTbDi5BsLm*`yj1RZ2L#A3!~lZcZ8VETF5=9UiLrZl_(4!i(h9@VYaimZTqk%mD38vp6CJhA5cyjO!{QR$ghw# zfComT_x@t&S9MQ9z;P8HTe8ro5^oal{P~JxkN?8)oYgMd%_H*HW-9RfIl(Ga8kjoy za016E?=Bpql})0VU!>$IEzI{z{)N5#c{WBXWp%Ay5=JFT@2#H)Ebx8)w*Ly;k0fY~ zA0_<8_IR4DU)mAMDFFB5#D@`EG+}gZOZ3Sq-9rtwqiq8S+w$%9&m{fp$#psFkL}00 z8%1y4Ev~RiT8a1_!a6_Te)N@+tup*{dDLLD0+u-{ul-oO`oEs9QnIa9PE2({rJCD~ z-dE~EPd#64vn3Eqw1{|Jt5+yhRE?D}J7|vXF4wa}qL`(6Y`jp+p-E<24t~AbYCLnMY17eX&%3XWo>9kM+Tl@tK9b|khQeD_xzy5kIH^d(t-|_FG`9wHDLR~O zoe&{GeG&eu1KGJB17gMVsO~IzV{S-U)?*N1-9@iZ`-Uq<2XHdaP21aZUPM%upN!@b zQi$gt(IPU|f110iJx1^GX*M+cfb2iVk+yWrzBLCHFes6ww$POF@DK@C*qqO7Wd^j@ z~( z{$^ULZ(J*AXS9W68w68OUrbP z36D*Oc@>SnYny<^@k(DPSL%xv3e(fOdCxCal zg+CnOZ!?^EfD6Ur9Rq4UGLVm;0CUc+wsm=hr2R!!BvCYQDev3Pt`boXRusLML_qBh zsQCyeV;?$|o4+$M3x1?JIJ;W;rS7HpBF#JkA{bp`&Eez=@cwuV&poxjVrq*6z9;4( zlJXr!s$|F1$H{{<)8y`Jms~;B-yx@s9PE@0cNn)nr)3$8M>m*lszBYJW5{g_S0t0; z2WEY%a)N=^M^N|Ycqgpu4Yt*-FEaS2pMDqa!7z!XQIFW3{)h`MH^R!Y2N*A`mF0L5 zS|G?*`bwj8(-=Jo7%$v%NxD#^7%4TPEf2H8BCq#uOVm%4s48pwaRPKM~D*){Q$j=y3nJO)n>zzh*-|U`taXA3~Jy1UFGf%B)KGlcm&y@Mn zN|g`QXmtTwr&z`nS?TWB8@ycBP5FQjb%m1W)1@6pi{s|aM@JRlh{<=3-_blF!2cbH z-zDA63#bNF-pJ`LG2PqVZ{)+_Rky{tYf8VmwYILuVRNml z;GsS`3T~=k&q8>Oa23ssN!**ZUNey#Ah>xNS)%6_UJ?$}=dt?7r}h`}5D%A74PQ)n zSM*ERXmjGLLV<#?@Nu(5=;!(L1Yrhdp#41-uLjy*1EkJnB;EN0l*iET&oS=TxrgMZ zgTHRN(*Lh>A>K~S;ZylRPqjY?=lY^D@sY!79=Xq8yDaXE3AWP0jW015-HcY-8HMt1E zDTag+y0L?pqqn`$$>aX7`NF5>v;F0{JTz;q+DcS$p;F7*XrUpmS%auW-)qnqABSP# z@94}QHlJ?FYIkQ-s3F$8=Lh21{)56cWlnS6ckySkn(qDqzqh^@BTXcrlEDn+(vCv5_Jpe8i%>Nd)|ZuI4{X1o3*Lv|L7=MDGbAW zZ)nkg{Cfl%-x7FOE}yXD$bHK-8`Q`6d_aA>-esmAAPtq&i3)#E@cgJJbXv&&)A!Xt zG4}5gHvKjBr|wtf(Y)_Bqt>`{Kl7^&2CH3eZJ_&=@}Qb*esa80Y<(f0M>>|3fx{ys z^r949g|y;-_`Ls`zreXF{re(;;HMGu*_Fz+@ry&J&zi!MXbf&I74^Z7557(@9Uq#K zn_`{HiT8CRFCo`aLNv2=T?yfKH937GK!fJjg=3=(tr?n%Qh+3b?{NzU_bdlmBb|l2qQzrF7?GeKD7p4>skYhSJq{z#1Md zW8|jY+;}4Z28?$-7H{{8(QgtxBvNEajt#T@9vizHf*!V4QV#nDl~Q>fY_=NI{xoM> zS6rYJOd{!@Rt~-knG4$|tTo) zvMx`u)$gHT5J8tOywXJQIkc6QL0#XG*{98jabCIu=4H`@sxU2yJ^7U`+mM41<9Ge2 zX~78=@Vo@dK)xnBmFkbWHscZj+@$Guwx07(jTcoQb`cj*O!wQTp!B=`3cu?Lkb7By z^|kfEoF$fX#%Z)Yy#OAuuwEJFv-u0;gJDdWTWvaqW#azyccHhxUyrAnzb#&Y%w`xE zv%~Dc&i=ZugF3Ne!A;e}v578we@Dmnkb9d_^b%QZufPt5QkbL7&pNVs| zl;U@LyFuL_CP3-*j@Qs>=w`h8*lH&Ih!o2?fzCs735~o~V;0Bo7tmfG^N*g|AEp9g z8GnH{<4?Jj7Whp!yCMbR2!8-|!~01h8&a8J?A7a;$k%sawNPOnmy5@I*gQZT-znaP ziQIg@7(`sr$0CuA)h|Ya)yDL#nqh_H@biv4W!2{TVNv?X^){_@ zWccILWpbFYSK8+d2{lqjpuQi9S9RO}Z$`wb(#et)Quld*h7y4yE?*{+9CC(yT zPkS1*ad!359bMiS!U7C0y)OoN5|AJDSpAIxHY211mHn=6-fQIEpGiWJ-=Tl}Y?xTo zQn_@BeK!~0pZ=awfWdJc{c3RV_AQYjaR2}7{MY{BVQ_ICq;lS5Zcp&LJg%qeH>y0S z(%`GGAzGzb)E~fpr}mz9vZMD0gn?1ToyQ1tF{tAO8eJW^&am&b#UfQi3Oaj(l#l*YfdAZ{E4tJyxZ74 z#ZYG@d9B+mMZ(zu-om8Vtw=$!vH z&}e{J@y_FB(Iezv;}6LaSJ-CzYY#Km6vRKc9XC`AP3_x1=e^HW@5S@~D02b*DO#)g zWB)?!7Dl_)c}E^*$R>oLMHn~51pQ=#rHX0*uO$MOX>3gx4%ng<`4_G z#(*mW*3W#O4rlN^t*lURQvD<6B&nr#KNjtrX%~)QEBN7(>J66nXTkOmV&2Pv?iP0gj)H(6SdfEMuV9FpyZNJ?OIl3};QzNSm*@pa>Kd0Z$u;i)m zM@4PVa5B!gXWBeMwSE0|MYv3(gEQ4UdBwD5-tbKjmvhi4(Pz>c=KrY&dTM>)Q~gyF z)XJmHI6Spu`0QCrfthisA)SDxCX#kChpE88jCLda@B4E$7Dk`n3R_EjnCp9mY3rfO zSj69|ITd%fx0#ZUeP@?}-Eo(gTGXeqG#K%=DcDcd@`o$aF*GH$q#6zv$DFhRf5jp? zW?>p$fX9j6pU&T7KHq*4bTO~SxK+k;gPK3)-_6>Y)aR&xM=+&>bs}B<==lNAC!9e0 zUX2C0k-3T03b_sSB~TxrJwAr7pUQ_TD_o#4K)n&!>fEyBj8uoXazPu`y3dOIl4f1d zbnUec++UB?OP;2{dK?G7Xhq>9mAY5AgOw)lX$AKO;#MPg)@;g64fx3^fu7YM3U(07L0ZVC%Ql?EHwRz<=j8@77 z8xx^k9jN0cxGLyP;sfgk7DoiZ4=77opytP*^b6uc^ZD=5TO4DUi4}F|BS3_pbW4V4mi|A3q2{-H#cCK_J)>g}L@%*XybTo`lnGJnry3 zxoyW!DAuGC*L5G%{l(-u&B1VO$|W}pEI9|wblE`NZx~qb%<+oEd9RHkiEvcpR<)(} z0o3t#ewjHeQKk1i>LnxFYeP2zl`>it_|$(d9$*v6kRl~|3MYhr}e z4@~xdYWKQ8-M`%0MCx$Rzi`ef`W)&4VL9fx` zPpKi5E5@#?F9rwOTleSYHxHKJjqc$r;CCatRV1&H`hdFsoHde@SNU`w17C-&8|iJq zi|6jIoT5giD}L=*1h4Rs(6vMf6#+Vo;rExO3S$X75JS&u!MgLCn7n5a0D zvycw|fS^bc!sgGoZ%6^Y5vZy#x&D@4yq7te zJ?kU35dk&l`08lz%UtQ=Nfv{iY6d%#4y=_+w!P$p6Ii4NU_KQ1J%IhE-be(a3g#`i zrXR{Py(#R0fUJ?ZR;aiSY$T;vWX4W^wEsqKe};l3#P&eaLPVs@l`3YA!%-i6{4F(1 zi6|d|=y(&T{TT*Jsf6k;FtR`R&GuJ`9CkqM&!C4V!37;c<#XxJ>|1TBA zaxjPd{;Dm06a#Afj;66e5C6^Eh(b_H31>%T8Pxb)wJVFm7o~HXu$n*&qmG+?l^3GL zIYO2%_a{G2!T$0TsPXEsxNha*i_7}%cCiV;bTJ4}<5if4SBSPTgKM=ihT!w>KIe6l zoClpgOk}}V1lpv(xrYHYK65cAGJO9lw&zNOW{q7$Hx<U}3^Rcmp~ix5Wwo*R!4)pT@{MdNj|sctXC zLCmRx8jpOW?Kp5t?mc%|`8gaSn{oR88y;DWs6VJV5LsOhIu?ObeVqwvJTlFMMDJ|r zJ}WUpeLJ@s`#=3ifcNje#v{sPob-#LO)l*-+=cR-a%7;!BPgE@B#6B_bCWWfHrVdS zM4lUuNWeDW3lFwjkyMGd3?oR6f*OxhYb0L2yYCE$f2B^cNO#8k+;~KIs=818Eo{ef ziT*1!8h=Mn;}MNXZ}h07@=8@xE144+)9=rXN3=1@6H>n0)IPXi6n?dIga$Ppv0AjD z#ZdCR#h_L!ua{YCd2T#{vagyLNU*%?8cg^*0-{qG)OaLIDjsi*jtydx;m(cC?ZCt;}o-x#*%>~rH0GGnznj-RYj_~-kP z6t>a0pvEJUqY`(dO>fu!6!^SeJ=myvZagwUzEu6;b;Ou=vXXu@4+@m;28JnSJgj?W zR0&OE5*szB@yL~mzAd$%wG;ce1T;FDLJbgq0Ofy;M>KD#YbbAbG>X&QKkXYfMt~ZR ztS_o%k)jk-O{$>~!@GG20mg?sMajJE~^Jkkqee znLYJfte6z{pvEI4F_|ug)G1X3-aH7x@AYAx8;_Vlr|VEAX|WU_3%r}Mm+JvF9w}*U zKd6bHG)2DRrW}c!LVa#L^2#RZ443}^N87nzh~ej_AW-8GE`-PiWTv$$TM9b(P?%$k z=f)$Se5{WlNSDJPH$H6&;A16&8jtjjnySa|bw^(&MTc|GWkftT9x2`_FfT9>Vr#{o zAad7@gXOK9!Zz?T%{uv*NsJQte+{X<%) znZWt#lZn0|8`sMG8jn>qx#}0YHi=q2(wTDeZ1JhP5H9w@tO{)rgUWBF7FiP@{s7AV z8jt*$B-SIcV>r+0?x5O=M-se}ye zJ{_d-xq=#xM6i%6N`)7eO$d6!9r*imJU1SJ)Q+IGa{Tt$sgXYWGK4Y&)Oe(dzGi+l zXl_8VM)4QdE1mJ@#v@^H^e98U#a5r7!8DU1#e+bNM_!yDOw$+LU*x`Gwv4o;EO>4_ zl9qXUi2+$-Ug_R9O%T<+3~D^mEoxdOa3+MT%AeMH9q}spx$(#(4gYKO2j3j@jN<#r z9i?he;}Ln9Z&txajl!y6Q=Q*-$R)Ock39omD~ z2|4Dkx(+jogrHa;{s7AV8joBs|BN-d7NoJ(;U1Ttl#c>69szIpV6|3K1EqH*{T3-9 zS?#&;Na-LSdH!Dw9nbK{Yuoek1&Mp*W1 z9m>1Ak=-?*#v{r-V%|RBA3N6E+5Cwec0!*Uj|3F!pvd8@uNS$txHiH+T!R{qpr_TY z`w5`2ESgWbXODUrKQ|sBBHtKtfuL>Q&w3Y<Aem1JL}GI`9PD+SbeWWXiw41X=~XQfJ=cn|@*^mF5pl6>*F-J)jfwfC}~ zG2gCuL5)XB$+M?%hw9eo`lKRiv)7KF8;=Z{E&gE(F}}-+F-4$?q>_GaJ}dIcPz@`K ztTaO%ubpMNm?aQ@0Ofy;M_z>(Sk>D(p^o%+_Jxz#n}ZsUa3B8uKK)~iepqmoQr$-i z{kido&!^Smulo(~dDpEzt@`9SpvEKH;IG)tDmGH*8bM|+n6E5#K;<&jisPRaJSc1oL%Bl42AdyNOgRJ&* z;}M7EoPfhNxuX)TEG#nom&KsQBRogpla!PmypdV;H1BNZ=bsyoJn-r@#W(cgUO1Y@ z!Ebi)gBp*FF;m<#>L#Z+25&lcj!_Q(|At4No6j0<+JQ37hSto{gvr&pET99#A3*tE z;}M5=il1vJsegj|qR2=_OvOQsN3Mr06TS)k#Jcb8g-kwxDtc}_LfH^aZ;YD;?#RBs zu_IX&25LNVNCl(XU^P+PW`c9lfoS~kx$(%duV7r~mkI;BN$*-QjNCO);}H%k-t)HA zf+)iH#$aDpkq79>lH768jpy)=pggEsiR^y zaf@kRs6TmbJYxOHw(#{zlEbnC_QD+!mVkr46Veb1C9nn)WI}(}>i|mDxRwEP} z?lrLg7-Pyfrgo~`T@L%mo7c*S1Hk@c9K9^oGX#iIt@Ap?_8s$MKWr;qsZ=uiJCT=V z;I1X==Z*b|qj&daGbmRe=~;{@>e$7H(+KH+-{U47Lree>R?ra<&q*zUtRugUVo;Z${I)0G^*Pb8~nI^MrW{cq}V%mHuVXI`<*B_AmR> zIFGW$4AaVh=cj;6)(C%@(;`>c4YRZN4Gr*nFB(>GItO_*Vw&%TSHS;a``hzhfc81U z8KhKeHGcIXmE+mlY3GwQ!YP)OOMi2gx%$-e z6xeV1gn$=f9FDI5;$S5dvf>c?S&@xuECG z8g=%%A;he<8gA2NaoEF1rZ~%D`%mD!Hwz9KwbP-k%j`=-vxO2CCZPTP?S76t29%z@ z6sFDyQ?1}osT|eM`xN+^FTrI>rgF!!isqh*P;<@ibH*3N@j6laD^NtU~=(?Jt||wXByz89m7i$-gl(v?|3-rbMPsG+AuqPdx zbYgz-rxOmhjo-q1Z2rMh=fhoh;tU0u6AONE@%+>S2KKJXmmHScEFkCe7$Vg@Ntx+W z*AuuOaWnYC9w>xJM#bib@TyqxLA@V={m-wo`o0aSSqGSWp1U_jGd2URpBN|3Ag6%Q z!}lqs^WE||9N_vv*61L^urN+(zGC@f8eeNa_(=dWwpEdxhMr~)rn*-SGU=Gy&H12R z?qq6JhZH*VU(b(kveXDwaew(XyUcge>*vyX+NWO@Po1CjCxL}- z$fbWV9cO)EJ2?hwHgI~*$2Vl|6til{ctLy}IREWmTT;X`jbl?M^S& zWiuum%=|W3D0u2TAuvO~SG8q7D!K@cJN{Ln2Xq97wXBd!Z#W6bKXBNpo z386J)*Y~azK?A@4L>5H-Fa8|yjrcMCtN`V$zrCKf+UKL0gLNca?)~=M@6aTR7MiNYmJ9!(TkB?#0I`*1+@j zU(b873H2gyM^Hg)+>{mRJ+rJX)A}*R-EXpzU=%c~^X+9YPk9`K6t-EhBdX9F`|dn$ zpucr$zu?(1Q);DfRG$+wr4^tOE$4f`xAk?9Wx`BA-Ou{x@TT?&%(x2f298*Ge%ai1<+2O%uM+~RRg%||KF&43 z`3;ZFX9mu1klb@Ia}kSdtfiR=iPdm72ep3YT=~%9#B9g>(P-zyCj`~}2uzkDf4+gjfe1>P*Y-@e_%KSOfd!n$G_H?C2isl4 z6Rxjn^mVF>=Be`!3Q1DkP3)GG`t*xFrdfW=BE=j(D4UTw6%^;-a^^ZF97 z89t;YPYM>qxRFNlF-YW$UcL@{DaVtUfJfc)E;%c{0hdR=dlB`|fLx07SR?Mg#sdLq z-r{cR;w0lt5kdSZEz@5=2d8za{_sqQ{6savVIc;z&&TFBBYKW}uzAbjwzyaH;4vg8 z@54Cp>WD+8X-vn$-0>5H4w##$@kme7!Uzugt#rwsmBBCd{{%Hu3w}*C&a}*6O{xW_MS0%~f6PuC285 z+Wih-Jo!+W$uW{1{sOFK*>w1h5btltlQsGoq0h3PbcKtgxrV}~Yc=hjzLRQ|Sn*Pp zG^?=s^BoNTlift$-r!U|_c?E%Wlk#`Bi4f3J=l{SPtL%=JhG*VbTa**hviNk29~W_ zBB@=jJj5{{E$?yJzbFR_6Zuc;*)O#0I{6%Z862d4uj?S==mj|bfU;csCQ?Ag1wqZD zH-F-)wo#Iej-{n%PnL%ADVS*Gn6j3 z9wirjMk^{!dzO)LvorVPlN4JUM3A*h%UO;)U0D{#bDvA z6 zb>*a#ddn{pstov?YhkZSm6{uF3L#uFXssPSxJ~M1J7x42?eb8bz>R>GBO;CyKpP20 zYY|8IUY1Kk5QK#gv!QUA9AU#EVrmyV(wz<8%InfDYFIdSamUmZT^*#$yf^-NmPxfk z+~%VR?(cM2o-qa6{vk@}oIWxGf6ilC&7X7VE>)Y}m!=?H;~M4?3DvvvJ&cjJ5sNzt za#I?UX-Pc$`pHi$OH5;uC5b1JpfXMSMnL@-n&4E=8J{KKNhhVFj9#$(1{}I}q~8b@ z7ulwVb;bCft(L9F(@}YgR@C-ZUc^a`g5$?PK?AWqoi`mccKBrzUhVoDI$AJJN9qg) zQYRY{6cV#_$J(0_ej}bx;FP0u%H55huzfy zr$neAE-X?oW5ac(z^ic47aLf&Wl_#L!wwQDtd#h;P0b0ztoadJbUf1Cxj#^Bq=`AcW z=%-yDyAX2Q;_Y!G>`}7l8DRV0$vb@dKUsMk%SG_yh(OsfvEgsrZY)ls zpZNw*XN==w3kgsVR*>WQ1?mnRsb!93=e{^{6ZlLe@Hn(TagEAN=G+_R?~p35L6w&@X*pEs|4(?Ld559vC~9^NMhMqs;o0nhRa`_Ui8_KsG209qdwZ( zzm`vsZc8?#Q3z%*T4id0f0CW{1K;pZTBy!Y+iJtrh-0In#$tDzJfyI3DkshAC4bu;I0yo+jmCWOT zfJEG_NRff<3V4e&_tRdW>FH*J&AWv0qSP1v-e^jW{DCGMn=Uoxuc*cMfcnavyfZ;s z;dcs;G}GbQ4x0|bb6|;?g2;NxXkkK@UeI{$ehSUILSaLj5uHSuTuUv40G6!#h+0>K z67l@Az-@l6KkLI;9rv1vHWu>OW0=HMgfwXq$TyuIr3(3H>1Dz{)sGj-HV|mW=w_*9 zk0y_HN_18SU^;%b3q^aGT67UH=i=EB*L!L~+^l&_qPf(#ulF2vD#~~a#Lyt@7vCBb zmP>gqgfU>`R_`)bP;Pkkm(K#~3+0b^Ib&+^9CglK-F{}5F)QZzWt7jt)VGvc!brN`uWT z%jEd=&$-0V5iOkJ!{HiL-ZU@?Jl(@g${EbtHVF?;R6JoaXM^E(hZH67y~j~O(0of{ zmWo+18(fpE>oGu8qhf!)&ud^NF6A4j=v;X?d?=T+5M3`cr(zh>G6_~% z4Ke)fe)w7%22Zwg8t?oV&6wRWzVNm8kK>u%)U9@Qg_i)iSydDsIFR-U1hEXEO>lF~ zfjA@MUtx%?9~sAnyLyNZ7)-zKUcB{Og9f8p{!UDFsQH z2KBi@y2DC%BSfHYxjZB}!woj}Vl^jxFjA9Wt&A*h9N9vRGK`$Bq-a5(n+!X+vOI$`BmoOJvnC zFo^izz+&kWOHLgt_B>i(mBf!Xoj1Fh#+;NbK{@`ZhlQ)iY%iPq)TW@tm@h$UA^s|7 zSZw{HsQ&~t-p$mlkBSdw&W63AwR01NMdL2N(;x7;0h+s07?RE+BjP~jqFhur;B!D3 z@cvYHbYFL?UNMEb0pd+mp?We#>zTc;*c4~w43qBqur|aWxgQtp%MVv$c&OKkTt_xY zaBXq+ZK}eMB-SZ5S*dha+O4cg@V;?f)nH%&(|m9Z*emG3BJ8? zI)_j|=Y#iQ$2XVSB882%Z+`?w)jeYqj~PdRMFA<2Z>7+KbL2+y)~sT9Q+HWoV$7({ zOY;sP!!GDMVE+MSNS&x(ObSaS{yFK=gi2NquZ_>n>*v!q6E~)|_{YiPHsg5-hd|BB zx@f7sT<4U8ZOL2?IM=xPCO+D7R~W-9*u9&LzR<(;I-=6n6?5D?Do74e$ppY9>)VBg#=ODZNyM%!}CbL<7dN?!yKLMUn4On!nd2>AIuXKovg2XDf@6RZV#6gV~woxR1Eg)b_&@gNG^;8_3Il%` z9S;XPoE!C@A$$WG0$4~H7dqf7nvU`S z-v^YJwxQpLS_(3E6Wt+=pX9IbsM2vj3npZo#S7p6!obp&y06Px$sJtD*$&K{|N6Nw z9|7UWmP!Z@gHY@-05VN3m0r2h4bOnL^&NW4QvuzkH(8$a(!PLC?YE;_9MkA*aw!s7 z=b4L2t%*HGJE_%}`kDe&d6{HY96Z9;jeT67#^$z;4(}b3 zk3c%U1|HZ#@f`b_d_TdUKu>a*IWy<31?)edJjwopx`ALd@{02K@|~681z@}n_&%T< z{c~@p9Q_QK4_~39`lf>nk~+zsaFsmK*uznE9c&udT#bnC{RYKqS+ZDkWw)7bHb_VI zP~eJ3P}{bDuX2qzlo}NmO19cM(Wx}}=-L=FHEezzI`Yp+H(qoHT|pUnkx2b0Fb@Hb zU)USs7By;q9%WNT5nq{IaJnNX%6sNqq5FY?(Uq|EW0r7e5&1^7eit7D_8(9VY+qPy zWLa{Z<+G#jC%Xp*d=4lB=I2@=fI&G<2&_-wN70|+cXvTqX?-h@=cC5JD#@p`bY@{Q zhzj&*v%qoO&7)1tak?DsH(md&Ws02!hfx|2#hz?FsrBk$TW zi1bNPD#ytJ29@d}5?|`7L_~Bf|G%vdx9ybEl#y$gwcBl@cl~j}|MvO_6cgD7J-v!- z3EBx&!cU-m>-E7MT2l~R%`IVk0AUl$u;B6EULWnEkoLA)AB}i{;irz4rsVtU+s84@ zDR!zC7(6l$nM+?vH?kM-$?9!_a)P)v!U^8me^et(<|D_z3Yv)ZIC;39efzil#|k&y zG<2uL2U1jI-A@lBZU5iahpUa(Qs>s~_xDLO;eIlB2>Md!I%?lF!95n)|MvR$o&NxG_ytRIB7idaA^qY~eU;#?{YMbI^rNoy z^RB)FpJ&k1q2+(uf1Eu^v#{0rF%2drL$pPp5_pXV(xZnUD#wh(nB2K+e$lV555Lqi z7=BQ^-wbnUzxW+L2k1|e%fIa$Bkwa@thC7olh$IrmY)lcks6<+8K#&p0(PsRL!d^I z$vDM&@sB^=#ZX1Na{1{OOg3XSR z#%^3mlTEyoi4=8fOUETlb}V*O3@_6{KjL{JQZ@Qu_96slb|=qgfjEj#?8$a7Ok=YQ zT(~BHs^z=~j?)T5y8v$VGmp6jE1A~szMlc=4=CSp-F)@>l;>I>7+={CBcz zH5&@Cnymju%_#qd9A(~W?VtyLB*zKJrPdS|3;m)pohmyM@NF$glA<1%KW#Ce-}r^H zURO4mWqEyrKmQUkJP*h_GP-s6gb_P$)5#l-wD}H@kU7aC|`F{shOXC_q_s8A7#gveC#O} z6!SX<{S+Ywb`Dx3TThFQWOA0EYm^#NOThO5W#PwQ+ZkCyf}F(AQ-kLg8A$xzs!|?FYN^9rv9d*H>hwiYNIdx!>w@ zS$|W7?zG%vZik%@{b`I{130-A;(K8WX z^YHK$lQi4%>u}8qPqJ~!tyN;uFWQJ3h}5ivaMuUSGEz+z#$3oMeaHk}2fh?|IS2Gx zHz-@VTrbjA4&6oQw?utLQT1KK5jwpQhV}wy&g8jQV``Tu{m_?=Ov*_dKOG04V?x6m z?%N!IbS75W*DYgJrQp zaP0V7z8iqA2Gr+I`R@Aw7m>8qwYZg~$fIDqpCA7=-<{!?+aHeL#;<~o|_i}Oc?$%NW zcwx!P5!L{cF!Y!im*{EHLFMe{zs+|KXa^;c-F(vnTL?^pkIvJgeS=e=7mj1Nr~Pcjx(A2|}w>J8Pl1L9&GCcmCUaw^Va37oO?!*D+EmyOI1! zw72HFlX517Zm{s6gX*cthnDwHLDTo&<}13A z1q)p-z?;}b``b7@2MFJqugEgW!)zg3$9d9cuNW2m#rn7TiuFi~@gy-;>~W+W?kUd& zoVVsH6i}?w6@aqGNY^51vkr)#|2ALYTFbY`1csvzJQ_(^b5dpZ)_euyAiq~prle1- zP0$6aqx0u~o39uR4Frv_Glit>Q{di2jtzKgzQSOTPkk$>lXg^Az3t$q^zz^4D-da9 zf21C}%2O6Rc`MV=C%iRZVdrv~*XW_QoWk+xQ+rve)!*hT8i9O10j<=JjFhSRyVtiA zy)|EfetKx$ABZLkA)mMPzUD0Y-{vbc*P=dzCxu2KM|?=(40Uq{m^A&*>BnQck_6@OG%aRXmpt*0&S9oUga|&e@^qLw^!fF8RhW>57!W8U7 zBYCIzhGBrTSKOuX&|C8rMc;%xW~Hlap79l06;t=9|82ek=g~?CTJrj64x1-KK8+^+ zt@(;jfA!+=aeYNzAR-Ymp4G$DlR1oS`l~3Y7sjj+Lq-&AF2&V{yz*P0D&4%s3Z-V? zW0k`!{HW_gM&>ht&25Ioy`DW6WS%&CCNN|icA1{z#ykw8ppUtkM`?62)X{@bJ5U~s zlTymZ1^PfoAKiTc`8Plr@VxeYrXfoe;m#Cia`W@Gi`akEdoxUJ?49nM$Z)!ls&SpJ z#0UJncdR5zN9rxt%FlG!4ATM2bbc|RQ{U5szeh%xZzyO@H!7MlUSrtfEJkWTRXoS9 z(C#cpC=|WF@Uwi;r7|q}fJ~F-*ehxHB`fQ4haPxkI7sW5!oKrIL9lF8uO=s$NaFWa z--#M#wAK~$Ru}TYEWrQ&-T9`xxe1E*R_ddAJgEYTxr8Qw?NL@X2Li6{Qv8*!+-8*6 znQ;kG+bntqAeLvXK7?k{fplW%oVg1KdN2)_+o|=UD8Q%Pj+t2d_MbrtzWc?S!jIr# z$TeCQh*LL6T6i@&p7o=cZ5kF!!7x3Jjm)N>qXb-y-u)3Bv`LA1Q+5;j_1Gj|zOm+bZ}&EVF;HLSLDV zC9Z(99yx@aN;9bRDeFRNO-LE^gyx-rE|7JK$3kmPTOg@H_Wqg%2Ns6OT~7;V=mKdG z+d9VBl_EVk^uV-L3NWdihGv=`r$Uu4&mxAvL^32U5O+ zs|tKD2}uyVmS}8x8t5h*`RebCR5@!N^w9RP)7^2J^9Xw%2T&htM&g6u??B0w2k~m? z7Sq+DXy*%uPC}HCL2aXvW;1z?(te-5rFML67}rt>)q#-#Y(G!tcnx!d$9Qt=kPwrS zGY?F>PGg013dSeviAI$jr73!bvhVk?vDq^iUN`Yc&Fi(}6?Ux=TJN$b2i}l{dk9j- z@%Xb&txTYcf!0zq-NYPc0kA)S@@vNnusxtm;@m_n%=n-g5wzd|;c-YXGT4gVfsMTTh@sIS4;0hk76G#WVz^6lkJ|sY{S}}-fHJnD zjb*;mKo{fsPg-borG6JQd#GTilpS)F=DvD@2GR)i6wGu|RdK~CvjQQZg#I2j6Ek!^ zOwG96)||>DyD-aOtnaFEu`tpseJu{dqc>1 zSVvc1HqZh8zv?k?s-@a0<%oFdgdF>7Tfs|FhgEBI&NQ#n7%M->@wMk61h#rw4+0ZQ zXq!L|aN{P-`h8P+D$U5?lNx05n!k=&a*gp}d6eM@Tvk}K7G~;7QR09i>PYTLr6~{Tv2t4=7U^Qt*KpPEwgpy?1nRX7CE;z7CWO*688YFUdI{lz3mH>l2z*Td(i8i}b4AQe(73c>k`=qKaSA0p|;#%(NYO%~55|O_AylsJOH5S6`nl zs)jh|K-h&NH`FLc0r>v!WFtQkE#lziM4fQHo?_Yzzl*Q==_o)^Vj;J3Bl4od&99x0 zLj2LOW7MOJ=Lf8N+Vc3Oe|tUx+QTb0zLZ_iR#L=11$@=!Ql8h^Lzrp4!rLj51ycWa zSTMm_Wg;O6cAk{xCNzAzg@^u-<$v2A^7<$~B!sEwHk2x>P3mLm{b@Yhe#@SWrHp=| zeR@d;9C57kZ^y%c^KlXbn$B=+G9uqHLMZ3Fz4cwG5Fr-txc=#e)$AA6We&*7EvU0` z@=Uf5y(dy}g>}7V?(n^;a6<3}PhAn2Z813Q&pPnL-{lP3f1Ic`kA0$Xq!MopdkWFI zxtqyw#^L>8CSb2_U<2CUc=y93HP0UK{{dyd`m>+u7e%2D9cU%{RYXE zeB3r(o`c%Fk(57hb^!c;K>5ENUkwHX-N}Xq1;+;JuGc5%Ceg>C(VJcJ(WTGv-3B@n zbM1)sa^1#jq|VSvk9~`*F?W30JV!e*Z&Pu{$e`T`jeUG~gyd^cV4vYmjmpXSVBWWd ztIy<85*`Z?>ITB-iuP*SvGNqmEX|JreN!-^n@)rvvc&p$C~|%ATDYhTl)^E~%CnGTL+pJ=0&PYy150 zaLzI1`xqB9gB^paRfj1YD7I_GYiEfSqWWx_vZY(n6Lxe|eVe-c$$FAj-WNf{q*vAB zjOz-e$9<%1*KqjV_XNOt-NbPCHgH~Yl?M{^&@+kT#;?tPWbDE^7NAv91UtbMfuMsG z%pcu!qzil|p^!vmqZax^XGOSJpCXg2EnG#S?~OQnqX@L0tt{yNR zrr4GbW1-0(wCrU9b-9nJDmsz^MWU0ofhwEpmC&T{PWx`G(Q+mtr@$x*` zp&Qg$(qH(H%Lc-&-U(TJb~?Q7Xadr|`(6!LPm^J&P2mS_^sgNUd;;R9F4foO*FR_p zt-!jgKa-)sja8W;1L-_3Z?@6ITp@rz*3mVuQPp@=w`1E^f{xl(tJze-l^Cl$&r4(d z%9v`-&zZVnOnvM9ol1diG=XeK{fAxr^qyF-PaU~|Q64fQA}d6TaUK$`(t!2MMjU>5 zp+DlJe~tT4;4b?q{!inh*Pai|ju4jDDcURyfXEYEbE@C5XxMYb_LNJ5H0r=!|W@YO#J zkB3j@CK+5GW(oU%4^p&khDg<{P&!*~CVG`X#5{DTq3`=KEbwLa?{a|K(#{qN$?fPq z#w7Vqt8iN$@03^P##f#`k1vnU?Qnj7xgrm0Brll9s|x}55P)`S8JkHgUGVBaTpY%; z703_2MMBMo5W>Ea`BQ)Ur}xo7Wyf6QY2RZ}ApqS4Jq^R0?Iy7GA{t~v(_$`DBvDO_ zZ&tt4bce-h=s6zlLH8M4a*gRb43tIXL2jH%3Qc*;(>f3=^J$m;W?1^c%tDlqmUrIP z;{6O;avp-hdN+@tBza^aU!#7ART){SPHHkOF%=T_*fmlKf+!#DDAM%&Yvad1tv`!r zsAzI8z@dDi5=xSzN_=iX7PdU@=TR)U@!;>B*wG0%-c}Q$B5`fkW=H9gWCW(bbGzK^ zz^CDy)=arG4~CZmGb(eOy^|eyuF7c{G==<4cRw(WoTCi_;r;x$)*u2>k-X3MkrZ1s z&b_R@aEDSm?*1u1|EKlbYo#0Kv;3fVCCnn~QNB76JPt3-dj`_==YHV&&^^8{heX9C zm=Je>s~j(g8h6SX|Gu*+NwV;IZ|e|^tMe#@-3wTwv?XJ2nVK#UFDQ4x0tr_J!h0LJ zpPZeEGcEmR@Ra0`WujM7LnoZDZf8arHlTk+hT&3eYFv3HA^UZ%N;D+)xBaVp{8V2( zczZM{Et_kS5IvAW|eHv_ld*97CqDo`q7EA zF~0C6H`{7}kL`YFh{YfAq9Obdhjf=5>zj@UmM@S()d&D;3$xS^U7ZgdgajE451%l4^|c=b$3aL_n!AcIGCKP<^DNG9t! z;V9*B83Vf@w&#F_UCfZgB?z5GjoS3OgoOah6Q1~M&$E;=CVQa3iLHKtWaOuERDs)r zwK1|kvdaP179?$@}n;2e| zwN;GtN+~p>iQ6c!ZdC`ii&!s>v;A&90^%=rK7-j2rjIlwsbG3w&bs*8`Ix#5;hmHo zR1oa0`m2^(%n6-^O!s4B&j?E%g44L(C!5#u4G-8~IPYZ+a}kwcM}jZKp8u3@cfwF5IKNeFKfBx!yD ztcM1I7pD~Y(XbNkndj-2kcr`M+yCQ9D~mk-8Jm}-UT)_#My_Rp?U0vJPXV{jy@m~Eew3;z7kh3^JDh;$rDw?$Ib5#Zr-hpEV$c{F z$o(mQ{MveC#z;h3pY{D{8h0tMi?FCJmr%;@BFKZpJ)eK>Cp685&K6&1dN{h;dgAp) z91mh_9iBUXMn^SX3&^G2IN*r)Z_;Ka!`IQVms6udSvJmM=)sTANb`00=lcvZS_P$U z;qTTDAYb>V_8gh^+$jX92(&|8)vm2FG+57X=tDCQsRC?s<&S3N0y=!NtC zdhGS1U8ZE)(%nnfJ5z;hqk#<|go$!DTRw6|x=O05iw`h2=B+>5EQ%)9ToKr~+`+08A@z@4T0E%PG&Cf}AZX`-tvM9qyoC!sDiN(LDTZ&FekQp$^}Af6qG*?+oh~-eY(i5=$o%inLqs*9!E=ja!K_H>F z`JeJb8ZxQ8Uc=$;W4$;D%ef$50PXqjWI%psYWag}MudyeuB@O$QoO7HZZ>RLj@CP1 zFAfhw_%t{w!1M7)1%4FRp*`d+RkYi_TYP(ed%pl!f9}USuhF{D70wJ2&#=m(u^Il5 z99;}sP`HH`2H#0X4c<5lN%VQKrzglGT>i%4wq(G1V~`Wc-b*jD^=l_yzcRB`9sk$; z%{&+rrNJj~rNRlZrFEO?>;H9s!%Jn#|8;)@k4J!d;qr0KBJ<+o%reIC|GK|PIzn=? zGlMb|UH%A+Vl2$@zwU3$M_WWEJ`1CuZR9R_Wc)1sU-vgsp-9)ArBTKz@uH&HD@(%^w2dKAq@gsMvi_bvT7eHQ6?s$9AVC~ zRji2%1rZZ@P(E#Mj4lB_E>Rx+v4y^d@eU((=fd}lnu?Dndig*j}b$yR`M0|fzHmVF7*QsdViOcSnCju$I0nt z4u*msD@iXB%D5>|hA^fM6|iM_iehpB??gdkQn6afI+&P!fbA${)2zm5P`7k|;b*hh z1+89`y?&B$&QiyF?9oue&xQDWAlNC6Taj|&RfVeX!pEs|c?n;wPitXU>8C>!C_9siH+48CIaq0^0cqHugFWwYw15aq*hOI)TV_oYZp+ia4Z)O$ zEex%HHnu*rszAF*N!r)6-zpuFJ{dInu{AGMS>wERline#!lCi*Pqhhzu198>=)3p0!M6? zEO2uL#pk{s(Dcx@i^K&x+I4?HDhz;L!?b*Wn7jO;05wVD`@JjH-6-D*?VYe6{`igr zxiHyMQ2O)Hc+yz$tZ|&r&xGt}zHhvDpGBG_DC-`@dCjP9MT510yZ zTV9w?FeL9_6f#t~@=`&z>fX&2DA5*-m49S>nJFF-fA>LjcUE-Zt6dcb9ui!Y|7PQ& zdj+f<+{nX~9ae}*68&mL=h4en&_vVbC$$Mx*>>>ALGI_fNhLELi9>dnBk+7uJLW!q zb(LHj74M#jsm80zBAYZ>K~&7v@)l_qxkoQYish1-V_DtRt8u?|33jfY@6JK(_8iBy zdcbgpK_=}C3d%gdCaNq3sSt$LOFk=rQA2OyZ8OT>zRmP#3(%%K?Ww1!cFxyEciP4U z1#Z@VsM*{gLU_|jqwA7YRZ(S0{`iZt1+MRBMjB`-iQ`um#?tJPytX+b6tI+4KhV zRarh^;*etk#zgPvqKTTET*8`V##{P_!xNH!WIoT^L;k+wY-Xhlj@)sv z=lj`^msp^2EI2aCo{j8oje*N+%2B6~%ub1{2rnb^Ara4DN-)Vg=gBJa!eFMHCoBrk z9%BA%n&I_qW@$XC`icv-djF^PaDow+K5D;a!5LU|JAW$Qgs+L#+)&@93@Rlk>3sXK z^Fgd!ZN0;?Q{73eK(w<8_b1WtrxocHW9ZFNR%#GQ;rqzOlT9T8d+wCGD`D0gh>VD7 z-@7JE@>8R|-8sjjZe@{YU-XA&MW*C%i-ToY$Jaf(#U! zQ9MZo)70$Zd^|y3tji71@D?q;>ZN2M38~Aj3*iNt3W(k-MzclK;-I@y2hO3|B?p$uiKnYz6CotzIjRVC{7ERr7WdirOpvBC z0A=MC4P_OHv<>s{B!{>+4W%_6CVn9)``8YQpDNNVTHN=>buw#1r?mO%xN6{B^a(L>eQ-&eeb6b=gRbxb=$Q_8@Z|i3ZI&7xlF#8 z&74d#$BPnND_Q~MF97p1Ut6!fM!`2V-;c7DK_H~2QhwY4*3BJsT=k>bRT~F9j?@}X zYS2SAYG;E(VF@Rqj!I5P!;3P9%NO-0*l1$NdSR^UL1$e1uN+G}qFPz8MT?y*V>n`$`UC3Ixl-3x)E*j<=py-^oYs@cOu>qKVAW4sV@a*6&CnlK8KT(|^ zyymuKgt4&TqxGX3TLh5hoBWecWJBJCq7h%8j0>iRb0OAL0bGnCOU2!Li z*cNapweitujNj{J%yWx=7RSHe>)frOS2?z)ME%Tg zdTn3rW_-$v3~2AF!@F6zc%VMVRQX@$rShn@nb^IEu!^I9^uyJ$M${)nVDQG_7Ns_p zin(dt+o$B372%fCXX5eld&0eNax@O-sv>B&Qn3CMXCOqlaC3D~II#B%)ykH!{7Y#) z&-;dQpog9y-tfI@|K|{-O!1ji-z3UkXkR-TxX{jD0{kY*+G z?u+FQh>eAY0zB_xF73%Q{khe7I79B?>BTxq--q)?4nZut4S1gU zPw!K)!%Aa{Y3y$nmnPAYpeb0o&edsw-1ln_haBt~-D{m~8Kg1Sq}BN{GupkJ&j<_6 z#Y#NKV=~vq9I>BvrWX_mcplWyL70xvD>(Wx4qD9Mh5X^Q`BsYSu^3q4NX9lz|J?Xi z9LfPJkigEsKgH|XGoD^zrFdlhfYrNX%Yer1SW7--|=qNEv zOGn-suN{J)!FicF=J_(ZNJFwXRHhc`kl`bHvUWB|jIC}h6K{>zWaark32?`Hhdl}2 zMuylsuf+?HPyEyQWx$sPjK+NW5%iatUwYPIGQq^x8=>)-M%~>!_QnP-_>jKpmZJt zK=?~Q;v8Um4($)bRNfjdq(-Jp6K!9}_)wv5WgfFcZ;e-+Y({2YSH9XwD4tYkBX3CW z=T$pQqn^0O;gK*9WH{Nk#!G0it=_t^pde7&n@@<2MBuIQ5^VDj5ry%r1<7s+fE?!b zZRTkF`D8d)wz1W#Y)YWI@z!{8$oCg@lHXK+CW2OHl5`GyYrMX17X^L$P7aaiy#!&@6v=cQ;yQI7|UPvn$_T+aij(YDjnYHvNAKn_TDuEZFU(CE+v(Und zt)J#B8=A>MTOX${3u0W1q=@Q+-WspEPurY*i`?GN`p)G0l;=%vjhAPesk5x5Db4{r zbf&_0i(Snc;!MoJnQt>~t%H)9Iq7eWmut6#G!DmL@3;sq>eS=b;9KK0AD}spXfNz} z+aX-?xvw|o&>zAQMlqlUx0+geW%}dNTjRxuyvN5DXV4fHUJKO6`L5@!@$%f!HwxD0PaCI05kiYc_-=P&9;=nUgPWuJ&Eui?1J6y{#P9sR^o-oC0(filePath, Episode.EP6, encoding); + item.WriteCsv(csvPath, encoding); + var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6, encoding); + Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); + } } diff --git a/tests/Parsec.Tests/TestEncodings.cs b/tests/Parsec.Tests/TestEncodings.cs index 72e6371e..86e4933a 100644 --- a/tests/Parsec.Tests/TestEncodings.cs +++ b/tests/Parsec.Tests/TestEncodings.cs @@ -4,5 +4,6 @@ namespace Parsec.Tests; public static class TestEncodings { + public static readonly Encoding Encoding1251 = CodePagesEncodingProvider.Instance.GetEncoding(1251); public static readonly Encoding Encoding1252 = CodePagesEncodingProvider.Instance.GetEncoding(1252); } From 069e2e51ff96967ecce5de64ce6a06d57db77914 Mon Sep 17 00:00:00 2001 From: matias Date: Mon, 2 Oct 2023 18:11:06 -0300 Subject: [PATCH 05/18] refactor(Item): merge ep5 and ep6 definitions --- src/Parsec/Shaiya/Item/IItemDefinition.cs | 8 - src/Parsec/Shaiya/Item/Item.cs | 74 +------ ...ItemDefinitionEp6.cs => ItemDefinition.cs} | 136 +++++++----- src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs | 208 ------------------ src/Parsec/Shaiya/Item/ItemType.cs | 35 +-- 5 files changed, 106 insertions(+), 355 deletions(-) delete mode 100644 src/Parsec/Shaiya/Item/IItemDefinition.cs rename src/Parsec/Shaiya/Item/{ItemDefinitionEp6.cs => ItemDefinition.cs} (74%) delete mode 100644 src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs diff --git a/src/Parsec/Shaiya/Item/IItemDefinition.cs b/src/Parsec/Shaiya/Item/IItemDefinition.cs deleted file mode 100644 index bddef533..00000000 --- a/src/Parsec/Shaiya/Item/IItemDefinition.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Parsec.Shaiya.Item; - -public interface IItemDefinition -{ - public byte Type { get; set; } - - public byte TypeId { get; set; } -} diff --git a/src/Parsec/Shaiya/Item/Item.cs b/src/Parsec/Shaiya/Item/Item.cs index 6bc2ad02..213f90d5 100644 --- a/src/Parsec/Shaiya/Item/Item.cs +++ b/src/Parsec/Shaiya/Item/Item.cs @@ -10,7 +10,7 @@ namespace Parsec.Shaiya.Item; public sealed class Item : SData.SData, ICsv { [JsonIgnore] - public Dictionary<(byte type, byte typeId), IItemDefinition> ItemIndex = new(); + public Dictionary<(byte type, byte typeId), ItemDefinition> ItemIndex = new(); public int MaxItemType { get; set; } @@ -55,46 +55,17 @@ public override IEnumerable GetBytes(Episode episode = Episode.Unknown) /// The Item.SData format /// Item.SData encoding /// instance - public static Item ReadFromCsv(string csvPath, Episode episode, Encoding encoding = null) + public static Item ReadFromCsv(string csvPath, Episode episode, Encoding? encoding = null) { encoding ??= Encoding.ASCII; // Create Item.SData instance var item = new Item { Episode = episode, Encoding = encoding }; - var itemDefinitions = new List(); - // Read all item definitions from csv file - switch (episode) - { - case Episode.EP4: - case Episode.EP5: - case Episode.Unknown: - default: - { - // Read item definitions from csv - using var reader = new StreamReader(csvPath, encoding); - using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); - var records = csvReader.GetRecords().ToList(); - - // Cast item definitions to IItemDefinition since the FileIndex is generic for every format - itemDefinitions = records.Cast().ToList(); - break; - } - case Episode.EP6: - case Episode.EP7: - { - // Read item definitions from csv - using var reader = new StreamReader(csvPath, encoding); - using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); - var records = csvReader.GetRecords().ToList(); - - // Cast item definitions to IItemDefinition since the FileIndex is generic for every format - itemDefinitions = records.Cast().ToList(); - break; - } - case Episode.EP8: - throw new Exception("Episode 8 must use the DBItemData class."); - } + // Read item definitions from csv + using var reader = new StreamReader(csvPath, encoding); + using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + var itemDefinitions = csvReader.GetRecords().ToList(); // Get max type from items item.MaxItemType = itemDefinitions.Max(x => x.Type); @@ -119,34 +90,13 @@ public static Item ReadFromCsv(string csvPath, Episode episode, Encoding encodin } /// - public void WriteCsv(string outputPath, Encoding encoding = null) + public void WriteCsv(string outputPath, Encoding? encoding = null) { - encoding ??= Encoding.ASCII; + encoding ??= Encoding; - switch (Episode) - { - case Episode.Unknown: - case Episode.EP4: - case Episode.EP5: - default: - { - var items = ItemIndex.Values.ToList().Cast().ToList(); - using var writer = new StreamWriter(outputPath, false, encoding); - using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); - csvWriter.WriteRecords(items); - break; - } - case Episode.EP6: - case Episode.EP7: - { - var items = ItemIndex.Values.ToList().Cast().ToList(); - using var writer = new StreamWriter(outputPath, false, encoding); - using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); - csvWriter.WriteRecords(items); - break; - } - case Episode.EP8: - throw new Exception("Episode 8 must use the DBItemData class."); - } + var items = ItemIndex.Values.ToList().ToList(); + using var writer = new StreamWriter(outputPath, false, encoding); + using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); + csvWriter.WriteRecords(items); } } diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs b/src/Parsec/Shaiya/Item/ItemDefinition.cs similarity index 74% rename from src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs rename to src/Parsec/Shaiya/Item/ItemDefinition.cs index 17c01b5e..19fb3b63 100644 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp6.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinition.cs @@ -1,19 +1,20 @@ using System.Text; using Newtonsoft.Json; +using Parsec.Common; using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Item; -public sealed class ItemDefinitionEp6 : IBinary, IItemDefinition +public sealed class ItemDefinition : IBinary { [JsonConstructor] - public ItemDefinitionEp6() + public ItemDefinition() { } - public ItemDefinitionEp6(SBinaryReader binaryReader) + public ItemDefinition(SBinaryReader binaryReader, Episode episode) { Name = binaryReader.ReadString(); Description = binaryReader.ReadString(); @@ -39,10 +40,20 @@ public ItemDefinitionEp6(SBinaryReader binaryReader) ReqWis = binaryReader.Read(); ReqLuc = binaryReader.Read(); ReqVg = binaryReader.Read(); - Unknown = binaryReader.Read(); + + if (episode >= Episode.EP6) + { + Unknown = binaryReader.Read(); + } + ReqOg = binaryReader.Read(); ReqIg = binaryReader.Read(); - Range = binaryReader.Read(); + + + Range = binaryReader.Read(); + // Range = binaryReader.Read(); + + AttackTime = binaryReader.Read(); Attrib = binaryReader.Read(); Special = binaryReader.Read(); @@ -70,28 +81,31 @@ public ItemDefinitionEp6(SBinaryReader binaryReader) Server = binaryReader.Read(); Count = binaryReader.Read(); - Duration = binaryReader.Read(); - ExtDuration = binaryReader.Read(); - SecOption = binaryReader.Read(); - OptionRate = binaryReader.Read(); - BuyMethod = binaryReader.Read(); - MaxLevel = binaryReader.Read(); + if (episode >= Episode.EP6) + { + Duration = binaryReader.Read(); + ExtDuration = binaryReader.Read(); + SecOption = binaryReader.Read(); + OptionRate = binaryReader.Read(); + BuyMethod = binaryReader.Read(); + MaxLevel = binaryReader.Read(); - Arg1 = binaryReader.Read(); - Arg2 = binaryReader.Read(); - Arg3 = binaryReader.Read(); - Arg4 = binaryReader.Read(); - Arg5 = binaryReader.Read(); + Arg1 = binaryReader.Read(); + Arg2 = binaryReader.Read(); + Arg3 = binaryReader.Read(); + Arg4 = binaryReader.Read(); + Arg5 = binaryReader.Read(); - Arg6 = binaryReader.Read(); - Arg7 = binaryReader.Read(); - Arg8 = binaryReader.Read(); - Arg9 = binaryReader.Read(); - Arg10 = binaryReader.Read(); - Arg11 = binaryReader.Read(); - Arg12 = binaryReader.Read(); - Arg13 = binaryReader.Read(); - Arg14 = binaryReader.Read(); + Arg6 = binaryReader.Read(); + Arg7 = binaryReader.Read(); + Arg8 = binaryReader.Read(); + Arg9 = binaryReader.Read(); + Arg10 = binaryReader.Read(); + Arg11 = binaryReader.Read(); + Arg12 = binaryReader.Read(); + Arg13 = binaryReader.Read(); + Arg14 = binaryReader.Read(); + } } ///

@@ -166,7 +180,6 @@ public ItemDefinitionEp6(SBinaryReader binaryReader) public byte Count { get; set; } public uint Duration { get; set; } - public byte ExtDuration { get; set; } public byte SecOption { get; set; } public byte OptionRate { get; set; } @@ -191,8 +204,14 @@ public ItemDefinitionEp6(SBinaryReader binaryReader) public IEnumerable GetBytes(params object[] options) { var encoding = Encoding.ASCII; + var episode = Episode.EP5; + + if (options.Length > 0 && options[0] is Episode episodeOption) + { + episode = episodeOption; + } - if (options.Length > 0 && options[0] is Encoding stringEncoding) + if (options.Length > 1 && options[1] is Encoding stringEncoding) { encoding = stringEncoding; } @@ -222,10 +241,24 @@ public IEnumerable GetBytes(params object[] options) buffer.AddRange(ReqWis.GetBytes()); buffer.AddRange(ReqLuc.GetBytes()); buffer.AddRange(ReqVg.GetBytes()); - buffer.AddRange(Unknown.GetBytes()); + + if (episode >= Episode.EP6) + { + buffer.AddRange(Unknown.GetBytes()); + } + buffer.Add(ReqOg); buffer.Add(ReqIg); - buffer.AddRange(Range.GetBytes()); + + if (episode <= Episode.EP5) + { + buffer.Add((byte)Range); + } + else + { + buffer.AddRange(Range.GetBytes()); + } + buffer.Add(AttackTime); buffer.Add(Attrib); buffer.Add(Special); @@ -252,26 +285,31 @@ public IEnumerable GetBytes(params object[] options) buffer.AddRange(Drop.GetBytes()); buffer.Add(Server); buffer.Add(Count); - buffer.AddRange(Duration.GetBytes()); - buffer.Add(ExtDuration); - buffer.Add(SecOption); - buffer.Add(OptionRate); - buffer.Add(BuyMethod); - buffer.Add(MaxLevel); - buffer.Add(Arg1); - buffer.Add(Arg2); - buffer.Add(Arg3); - buffer.Add(Arg4); - buffer.Add(Arg5); - buffer.AddRange(Arg6.GetBytes()); - buffer.AddRange(Arg7.GetBytes()); - buffer.AddRange(Arg8.GetBytes()); - buffer.AddRange(Arg9.GetBytes()); - buffer.AddRange(Arg10.GetBytes()); - buffer.AddRange(Arg11.GetBytes()); - buffer.AddRange(Arg12.GetBytes()); - buffer.AddRange(Arg13.GetBytes()); - buffer.AddRange(Arg14.GetBytes()); + + if (episode >= Episode.EP6) + { + buffer.AddRange(Duration.GetBytes()); + buffer.Add(ExtDuration); + buffer.Add(SecOption); + buffer.Add(OptionRate); + buffer.Add(BuyMethod); + buffer.Add(MaxLevel); + buffer.Add(Arg1); + buffer.Add(Arg2); + buffer.Add(Arg3); + buffer.Add(Arg4); + buffer.Add(Arg5); + buffer.AddRange(Arg6.GetBytes()); + buffer.AddRange(Arg7.GetBytes()); + buffer.AddRange(Arg8.GetBytes()); + buffer.AddRange(Arg9.GetBytes()); + buffer.AddRange(Arg10.GetBytes()); + buffer.AddRange(Arg11.GetBytes()); + buffer.AddRange(Arg12.GetBytes()); + buffer.AddRange(Arg13.GetBytes()); + buffer.AddRange(Arg14.GetBytes()); + } + return buffer; } } diff --git a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs b/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs deleted file mode 100644 index d9c8c1c1..00000000 --- a/src/Parsec/Shaiya/Item/ItemDefinitionEp5.cs +++ /dev/null @@ -1,208 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Item; - -public sealed class ItemDefinitionEp5 : IBinary, IItemDefinition -{ - [JsonConstructor] - public ItemDefinitionEp5() - { - } - - public ItemDefinitionEp5(SBinaryReader binaryReader) - { - Name = binaryReader.ReadString(); - Description = binaryReader.ReadString(); - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); - Model = binaryReader.Read(); - Icon = binaryReader.Read(); - MinLevel = binaryReader.Read(); - Country = binaryReader.Read(); - AttackFighter = binaryReader.Read(); - DefenseFighter = binaryReader.Read(); - PatrolRogue = binaryReader.Read(); - ShootRogue = binaryReader.Read(); - AttackMage = binaryReader.Read(); - DefenseMage = binaryReader.Read(); - Grow = binaryReader.Read(); - Type2 = binaryReader.Read(); - Type3 = binaryReader.Read(); - ReqStr = binaryReader.Read(); - ReqDex = binaryReader.Read(); - ReqRec = binaryReader.Read(); - ReqInt = binaryReader.Read(); - ReqWis = binaryReader.Read(); - ReqLuc = binaryReader.Read(); - ReqVg = binaryReader.Read(); - ReqOg = binaryReader.Read(); - ReqIg = binaryReader.Read(); - Range = binaryReader.Read(); - AttackTime = binaryReader.Read(); - Attrib = binaryReader.Read(); - Special = binaryReader.Read(); - Slot = binaryReader.Read(); - Quality = binaryReader.Read(); - Attack = binaryReader.Read(); - AttackAdd = binaryReader.Read(); - Def = binaryReader.Read(); - Resist = binaryReader.Read(); - Hp = binaryReader.Read(); - Sp = binaryReader.Read(); - Mp = binaryReader.Read(); - Str = binaryReader.Read(); - Dex = binaryReader.Read(); - Rec = binaryReader.Read(); - Int = binaryReader.Read(); - Wis = binaryReader.Read(); - Luc = binaryReader.Read(); - Speed = binaryReader.Read(); - Exp = binaryReader.Read(); - BuyPrice = binaryReader.Read(); - SellPrice = binaryReader.Read(); - Grade = binaryReader.Read(); - Drop = binaryReader.Read(); - Server = binaryReader.Read(); - Count = binaryReader.Read(); - } - - /// - /// Order: 2. Changed because of CSV. - /// - public byte Type { get; set; } - - /// - /// Order: 3. Changed because of CSV. - /// - public byte TypeId { get; set; } - - /// - /// Order: 0. Changed because of CSV. - /// - public string Name { get; set; } = string.Empty; - - /// - /// Order: 1. Changed because of CSV. - /// - public string Description { get; set; } = string.Empty; - - public byte Model { get; set; } - public byte Icon { get; set; } - public ushort MinLevel { get; set; } - public byte Country { get; set; } - public byte AttackFighter { get; set; } - public byte DefenseFighter { get; set; } - public byte PatrolRogue { get; set; } - public byte ShootRogue { get; set; } - public byte AttackMage { get; set; } - public byte DefenseMage { get; set; } - public byte Grow { get; set; } - public byte Type2 { get; set; } - public byte Type3 { get; set; } - public ushort ReqStr { get; set; } - public ushort ReqDex { get; set; } - public ushort ReqRec { get; set; } - public ushort ReqInt { get; set; } - public ushort ReqWis { get; set; } - public ushort ReqLuc { get; set; } - public ushort ReqVg { get; set; } - public byte ReqOg { get; set; } - public byte ReqIg { get; set; } - public byte Range { get; set; } - public byte AttackTime { get; set; } - public byte Attrib { get; set; } - public byte Special { get; set; } - public byte Slot { get; set; } - public ushort Quality { get; set; } - public ushort Attack { get; set; } - public ushort AttackAdd { get; set; } - public ushort Def { get; set; } - public ushort Resist { get; set; } - public ushort Hp { get; set; } - public ushort Sp { get; set; } - public ushort Mp { get; set; } - public ushort Str { get; set; } - public ushort Dex { get; set; } - public ushort Rec { get; set; } - public ushort Int { get; set; } - public ushort Wis { get; set; } - public ushort Luc { get; set; } - public byte Speed { get; set; } - public byte Exp { get; set; } - public uint BuyPrice { get; set; } - public uint SellPrice { get; set; } - public ushort Grade { get; set; } - public ushort Drop { get; set; } - public byte Server { get; set; } - public byte Count { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var encoding = Encoding.ASCII; - - if (options.Length > 0 && options[0] is Encoding stringEncoding) - { - encoding = stringEncoding; - } - - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes(encoding)); - buffer.AddRange(Description.GetLengthPrefixedBytes(encoding)); - buffer.Add(Type); - buffer.Add(TypeId); - buffer.Add(Model); - buffer.Add(Icon); - buffer.AddRange(MinLevel.GetBytes()); - buffer.Add(Country); - buffer.Add(AttackFighter); - buffer.Add(DefenseFighter); - buffer.Add(PatrolRogue); - buffer.Add(ShootRogue); - buffer.Add(AttackMage); - buffer.Add(DefenseMage); - buffer.Add(Grow); - buffer.Add(Type2); - buffer.Add(Type3); - buffer.AddRange(ReqStr.GetBytes()); - buffer.AddRange(ReqDex.GetBytes()); - buffer.AddRange(ReqRec.GetBytes()); - buffer.AddRange(ReqInt.GetBytes()); - buffer.AddRange(ReqWis.GetBytes()); - buffer.AddRange(ReqLuc.GetBytes()); - buffer.AddRange(ReqVg.GetBytes()); - buffer.Add(ReqOg); - buffer.Add(ReqIg); - buffer.Add(Range); - buffer.Add(AttackTime); - buffer.Add(Attrib); - buffer.Add(Special); - buffer.Add(Slot); - buffer.AddRange(Quality.GetBytes()); - buffer.AddRange(Attack.GetBytes()); - buffer.AddRange(AttackAdd.GetBytes()); - buffer.AddRange(Def.GetBytes()); - buffer.AddRange(Resist.GetBytes()); - buffer.AddRange(Hp.GetBytes()); - buffer.AddRange(Sp.GetBytes()); - buffer.AddRange(Mp.GetBytes()); - buffer.AddRange(Str.GetBytes()); - buffer.AddRange(Dex.GetBytes()); - buffer.AddRange(Rec.GetBytes()); - buffer.AddRange(Int.GetBytes()); - buffer.AddRange(Wis.GetBytes()); - buffer.AddRange(Luc.GetBytes()); - buffer.Add(Speed); - buffer.Add(Exp); - buffer.AddRange(BuyPrice.GetBytes()); - buffer.AddRange(SellPrice.GetBytes()); - buffer.AddRange(Grade.GetBytes()); - buffer.AddRange(Drop.GetBytes()); - buffer.Add(Server); - buffer.Add(Count); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Item/ItemType.cs b/src/Parsec/Shaiya/Item/ItemType.cs index d6b11c36..0700b979 100644 --- a/src/Parsec/Shaiya/Item/ItemType.cs +++ b/src/Parsec/Shaiya/Item/ItemType.cs @@ -13,41 +13,30 @@ public sealed class ItemType : IBinary public int MaxTypeId { get; set; } - public List ItemDefinitions { get; } = new(); + public List ItemDefinitions { get; } = new(); [JsonConstructor] public ItemType() { } - public ItemType(int id, int maxTypeId, IEnumerable itemDefinitions) + public ItemType(int id, int maxTypeId, IEnumerable itemDefinitions) { Id = id; MaxTypeId = maxTypeId; ItemDefinitions = itemDefinitions.ToList(); } - public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary<(byte type, byte typeId), IItemDefinition> itemIndex) + public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary<(byte type, byte typeId), ItemDefinition> itemIndex) { Id = id; MaxTypeId = binaryReader.Read(); for (int i = 0; i < MaxTypeId; i++) { - switch (episode) - { - case Episode.EP5: - default: - var itemEp5 = new ItemDefinitionEp5(binaryReader); - ItemDefinitions.Add(itemEp5); - itemIndex.Add((itemEp5.Type, itemEp5.TypeId), itemEp5); - break; - case Episode.EP6: - var itemEp6 = new ItemDefinitionEp6(binaryReader); - ItemDefinitions.Add(itemEp6); - itemIndex.Add((itemEp6.Type, itemEp6.TypeId), itemEp6); - break; - } + var itemDefinition = new ItemDefinition(binaryReader, episode); + ItemDefinitions.Add(itemDefinition); + itemIndex.Add((itemDefinition.Type, itemDefinition.TypeId), itemDefinition); } } @@ -71,17 +60,7 @@ public IEnumerable GetBytes(params object[] options) foreach (var itemDefinition in ItemDefinitions) { - // Add item definitions based on format - switch (episode) - { - case Episode.EP5: - default: - buffer.AddRange(((ItemDefinitionEp5)itemDefinition).GetBytes(encoding)); - break; - case Episode.EP6: - buffer.AddRange(((ItemDefinitionEp6)itemDefinition).GetBytes(encoding)); - break; - } + buffer.AddRange(itemDefinition.GetBytes(episode, encoding)); } return buffer; From dc264830c9cb56f607fea7398cbb64382268355f Mon Sep 17 00:00:00 2001 From: matias Date: Wed, 4 Oct 2023 23:11:47 -0300 Subject: [PATCH 06/18] initial v1 commit --- .editorconfig | 2 +- samples/Files/Program.cs | 2 +- .../ConditionalPropertyAttribute.cs | 14 - .../Attributes/CustomDefinitionAttribute.cs | 14 - .../Attributes/DefaultVersionAttribute.cs | 14 - .../Attributes/EpisodeDefinerAttribute.cs | 16 - .../Attributes/FixedLengthListAttribute.cs | 14 - .../Attributes/FixedLengthStringAttribute.cs | 26 - .../Attributes/LengthPrefixedListAttribute.cs | 19 - .../LengthPrefixedStringAttribute.cs | 18 - .../ListLengthMultiplierAttribute.cs | 16 - .../Attributes/ShaiyaPropertyAttribute.cs | 25 - src/Parsec/Attributes/UsePropertyAttribute.cs | 12 - .../Attributes/VersionPrefixedAttribute.cs | 27 - src/Parsec/Cryptography/SeedHeader.cs | 18 +- src/Parsec/Extensions/BinaryExtensions.cs | 106 -- src/Parsec/Extensions/ListExtensions.cs | 11 + src/Parsec/Reader.cs | 8 +- src/Parsec/Serialization/SBinaryReader.cs | 81 +- src/Parsec/Serialization/SBinaryWriter.cs | 137 +++ src/Parsec/Shaiya/3DC/Bone.cs | 13 - src/Parsec/Shaiya/3DC/Static3DC.cs | 34 - src/Parsec/Shaiya/3DC/_3DC.cs | 43 - src/Parsec/Shaiya/3DE/Frame.cs | 43 - src/Parsec/Shaiya/3DE/Vertex.cs | 46 - src/Parsec/Shaiya/3DE/VertexFrame.cs | 38 - src/Parsec/Shaiya/3DE/_3DE.cs | 78 -- src/Parsec/Shaiya/3DO/Vertex.cs | 16 - src/Parsec/Shaiya/3DO/_3DO.cs | 29 - src/Parsec/Shaiya/3dc/Static3dc.cs | 62 + src/Parsec/Shaiya/3dc/_3dc.cs | 71 ++ src/Parsec/Shaiya/3dc/_3dcBone.cs | 23 + .../{3DC/Vertex.cs => 3dc/_3dcVertex.cs} | 57 +- src/Parsec/Shaiya/3de/_3de.cs | 68 ++ src/Parsec/Shaiya/3de/_3deFrame.cs | 37 + src/Parsec/Shaiya/3de/_3deVertex.cs | 37 + src/Parsec/Shaiya/3de/_3deVertexFrame.cs | 31 + src/Parsec/Shaiya/3do/_3do.cs | 36 + src/Parsec/Shaiya/3do/_3doVertex.cs | 28 + src/Parsec/Shaiya/ALT/ALT.cs | 38 - src/Parsec/Shaiya/ALT/Animation.cs | 69 -- src/Parsec/Shaiya/Alt/Alt.cs | 30 + src/Parsec/Shaiya/Alt/AltAnimation.cs | 61 + src/Parsec/Shaiya/Ani/Ani.cs | 50 +- src/Parsec/Shaiya/Ani/AniBone.cs | 48 + src/Parsec/Shaiya/Ani/AniRotationFrame.cs | 24 + src/Parsec/Shaiya/Ani/AniTranslationFrame.cs | 24 + src/Parsec/Shaiya/Ani/Bone.cs | 41 - src/Parsec/Shaiya/Ani/RotationFrame.cs | 13 - src/Parsec/Shaiya/Ani/TranslationFrame.cs | 13 - src/Parsec/Shaiya/Cash/Cash.cs | 17 +- src/Parsec/Shaiya/Cash/CashItem.cs | 12 - src/Parsec/Shaiya/Cash/CashProduct.cs | 53 + src/Parsec/Shaiya/Cash/CashProductItem.cs | 23 + src/Parsec/Shaiya/Cash/DBItemSellRecord.cs | 169 ++- .../Shaiya/Cash/DBItemSellTextRecord.cs | 25 +- src/Parsec/Shaiya/Cash/Product.cs | 34 - src/Parsec/Shaiya/Cloak/ClothTexture/CTL.cs | 36 - src/Parsec/Shaiya/Cloak/ClothTexture/Ctl.cs | 25 + src/Parsec/Shaiya/Cloak/Emblem/EmblemDat.cs | 26 +- src/Parsec/Shaiya/Cloak/Texture.cs | 55 - src/Parsec/Shaiya/Common/AlphaBlendingMode.cs | 7 + src/Parsec/Shaiya/Common/BoundingBox.cs | 28 +- src/Parsec/Shaiya/Common/Face.cs | 52 - src/Parsec/Shaiya/Common/Faction.cs | 22 - src/Parsec/Shaiya/Common/Matrix4x4.cs | 1080 +---------------- src/Parsec/Shaiya/Common/MeshFace.cs | 39 + src/Parsec/Shaiya/Common/Quaternion.cs | 614 +--------- src/Parsec/Shaiya/Common/String256.cs | 33 +- src/Parsec/Shaiya/Common/Vector2.cs | 21 +- src/Parsec/Shaiya/Common/Vector3.cs | 21 +- src/Parsec/Shaiya/Common/Vector4.cs | 27 +- src/Parsec/Shaiya/Common/Vector5.cs | 65 - src/Parsec/Shaiya/Core/FileBase.cs | 223 +--- src/Parsec/Shaiya/Core/IBinary.cs | 10 - src/Parsec/Shaiya/Core/IEncryptable.cs | 6 +- src/Parsec/Shaiya/Core/IFileBase.cs | 24 - src/Parsec/Shaiya/Core/ISerializable.cs | 10 + src/Parsec/Shaiya/Core/ReflectionHelper.cs | 409 ------- src/Parsec/Shaiya/Data/Data.cs | 37 +- src/Parsec/Shaiya/Data/SDirectory.cs | 44 +- src/Parsec/Shaiya/Data/SFile.cs | 31 +- src/Parsec/Shaiya/Data/Saf.cs | 7 +- src/Parsec/Shaiya/Data/Sah.cs | 40 +- .../DBDualLayerClothesDataRecord.cs | 32 +- .../DualLayerClothes/DualLayerClothes.cs | 17 +- .../DualLayerClothesRecord.cs | 48 +- src/Parsec/Shaiya/EFT/EFT.cs | 64 - src/Parsec/Shaiya/EFT/EFTFormat.cs | 9 - src/Parsec/Shaiya/EFT/EFTTexture.cs | 25 - src/Parsec/Shaiya/EFT/Effect.cs | 232 ---- src/Parsec/Shaiya/EFT/EffectObject.cs | 25 - src/Parsec/Shaiya/EFT/EffectSequence.cs | 38 - src/Parsec/Shaiya/EFT/EffectSub3.cs | 34 - src/Parsec/Shaiya/EFT/EffectSub4.cs | 23 - src/Parsec/Shaiya/EFT/EffectTexture.cs | 23 - src/Parsec/Shaiya/EFT/Eft.cs | 64 + src/Parsec/Shaiya/EFT/EftEffect.cs | 228 ++++ src/Parsec/Shaiya/EFT/EftEffectMesh.cs | 19 + src/Parsec/Shaiya/EFT/EftEffectSequence.cs | 24 + .../Shaiya/EFT/EftEffectSequenceRecord.cs | 23 + src/Parsec/Shaiya/EFT/EftEffectSub3.cs | 27 + src/Parsec/Shaiya/EFT/EftEffectSub4.cs | 19 + src/Parsec/Shaiya/EFT/EftEffectTexture.cs | 19 + src/Parsec/Shaiya/EFT/EftFormat.cs | 9 + src/Parsec/Shaiya/EFT/EftOpacityFrame.cs | 23 + src/Parsec/Shaiya/EFT/EftRotation.cs | 24 + src/Parsec/Shaiya/EFT/EftTexture.cs | 19 + src/Parsec/Shaiya/EFT/OpacityFrame.cs | 31 - src/Parsec/Shaiya/EFT/Rotation.cs | 32 - src/Parsec/Shaiya/EFT/SequenceRecord.cs | 31 - src/Parsec/Shaiya/GuildHouse/GuildHouse.cs | 43 +- src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs | 19 +- .../Shaiya/GuildHouse/GuildHouseNpcInfo.cs | 59 + src/Parsec/Shaiya/GuildHouse/NpcInfo.cs | 59 - src/Parsec/Shaiya/ITM/ITM.cs | 88 -- src/Parsec/Shaiya/ITM/ITMFormat.cs | 8 - src/Parsec/Shaiya/ITM/Record.cs | 114 -- src/Parsec/Shaiya/Item/DBItemDataRecord.cs | 220 ++-- src/Parsec/Shaiya/Item/DBItemTextRecord.cs | 24 +- src/Parsec/Shaiya/Item/Item.cs | 150 +-- src/Parsec/Shaiya/Item/ItemDefinition.cs | 315 ----- src/Parsec/Shaiya/Item/ItemGroup.cs | 24 + src/Parsec/Shaiya/Item/ItemGroupRecord.cs | 369 ++++++ src/Parsec/Shaiya/Item/ItemType.cs | 68 -- src/Parsec/Shaiya/Itm/Itm.cs | 95 ++ src/Parsec/Shaiya/Itm/ItmFormat.cs | 8 + src/Parsec/Shaiya/Itm/ItmRecord.cs | 101 ++ src/Parsec/Shaiya/KillStatus/KillStatus.cs | 17 +- .../Shaiya/KillStatus/KillStatusBonus.cs | 29 +- .../Shaiya/KillStatus/KillStatusFaction.cs | 8 + .../Shaiya/KillStatus/KillStatusRecord.cs | 34 +- src/Parsec/Shaiya/MAni/MAni.cs | 117 -- src/Parsec/Shaiya/MLT/MLT.cs | 73 -- src/Parsec/Shaiya/MLT/MLTRecord.cs | 45 - src/Parsec/Shaiya/MLX/MLX.cs | 61 - src/Parsec/Shaiya/MLX/MLXFormat.cs | 7 - src/Parsec/Shaiya/MLX/MLXRecord.cs | 101 -- src/Parsec/Shaiya/MON/MON.cs | 54 - src/Parsec/Shaiya/MON/MONEffect.cs | 31 - src/Parsec/Shaiya/MON/MONFormat.cs | 7 - src/Parsec/Shaiya/MON/MONObject.cs | 31 - src/Parsec/Shaiya/MON/MONRecord.cs | 135 --- src/Parsec/Shaiya/Mani/Mani.cs | 114 ++ src/Parsec/Shaiya/Mlt/Mlt.cs | 70 ++ src/Parsec/Shaiya/Mlt/MltRecord.cs | 37 + src/Parsec/Shaiya/Mlx/Mlx.cs | 48 + src/Parsec/Shaiya/Mlx/MlxFormat.cs | 7 + src/Parsec/Shaiya/Mlx/MlxRecord.cs | 134 ++ src/Parsec/Shaiya/Mon/Mon.cs | 48 + src/Parsec/Shaiya/Mon/MonEffect.cs | 23 + src/Parsec/Shaiya/Mon/MonFormat.cs | 7 + src/Parsec/Shaiya/Mon/MonObject.cs | 29 + src/Parsec/Shaiya/Mon/MonRecord.cs | 139 +++ .../Shaiya/Monster/DBMonsterDataRecord.cs | 216 ++-- .../Shaiya/Monster/DBMonsterTextRecord.cs | 17 +- src/Parsec/Shaiya/Monster/Monster.cs | 30 +- src/Parsec/Shaiya/Monster/MonsterRecord.cs | 104 +- src/Parsec/Shaiya/NpcQuest/BaseNpc.cs | 111 +- src/Parsec/Shaiya/NpcQuest/GateKeeper.cs | 45 - .../Shaiya/NpcQuest/GateKeeperQuestTran.cs | 35 + src/Parsec/Shaiya/NpcQuest/GateTarget.cs | 52 +- src/Parsec/Shaiya/NpcQuest/Merchant.cs | 48 +- src/Parsec/Shaiya/NpcQuest/MerchantItem.cs | 28 +- .../Shaiya/{Common => NpcQuest}/Mode.cs | 2 +- src/Parsec/Shaiya/NpcQuest/NpcQuest.cs | 173 +-- .../Shaiya/NpcQuest/NpcQuestGateKeeper.cs | 26 + src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs | 54 +- src/Parsec/Shaiya/NpcQuest/NpcQuestTrans.cs | 38 +- src/Parsec/Shaiya/NpcQuest/Quest.cs | 422 +++---- src/Parsec/Shaiya/NpcQuest/QuestFaction.cs | 8 + src/Parsec/Shaiya/NpcQuest/QuestItem.cs | 23 +- src/Parsec/Shaiya/NpcQuest/QuestResult.cs | 137 ++- .../Shaiya/NpcQuest/QuestTranslation.cs | 61 +- src/Parsec/Shaiya/NpcQuest/StandardNpc.cs | 15 +- .../Shaiya/NpcSkill/DBNpcSkillDataRecord.cs | 310 +++-- .../Shaiya/NpcSkill/DBNpcSkillTextRecord.cs | 24 +- src/Parsec/Shaiya/SData/BinarySData.cs | 68 +- src/Parsec/Shaiya/SData/BinarySDataField.cs | 30 +- src/Parsec/Shaiya/SData/IBinarySDataRecord.cs | 6 +- src/Parsec/Shaiya/SData/SData.cs | 23 +- src/Parsec/Shaiya/SMOD/CollisionObject.cs | 48 - src/Parsec/Shaiya/SMOD/SimpleVertex.cs | 30 - src/Parsec/Shaiya/SMOD/TexturedObject.cs | 57 - src/Parsec/Shaiya/SMOD/Vertex.cs | 58 - src/Parsec/Shaiya/Seff/Record.cs | 47 - src/Parsec/Shaiya/Seff/Seff.cs | 50 +- src/Parsec/Shaiya/Seff/SeffEffect.cs | 154 ++- src/Parsec/Shaiya/Seff/SeffRecord.cs | 24 + src/Parsec/Shaiya/Seff/SeffTimeStamp.cs | 39 + src/Parsec/Shaiya/Seff/TimeStamp.cs | 11 - .../Shaiya/SetItem/DBSetItemDataRecord.cs | 91 +- .../Shaiya/SetItem/DBSetItemTextRecord.cs | 55 +- src/Parsec/Shaiya/SetItem/SetItem.cs | 15 +- src/Parsec/Shaiya/SetItem/SetItemItem.cs | 31 - src/Parsec/Shaiya/SetItem/SetItemRecord.cs | 52 +- .../Shaiya/SetItem/SetItemRecordItem.cs | 23 + src/Parsec/Shaiya/SetItem/SetItemSynergy.cs | 19 + src/Parsec/Shaiya/Skill/DBSkillDataRecord.cs | 382 +++--- src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs | 24 +- src/Parsec/Shaiya/Skill/Skill.cs | 84 +- src/Parsec/Shaiya/Skill/SkillGroup.cs | 42 + src/Parsec/Shaiya/Skill/SkillRecord.cs | 452 ++++--- .../Shaiya/{SMOD/SMOD.cs => Smod/Smod.cs} | 56 +- src/Parsec/Shaiya/Smod/SmodCollisionMesh.cs | 34 + .../Shaiya/Smod/SmodCollisionMeshVertex.cs | 26 + src/Parsec/Shaiya/Smod/SmodMesh.cs | 42 + src/Parsec/Shaiya/Smod/SmodVertex.cs | 47 + src/Parsec/Shaiya/Svmap/Ladder.cs | 23 - src/Parsec/Shaiya/Svmap/Monster.cs | 31 - src/Parsec/Shaiya/Svmap/MonsterArea.cs | 43 - src/Parsec/Shaiya/Svmap/NamedArea.cs | 35 - src/Parsec/Shaiya/Svmap/Npc.cs | 41 - src/Parsec/Shaiya/Svmap/NpcLocation.cs | 32 - src/Parsec/Shaiya/Svmap/Portal.cs | 44 - src/Parsec/Shaiya/Svmap/Spawn.cs | 38 - src/Parsec/Shaiya/Svmap/Svmap.cs | 86 +- src/Parsec/Shaiya/Svmap/SvmapFaction.cs | 8 + src/Parsec/Shaiya/Svmap/SvmapLadder.cs | 20 + src/Parsec/Shaiya/Svmap/SvmapMonsterSpawn.cs | 23 + .../Shaiya/Svmap/SvmapMonsterSpawnArea.cs | 28 + src/Parsec/Shaiya/Svmap/SvmapNamedArea.cs | 28 + src/Parsec/Shaiya/Svmap/SvmapNpc.cs | 28 + src/Parsec/Shaiya/Svmap/SvmapNpcPosition.cs | 24 + src/Parsec/Shaiya/Svmap/SvmapPortal.cs | 40 + src/Parsec/Shaiya/Svmap/SvmapSpawnArea.cs | 32 + .../DBTransformModelDataRecord.cs | 31 +- .../DBTransformWeaponModelDataRecord.cs | 19 +- src/Parsec/Shaiya/VAni/VAni.cs | 79 -- src/Parsec/Shaiya/VAni/VAniObject.cs | 80 -- src/Parsec/Shaiya/VAni/Vani.cs | 87 ++ src/Parsec/Shaiya/VAni/VaniMesh.cs | 72 ++ src/Parsec/Shaiya/VAni/VaniVertex.cs | 22 +- src/Parsec/Shaiya/VAni/VaniVertexFrame.cs | 41 +- src/Parsec/Shaiya/Wld/WLD.cs | 363 ------ src/Parsec/Shaiya/Wld/Wld.cs | 341 ++++++ src/Parsec/Shaiya/Wld/WldCoordinate.cs | 34 +- src/Parsec/Shaiya/Wld/WldEffect.cs | 35 +- src/Parsec/Shaiya/Wld/WldFaction.cs | 8 + src/Parsec/Shaiya/Wld/WldManiCoordinate.cs | 39 +- src/Parsec/Shaiya/Wld/WldMusicZone.cs | 27 +- src/Parsec/Shaiya/Wld/WldNamedArea.cs | 47 +- src/Parsec/Shaiya/Wld/WldNpc.cs | 41 +- .../Shaiya/Wld/WldNpcPatrolCoordinate.cs | 15 +- src/Parsec/Shaiya/Wld/WldPortal.cs | 55 +- src/Parsec/Shaiya/Wld/WldSoundEffect.cs | 31 +- src/Parsec/Shaiya/Wld/WldSpawn.cs | 41 +- src/Parsec/Shaiya/Wld/WldTexture.cs | 31 +- src/Parsec/Shaiya/Wld/WldUnknownBox.cs | 25 +- src/Parsec/Shaiya/Wld/WldZone.cs | 39 +- src/Parsec/Shaiya/Wld/WldZoneIdentifier.cs | 19 + src/Parsec/Shaiya/Wtr/Wtr.cs | 31 +- src/Parsec/Shaiya/Zon/Zon.cs | 30 +- src/Parsec/Shaiya/Zon/ZonRecord.cs | 108 +- tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs | 18 +- tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs | 12 +- tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs | 12 +- tests/Parsec.Tests/Shaiya/ALT/AltTests.cs | 6 +- tests/Parsec.Tests/Shaiya/Data/DataTests.cs | 25 +- tests/Parsec.Tests/Shaiya/Data/SafTests.cs | 2 +- tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs | 14 +- tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs | 6 +- tests/Parsec.Tests/Shaiya/Item/ItemTests.cs | 86 +- tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs | 6 +- tests/Parsec.Tests/Shaiya/MLT/MltTests.cs | 8 +- tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs | 8 +- tests/Parsec.Tests/Shaiya/MON/MonTests.cs | 8 +- .../Shaiya/NpcQuest/NpcQuestTests.cs | 122 +- .../Shaiya/NpcSkill/NpcSkillTests.cs | 162 +-- tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs | 12 +- tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs | 162 +-- tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs | 6 +- tests/Parsec.Tests/Shaiya/WLD/WldTests.cs | 8 +- 273 files changed, 7133 insertions(+), 9482 deletions(-) delete mode 100644 src/Parsec/Attributes/ConditionalPropertyAttribute.cs delete mode 100644 src/Parsec/Attributes/CustomDefinitionAttribute.cs delete mode 100644 src/Parsec/Attributes/DefaultVersionAttribute.cs delete mode 100644 src/Parsec/Attributes/EpisodeDefinerAttribute.cs delete mode 100644 src/Parsec/Attributes/FixedLengthListAttribute.cs delete mode 100644 src/Parsec/Attributes/FixedLengthStringAttribute.cs delete mode 100644 src/Parsec/Attributes/LengthPrefixedListAttribute.cs delete mode 100644 src/Parsec/Attributes/LengthPrefixedStringAttribute.cs delete mode 100644 src/Parsec/Attributes/ListLengthMultiplierAttribute.cs delete mode 100644 src/Parsec/Attributes/ShaiyaPropertyAttribute.cs delete mode 100644 src/Parsec/Attributes/UsePropertyAttribute.cs delete mode 100644 src/Parsec/Attributes/VersionPrefixedAttribute.cs delete mode 100644 src/Parsec/Extensions/BinaryExtensions.cs create mode 100644 src/Parsec/Extensions/ListExtensions.cs create mode 100644 src/Parsec/Serialization/SBinaryWriter.cs delete mode 100644 src/Parsec/Shaiya/3DC/Bone.cs delete mode 100644 src/Parsec/Shaiya/3DC/Static3DC.cs delete mode 100644 src/Parsec/Shaiya/3DC/_3DC.cs delete mode 100644 src/Parsec/Shaiya/3DE/Frame.cs delete mode 100644 src/Parsec/Shaiya/3DE/Vertex.cs delete mode 100644 src/Parsec/Shaiya/3DE/VertexFrame.cs delete mode 100644 src/Parsec/Shaiya/3DE/_3DE.cs delete mode 100644 src/Parsec/Shaiya/3DO/Vertex.cs delete mode 100644 src/Parsec/Shaiya/3DO/_3DO.cs create mode 100644 src/Parsec/Shaiya/3dc/Static3dc.cs create mode 100644 src/Parsec/Shaiya/3dc/_3dc.cs create mode 100644 src/Parsec/Shaiya/3dc/_3dcBone.cs rename src/Parsec/Shaiya/{3DC/Vertex.cs => 3dc/_3dcVertex.cs} (57%) create mode 100644 src/Parsec/Shaiya/3de/_3de.cs create mode 100644 src/Parsec/Shaiya/3de/_3deFrame.cs create mode 100644 src/Parsec/Shaiya/3de/_3deVertex.cs create mode 100644 src/Parsec/Shaiya/3de/_3deVertexFrame.cs create mode 100644 src/Parsec/Shaiya/3do/_3do.cs create mode 100644 src/Parsec/Shaiya/3do/_3doVertex.cs delete mode 100644 src/Parsec/Shaiya/ALT/ALT.cs delete mode 100644 src/Parsec/Shaiya/ALT/Animation.cs create mode 100644 src/Parsec/Shaiya/Alt/Alt.cs create mode 100644 src/Parsec/Shaiya/Alt/AltAnimation.cs create mode 100644 src/Parsec/Shaiya/Ani/AniBone.cs create mode 100644 src/Parsec/Shaiya/Ani/AniRotationFrame.cs create mode 100644 src/Parsec/Shaiya/Ani/AniTranslationFrame.cs delete mode 100644 src/Parsec/Shaiya/Ani/Bone.cs delete mode 100644 src/Parsec/Shaiya/Ani/RotationFrame.cs delete mode 100644 src/Parsec/Shaiya/Ani/TranslationFrame.cs delete mode 100644 src/Parsec/Shaiya/Cash/CashItem.cs create mode 100644 src/Parsec/Shaiya/Cash/CashProduct.cs create mode 100644 src/Parsec/Shaiya/Cash/CashProductItem.cs delete mode 100644 src/Parsec/Shaiya/Cash/Product.cs delete mode 100644 src/Parsec/Shaiya/Cloak/ClothTexture/CTL.cs create mode 100644 src/Parsec/Shaiya/Cloak/ClothTexture/Ctl.cs delete mode 100644 src/Parsec/Shaiya/Cloak/Texture.cs create mode 100644 src/Parsec/Shaiya/Common/AlphaBlendingMode.cs delete mode 100644 src/Parsec/Shaiya/Common/Face.cs delete mode 100644 src/Parsec/Shaiya/Common/Faction.cs create mode 100644 src/Parsec/Shaiya/Common/MeshFace.cs delete mode 100644 src/Parsec/Shaiya/Common/Vector5.cs delete mode 100644 src/Parsec/Shaiya/Core/IBinary.cs delete mode 100644 src/Parsec/Shaiya/Core/IFileBase.cs create mode 100644 src/Parsec/Shaiya/Core/ISerializable.cs delete mode 100644 src/Parsec/Shaiya/Core/ReflectionHelper.cs delete mode 100644 src/Parsec/Shaiya/EFT/EFT.cs delete mode 100644 src/Parsec/Shaiya/EFT/EFTFormat.cs delete mode 100644 src/Parsec/Shaiya/EFT/EFTTexture.cs delete mode 100644 src/Parsec/Shaiya/EFT/Effect.cs delete mode 100644 src/Parsec/Shaiya/EFT/EffectObject.cs delete mode 100644 src/Parsec/Shaiya/EFT/EffectSequence.cs delete mode 100644 src/Parsec/Shaiya/EFT/EffectSub3.cs delete mode 100644 src/Parsec/Shaiya/EFT/EffectSub4.cs delete mode 100644 src/Parsec/Shaiya/EFT/EffectTexture.cs create mode 100644 src/Parsec/Shaiya/EFT/Eft.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffect.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectMesh.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectSequence.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectSequenceRecord.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectSub3.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectSub4.cs create mode 100644 src/Parsec/Shaiya/EFT/EftEffectTexture.cs create mode 100644 src/Parsec/Shaiya/EFT/EftFormat.cs create mode 100644 src/Parsec/Shaiya/EFT/EftOpacityFrame.cs create mode 100644 src/Parsec/Shaiya/EFT/EftRotation.cs create mode 100644 src/Parsec/Shaiya/EFT/EftTexture.cs delete mode 100644 src/Parsec/Shaiya/EFT/OpacityFrame.cs delete mode 100644 src/Parsec/Shaiya/EFT/Rotation.cs delete mode 100644 src/Parsec/Shaiya/EFT/SequenceRecord.cs create mode 100644 src/Parsec/Shaiya/GuildHouse/GuildHouseNpcInfo.cs delete mode 100644 src/Parsec/Shaiya/GuildHouse/NpcInfo.cs delete mode 100644 src/Parsec/Shaiya/ITM/ITM.cs delete mode 100644 src/Parsec/Shaiya/ITM/ITMFormat.cs delete mode 100644 src/Parsec/Shaiya/ITM/Record.cs delete mode 100644 src/Parsec/Shaiya/Item/ItemDefinition.cs create mode 100644 src/Parsec/Shaiya/Item/ItemGroup.cs create mode 100644 src/Parsec/Shaiya/Item/ItemGroupRecord.cs delete mode 100644 src/Parsec/Shaiya/Item/ItemType.cs create mode 100644 src/Parsec/Shaiya/Itm/Itm.cs create mode 100644 src/Parsec/Shaiya/Itm/ItmFormat.cs create mode 100644 src/Parsec/Shaiya/Itm/ItmRecord.cs create mode 100644 src/Parsec/Shaiya/KillStatus/KillStatusFaction.cs delete mode 100644 src/Parsec/Shaiya/MAni/MAni.cs delete mode 100644 src/Parsec/Shaiya/MLT/MLT.cs delete mode 100644 src/Parsec/Shaiya/MLT/MLTRecord.cs delete mode 100644 src/Parsec/Shaiya/MLX/MLX.cs delete mode 100644 src/Parsec/Shaiya/MLX/MLXFormat.cs delete mode 100644 src/Parsec/Shaiya/MLX/MLXRecord.cs delete mode 100644 src/Parsec/Shaiya/MON/MON.cs delete mode 100644 src/Parsec/Shaiya/MON/MONEffect.cs delete mode 100644 src/Parsec/Shaiya/MON/MONFormat.cs delete mode 100644 src/Parsec/Shaiya/MON/MONObject.cs delete mode 100644 src/Parsec/Shaiya/MON/MONRecord.cs create mode 100644 src/Parsec/Shaiya/Mani/Mani.cs create mode 100644 src/Parsec/Shaiya/Mlt/Mlt.cs create mode 100644 src/Parsec/Shaiya/Mlt/MltRecord.cs create mode 100644 src/Parsec/Shaiya/Mlx/Mlx.cs create mode 100644 src/Parsec/Shaiya/Mlx/MlxFormat.cs create mode 100644 src/Parsec/Shaiya/Mlx/MlxRecord.cs create mode 100644 src/Parsec/Shaiya/Mon/Mon.cs create mode 100644 src/Parsec/Shaiya/Mon/MonEffect.cs create mode 100644 src/Parsec/Shaiya/Mon/MonFormat.cs create mode 100644 src/Parsec/Shaiya/Mon/MonObject.cs create mode 100644 src/Parsec/Shaiya/Mon/MonRecord.cs delete mode 100644 src/Parsec/Shaiya/NpcQuest/GateKeeper.cs create mode 100644 src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs rename src/Parsec/Shaiya/{Common => NpcQuest}/Mode.cs (69%) create mode 100644 src/Parsec/Shaiya/NpcQuest/NpcQuestGateKeeper.cs create mode 100644 src/Parsec/Shaiya/NpcQuest/QuestFaction.cs delete mode 100644 src/Parsec/Shaiya/SMOD/CollisionObject.cs delete mode 100644 src/Parsec/Shaiya/SMOD/SimpleVertex.cs delete mode 100644 src/Parsec/Shaiya/SMOD/TexturedObject.cs delete mode 100644 src/Parsec/Shaiya/SMOD/Vertex.cs delete mode 100644 src/Parsec/Shaiya/Seff/Record.cs create mode 100644 src/Parsec/Shaiya/Seff/SeffRecord.cs create mode 100644 src/Parsec/Shaiya/Seff/SeffTimeStamp.cs delete mode 100644 src/Parsec/Shaiya/Seff/TimeStamp.cs delete mode 100644 src/Parsec/Shaiya/SetItem/SetItemItem.cs create mode 100644 src/Parsec/Shaiya/SetItem/SetItemRecordItem.cs create mode 100644 src/Parsec/Shaiya/SetItem/SetItemSynergy.cs create mode 100644 src/Parsec/Shaiya/Skill/SkillGroup.cs rename src/Parsec/Shaiya/{SMOD/SMOD.cs => Smod/Smod.cs} (55%) create mode 100644 src/Parsec/Shaiya/Smod/SmodCollisionMesh.cs create mode 100644 src/Parsec/Shaiya/Smod/SmodCollisionMeshVertex.cs create mode 100644 src/Parsec/Shaiya/Smod/SmodMesh.cs create mode 100644 src/Parsec/Shaiya/Smod/SmodVertex.cs delete mode 100644 src/Parsec/Shaiya/Svmap/Ladder.cs delete mode 100644 src/Parsec/Shaiya/Svmap/Monster.cs delete mode 100644 src/Parsec/Shaiya/Svmap/MonsterArea.cs delete mode 100644 src/Parsec/Shaiya/Svmap/NamedArea.cs delete mode 100644 src/Parsec/Shaiya/Svmap/Npc.cs delete mode 100644 src/Parsec/Shaiya/Svmap/NpcLocation.cs delete mode 100644 src/Parsec/Shaiya/Svmap/Portal.cs delete mode 100644 src/Parsec/Shaiya/Svmap/Spawn.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapFaction.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapLadder.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapMonsterSpawn.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapMonsterSpawnArea.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapNamedArea.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapNpc.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapNpcPosition.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapPortal.cs create mode 100644 src/Parsec/Shaiya/Svmap/SvmapSpawnArea.cs delete mode 100644 src/Parsec/Shaiya/VAni/VAni.cs delete mode 100644 src/Parsec/Shaiya/VAni/VAniObject.cs create mode 100644 src/Parsec/Shaiya/VAni/Vani.cs create mode 100644 src/Parsec/Shaiya/VAni/VaniMesh.cs delete mode 100644 src/Parsec/Shaiya/Wld/WLD.cs create mode 100644 src/Parsec/Shaiya/Wld/Wld.cs create mode 100644 src/Parsec/Shaiya/Wld/WldFaction.cs create mode 100644 src/Parsec/Shaiya/Wld/WldZoneIdentifier.cs diff --git a/.editorconfig b/.editorconfig index 0cef349d..8da92064 100644 --- a/.editorconfig +++ b/.editorconfig @@ -45,7 +45,7 @@ dotnet_style_qualification_for_method = false:suggestion dotnet_style_qualification_for_event = false:suggestion # Types: use keywords instead of BCL types, and permit var only when the type is clear -csharp_style_var_for_built_in_types = false:suggestion +csharp_style_var_for_built_in_types = true:suggestion csharp_style_var_when_type_is_apparent = false:none csharp_style_var_elsewhere = false:suggestion dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion diff --git a/samples/Files/Program.cs b/samples/Files/Program.cs index d0336926..92cb6cd8 100644 --- a/samples/Files/Program.cs +++ b/samples/Files/Program.cs @@ -15,7 +15,7 @@ private static void Main(string[] args) Svmap svmap = Reader.ReadFromFile("2.svmap"); // You can go through and modify its properties here too - foreach (Npc npc in svmap.Npcs) + foreach (SvmapNpc npc in svmap.Npcs) { Console.WriteLine($"NpcId: {npc.NpcId}, Type: {npc.Type}"); } diff --git a/src/Parsec/Attributes/ConditionalPropertyAttribute.cs b/src/Parsec/Attributes/ConditionalPropertyAttribute.cs deleted file mode 100644 index 51421f6c..00000000 --- a/src/Parsec/Attributes/ConditionalPropertyAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class ConditionalPropertyAttribute : Attribute -{ - public ConditionalPropertyAttribute(string conditioningPropertyName, object conditioningPropertyValue) - { - ConditioningPropertyName = conditioningPropertyName; - ConditioningPropertyValue = conditioningPropertyValue; - } - - public string ConditioningPropertyName { get; set; } - public object ConditioningPropertyValue { get; set; } -} diff --git a/src/Parsec/Attributes/CustomDefinitionAttribute.cs b/src/Parsec/Attributes/CustomDefinitionAttribute.cs deleted file mode 100644 index b89091c4..00000000 --- a/src/Parsec/Attributes/CustomDefinitionAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class CustomDefinitionAttribute : Attribute -{ - public CustomDefinitionAttribute(Func read, Func> getBytes) - { - Read = read; - GetBytes = getBytes; - } - - public Func Read { get; set; } - public Func> GetBytes { get; set; } -} diff --git a/src/Parsec/Attributes/DefaultVersionAttribute.cs b/src/Parsec/Attributes/DefaultVersionAttribute.cs deleted file mode 100644 index d11258e9..00000000 --- a/src/Parsec/Attributes/DefaultVersionAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Class)] -public class DefaultVersionAttribute : Attribute -{ - public Episode Episode { get; set; } - - public DefaultVersionAttribute(Episode episode) - { - Episode = episode; - } -} diff --git a/src/Parsec/Attributes/EpisodeDefinerAttribute.cs b/src/Parsec/Attributes/EpisodeDefinerAttribute.cs deleted file mode 100644 index 1327656a..00000000 --- a/src/Parsec/Attributes/EpisodeDefinerAttribute.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property, AllowMultiple = true)] -public class EpisodeDefinerAttribute : Attribute -{ - public Episode Episode { get; set; } - public object Value { get; set; } - - public EpisodeDefinerAttribute(Episode episode, object value) - { - Episode = episode; - Value = value; - } -} diff --git a/src/Parsec/Attributes/FixedLengthListAttribute.cs b/src/Parsec/Attributes/FixedLengthListAttribute.cs deleted file mode 100644 index 4de0023e..00000000 --- a/src/Parsec/Attributes/FixedLengthListAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class FixedLengthListAttribute : Attribute -{ - public Type ItemType { get; set; } - public int Length { get; set; } - - public FixedLengthListAttribute(Type itemType, int length) - { - ItemType = itemType; - Length = length; - } -} diff --git a/src/Parsec/Attributes/FixedLengthStringAttribute.cs b/src/Parsec/Attributes/FixedLengthStringAttribute.cs deleted file mode 100644 index ae212b18..00000000 --- a/src/Parsec/Attributes/FixedLengthStringAttribute.cs +++ /dev/null @@ -1,26 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class FixedLengthStringAttribute : Attribute -{ - public int Length { get; set; } - public bool IncludeStringTerminator { get; set; } - public bool IsString256 { get; set; } - public string Suffix { get; set; } = string.Empty; - - public FixedLengthStringAttribute(int length) - { - Length = length; - } - - public FixedLengthStringAttribute(bool isString256) - { - IsString256 = isString256; - } - - public FixedLengthStringAttribute(int length, bool removeStringTerminator) - { - Length = length; - IncludeStringTerminator = removeStringTerminator; - } -} diff --git a/src/Parsec/Attributes/LengthPrefixedListAttribute.cs b/src/Parsec/Attributes/LengthPrefixedListAttribute.cs deleted file mode 100644 index d26c611b..00000000 --- a/src/Parsec/Attributes/LengthPrefixedListAttribute.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class LengthPrefixedListAttribute : Attribute -{ - public Type ItemType { get; set; } - public Type LengthType { get; set; } = typeof(int); - - public LengthPrefixedListAttribute(Type itemType) - { - ItemType = itemType; - } - - public LengthPrefixedListAttribute(Type itemType, Type lengthType) - { - ItemType = itemType; - LengthType = lengthType; - } -} diff --git a/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs b/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs deleted file mode 100644 index 9bfe34f3..00000000 --- a/src/Parsec/Attributes/LengthPrefixedStringAttribute.cs +++ /dev/null @@ -1,18 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class LengthPrefixedStringAttribute : Attribute -{ - public bool IncludeStringTerminator { get; set; } - - public string Suffix { get; set; } = string.Empty; - - public LengthPrefixedStringAttribute() - { - } - - public LengthPrefixedStringAttribute(bool includeStringTerminator) - { - IncludeStringTerminator = includeStringTerminator; - } -} diff --git a/src/Parsec/Attributes/ListLengthMultiplierAttribute.cs b/src/Parsec/Attributes/ListLengthMultiplierAttribute.cs deleted file mode 100644 index 6ae67faf..00000000 --- a/src/Parsec/Attributes/ListLengthMultiplierAttribute.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property, AllowMultiple = true)] -internal sealed class ListLengthMultiplierAttribute : Attribute -{ - public Episode Episode { get; set; } - public int Multiplier { get; set; } - - public ListLengthMultiplierAttribute(Episode episode, int multiplier) - { - Episode = episode; - Multiplier = multiplier; - } -} diff --git a/src/Parsec/Attributes/ShaiyaPropertyAttribute.cs b/src/Parsec/Attributes/ShaiyaPropertyAttribute.cs deleted file mode 100644 index 554a59bc..00000000 --- a/src/Parsec/Attributes/ShaiyaPropertyAttribute.cs +++ /dev/null @@ -1,25 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class ShaiyaPropertyAttribute : Attribute -{ - public Episode MinEpisode { get; set; } - public Episode MaxEpisode { get; set; } - - public ShaiyaPropertyAttribute() - { - } - - public ShaiyaPropertyAttribute(Episode MinEpisode) - { - this.MinEpisode = MinEpisode; - } - - public ShaiyaPropertyAttribute(Episode MinEpisode, Episode MaxEpisode) - { - this.MinEpisode = MinEpisode; - this.MaxEpisode = MaxEpisode; - } -} diff --git a/src/Parsec/Attributes/UsePropertyAttribute.cs b/src/Parsec/Attributes/UsePropertyAttribute.cs deleted file mode 100644 index 7f900edf..00000000 --- a/src/Parsec/Attributes/UsePropertyAttribute.cs +++ /dev/null @@ -1,12 +0,0 @@ -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Property)] -public class UsePropertyAttribute : Attribute -{ - public UsePropertyAttribute(string propertyName) - { - PropertyName = propertyName; - } - - public string PropertyName { get; set; } -} diff --git a/src/Parsec/Attributes/VersionPrefixedAttribute.cs b/src/Parsec/Attributes/VersionPrefixedAttribute.cs deleted file mode 100644 index 6754e401..00000000 --- a/src/Parsec/Attributes/VersionPrefixedAttribute.cs +++ /dev/null @@ -1,27 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Attributes; - -[AttributeUsage(AttributeTargets.Class, AllowMultiple = true)] -public class VersionPrefixedAttribute : Attribute -{ - public Type PrefixType { get; set; } - public object Prefix { get; set; } - public Episode MinEpisode { get; set; } - public Episode MaxEpisode { get; set; } = Episode.Unknown; - - public VersionPrefixedAttribute(Type prefixType, object prefix, Episode minEpisode) - { - PrefixType = prefixType; - Prefix = prefix; - MinEpisode = minEpisode; - } - - public VersionPrefixedAttribute(Type prefixType, object prefix, Episode minEpisode, Episode maxEpisode) - { - PrefixType = prefixType; - Prefix = prefix; - MinEpisode = minEpisode; - MaxEpisode = maxEpisode; - } -} diff --git a/src/Parsec/Cryptography/SeedHeader.cs b/src/Parsec/Cryptography/SeedHeader.cs index f4f349b8..f7a4b860 100644 --- a/src/Parsec/Cryptography/SeedHeader.cs +++ b/src/Parsec/Cryptography/SeedHeader.cs @@ -1,11 +1,10 @@ using System.Text; using Parsec.Extensions; -using Parsec.Shaiya.Core; using Parsec.Shaiya.SData; namespace Parsec.Cryptography; -public sealed class SeedHeader : IBinary +public sealed class SeedHeader { public SeedHeader(string signature, uint checksum, uint realSize, byte[] padding) { @@ -52,21 +51,18 @@ public SeedHeader(byte[] data) /// public byte[] Padding { get; set; } - public IEnumerable GetBytes(params object[] options) + public IEnumerable GetBytes(SDataVersion version) { - var version = SDataVersion.Regular; - - if (options.Length > 0) - version = (SDataVersion)options[0]; - var buffer = new List(); - buffer.AddRange(Signature.GetBytes()); + buffer.AddRange(Encoding.ASCII.GetBytes(Signature)); if (version == SDataVersion.Binary) + { buffer.AddRange(new byte[4]); + } - buffer.AddRange(Checksum.GetBytes()); - buffer.AddRange(RealSize.GetBytes()); + buffer.AddRange(BitConverter.GetBytes(Checksum)); + buffer.AddRange(BitConverter.GetBytes(RealSize)); buffer.AddRange(Padding); return buffer; } diff --git a/src/Parsec/Extensions/BinaryExtensions.cs b/src/Parsec/Extensions/BinaryExtensions.cs deleted file mode 100644 index 8a422058..00000000 --- a/src/Parsec/Extensions/BinaryExtensions.cs +++ /dev/null @@ -1,106 +0,0 @@ -using System.Text; -using Parsec.Shaiya.Core; - -namespace Parsec.Extensions; - -public static class BinaryExtensions -{ - /// - /// Serializes a short value (int16) into a byte array - /// - public static IEnumerable GetBytes(this short value) => BitConverter.GetBytes(value); - - /// - /// Serializes an unsigned short value (uint16) into a byte array - /// - public static IEnumerable GetBytes(this ushort value) => BitConverter.GetBytes(value); - - /// - /// Serializes an int value (int32) into a byte array - /// - public static IEnumerable GetBytes(this int value) => BitConverter.GetBytes(value); - - /// - /// Serializes an unsigned int value (uint32) into a byte array - /// - public static IEnumerable GetBytes(this uint value) => BitConverter.GetBytes(value); - - /// - /// Serializes an int value (int64) into a byte array - /// - public static IEnumerable GetBytes(this long value) => BitConverter.GetBytes(value); - - /// - /// Serializes an unsigned int value (uint64) into a byte array - /// - public static IEnumerable GetBytes(this ulong value) => BitConverter.GetBytes(value); - - /// - /// Serializes a float value (single) into a byte array - /// - public static IEnumerable GetBytes(this float value) => BitConverter.GetBytes(value); - - /// - /// Serializes a boolean value into a byte array - /// - public static IEnumerable GetBytes(this bool value) => BitConverter.GetBytes(value); - - /// - /// Serializes a string prefixed by its length (int32) using the provided encoding - /// - public static IEnumerable GetLengthPrefixedBytes(this string str, Encoding encoding, bool includeStringTerminator = true) - { - var buffer = new List(); - - string finalStr = includeStringTerminator ? str + '\0' : str; - buffer.AddRange(finalStr.Length.GetBytes()); - buffer.AddRange(finalStr.GetBytes(encoding)); - return buffer; - } - - /// - /// Serializes a string prefixed by its length (int32) using ASCII encoding - /// - public static IEnumerable GetLengthPrefixedBytes(this string str, bool includeStringTerminator = true) => - GetLengthPrefixedBytes(str, Encoding.ASCII, includeStringTerminator); - - /// - /// Serializes the string into a byte array with ASCII encoding. It doesn't include a string terminator. - /// - public static IEnumerable GetBytes(this string str, bool includeStringTerminator = false) => - GetBytes(str, Encoding.ASCII, includeStringTerminator); - - /// - /// Serializes the string into a byte array with the provided encoding. It doesn't include a string terminator. - /// - public static IEnumerable GetBytes(this string str, Encoding encoding, bool includeStringTerminator = false) - { - var buffer = new List(); - string finalStr = includeStringTerminator ? str + '\0' : str; - buffer.AddRange(encoding.GetBytes(finalStr)); - return buffer; - } - - /// - /// Serializes a list of items into a byte array - /// - /// of type - /// Indicates if the data should be prefixed with the array's length (int32) - /// Optional parameters - public static IEnumerable GetBytes(this IEnumerable list, bool lengthPrefixed = true, params object[] options) - { - var buffer = new List(); - - var enumerable = list as IBinary[] ?? list.ToArray(); - - // Add length bytes - if (lengthPrefixed) - buffer.AddRange(enumerable.Length.GetBytes()); - - // Add item bytes - foreach (var item in enumerable) - buffer.AddRange(item.GetBytes(options)); - - return buffer; - } -} diff --git a/src/Parsec/Extensions/ListExtensions.cs b/src/Parsec/Extensions/ListExtensions.cs new file mode 100644 index 00000000..710dd027 --- /dev/null +++ b/src/Parsec/Extensions/ListExtensions.cs @@ -0,0 +1,11 @@ +using Parsec.Shaiya.Core; + +namespace Parsec.Extensions; + +public static class ListExtensions +{ + public static List ToSerializable(this IEnumerable list) where T : ISerializable + { + return list.Cast().ToList(); + } +} diff --git a/src/Parsec/Reader.cs b/src/Parsec/Reader.cs index 7ca40577..2340c43a 100644 --- a/src/Parsec/Reader.cs +++ b/src/Parsec/Reader.cs @@ -163,7 +163,7 @@ public static FileBase ReadFromJsonFile(string path, Type type, Encoding? encodi encoding ??= Encoding.ASCII; - string jsonContent = File.ReadAllText(path, encoding); + var jsonContent = File.ReadAllText(path, encoding); var deserializedObject = JsonConvert.DeserializeObject(jsonContent, type); if (deserializedObject == null) @@ -172,12 +172,14 @@ public static FileBase ReadFromJsonFile(string path, Type type, Encoding? encodi } var fileBase = (FileBase)deserializedObject; - string fileNameWithoutJsonExtension = Path.GetFileNameWithoutExtension(path); + var fileNameWithoutJsonExtension = Path.GetFileNameWithoutExtension(path); fileBase.Encoding = encoding; - string objectExtension = fileBase.Extension; + var objectExtension = fileBase.Extension; if (Path.GetExtension(fileNameWithoutJsonExtension) != objectExtension) + { fileBase.Path = $"{fileNameWithoutJsonExtension}.{objectExtension}"; + } return fileBase; } diff --git a/src/Parsec/Serialization/SBinaryReader.cs b/src/Parsec/Serialization/SBinaryReader.cs index 0dc9e590..a39c1471 100644 --- a/src/Parsec/Serialization/SBinaryReader.cs +++ b/src/Parsec/Serialization/SBinaryReader.cs @@ -1,4 +1,5 @@ using System.Text; +using Parsec.Shaiya.Core; namespace Parsec.Serialization; @@ -40,48 +41,6 @@ public SBinaryReader(byte[] buffer, BinarySerializationOptions serializationOpti public long Length => _binaryReader.BaseStream.Length; - /// - /// Reads a generic type from the byte buffer - /// - /// - /// Read value - /// When the provided type is not supported - public T Read() - { - var type = typeof(T); - return (T)Read(type); - } - - /// - /// Reads a value from the byte buffer based on its - /// - /// The of the value to be read - /// Read value as an object - /// When the provided is not supported - public object Read(Type type) - { - var typeCode = Type.GetTypeCode(type); - - object value = typeCode switch - { - TypeCode.Byte => ReadByte(), - TypeCode.SByte => ReadSByte(), - TypeCode.Char => ReadChar(), - TypeCode.Boolean => ReadBoolean(), - TypeCode.Int16 => ReadInt16(), - TypeCode.UInt16 => ReadUInt16(), - TypeCode.Int32 => ReadInt32(), - TypeCode.UInt32 => ReadUInt32(), - TypeCode.Int64 => ReadInt64(), - TypeCode.UInt64 => ReadUInt64(), - TypeCode.Single => ReadSingle(), - TypeCode.Double => ReadDouble(), - _ => throw new NotSupportedException() - }; - - return value; - } - /// /// Reads a byte (unsigned) /// @@ -110,7 +69,7 @@ public byte[] ReadBytes(int count) /// /// Reads a boolean value /// - public bool ReadBoolean() + public bool ReadBool() { return _binaryReader.ReadBoolean(); } @@ -196,20 +155,28 @@ public double ReadDouble() public string ReadString(Encoding encoding, int length, bool removeStringTerminator = true) { if (length <= 0) + { return string.Empty; + } // If encoding is UTF16, length needs to be doubled, since UTF16 uses 2 bytes per character if (encoding.Equals(Encoding.Unicode)) + { length *= 2; + } var stringBytes = ReadBytes(length); - string str = encoding.GetString(stringBytes, 0, length); + var str = encoding.GetString(stringBytes, 0, length); if (removeStringTerminator && str.Length > 1 && str[str.Length - 1] == '\0') + { str = str.Trim('\0'); + } if (str == "\0") + { str = string.Empty; + } return str; } @@ -272,6 +239,32 @@ public byte[] ReadAllBytes() return tempMemoryStream.ToArray(); } + public T Read() where T : ISerializable, new() + { + var instance = new T(); + instance.Read(this); + return instance; + } + + public IList ReadList(int count) where T : ISerializable, new() + { + var list = new List(); + + for (var i = 0; i < count; i++) + { + var item = Read(); + list.Add(item); + } + + return list; + } + + public IList ReadList() where T : ISerializable, new() + { + var count = ReadInt32(); + return ReadList(count); + } + public void Dispose() { _binaryReader.Dispose(); diff --git a/src/Parsec/Serialization/SBinaryWriter.cs b/src/Parsec/Serialization/SBinaryWriter.cs new file mode 100644 index 00000000..4e636e46 --- /dev/null +++ b/src/Parsec/Serialization/SBinaryWriter.cs @@ -0,0 +1,137 @@ +using System.Text; +using Parsec.Shaiya.Core; + +namespace Parsec.Serialization; + +public class SBinaryWriter : IDisposable +{ + private readonly BinaryWriter _binaryWriter; + public readonly BinarySerializationOptions SerializationOptions; + + public SBinaryWriter(Stream stream, BinarySerializationOptions serializationOptions) + { + _binaryWriter = new BinaryWriter(stream); + SerializationOptions = serializationOptions; + } + + public SBinaryWriter(FileStream fileStream, BinarySerializationOptions serializationOptions) : this((Stream)fileStream, serializationOptions) + { + } + + public SBinaryWriter(MemoryStream memoryStream, BinarySerializationOptions serializationOptions) : this((Stream)memoryStream, serializationOptions) + { + } + + public SBinaryWriter(string filePath, BinarySerializationOptions serializationOptions) + { + var fileStream = File.OpenWrite(filePath); + _binaryWriter = new BinaryWriter(fileStream); + SerializationOptions = serializationOptions; + } + + public void Write(byte value) + { + _binaryWriter.Write(value); + } + + public void Write(sbyte value) + { + _binaryWriter.Write(value); + } + + public void Write(bool value) + { + _binaryWriter.Write(value); + } + + public void Write(short value) + { + _binaryWriter.Write(value); + } + + public void Write(ushort value) + { + _binaryWriter.Write(value); + } + + public void Write(int value) + { + _binaryWriter.Write(value); + } + + public void Write(uint value) + { + _binaryWriter.Write(value); + } + + public void Write(long value) + { + _binaryWriter.Write(value); + } + + public void Write(ulong value) + { + _binaryWriter.Write(value); + } + + public void Write(float value) + { + _binaryWriter.Write(value); + } + + public void Write(double value) + { + _binaryWriter.Write(value); + } + + public void Write(byte[] bytes) + { + _binaryWriter.Write(bytes); + } + + public void WriteLengthPrefixedString(string str, bool includeStringTerminator = true) + { + WriteLengthPrefixedString(str, SerializationOptions.Encoding, includeStringTerminator); + } + + public void WriteLengthPrefixedString(string str, Encoding encoding, bool includeStringTerminator = true) + { + var finalStr = includeStringTerminator ? str + '\0' : str; + Write(finalStr.Length); + Write(encoding.GetBytes(finalStr)); + } + + public void Write(string str, bool includeStringTerminator = true) + { + Write(str, SerializationOptions.Encoding, includeStringTerminator); + } + + public void Write(string str, Encoding encoding, bool includeStringTerminator = true) + { + var finalStr = includeStringTerminator ? str + '\0' : str; + Write(encoding.GetBytes(finalStr)); + } + + public void Write(ISerializable serializable) + { + serializable.Write(this); + } + + public void Write(IList list, bool lengthPrefixed = true) + { + if (lengthPrefixed) + { + Write(list.Count); + } + + foreach (var item in list) + { + Write(item); + } + } + + public void Dispose() + { + _binaryWriter.Dispose(); + } +} diff --git a/src/Parsec/Shaiya/3DC/Bone.cs b/src/Parsec/Shaiya/3DC/Bone.cs deleted file mode 100644 index 75520ead..00000000 --- a/src/Parsec/Shaiya/3DC/Bone.cs +++ /dev/null @@ -1,13 +0,0 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya._3DC; - -public sealed class Bone -{ - /// - /// The transformation matrix of this bone, which holds the starting position and rotation of the bone - /// - [ShaiyaProperty] - public Matrix4x4 Matrix { get; set; } -} diff --git a/src/Parsec/Shaiya/3DC/Static3DC.cs b/src/Parsec/Shaiya/3DC/Static3DC.cs deleted file mode 100644 index e0b3ff10..00000000 --- a/src/Parsec/Shaiya/3DC/Static3DC.cs +++ /dev/null @@ -1,34 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Common; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DC; - -/// -/// Class that represents a .3DC model which is used for capes -/// -[DefaultVersion(Episode.EP5)] -[VersionPrefixed(typeof(int), 0, Episode.EP5)] -[VersionPrefixed(typeof(int), 444, Episode.EP6)] -public sealed class Static3DC : FileBase -{ - /// - /// List of vertices which are used to make faces (polygons) - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Vertex))] - public List Vertices { get; set; } = new(); - - /// - /// List of faces (polygons) that give shape to the mesh of the 3d model. Faces can only be made up of 3 vertices, so - /// they'll all be triangular - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Face))] - public List Faces { get; set; } = new(); - - [JsonIgnore] - public override string Extension => "3DC"; -} diff --git a/src/Parsec/Shaiya/3DC/_3DC.cs b/src/Parsec/Shaiya/3DC/_3DC.cs deleted file mode 100644 index 1f03166b..00000000 --- a/src/Parsec/Shaiya/3DC/_3DC.cs +++ /dev/null @@ -1,43 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Common; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DC; - -/// -/// Class that represents a .3DC model which is used for characters, mobs, npcs, wings, mounts and any model that requires -/// "complex" animations done through its skeleton. -/// -[DefaultVersion(Episode.EP5)] -[VersionPrefixed(typeof(int), 0, Episode.EP5)] -[VersionPrefixed(typeof(int), 444, Episode.EP6)] -public sealed class _3DC : FileBase -{ - /// - /// List of bones linked to this 3d model. Although a model might be linked to a few bones (for example boots models), the - /// 3DC file contains the definitions for all the bones in the whole skeleton. - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Bone))] - public List Bones { get; set; } = new(); - - /// - /// List of vertices which are used to make faces (polygons) - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Vertex))] - public List Vertices { get; set; } = new(); - - /// - /// List of faces (polygons) that give shape to the mesh of the 3d model. Faces can only be made up of 3 vertices, so - /// they'll all be triangular - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Face))] - public List Faces { get; set; } = new(); - - [JsonIgnore] - public override string Extension => "3DC"; -} diff --git a/src/Parsec/Shaiya/3DE/Frame.cs b/src/Parsec/Shaiya/3DE/Frame.cs deleted file mode 100644 index 6d7b14c1..00000000 --- a/src/Parsec/Shaiya/3DE/Frame.cs +++ /dev/null @@ -1,43 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DE; - -public sealed class Frame : IBinary -{ - [JsonConstructor] - public Frame() - { - } - - public Frame(SBinaryReader binaryReader, int vertexCount) - { - Keyframe = binaryReader.Read(); - - for (int i = 0; i < vertexCount; i++) - { - var translation = new VertexFrame(binaryReader); - VertexFrames.Add(translation); - } - } - - /// - /// The frame's key. - /// - public int Keyframe { get; set; } - - /// - /// The frame's vertex translations. There's one translation defined for each vertex. - /// - public List VertexFrames { get; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Keyframe.GetBytes()); - buffer.AddRange(VertexFrames.GetBytes(false)); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/3DE/Vertex.cs b/src/Parsec/Shaiya/3DE/Vertex.cs deleted file mode 100644 index 23bc7f1c..00000000 --- a/src/Parsec/Shaiya/3DE/Vertex.cs +++ /dev/null @@ -1,46 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DE; - -public sealed class Vertex : IBinary -{ - [JsonConstructor] - public Vertex() - { - } - - public Vertex(SBinaryReader binaryReader) - { - Coordinates = new Vector3(binaryReader); - BoneId = binaryReader.Read(); - UV = new Vector2(binaryReader); - } - - /// - /// Vertex coordinates in the 3D space - /// - public Vector3 Coordinates { get; set; } - - /// - /// 3DE's don't have vertex groups like 3DC's, that's why this value is always -1. - /// - public int BoneId { get; set; } = -1; - - /// - /// UV Texture mapping - /// - public Vector2 UV { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Coordinates.GetBytes()); - buffer.AddRange(BoneId.GetBytes()); - buffer.AddRange(UV.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/3DE/VertexFrame.cs b/src/Parsec/Shaiya/3DE/VertexFrame.cs deleted file mode 100644 index 3b9fbc5d..00000000 --- a/src/Parsec/Shaiya/3DE/VertexFrame.cs +++ /dev/null @@ -1,38 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DE; - -public sealed class VertexFrame : IBinary -{ - [JsonConstructor] - public VertexFrame() - { - } - - public VertexFrame(SBinaryReader binaryReader) - { - Coordinates = new Vector3(binaryReader); - UV = new Vector2(binaryReader); - } - - /// - /// The vertex coordinates - /// - public Vector3 Coordinates { get; set; } - - /// - /// The vertex UV mapping - /// - public Vector2 UV { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Coordinates.GetBytes()); - buffer.AddRange(UV.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/3DE/_3DE.cs b/src/Parsec/Shaiya/3DE/_3DE.cs deleted file mode 100644 index 803cf297..00000000 --- a/src/Parsec/Shaiya/3DE/_3DE.cs +++ /dev/null @@ -1,78 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DE; - -/// -/// Class that represents the .3DE file structure. -/// 3DE (3D Effect) files are textured meshes with vertex animations used for effects -/// -public sealed class _3DE : FileBase -{ - /// - /// The mesh .dds texture - /// - public string Texture { get; set; } - - /// - /// The mesh vertices - /// - public List Vertices { get; } = new(); - - /// - /// The mesh triangular faces - /// - public List Faces { get; } = new(); - - /// - /// The maximum animation keyframe - /// - public int MaxKeyframe { get; set; } - - /// - /// List of animation frames - /// - public List Frames { get; } = new(); - - public override string Extension => "3DE"; - - /// - /// Reads the .3DE file from the file buffer. This format requires a manually defined Read method because of its "complexity" when - /// dealing with the vertex translation frames. - /// - public override void Read() - { - Texture = _binaryReader.ReadString(); - - int vertexCount = _binaryReader.Read(); - for (int i = 0; i < vertexCount; i++) - Vertices.Add(new Vertex(_binaryReader)); - - int faceCount = _binaryReader.Read(); - for (int i = 0; i < faceCount; i++) - Faces.Add(new Face(_binaryReader)); - - MaxKeyframe = _binaryReader.Read(); - - int frameCount = _binaryReader.Read(); - for (int i = 0; i < frameCount; i++) - Frames.Add(new Frame(_binaryReader, vertexCount)); - } - - /// - /// Gets the file buffer. This format requires a manually defined GetBytes method because of its "complexity" when - /// dealing with the vertex translation frames. - /// - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Texture.GetLengthPrefixedBytes()); - buffer.AddRange(Vertices.GetBytes()); - buffer.AddRange(Faces.GetBytes()); - buffer.AddRange(MaxKeyframe.GetBytes()); - buffer.AddRange(Frames.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/3DO/Vertex.cs b/src/Parsec/Shaiya/3DO/Vertex.cs deleted file mode 100644 index 26dcfbc0..00000000 --- a/src/Parsec/Shaiya/3DO/Vertex.cs +++ /dev/null @@ -1,16 +0,0 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya._3DO; - -public sealed class Vertex -{ - [ShaiyaProperty] - public Vector3 Coordinates { get; set; } - - [ShaiyaProperty] - public Vector3 Normal { get; set; } - - [ShaiyaProperty] - public Vector2 UV { get; set; } -} diff --git a/src/Parsec/Shaiya/3DO/_3DO.cs b/src/Parsec/Shaiya/3DO/_3DO.cs deleted file mode 100644 index 4a707bfc..00000000 --- a/src/Parsec/Shaiya/3DO/_3DO.cs +++ /dev/null @@ -1,29 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Common; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya._3DO; - -/// -/// Class that represents a .3DO which is used for weapons and shields. This format doesn't contain bones, it's just a mesh with a texture. -/// -[DefaultVersion(Episode.EP5)] -public sealed class _3DO : FileBase -{ - [ShaiyaProperty] - [LengthPrefixedString(includeStringTerminator: false)] - public string TextureName { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedList(typeof(Vertex))] - public List Vertices { get; set; } = new(); - - [ShaiyaProperty] - [LengthPrefixedList(typeof(Face))] - public List Faces { get; set; } = new(); - - [JsonIgnore] - public override string Extension => "3DO"; -} diff --git a/src/Parsec/Shaiya/3dc/Static3dc.cs b/src/Parsec/Shaiya/3dc/Static3dc.cs new file mode 100644 index 00000000..f4f269ba --- /dev/null +++ b/src/Parsec/Shaiya/3dc/Static3dc.cs @@ -0,0 +1,62 @@ +using Newtonsoft.Json; +using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3dc; + +/// +/// Class that represents a .3DC model which is used for capes +/// +public sealed class Static3dc : FileBase +{ + /// + /// List of vertices which are used to make faces (polygons) + /// + public List<_3dcVertex> Vertices { get; set; } = new(); + + /// + /// List of faces (polygons) that give shape to the mesh of the 3d model. Faces can only be made up of 3 vertices, so + /// they'll all be triangular + /// + public List Faces { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "3DC"; + + protected override void Read(SBinaryReader binaryReader) + { + var version = binaryReader.ReadInt32(); + Episode = Episode.EP5; + + if (version == 444) + { + Episode = Episode.EP6; + } + + // Vertex instances expect the episode to be set on the serialization options + binaryReader.SerializationOptions.Episode = Episode; + + Vertices = binaryReader.ReadList<_3dcVertex>().ToList(); + Faces = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + var version = 0; + + if (Episode >= Episode.EP6) + { + version = 444; + } + + // Vertex instances expect the episode to be set on the serialization options + binaryWriter.SerializationOptions.Episode = Episode; + + binaryWriter.Write(version); + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/3dc/_3dc.cs b/src/Parsec/Shaiya/3dc/_3dc.cs new file mode 100644 index 00000000..276bd795 --- /dev/null +++ b/src/Parsec/Shaiya/3dc/_3dc.cs @@ -0,0 +1,71 @@ +using Newtonsoft.Json; +using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3dc; + +/// +/// Class that represents a .3DC model which is used for characters, mobs, npcs, wings, mounts and any model that requires +/// "complex" animations done through its skeleton. +/// +public sealed class _3dc : FileBase +{ + /// + /// List of bones linked to this 3d model. Although a model might be linked to a few bones (for example boots models), the + /// 3DC file contains the definitions for all the bones in the whole skeleton. + /// + public List<_3dcBone> Bones { get; set; } = new(); + + /// + /// List of vertices which are used to make faces (polygons) + /// + public List<_3dcVertex> Vertices { get; set; } = new(); + + /// + /// List of faces (polygons) that give shape to the mesh of the 3d model. Faces can only be made up of 3 vertices, so + /// they'll all be triangular + /// + public List Faces { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "3DC"; + + protected override void Read(SBinaryReader binaryReader) + { + var version = binaryReader.ReadInt32(); + Episode = Episode.EP5; + + if (version == 444) + { + Episode = Episode.EP6; + } + + // Vertex instances expect the episode to be set on the serialization options + binaryReader.SerializationOptions.Episode = Episode; + + Bones = binaryReader.ReadList<_3dcBone>().ToList(); + Vertices = binaryReader.ReadList<_3dcVertex>().ToList(); + Faces = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + var version = 0; + + if (Episode >= Episode.EP6) + { + version = 444; + } + + // Vertex instances expect the episode to be set on the serialization options + binaryWriter.SerializationOptions.Episode = Episode; + + binaryWriter.Write(version); + binaryWriter.Write(Bones.ToSerializable()); + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/3dc/_3dcBone.cs b/src/Parsec/Shaiya/3dc/_3dcBone.cs new file mode 100644 index 00000000..d79779b5 --- /dev/null +++ b/src/Parsec/Shaiya/3dc/_3dcBone.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3dc; + +public sealed class _3dcBone : ISerializable +{ + /// + /// The transformation matrix of this bone, which holds the starting position and rotation of the bone + /// + public Matrix4x4 Matrix { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Matrix = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Matrix); + } +} diff --git a/src/Parsec/Shaiya/3DC/Vertex.cs b/src/Parsec/Shaiya/3dc/_3dcVertex.cs similarity index 57% rename from src/Parsec/Shaiya/3DC/Vertex.cs rename to src/Parsec/Shaiya/3dc/_3dcVertex.cs index 1e287183..e8f839ff 100644 --- a/src/Parsec/Shaiya/3DC/Vertex.cs +++ b/src/Parsec/Shaiya/3dc/_3dcVertex.cs @@ -1,15 +1,15 @@ -using Parsec.Attributes; -using Parsec.Common; +using Parsec.Common; +using Parsec.Serialization; using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; -namespace Parsec.Shaiya._3DC; +namespace Parsec.Shaiya._3dc; -public sealed class Vertex +public sealed class _3dcVertex : ISerializable { /// /// The vertex's 3d coordinates /// - [ShaiyaProperty] public Vector3 Coordinates { get; set; } /// @@ -17,55 +17,84 @@ public sealed class Vertex /// , it indicates the weight of this vertex for those vertex groups. /// If the file's format is EP6 or superior, this value is the weight for only. /// - [ShaiyaProperty] public float Bone1Weight { get; set; } /// /// Bone weight for Present in EP6+ format only /// - [ShaiyaProperty(Episode.EP6, Episode.EP8)] public float Bone2Weight { get; set; } /// /// Present in EP6+ format /// - [ShaiyaProperty(Episode.EP6, Episode.EP8)] public float Bone3Weight { get; set; } /// /// The first vertex group this vertex belongs. The vertex group belongs to a bone. /// - [ShaiyaProperty] public byte BoneVertexGroup1 { get; set; } /// /// The second vertex group this vertex belongs. The vertex group belongs to a bone. /// - [ShaiyaProperty] public byte BoneVertexGroup2 { get; set; } /// /// The third vertex group this vertex belongs. The vertex group belongs to a bone. /// - [ShaiyaProperty] public byte BoneVertexGroup3 { get; set; } /// /// Unknown byte. Always 0. /// - [ShaiyaProperty] public byte Unknown { get; set; } /// /// Normal of this point, used for lighting computation. /// - [ShaiyaProperty] public Vector3 Normal { get; set; } /// /// UV mapping for the 2D texture. For more information visit /// this link. /// - [ShaiyaProperty] public Vector2 UV { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + Bone1Weight = binaryReader.ReadSingle(); + + if (binaryReader.SerializationOptions.Episode >= Episode.EP6) + { + Bone2Weight = binaryReader.ReadSingle(); + Bone3Weight = binaryReader.ReadSingle(); + } + + BoneVertexGroup1 = binaryReader.ReadByte(); + BoneVertexGroup2 = binaryReader.ReadByte(); + BoneVertexGroup3 = binaryReader.ReadByte(); + Unknown = binaryReader.ReadByte(); + Normal = binaryReader.Read(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + binaryWriter.Write(Bone1Weight); + + if (binaryWriter.SerializationOptions.Episode >= Episode.EP6) + { + binaryWriter.Write(Bone2Weight); + binaryWriter.Write(Bone3Weight); + } + + binaryWriter.Write(BoneVertexGroup1); + binaryWriter.Write(BoneVertexGroup2); + binaryWriter.Write(BoneVertexGroup3); + binaryWriter.Write(Unknown); + binaryWriter.Write(Normal); + binaryWriter.Write(UV); + } } diff --git a/src/Parsec/Shaiya/3de/_3de.cs b/src/Parsec/Shaiya/3de/_3de.cs new file mode 100644 index 00000000..31efdfb4 --- /dev/null +++ b/src/Parsec/Shaiya/3de/_3de.cs @@ -0,0 +1,68 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3de; + +/// +/// Class that represents the .3DE file structure. +/// 3DE (3D Effect) files are textured meshes with vertex animations used for effects +/// +public sealed class _3de : FileBase +{ + /// + /// The mesh .dds texture + /// + public string Texture { get; set; } = string.Empty; + + /// + /// The mesh vertices + /// + public List<_3deVertex> Vertices { get; set; } = new(); + + /// + /// The mesh triangular faces + /// + public List Faces { get; set; } = new(); + + /// + /// The maximum animation keyframe + /// + public int MaxKeyframe { get; set; } + + /// + /// List of animation frames + /// + public List<_3deFrame> Frames { get; set; } = new(); + + public override string Extension => "3DE"; + + /// + /// Reads the .3DE file from the file buffer. This format requires a manually defined Read method because of its "complexity" when + /// dealing with the vertex translation frames. + /// + protected override void Read(SBinaryReader binaryReader) + { + Texture = binaryReader.ReadString(); + Vertices = binaryReader.ReadList<_3deVertex>().ToList(); + Faces = binaryReader.ReadList().ToList(); + MaxKeyframe = binaryReader.ReadInt32(); + + // Frame instances expect the vertex count to be set as the ExtraOption on the serialization options + binaryReader.SerializationOptions.ExtraOption = Vertices.Count; + Frames = binaryReader.ReadList<_3deFrame>().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + // Frame instances expect the vertex count to be set as the ExtraOption on the serialization options + binaryWriter.SerializationOptions.ExtraOption = Vertices.Count; + + binaryWriter.WriteLengthPrefixedString(Texture); + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + binaryWriter.Write(MaxKeyframe); + binaryWriter.Write(Frames.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/3de/_3deFrame.cs b/src/Parsec/Shaiya/3de/_3deFrame.cs new file mode 100644 index 00000000..fed2efd1 --- /dev/null +++ b/src/Parsec/Shaiya/3de/_3deFrame.cs @@ -0,0 +1,37 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3de; + +public sealed class _3deFrame : ISerializable +{ + /// + /// The frame's key. + /// + public int Keyframe { get; set; } + + /// + /// The frame's vertex translations. There's one translation defined for each vertex. + /// + public List<_3deVertexFrame> VertexFrames { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + var vertexCount = 0; + + if (binaryReader.SerializationOptions.ExtraOption is int vertexCountOption) + { + vertexCount = vertexCountOption; + } + + Keyframe = binaryReader.ReadInt32(); + VertexFrames = binaryReader.ReadList<_3deVertexFrame>(vertexCount).ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Keyframe); + binaryWriter.Write(VertexFrames.ToSerializable(), false); + } +} diff --git a/src/Parsec/Shaiya/3de/_3deVertex.cs b/src/Parsec/Shaiya/3de/_3deVertex.cs new file mode 100644 index 00000000..16a62082 --- /dev/null +++ b/src/Parsec/Shaiya/3de/_3deVertex.cs @@ -0,0 +1,37 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3de; + +public sealed class _3deVertex : ISerializable +{ + /// + /// Vertex coordinates in the 3D space + /// + public Vector3 Coordinates { get; set; } + + /// + /// 3DE's don't have vertex groups like 3DC's, that's why this value is always -1. + /// + public int BoneId { get; set; } = -1; + + /// + /// UV Texture mapping + /// + public Vector2 UV { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + BoneId = binaryReader.ReadInt32(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + binaryWriter.Write(BoneId); + binaryWriter.Write(UV); + } +} diff --git a/src/Parsec/Shaiya/3de/_3deVertexFrame.cs b/src/Parsec/Shaiya/3de/_3deVertexFrame.cs new file mode 100644 index 00000000..18eba170 --- /dev/null +++ b/src/Parsec/Shaiya/3de/_3deVertexFrame.cs @@ -0,0 +1,31 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3de; + +public sealed class _3deVertexFrame : ISerializable +{ + /// + /// The vertex coordinates + /// + public Vector3 Coordinates { get; set; } + + /// + /// The vertex UV mapping + /// + public Vector2 UV { get; set; } + + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + binaryWriter.Write(UV); + } +} diff --git a/src/Parsec/Shaiya/3do/_3do.cs b/src/Parsec/Shaiya/3do/_3do.cs new file mode 100644 index 00000000..ddaa34e2 --- /dev/null +++ b/src/Parsec/Shaiya/3do/_3do.cs @@ -0,0 +1,36 @@ +using Newtonsoft.Json; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3do; + +/// +/// Class that represents a .3DO which is used for weapons and shields. This format doesn't contain bones, it's just a mesh with a texture. +/// +public sealed class _3do : FileBase +{ + public string TextureName { get; set; } = string.Empty; + + public List<_3doVertex> Vertices { get; set; } = new(); + + public List Faces { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "3DO"; + + protected override void Read(SBinaryReader binaryReader) + { + TextureName = binaryReader.ReadString(); + Vertices = binaryReader.ReadList<_3doVertex>().ToList(); + Faces = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(TextureName, false); + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/3do/_3doVertex.cs b/src/Parsec/Shaiya/3do/_3doVertex.cs new file mode 100644 index 00000000..c1236c65 --- /dev/null +++ b/src/Parsec/Shaiya/3do/_3doVertex.cs @@ -0,0 +1,28 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya._3do; + +public sealed class _3doVertex : ISerializable +{ + public Vector3 Coordinates { get; set; } + + public Vector3 Normal { get; set; } + + public Vector2 UV { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + Normal = binaryReader.Read(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + binaryWriter.Write(Normal); + binaryWriter.Write(UV); + } +} diff --git a/src/Parsec/Shaiya/ALT/ALT.cs b/src/Parsec/Shaiya/ALT/ALT.cs deleted file mode 100644 index 09c80512..00000000 --- a/src/Parsec/Shaiya/ALT/ALT.cs +++ /dev/null @@ -1,38 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.ALT; - -/// -/// Class that represents the ALT format which is used to define the available animations for characters. -/// This class has custom implementations of the and methods because its subclass -/// has a serialization anti-pattern. -/// -public sealed class ALT : FileBase -{ - public string Signature { get; set; } = string.Empty; - public List Animations { get; } = new(); - - public override string Extension => ".ALT"; - - public override void Read() - { - Signature = _binaryReader.ReadString(3); - - int animationCount = _binaryReader.Read(); - for (int i = 0; i < animationCount; i++) - { - var animation = new Animation(_binaryReader); - Animations.Add(animation); - } - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Signature.GetBytes()); - buffer.AddRange(Animations.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/ALT/Animation.cs b/src/Parsec/Shaiya/ALT/Animation.cs deleted file mode 100644 index 6743cd2d..00000000 --- a/src/Parsec/Shaiya/ALT/Animation.cs +++ /dev/null @@ -1,69 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.ALT; - -/// -/// Class that represents an animation record in an ALT file. -/// Throughout the list of animations, there's some of them which have 0-length names, when this happens, the rest of the fields are not present -/// in the file, so they need to be skipped when reading or writing. -/// This is considered a serialization anti-pattern and that's why its read through a custom constructor and written using a custom -/// method. -/// -public sealed class Animation : IBinary -{ - [JsonConstructor] - public Animation() - { - } - - public Animation(SBinaryReader binaryReader) - { - Name = binaryReader.ReadString(); - - // When name is empty, the rest of the fields are not read - if (string.IsNullOrEmpty(Name)) - return; - - Mode = binaryReader.Read(); - Unknown = binaryReader.Read(); - Float1 = binaryReader.Read(); - Float2 = binaryReader.Read(); - Float3 = binaryReader.Read(); - Float4 = binaryReader.Read(); - } - - public string Name { get; set; } - - /// TODO: In shStudio, Mode is split into 4 separate bytes, investigate if that's correct, since the game client actually reads a single value 4-byte - public int Mode { get; set; } - - public int Unknown { get; set; } - public float Float1 { get; set; } - public float Float2 { get; set; } - public float Float3 { get; set; } - public float Float4 { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - // When name is empty, the rest of the fields are not written and the name length must be set to '0' - if (string.IsNullOrEmpty(Name)) - { - return 0.GetBytes(); - } - - var buffer = new List(); - - buffer.AddRange(Name.GetLengthPrefixedBytes()); - buffer.AddRange(Mode.GetBytes()); - buffer.AddRange(Unknown.GetBytes()); - buffer.AddRange(Float1.GetBytes()); - buffer.AddRange(Float2.GetBytes()); - buffer.AddRange(Float3.GetBytes()); - buffer.AddRange(Float4.GetBytes()); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Alt/Alt.cs b/src/Parsec/Shaiya/Alt/Alt.cs new file mode 100644 index 00000000..1d2ff64a --- /dev/null +++ b/src/Parsec/Shaiya/Alt/Alt.cs @@ -0,0 +1,30 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Alt; + +/// +/// Class that represents the ALT format which is used to define the available animations for characters. +/// This class has custom implementations of the and methods because its subclass +/// has a serialization anti-pattern. +/// +public sealed class Alt : FileBase +{ + public string Signature { get; set; } = string.Empty; + public List Animations { get; set; } = new(); + + public override string Extension => ".ALT"; + + protected override void Read(SBinaryReader binaryReader) + { + Signature = binaryReader.ReadString(3); + Animations = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Signature, false); + binaryWriter.Write(Animations.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Alt/AltAnimation.cs b/src/Parsec/Shaiya/Alt/AltAnimation.cs new file mode 100644 index 00000000..90bc872f --- /dev/null +++ b/src/Parsec/Shaiya/Alt/AltAnimation.cs @@ -0,0 +1,61 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Alt; + +/// +/// Class that represents an animation record in an ALT file. +/// Throughout the list of animations, there's some of them which have 0-length names, when this happens, the rest of the fields are not present +/// in the file, so they need to be skipped when reading or writing. +/// +public sealed class AltAnimation : ISerializable +{ + public string Name { get; set; } = string.Empty; + + /// TODO: In shStudio, Mode is split into 4 separate bytes, investigate if that's correct, since the game client actually reads a single value 4-byte + public int Mode { get; set; } + + public int Unknown { get; set; } + + public float Float1 { get; set; } + + public float Float2 { get; set; } + + public float Float3 { get; set; } + + public float Float4 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + + // When name is empty, the rest of the fields are not read + if (string.IsNullOrEmpty(Name)) + return; + + Mode = binaryReader.ReadInt32(); + Unknown = binaryReader.ReadInt32(); + Float1 = binaryReader.ReadSingle(); + Float2 = binaryReader.ReadSingle(); + Float3 = binaryReader.ReadSingle(); + Float4 = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + // When name is empty, the rest of the fields are not written and the name length must be set to '0' + if (string.IsNullOrEmpty(Name)) + { + binaryWriter.Write(0); + return; + } + + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Mode); + binaryWriter.Write(Unknown); + binaryWriter.Write(Float1); + binaryWriter.Write(Float2); + binaryWriter.Write(Float3); + binaryWriter.Write(Float4); + } +} diff --git a/src/Parsec/Shaiya/Ani/Ani.cs b/src/Parsec/Shaiya/Ani/Ani.cs index bb933962..8c108575 100644 --- a/src/Parsec/Shaiya/Ani/Ani.cs +++ b/src/Parsec/Shaiya/Ani/Ani.cs @@ -1,6 +1,7 @@ using Newtonsoft.Json; -using Parsec.Attributes; using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Ani; @@ -8,29 +9,58 @@ namespace Parsec.Shaiya.Ani; /// /// Class that represents an .ANI file which is used to animate a .3DC model. /// -[DefaultVersion(Episode.EP5)] -[VersionPrefixed(typeof(string), "ANI_V2", Episode.EP6, Episode.EP8)] public sealed class Ani : FileBase { /// /// Starting keyframe. 0 for most animations /// - [ShaiyaProperty] - public int StartKeyframe { get; set; } + public uint StartKeyframe { get; set; } /// /// The ending animation keyframe /// - [ShaiyaProperty] - public int EndKeyframe { get; set; } + public uint EndKeyframe { get; set; } /// /// The list of bones with their translations and rotations for each keyframe /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(Bone), typeof(short))] - public List Bones { get; set; } = new(); + public List Bones { get; set; } = new(); [JsonIgnore] public override string Extension => "ANI"; + + protected override void Read(SBinaryReader binaryReader) + { + var signature = binaryReader.ReadString(6); + + if (signature == "ANI_V2") + { + Episode = Episode.EP6; + } + else + { + binaryReader.ResetOffset(); + } + + binaryReader.SerializationOptions.Episode = Episode; + + StartKeyframe = binaryReader.ReadUInt32(); + EndKeyframe = binaryReader.ReadUInt32(); + + var boneCount = binaryReader.ReadUInt16(); + Bones = binaryReader.ReadList(boneCount).ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + if (binaryWriter.SerializationOptions.Episode >= Episode.EP6) + { + binaryWriter.Write("ANI_V2"); + } + + binaryWriter.Write(StartKeyframe); + binaryWriter.Write(EndKeyframe); + binaryWriter.Write((ushort)Bones.Count); + binaryWriter.Write(Bones.ToSerializable(), false); + } } diff --git a/src/Parsec/Shaiya/Ani/AniBone.cs b/src/Parsec/Shaiya/Ani/AniBone.cs new file mode 100644 index 00000000..90bbaa06 --- /dev/null +++ b/src/Parsec/Shaiya/Ani/AniBone.cs @@ -0,0 +1,48 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Ani; + +/// +/// Class that represents the information for each bone present in the ani file +/// +public sealed class AniBone : ISerializable +{ + /// + /// The bone's parent bone index + /// + public int ParentBoneIndex { get; set; } + + /// + /// The transformation matrix for the initial position of the bone + /// + public Matrix4x4 Matrix { get; set; } + + /// + /// List of rotations for each keyframe + /// + public List RotationFrames { get; set; } = new(); + + /// + /// List of translations for each keyframe + /// + public List TranslationFrames { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + ParentBoneIndex = binaryReader.ReadInt32(); + Matrix = binaryReader.Read(); + RotationFrames = binaryReader.ReadList().ToList(); + TranslationFrames = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(ParentBoneIndex); + binaryWriter.Write(Matrix); + binaryWriter.Write(RotationFrames.ToSerializable()); + binaryWriter.Write(TranslationFrames.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Ani/AniRotationFrame.cs b/src/Parsec/Shaiya/Ani/AniRotationFrame.cs new file mode 100644 index 00000000..45b13475 --- /dev/null +++ b/src/Parsec/Shaiya/Ani/AniRotationFrame.cs @@ -0,0 +1,24 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Ani; + +public sealed class AniRotationFrame : ISerializable +{ + public uint Frame { get; set; } + + public Quaternion Quaternion { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Frame = binaryReader.ReadUInt32(); + Quaternion = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Frame); + binaryWriter.Write(Quaternion); + } +} diff --git a/src/Parsec/Shaiya/Ani/AniTranslationFrame.cs b/src/Parsec/Shaiya/Ani/AniTranslationFrame.cs new file mode 100644 index 00000000..85e40c73 --- /dev/null +++ b/src/Parsec/Shaiya/Ani/AniTranslationFrame.cs @@ -0,0 +1,24 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Ani; + +public sealed class AniTranslationFrame : ISerializable +{ + public uint Frame { get; set; } + + public Vector3 Translation { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Frame = binaryReader.ReadUInt32(); + Translation = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Frame); + binaryWriter.Write(Translation); + } +} diff --git a/src/Parsec/Shaiya/Ani/Bone.cs b/src/Parsec/Shaiya/Ani/Bone.cs deleted file mode 100644 index b037ef53..00000000 --- a/src/Parsec/Shaiya/Ani/Bone.cs +++ /dev/null @@ -1,41 +0,0 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya.Ani; - -/// -/// Class that represents the information for each bone present in the ani file -/// -public sealed class Bone -{ - /// - /// The index of the bone which matches the .3DC bone - /// - public int BoneIndex { get; set; } - - /// - /// The bone's parent bone index - /// - [ShaiyaProperty] - public int ParentBoneIndex { get; set; } - - /// - /// The transformation matrix for the initial position of the bone - /// - [ShaiyaProperty] - public Matrix4x4 Matrix { get; set; } - - /// - /// List of rotations for each keyframe - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(RotationFrame))] - public List RotationFrames { get; set; } = new(); - - /// - /// List of translations for each keyframe - /// - [ShaiyaProperty] - [LengthPrefixedList(typeof(TranslationFrame))] - public List TranslationFrames { get; set; } = new(); -} diff --git a/src/Parsec/Shaiya/Ani/RotationFrame.cs b/src/Parsec/Shaiya/Ani/RotationFrame.cs deleted file mode 100644 index 7898043f..00000000 --- a/src/Parsec/Shaiya/Ani/RotationFrame.cs +++ /dev/null @@ -1,13 +0,0 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya.Ani; - -public sealed class RotationFrame -{ - [ShaiyaProperty] - public int Keyframe { get; set; } - - [ShaiyaProperty] - public Quaternion Quaternion { get; set; } -} diff --git a/src/Parsec/Shaiya/Ani/TranslationFrame.cs b/src/Parsec/Shaiya/Ani/TranslationFrame.cs deleted file mode 100644 index 4e5db282..00000000 --- a/src/Parsec/Shaiya/Ani/TranslationFrame.cs +++ /dev/null @@ -1,13 +0,0 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya.Ani; - -public sealed class TranslationFrame -{ - [ShaiyaProperty] - public int Keyframe { get; set; } - - [ShaiyaProperty] - public Vector3 Vector { get; set; } -} diff --git a/src/Parsec/Shaiya/Cash/Cash.cs b/src/Parsec/Shaiya/Cash/Cash.cs index ff34ec99..aad3a496 100644 --- a/src/Parsec/Shaiya/Cash/Cash.cs +++ b/src/Parsec/Shaiya/Cash/Cash.cs @@ -1,4 +1,5 @@ -using Parsec.Attributes; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.Cash; @@ -7,7 +8,15 @@ namespace Parsec.Shaiya.Cash; /// public sealed class Cash : SData.SData { - [ShaiyaProperty] - [LengthPrefixedList(typeof(Product))] - public List Products { get; set; } = new(); + public List Products { get; set; } = new(); + + protected override void Read(SBinaryReader binaryReader) + { + Products = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Products.ToSerializable()); + } } diff --git a/src/Parsec/Shaiya/Cash/CashItem.cs b/src/Parsec/Shaiya/Cash/CashItem.cs deleted file mode 100644 index 1a56c717..00000000 --- a/src/Parsec/Shaiya/Cash/CashItem.cs +++ /dev/null @@ -1,12 +0,0 @@ -using Parsec.Attributes; - -namespace Parsec.Shaiya.Cash; - -public sealed class CashItem -{ - [ShaiyaProperty] - public int ItemId { get; set; } - - [ShaiyaProperty] - public byte Count { get; set; } -} diff --git a/src/Parsec/Shaiya/Cash/CashProduct.cs b/src/Parsec/Shaiya/Cash/CashProduct.cs new file mode 100644 index 00000000..ee9a8571 --- /dev/null +++ b/src/Parsec/Shaiya/Cash/CashProduct.cs @@ -0,0 +1,53 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Cash; + +public sealed class CashProduct : ISerializable +{ + public uint Index { get; set; } + + public uint Bag { get; set; } + + public uint Unknown { get; set; } + + public uint Cost { get; set; } + + public List Items { get; set; } = new(); + + public string ProductName { get; set; } = string.Empty; + + public string ProductCode { get; set; } = string.Empty; + + public string Description { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Index = binaryReader.ReadUInt32(); + Bag = binaryReader.ReadUInt32(); + Unknown = binaryReader.ReadUInt32(); + Cost = binaryReader.ReadUInt32(); + Items = binaryReader.ReadList(24).ToList(); + ProductName = binaryReader.ReadString(false); + ProductCode = binaryReader.ReadString(false); + Description = binaryReader.ReadString(false); + + // Manually remove double string terminator on the end of each string. + ProductName = ProductName.Substring(0, ProductName.Length - 2); + ProductCode = ProductCode.Substring(0, ProductCode.Length - 2); + Description = Description.Substring(0, Description.Length - 2); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Index); + binaryWriter.Write(Bag); + binaryWriter.Write(Unknown); + binaryWriter.Write(Cost); + binaryWriter.Write(Items.Take(24).ToSerializable(), false); + binaryWriter.Write(ProductName + "\0\0", false); + binaryWriter.Write(ProductCode + "\0\0", false); + binaryWriter.Write(Description + "\0\0", false); + } +} diff --git a/src/Parsec/Shaiya/Cash/CashProductItem.cs b/src/Parsec/Shaiya/Cash/CashProductItem.cs new file mode 100644 index 00000000..0e55e9cd --- /dev/null +++ b/src/Parsec/Shaiya/Cash/CashProductItem.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Cash; + +public sealed class CashProductItem : ISerializable +{ + public uint ItemId { get; set; } + + public byte Count { get; set; } + + public void Read(SBinaryReader binaryReader) + { + ItemId = binaryReader.ReadUInt32(); + Count = binaryReader.ReadByte(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(ItemId); + binaryWriter.Write(Count); + } +} diff --git a/src/Parsec/Shaiya/Cash/DBItemSellRecord.cs b/src/Parsec/Shaiya/Cash/DBItemSellRecord.cs index 107bdb61..845ea9bb 100644 --- a/src/Parsec/Shaiya/Cash/DBItemSellRecord.cs +++ b/src/Parsec/Shaiya/Cash/DBItemSellRecord.cs @@ -1,166 +1,227 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Cash; public sealed class DBItemSellRecord : IBinarySDataRecord { - [ShaiyaProperty] public long ProductCode { get; set; } - [ShaiyaProperty] public long Goods_Id { get; set; } - [ShaiyaProperty] public long Multi_BuyCost1 { get; set; } - [ShaiyaProperty] public long Multi_BuyCost2 { get; set; } - [ShaiyaProperty] public long ItemID1 { get; set; } - [ShaiyaProperty] public long ItemCount1 { get; set; } - [ShaiyaProperty] public long ItemID2 { get; set; } - [ShaiyaProperty] public long ItemCount2 { get; set; } - [ShaiyaProperty] public long ItemID3 { get; set; } - [ShaiyaProperty] public long ItemCount3 { get; set; } - [ShaiyaProperty] public long ItemID4 { get; set; } - [ShaiyaProperty] public long ItemCount4 { get; set; } - [ShaiyaProperty] public long ItemID5 { get; set; } - [ShaiyaProperty] public long ItemCount5 { get; set; } - [ShaiyaProperty] public long ItemID6 { get; set; } - [ShaiyaProperty] public long ItemCount6 { get; set; } - [ShaiyaProperty] public long ItemID7 { get; set; } - [ShaiyaProperty] public long ItemCount7 { get; set; } - [ShaiyaProperty] public long ItemID8 { get; set; } - [ShaiyaProperty] public long ItemCount8 { get; set; } - [ShaiyaProperty] public long ItemID9 { get; set; } - [ShaiyaProperty] public long ItemCount9 { get; set; } - [ShaiyaProperty] public long ItemID10 { get; set; } - [ShaiyaProperty] public long ItemCount10 { get; set; } - [ShaiyaProperty] public long ItemID11 { get; set; } - [ShaiyaProperty] public long ItemCount11 { get; set; } - [ShaiyaProperty] public long ItemID12 { get; set; } - [ShaiyaProperty] public long ItemCount12 { get; set; } - [ShaiyaProperty] public long ItemID13 { get; set; } - [ShaiyaProperty] public long ItemCount13 { get; set; } - [ShaiyaProperty] public long ItemID14 { get; set; } - [ShaiyaProperty] public long ItemCount14 { get; set; } - [ShaiyaProperty] public long ItemID15 { get; set; } - [ShaiyaProperty] public long ItemCount15 { get; set; } - [ShaiyaProperty] public long ItemID16 { get; set; } - [ShaiyaProperty] public long ItemCount16 { get; set; } - [ShaiyaProperty] public long ItemID17 { get; set; } - [ShaiyaProperty] public long ItemCount17 { get; set; } - [ShaiyaProperty] public long ItemID18 { get; set; } - [ShaiyaProperty] public long ItemCount18 { get; set; } - [ShaiyaProperty] public long ItemID19 { get; set; } - [ShaiyaProperty] public long ItemCount19 { get; set; } - [ShaiyaProperty] public long ItemID20 { get; set; } - [ShaiyaProperty] public long ItemCount20 { get; set; } - [ShaiyaProperty] public long ItemID21 { get; set; } - [ShaiyaProperty] public long ItemCount21 { get; set; } - [ShaiyaProperty] public long ItemID22 { get; set; } - [ShaiyaProperty] public long ItemCount22 { get; set; } - [ShaiyaProperty] public long ItemID23 { get; set; } - [ShaiyaProperty] public long ItemCount23 { get; set; } - [ShaiyaProperty] public long ItemID24 { get; set; } - [ShaiyaProperty] public long ItemCount24 { get; set; } - [ShaiyaProperty] public long Type { get; set; } + + public void Read(SBinaryReader binaryReader) + { + ProductCode = binaryReader.ReadInt64(); + Goods_Id = binaryReader.ReadInt64(); + Multi_BuyCost1 = binaryReader.ReadInt64(); + Multi_BuyCost2 = binaryReader.ReadInt64(); + ItemID1 = binaryReader.ReadInt64(); + ItemCount1 = binaryReader.ReadInt64(); + ItemID2 = binaryReader.ReadInt64(); + ItemCount2 = binaryReader.ReadInt64(); + ItemID3 = binaryReader.ReadInt64(); + ItemCount3 = binaryReader.ReadInt64(); + ItemID4 = binaryReader.ReadInt64(); + ItemCount4 = binaryReader.ReadInt64(); + ItemID5 = binaryReader.ReadInt64(); + ItemCount5 = binaryReader.ReadInt64(); + ItemID6 = binaryReader.ReadInt64(); + ItemCount6 = binaryReader.ReadInt64(); + ItemID7 = binaryReader.ReadInt64(); + ItemCount7 = binaryReader.ReadInt64(); + ItemID8 = binaryReader.ReadInt64(); + ItemCount8 = binaryReader.ReadInt64(); + ItemID9 = binaryReader.ReadInt64(); + ItemCount9 = binaryReader.ReadInt64(); + ItemID10 = binaryReader.ReadInt64(); + ItemCount10 = binaryReader.ReadInt64(); + ItemID11 = binaryReader.ReadInt64(); + ItemCount11 = binaryReader.ReadInt64(); + ItemID12 = binaryReader.ReadInt64(); + ItemCount12 = binaryReader.ReadInt64(); + ItemID13 = binaryReader.ReadInt64(); + ItemCount13 = binaryReader.ReadInt64(); + ItemID14 = binaryReader.ReadInt64(); + ItemCount14 = binaryReader.ReadInt64(); + ItemID15 = binaryReader.ReadInt64(); + ItemCount15 = binaryReader.ReadInt64(); + ItemID16 = binaryReader.ReadInt64(); + ItemCount16 = binaryReader.ReadInt64(); + ItemID17 = binaryReader.ReadInt64(); + ItemCount17 = binaryReader.ReadInt64(); + ItemID18 = binaryReader.ReadInt64(); + ItemCount18 = binaryReader.ReadInt64(); + ItemID19 = binaryReader.ReadInt64(); + ItemCount19 = binaryReader.ReadInt64(); + ItemID20 = binaryReader.ReadInt64(); + ItemCount20 = binaryReader.ReadInt64(); + ItemID21 = binaryReader.ReadInt64(); + ItemCount21 = binaryReader.ReadInt64(); + ItemID22 = binaryReader.ReadInt64(); + ItemCount22 = binaryReader.ReadInt64(); + ItemID23 = binaryReader.ReadInt64(); + ItemCount23 = binaryReader.ReadInt64(); + ItemID24 = binaryReader.ReadInt64(); + ItemCount24 = binaryReader.ReadInt64(); + Type = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(ProductCode); + binaryWriter.Write(Goods_Id); + binaryWriter.Write(Multi_BuyCost1); + binaryWriter.Write(Multi_BuyCost2); + binaryWriter.Write(ItemID1); + binaryWriter.Write(ItemCount1); + binaryWriter.Write(ItemID2); + binaryWriter.Write(ItemCount2); + binaryWriter.Write(ItemID3); + binaryWriter.Write(ItemCount3); + binaryWriter.Write(ItemID4); + binaryWriter.Write(ItemCount4); + binaryWriter.Write(ItemID5); + binaryWriter.Write(ItemCount5); + binaryWriter.Write(ItemID6); + binaryWriter.Write(ItemCount6); + binaryWriter.Write(ItemID7); + binaryWriter.Write(ItemCount7); + binaryWriter.Write(ItemID8); + binaryWriter.Write(ItemCount8); + binaryWriter.Write(ItemID9); + binaryWriter.Write(ItemCount9); + binaryWriter.Write(ItemID10); + binaryWriter.Write(ItemCount10); + binaryWriter.Write(ItemID11); + binaryWriter.Write(ItemCount11); + binaryWriter.Write(ItemID12); + binaryWriter.Write(ItemCount12); + binaryWriter.Write(ItemID13); + binaryWriter.Write(ItemCount13); + binaryWriter.Write(ItemID14); + binaryWriter.Write(ItemCount14); + binaryWriter.Write(ItemID15); + binaryWriter.Write(ItemCount15); + binaryWriter.Write(ItemID16); + binaryWriter.Write(ItemCount16); + binaryWriter.Write(ItemID17); + binaryWriter.Write(ItemCount17); + binaryWriter.Write(ItemID18); + binaryWriter.Write(ItemCount18); + binaryWriter.Write(ItemID19); + binaryWriter.Write(ItemCount19); + binaryWriter.Write(ItemID20); + binaryWriter.Write(ItemCount20); + binaryWriter.Write(ItemID21); + binaryWriter.Write(ItemCount21); + binaryWriter.Write(ItemID22); + binaryWriter.Write(ItemCount22); + binaryWriter.Write(ItemID23); + binaryWriter.Write(ItemCount23); + binaryWriter.Write(ItemID24); + binaryWriter.Write(ItemCount24); + binaryWriter.Write(Type); + } } diff --git a/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs b/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs index b94a28c7..86560fc9 100644 --- a/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs +++ b/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs @@ -1,18 +1,27 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Cash; public sealed class DBItemSellTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] - [LengthPrefixedString(false)] - public string ProductName { get; set; } + public string ProductName { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString(false)] - public string Text { get; set; } + public string Text { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + ProductName = binaryReader.ReadString(); + Text = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.WriteLengthPrefixedString(ProductName, includeStringTerminator: false); + binaryWriter.WriteLengthPrefixedString(Text, includeStringTerminator: false); + } } diff --git a/src/Parsec/Shaiya/Cash/Product.cs b/src/Parsec/Shaiya/Cash/Product.cs deleted file mode 100644 index c23d11ab..00000000 --- a/src/Parsec/Shaiya/Cash/Product.cs +++ /dev/null @@ -1,34 +0,0 @@ -using Parsec.Attributes; - -namespace Parsec.Shaiya.Cash; - -public sealed class Product -{ - [ShaiyaProperty] - public int Index { get; set; } - - [ShaiyaProperty] - public int Bag { get; set; } - - [ShaiyaProperty] - public int Unknown { get; set; } - - [ShaiyaProperty] - public int Cost { get; set; } - - [ShaiyaProperty] - [FixedLengthList(typeof(CashItem), 24)] - public List Items { get; set; } = new(); - - [ShaiyaProperty] - [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string ProductName { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string ProductCode { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString(IncludeStringTerminator = false, Suffix = "\0\0")] - public string Description { get; set; } = string.Empty; -} diff --git a/src/Parsec/Shaiya/Cloak/ClothTexture/CTL.cs b/src/Parsec/Shaiya/Cloak/ClothTexture/CTL.cs deleted file mode 100644 index 4bbf1b04..00000000 --- a/src/Parsec/Shaiya/Cloak/ClothTexture/CTL.cs +++ /dev/null @@ -1,36 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Cloak.ClothTexture; - -public sealed class CTL : FileBase -{ - [JsonConstructor] - public CTL() - { - } - - public List Textures { get; } = new(); - - [JsonIgnore] - public override string Extension => "CTL"; - - public override void Read() - { - int textureCount = _binaryReader.Read(); - for (int i = 0; i < textureCount; i++) - Textures.Add(new Texture(_binaryReader, 256, (char)0xCD)); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Textures.Count.GetBytes()); - foreach (var texture in Textures) - buffer.AddRange(texture.GetBytes(256, (char)0xCD)); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Cloak/ClothTexture/Ctl.cs b/src/Parsec/Shaiya/Cloak/ClothTexture/Ctl.cs new file mode 100644 index 00000000..a6311d3f --- /dev/null +++ b/src/Parsec/Shaiya/Cloak/ClothTexture/Ctl.cs @@ -0,0 +1,25 @@ +using Newtonsoft.Json; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Cloak.ClothTexture; + +public sealed class Ctl : FileBase +{ + public List Textures { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "CTL"; + + protected override void Read(SBinaryReader binaryReader) + { + Textures = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Textures.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Cloak/Emblem/EmblemDat.cs b/src/Parsec/Shaiya/Cloak/Emblem/EmblemDat.cs index 28e2f89c..88a4a31a 100644 --- a/src/Parsec/Shaiya/Cloak/Emblem/EmblemDat.cs +++ b/src/Parsec/Shaiya/Cloak/Emblem/EmblemDat.cs @@ -1,37 +1,25 @@ using Newtonsoft.Json; -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Cloak.Emblem; public sealed class EmblemDat : FileBase { - [JsonConstructor] - public EmblemDat() - { - } - - public List Textures { get; } = new(); + public List Textures { get; set; } = new(); [JsonIgnore] public override string Extension => "dat"; - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - int textureCount = _binaryReader.Read(); - for (int i = 0; i < textureCount; i++) - Textures.Add(new Texture(_binaryReader, 260, (char)0xCC)); + Textures = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Textures.Count.GetBytes()); - - foreach (var texture in Textures) - buffer.AddRange(texture.GetBytes(260, 0xCC)); - - return buffer; + binaryWriter.Write(Textures.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Cloak/Texture.cs b/src/Parsec/Shaiya/Cloak/Texture.cs deleted file mode 100644 index 1b6ad96d..00000000 --- a/src/Parsec/Shaiya/Cloak/Texture.cs +++ /dev/null @@ -1,55 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Cloak; - -public sealed class Texture : IBinary -{ - [JsonIgnore] - private int _fixedLength; - - [JsonIgnore] - private char _padChar = '\0'; - - [JsonConstructor] - public Texture() - { - } - - public Texture(SBinaryReader binaryReader, int length, char padChar) - { - _fixedLength = length; - _padChar = padChar; - - byte[] stringBuffer = binaryReader.ReadBytes(_fixedLength); - Name = Encoding.ASCII.GetString(stringBuffer.TakeWhile(b => b != '\0').ToArray()); - } - - public string Name { get; set; } = string.Empty; - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - - if (options.Length >= 2) - { - _fixedLength = (int)options[0]; - _padChar = Convert.ToChar(options[1]); - } - - buffer.AddRange(Name.GetLengthPrefixedBytes()); - - int padLength = _fixedLength - Name.Length - 1; - - if (padLength > 0) - { - string pad = "".PadRight(padLength, _padChar); - buffer.AddRange(pad.GetBytes()); - } - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Common/AlphaBlendingMode.cs b/src/Parsec/Shaiya/Common/AlphaBlendingMode.cs new file mode 100644 index 00000000..5d9cdefe --- /dev/null +++ b/src/Parsec/Shaiya/Common/AlphaBlendingMode.cs @@ -0,0 +1,7 @@ +namespace Parsec.Shaiya.Common; + +public enum AlphaBlendingMode +{ + Visibility, + Glow +} diff --git a/src/Parsec/Shaiya/Common/BoundingBox.cs b/src/Parsec/Shaiya/Common/BoundingBox.cs index e0913f98..5fedb10b 100644 --- a/src/Parsec/Shaiya/Common/BoundingBox.cs +++ b/src/Parsec/Shaiya/Common/BoundingBox.cs @@ -1,5 +1,4 @@ -using Parsec.Attributes; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; @@ -8,18 +7,16 @@ namespace Parsec.Shaiya.Common; /// Cube formed by the volume between 2 points which form its diagonal. /// The cube is unique; it doesn't form any angle with the x and y axis. /// -public struct BoundingBox : IBinary +public struct BoundingBox : ISerializable { /// /// Point used as reference for the rectangle /// - [ShaiyaProperty] public Vector3 LowerLimit { get; set; } /// /// Point used as reference for the rectangle /// - [ShaiyaProperty] public Vector3 UpperLimit { get; set; } public BoundingBox(Vector3 lowerLimit, Vector3 upperLimit) @@ -28,10 +25,16 @@ public BoundingBox(Vector3 lowerLimit, Vector3 upperLimit) UpperLimit = upperLimit; } - public BoundingBox(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - LowerLimit = new Vector3(binaryReader); - UpperLimit = new Vector3(binaryReader); + LowerLimit = binaryReader.Read(); + UpperLimit = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(LowerLimit); + binaryWriter.Write(UpperLimit); } public float GetRadius() @@ -41,13 +44,4 @@ public float GetRadius() var z = UpperLimit.Z - LowerLimit.Z; return (float)Math.Sqrt(x * x + y * y + z * z) / 2f; } - - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(LowerLimit.GetBytes()); - buffer.AddRange(UpperLimit.GetBytes()); - return buffer; - } } diff --git a/src/Parsec/Shaiya/Common/Face.cs b/src/Parsec/Shaiya/Common/Face.cs deleted file mode 100644 index 5b2be5a0..00000000 --- a/src/Parsec/Shaiya/Common/Face.cs +++ /dev/null @@ -1,52 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Common; - -/// -/// Class that represents a mesh's triangular face (polygon). All faces in shaiya (3DC, 3DO, SMOD, VAni, etc.) are triangular. -/// -public sealed class Face : IBinary -{ - [JsonConstructor] - public Face() - { - } - - public Face(SBinaryReader binaryReader) - { - VertexIndex1 = binaryReader.Read(); - VertexIndex2 = binaryReader.Read(); - VertexIndex3 = binaryReader.Read(); - } - - /// - /// Index of the first vertex of the mesh - /// - [ShaiyaProperty] - public ushort VertexIndex1 { get; set; } - - /// - /// Index of the second vertex of the mesh - /// - [ShaiyaProperty] - public ushort VertexIndex2 { get; set; } - - /// - /// Index of the third vertex of the mesh - /// - [ShaiyaProperty] - public ushort VertexIndex3 { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(VertexIndex1.GetBytes()); - buffer.AddRange(VertexIndex2.GetBytes()); - buffer.AddRange(VertexIndex3.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Common/Faction.cs b/src/Parsec/Shaiya/Common/Faction.cs deleted file mode 100644 index d55b38f6..00000000 --- a/src/Parsec/Shaiya/Common/Faction.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace Parsec.Shaiya.Common; - -public enum FactionInt -{ - Light, - Fury, - Any -} - -public enum FactionShort : short -{ - Light, - Fury, - Any -} - -public enum FactionByte : byte -{ - Light, - Fury, - Any -} diff --git a/src/Parsec/Shaiya/Common/Matrix4x4.cs b/src/Parsec/Shaiya/Common/Matrix4x4.cs index 11128ff1..1429d06c 100644 --- a/src/Parsec/Shaiya/Common/Matrix4x4.cs +++ b/src/Parsec/Shaiya/Common/Matrix4x4.cs @@ -1,13 +1,4 @@ -/* - Code based on https://github.com/microsoft/referencesource/blob/master/System.Numerics/System/Numerics/Matrix4x4.cs - From the repository https://github.com/microsoft/referencesource - Copyright (c) Microsoft. All rights reserved. - Licensed under the MIT license. See LICENSE file in the project root for full license information. -*/ - -using System.Globalization; -using Newtonsoft.Json; -using Parsec.Extensions; +using Newtonsoft.Json; using Parsec.Serialization; using Parsec.Shaiya.Core; @@ -16,10 +7,8 @@ namespace Parsec.Shaiya.Common; /// /// A structure encapsulating a 4x4 matrix. /// -public struct Matrix4x4 : IEquatable, IBinary +public struct Matrix4x4 : ISerializable { - #region Public Fields - /// /// The matrix's data serialized into an array of float arrays /// @@ -146,66 +135,6 @@ public struct Matrix4x4 : IEquatable, IBinary [JsonIgnore] public float M44; - #endregion Public Fields - - private static readonly Matrix4x4 _identity = new(1f, 0f, 0f, 0f, 0f, 1f, 0f, 0f, 0f, 0f, 1f, 0f, 0f, 0f, 0f, 1f); - - /// - /// Returns the multiplicative identity matrix. - /// - public static Matrix4x4 Identity - { - get { return _identity; } - } - - /// - /// Returns whether the matrix is the identity matrix. - /// - [JsonIgnore] - public bool IsIdentity - { - get - { - return M11 == 1f && - M22 == 1f && - M33 == 1f && - M44 == 1f && // Check diagonal element first for early out. - M12 == 0f && - M13 == 0f && - M14 == 0f && - M21 == 0f && - M23 == 0f && - M24 == 0f && - M31 == 0f && - M32 == 0f && - M34 == 0f && - M41 == 0f && - M42 == 0f && - M43 == 0f; - } - } - - /// - /// Gets or sets the translation component of this matrix. - /// - [JsonIgnore] - public Vector3 Translation - { - get { return new Vector3(M14, M24, M34); } - set - { - M14 = value.X; - M24 = value.Y; - M34 = value.Z; - } - } - - [JsonIgnore] - public Quaternion Rotation - { - get => Quaternion.CreateFromRotationMatrix(this); - } - /// /// Constructs a Matrix4x4 from the given components. /// @@ -249,972 +178,43 @@ float m44 M44 = m44; } - public Matrix4x4(SBinaryReader binaryReader) - { - M11 = binaryReader.Read(); - M21 = binaryReader.Read(); - M31 = binaryReader.Read(); - M41 = binaryReader.Read(); - M12 = binaryReader.Read(); - M22 = binaryReader.Read(); - M32 = binaryReader.Read(); - M42 = binaryReader.Read(); - M13 = binaryReader.Read(); - M23 = binaryReader.Read(); - M33 = binaryReader.Read(); - M43 = binaryReader.Read(); - M14 = binaryReader.Read(); - M24 = binaryReader.Read(); - M34 = binaryReader.Read(); - M44 = binaryReader.Read(); - } - - /// - /// Creates a translation matrix. - /// - /// The amount to translate in each axis. - /// The translation matrix. - public static Matrix4x4 CreateTranslation(Vector3 position) - { - Matrix4x4 result; - - result.M11 = 1.0f; - result.M12 = 0.0f; - result.M13 = 0.0f; - result.M14 = 0.0f; - result.M21 = 0.0f; - result.M22 = 1.0f; - result.M23 = 0.0f; - result.M24 = 0.0f; - result.M31 = 0.0f; - result.M32 = 0.0f; - result.M33 = 1.0f; - result.M34 = 0.0f; - - result.M41 = position.X; - result.M42 = position.Y; - result.M43 = position.Z; - result.M44 = 1.0f; - - return result; - } - - /// - /// Creates a translation matrix. - /// - /// The amount to translate on the X-axis. - /// The amount to translate on the Y-axis. - /// The amount to translate on the Z-axis. - /// The translation matrix. - public static Matrix4x4 CreateTranslation(float xPosition, float yPosition, float zPosition) - { - Matrix4x4 result; - - result.M11 = 1.0f; - result.M12 = 0.0f; - result.M13 = 0.0f; - result.M14 = 0.0f; - result.M21 = 0.0f; - result.M22 = 1.0f; - result.M23 = 0.0f; - result.M24 = 0.0f; - result.M31 = 0.0f; - result.M32 = 0.0f; - result.M33 = 1.0f; - result.M34 = 0.0f; - - result.M41 = xPosition; - result.M42 = yPosition; - result.M43 = zPosition; - result.M44 = 1.0f; - - return result; - } - - /// - /// Creates a rotation matrix from the given Quaternion rotation value. - /// - /// The source Quaternion. - /// The rotation matrix. - public static Matrix4x4 CreateFromQuaternion(Quaternion quaternion) - { - Matrix4x4 result; - - float xx = quaternion.X * quaternion.X; - float yy = quaternion.Y * quaternion.Y; - float zz = quaternion.Z * quaternion.Z; - - float xy = quaternion.X * quaternion.Y; - float wz = quaternion.Z * quaternion.W; - float xz = quaternion.Z * quaternion.X; - float wy = quaternion.Y * quaternion.W; - float yz = quaternion.Y * quaternion.Z; - float wx = quaternion.X * quaternion.W; - - result.M11 = 1.0f - 2.0f * (yy + zz); - result.M12 = 2.0f * (xy + wz); - result.M13 = 2.0f * (xz - wy); - result.M14 = 0.0f; - result.M21 = 2.0f * (xy - wz); - result.M22 = 1.0f - 2.0f * (zz + xx); - result.M23 = 2.0f * (yz + wx); - result.M24 = 0.0f; - result.M31 = 2.0f * (xz + wy); - result.M32 = 2.0f * (yz - wx); - result.M33 = 1.0f - 2.0f * (yy + xx); - result.M34 = 0.0f; - result.M41 = 0.0f; - result.M42 = 0.0f; - result.M43 = 0.0f; - result.M44 = 1.0f; - - return result; - } - - /// - /// Calculates the determinant of the matrix. - /// - /// The determinant of the matrix. - public float GetDeterminant() - { - // | a b c d | | f g h | | e g h | | e f h | | e f g | - // | e f g h | = a | j k l | - b | i k l | + c | i j l | - d | i j k | - // | i j k l | | n o p | | m o p | | m n p | | m n o | - // | m n o p | - // - // | f g h | - // a | j k l | = a ( f ( kp - lo ) - g ( jp - ln ) + h ( jo - kn ) ) - // | n o p | - // - // | e g h | - // b | i k l | = b ( e ( kp - lo ) - g ( ip - lm ) + h ( io - km ) ) - // | m o p | - // - // | e f h | - // c | i j l | = c ( e ( jp - ln ) - f ( ip - lm ) + h ( in - jm ) ) - // | m n p | - // - // | e f g | - // d | i j k | = d ( e ( jo - kn ) - f ( io - km ) + g ( in - jm ) ) - // | m n o | - // - // Cost of operation - // 17 adds and 28 muls. - // - // add: 6 + 8 + 3 = 17 - // mul: 12 + 16 = 28 - - float a = M11, b = M12, c = M13, d = M14; - float e = M21, f = M22, g = M23, h = M24; - float i = M31, j = M32, k = M33, l = M34; - float m = M41, n = M42, o = M43, p = M44; - - float kp_lo = k * p - l * o; - float jp_ln = j * p - l * n; - float jo_kn = j * o - k * n; - float ip_lm = i * p - l * m; - float io_km = i * o - k * m; - float in_jm = i * n - j * m; - - return a * (f * kp_lo - g * jp_ln + h * jo_kn) - - b * (e * kp_lo - g * ip_lm + h * io_km) + - c * (e * jp_ln - f * ip_lm + h * in_jm) - - d * (e * jo_kn - f * io_km + g * in_jm); - } - - /// - /// Attempts to calculate the inverse of the given matrix. If successful, result will contain the inverted matrix. - /// - /// The source matrix to invert. - /// If successful, contains the inverted matrix. - /// True if the source matrix could be inverted; False otherwise. - public static bool Invert(Matrix4x4 matrix, out Matrix4x4 result) - { - // -1 - // If you have matrix M, inverse Matrix M can compute - // - // -1 1 - // M = --------- A - // det(M) - // - // A is adjugate (adjoint) of M, where, - // - // T - // A = C - // - // C is Cofactor matrix of M, where, - // i + j - // C = (-1) * det(M ) - // ij ij - // - // [ a b c d ] - // M = [ e f g h ] - // [ i j k l ] - // [ m n o p ] - // - // First Row - // 2 | f g h | - // C = (-1) | j k l | = + ( f ( kp - lo ) - g ( jp - ln ) + h ( jo - kn ) ) - // 11 | n o p | - // - // 3 | e g h | - // C = (-1) | i k l | = - ( e ( kp - lo ) - g ( ip - lm ) + h ( io - km ) ) - // 12 | m o p | - // - // 4 | e f h | - // C = (-1) | i j l | = + ( e ( jp - ln ) - f ( ip - lm ) + h ( in - jm ) ) - // 13 | m n p | - // - // 5 | e f g | - // C = (-1) | i j k | = - ( e ( jo - kn ) - f ( io - km ) + g ( in - jm ) ) - // 14 | m n o | - // - // Second Row - // 3 | b c d | - // C = (-1) | j k l | = - ( b ( kp - lo ) - c ( jp - ln ) + d ( jo - kn ) ) - // 21 | n o p | - // - // 4 | a c d | - // C = (-1) | i k l | = + ( a ( kp - lo ) - c ( ip - lm ) + d ( io - km ) ) - // 22 | m o p | - // - // 5 | a b d | - // C = (-1) | i j l | = - ( a ( jp - ln ) - b ( ip - lm ) + d ( in - jm ) ) - // 23 | m n p | - // - // 6 | a b c | - // C = (-1) | i j k | = + ( a ( jo - kn ) - b ( io - km ) + c ( in - jm ) ) - // 24 | m n o | - // - // Third Row - // 4 | b c d | - // C = (-1) | f g h | = + ( b ( gp - ho ) - c ( fp - hn ) + d ( fo - gn ) ) - // 31 | n o p | - // - // 5 | a c d | - // C = (-1) | e g h | = - ( a ( gp - ho ) - c ( ep - hm ) + d ( eo - gm ) ) - // 32 | m o p | - // - // 6 | a b d | - // C = (-1) | e f h | = + ( a ( fp - hn ) - b ( ep - hm ) + d ( en - fm ) ) - // 33 | m n p | - // - // 7 | a b c | - // C = (-1) | e f g | = - ( a ( fo - gn ) - b ( eo - gm ) + c ( en - fm ) ) - // 34 | m n o | - // - // Fourth Row - // 5 | b c d | - // C = (-1) | f g h | = - ( b ( gl - hk ) - c ( fl - hj ) + d ( fk - gj ) ) - // 41 | j k l | - // - // 6 | a c d | - // C = (-1) | e g h | = + ( a ( gl - hk ) - c ( el - hi ) + d ( ek - gi ) ) - // 42 | i k l | - // - // 7 | a b d | - // C = (-1) | e f h | = - ( a ( fl - hj ) - b ( el - hi ) + d ( ej - fi ) ) - // 43 | i j l | - // - // 8 | a b c | - // C = (-1) | e f g | = + ( a ( fk - gj ) - b ( ek - gi ) + c ( ej - fi ) ) - // 44 | i j k | - // - // Cost of operation - // 53 adds, 104 muls, and 1 div. - float a = matrix.M11, b = matrix.M12, c = matrix.M13, d = matrix.M14; - float e = matrix.M21, f = matrix.M22, g = matrix.M23, h = matrix.M24; - float i = matrix.M31, j = matrix.M32, k = matrix.M33, l = matrix.M34; - float m = matrix.M41, n = matrix.M42, o = matrix.M43, p = matrix.M44; - - float kp_lo = k * p - l * o; - float jp_ln = j * p - l * n; - float jo_kn = j * o - k * n; - float ip_lm = i * p - l * m; - float io_km = i * o - k * m; - float in_jm = i * n - j * m; - - float a11 = +(f * kp_lo - g * jp_ln + h * jo_kn); - float a12 = -(e * kp_lo - g * ip_lm + h * io_km); - float a13 = +(e * jp_ln - f * ip_lm + h * in_jm); - float a14 = -(e * jo_kn - f * io_km + g * in_jm); - - float det = a * a11 + b * a12 + c * a13 + d * a14; - - if (Math.Abs(det) < float.Epsilon) - { - result = new Matrix4x4(float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, - float.NaN, - float.NaN, float.NaN, float.NaN, float.NaN, float.NaN, float.NaN); - - return false; - } - - float invDet = 1.0f / det; - - result.M11 = a11 * invDet; - result.M21 = a12 * invDet; - result.M31 = a13 * invDet; - result.M41 = a14 * invDet; - - result.M12 = -(b * kp_lo - c * jp_ln + d * jo_kn) * invDet; - result.M22 = +(a * kp_lo - c * ip_lm + d * io_km) * invDet; - result.M32 = -(a * jp_ln - b * ip_lm + d * in_jm) * invDet; - result.M42 = +(a * jo_kn - b * io_km + c * in_jm) * invDet; - - float gp_ho = g * p - h * o; - float fp_hn = f * p - h * n; - float fo_gn = f * o - g * n; - float ep_hm = e * p - h * m; - float eo_gm = e * o - g * m; - float en_fm = e * n - f * m; - - result.M13 = +(b * gp_ho - c * fp_hn + d * fo_gn) * invDet; - result.M23 = -(a * gp_ho - c * ep_hm + d * eo_gm) * invDet; - result.M33 = +(a * fp_hn - b * ep_hm + d * en_fm) * invDet; - result.M43 = -(a * fo_gn - b * eo_gm + c * en_fm) * invDet; - - float gl_hk = g * l - h * k; - float fl_hj = f * l - h * j; - float fk_gj = f * k - g * j; - float el_hi = e * l - h * i; - float ek_gi = e * k - g * i; - float ej_fi = e * j - f * i; - - result.M14 = -(b * gl_hk - c * fl_hj + d * fk_gj) * invDet; - result.M24 = +(a * gl_hk - c * el_hi + d * ek_gi) * invDet; - result.M34 = -(a * fl_hj - b * el_hi + d * ej_fi) * invDet; - result.M44 = +(a * fk_gj - b * ek_gi + c * ej_fi) * invDet; - - return true; - } - - public Matrix4x4 Inverted() - { - if (Invert(this, out var invertedMatrix)) - return invertedMatrix; - - throw new Exception("Matrix is not invertible."); - } - - /// - /// Transforms the given matrix by applying the given Quaternion rotation. - /// - /// The source matrix to transform. - /// The rotation to apply. - /// The transformed matrix. - public static Matrix4x4 Transform(Matrix4x4 value, Quaternion rotation) - { - // Compute rotation matrix. - float x2 = rotation.X + rotation.X; - float y2 = rotation.Y + rotation.Y; - float z2 = rotation.Z + rotation.Z; - - float wx2 = rotation.W * x2; - float wy2 = rotation.W * y2; - float wz2 = rotation.W * z2; - float xx2 = rotation.X * x2; - float xy2 = rotation.X * y2; - float xz2 = rotation.X * z2; - float yy2 = rotation.Y * y2; - float yz2 = rotation.Y * z2; - float zz2 = rotation.Z * z2; - - float q11 = 1.0f - yy2 - zz2; - float q21 = xy2 - wz2; - float q31 = xz2 + wy2; - - float q12 = xy2 + wz2; - float q22 = 1.0f - xx2 - zz2; - float q32 = yz2 - wx2; - - float q13 = xz2 - wy2; - float q23 = yz2 + wx2; - float q33 = 1.0f - xx2 - yy2; - - Matrix4x4 result; - - // First row - result.M11 = value.M11 * q11 + value.M12 * q21 + value.M13 * q31; - result.M12 = value.M11 * q12 + value.M12 * q22 + value.M13 * q32; - result.M13 = value.M11 * q13 + value.M12 * q23 + value.M13 * q33; - result.M14 = value.M14; - - // Second row - result.M21 = value.M21 * q11 + value.M22 * q21 + value.M23 * q31; - result.M22 = value.M21 * q12 + value.M22 * q22 + value.M23 * q32; - result.M23 = value.M21 * q13 + value.M22 * q23 + value.M23 * q33; - result.M24 = value.M24; - - // Third row - result.M31 = value.M31 * q11 + value.M32 * q21 + value.M33 * q31; - result.M32 = value.M31 * q12 + value.M32 * q22 + value.M33 * q32; - result.M33 = value.M31 * q13 + value.M32 * q23 + value.M33 * q33; - result.M34 = value.M34; - - // Fourth row - result.M41 = value.M41 * q11 + value.M42 * q21 + value.M43 * q31; - result.M42 = value.M41 * q12 + value.M42 * q22 + value.M43 * q32; - result.M43 = value.M41 * q13 + value.M42 * q23 + value.M43 * q33; - result.M44 = value.M44; - - return result; - } - - /// - /// Transposes the rows and columns of a matrix. - /// - /// The source matrix. - /// The transposed matrix. - public static Matrix4x4 Transpose(Matrix4x4 matrix) - { - Matrix4x4 result; - - result.M11 = matrix.M11; - result.M12 = matrix.M21; - result.M13 = matrix.M31; - result.M14 = matrix.M41; - result.M21 = matrix.M12; - result.M22 = matrix.M22; - result.M23 = matrix.M32; - result.M24 = matrix.M42; - result.M31 = matrix.M13; - result.M32 = matrix.M23; - result.M33 = matrix.M33; - result.M34 = matrix.M43; - result.M41 = matrix.M14; - result.M42 = matrix.M24; - result.M43 = matrix.M34; - result.M44 = matrix.M44; - - return result; - } - - /// - /// Linearly interpolates between the corresponding values of two matrices. - /// - /// The first source matrix. - /// The second source matrix. - /// The relative weight of the second source matrix. - /// The interpolated matrix. - public static Matrix4x4 Lerp(Matrix4x4 matrix1, Matrix4x4 matrix2, float amount) - { - Matrix4x4 result; - - // First row - result.M11 = matrix1.M11 + (matrix2.M11 - matrix1.M11) * amount; - result.M12 = matrix1.M12 + (matrix2.M12 - matrix1.M12) * amount; - result.M13 = matrix1.M13 + (matrix2.M13 - matrix1.M13) * amount; - result.M14 = matrix1.M14 + (matrix2.M14 - matrix1.M14) * amount; - - // Second row - result.M21 = matrix1.M21 + (matrix2.M21 - matrix1.M21) * amount; - result.M22 = matrix1.M22 + (matrix2.M22 - matrix1.M22) * amount; - result.M23 = matrix1.M23 + (matrix2.M23 - matrix1.M23) * amount; - result.M24 = matrix1.M24 + (matrix2.M24 - matrix1.M24) * amount; - - // Third row - result.M31 = matrix1.M31 + (matrix2.M31 - matrix1.M31) * amount; - result.M32 = matrix1.M32 + (matrix2.M32 - matrix1.M32) * amount; - result.M33 = matrix1.M33 + (matrix2.M33 - matrix1.M33) * amount; - result.M34 = matrix1.M34 + (matrix2.M34 - matrix1.M34) * amount; - - // Fourth row - result.M41 = matrix1.M41 + (matrix2.M41 - matrix1.M41) * amount; - result.M42 = matrix1.M42 + (matrix2.M42 - matrix1.M42) * amount; - result.M43 = matrix1.M43 + (matrix2.M43 - matrix1.M43) * amount; - result.M44 = matrix1.M44 + (matrix2.M44 - matrix1.M44) * amount; - - return result; - } - - /// - /// Returns a new matrix with the negated elements of the given matrix. - /// - /// The source matrix. - /// The negated matrix. - public static Matrix4x4 Negate(Matrix4x4 value) - { - Matrix4x4 result; - - result.M11 = -value.M11; - result.M12 = -value.M12; - result.M13 = -value.M13; - result.M14 = -value.M14; - result.M21 = -value.M21; - result.M22 = -value.M22; - result.M23 = -value.M23; - result.M24 = -value.M24; - result.M31 = -value.M31; - result.M32 = -value.M32; - result.M33 = -value.M33; - result.M34 = -value.M34; - result.M41 = -value.M41; - result.M42 = -value.M42; - result.M43 = -value.M43; - result.M44 = -value.M44; - - return result; - } - - /// - /// Adds two matrices together. - /// - /// The first source matrix. - /// The second source matrix. - /// The resulting matrix. - public static Matrix4x4 Add(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 result; - - result.M11 = value1.M11 + value2.M11; - result.M12 = value1.M12 + value2.M12; - result.M13 = value1.M13 + value2.M13; - result.M14 = value1.M14 + value2.M14; - result.M21 = value1.M21 + value2.M21; - result.M22 = value1.M22 + value2.M22; - result.M23 = value1.M23 + value2.M23; - result.M24 = value1.M24 + value2.M24; - result.M31 = value1.M31 + value2.M31; - result.M32 = value1.M32 + value2.M32; - result.M33 = value1.M33 + value2.M33; - result.M34 = value1.M34 + value2.M34; - result.M41 = value1.M41 + value2.M41; - result.M42 = value1.M42 + value2.M42; - result.M43 = value1.M43 + value2.M43; - result.M44 = value1.M44 + value2.M44; - - return result; - } - - /// - /// Subtracts the second matrix from the first. - /// - /// The first source matrix. - /// The second source matrix. - /// The result of the subtraction. - public static Matrix4x4 Subtract(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 result; - - result.M11 = value1.M11 - value2.M11; - result.M12 = value1.M12 - value2.M12; - result.M13 = value1.M13 - value2.M13; - result.M14 = value1.M14 - value2.M14; - result.M21 = value1.M21 - value2.M21; - result.M22 = value1.M22 - value2.M22; - result.M23 = value1.M23 - value2.M23; - result.M24 = value1.M24 - value2.M24; - result.M31 = value1.M31 - value2.M31; - result.M32 = value1.M32 - value2.M32; - result.M33 = value1.M33 - value2.M33; - result.M34 = value1.M34 - value2.M34; - result.M41 = value1.M41 - value2.M41; - result.M42 = value1.M42 - value2.M42; - result.M43 = value1.M43 - value2.M43; - result.M44 = value1.M44 - value2.M44; - - return result; - } - - /// - /// Multiplies a matrix by another matrix. - /// - /// The first source matrix. - /// The second source matrix. - /// The result of the multiplication. - public static Matrix4x4 Multiply(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 result; - - // First row - result.M11 = value1.M11 * value2.M11 + value1.M12 * value2.M21 + value1.M13 * value2.M31 + value1.M14 * value2.M41; - - result.M12 = value1.M11 * value2.M12 + value1.M12 * value2.M22 + value1.M13 * value2.M32 + value1.M14 * value2.M42; - - result.M13 = value1.M11 * value2.M13 + value1.M12 * value2.M23 + value1.M13 * value2.M33 + value1.M14 * value2.M43; - - result.M14 = value1.M11 * value2.M14 + value1.M12 * value2.M24 + value1.M13 * value2.M34 + value1.M14 * value2.M44; - - // Second row - result.M21 = value1.M21 * value2.M11 + value1.M22 * value2.M21 + value1.M23 * value2.M31 + value1.M24 * value2.M41; - - result.M22 = value1.M21 * value2.M12 + value1.M22 * value2.M22 + value1.M23 * value2.M32 + value1.M24 * value2.M42; - - result.M23 = value1.M21 * value2.M13 + value1.M22 * value2.M23 + value1.M23 * value2.M33 + value1.M24 * value2.M43; - - result.M24 = value1.M21 * value2.M14 + value1.M22 * value2.M24 + value1.M23 * value2.M34 + value1.M24 * value2.M44; - - // Third row - result.M31 = value1.M31 * value2.M11 + value1.M32 * value2.M21 + value1.M33 * value2.M31 + value1.M34 * value2.M41; - - result.M32 = value1.M31 * value2.M12 + value1.M32 * value2.M22 + value1.M33 * value2.M32 + value1.M34 * value2.M42; - - result.M33 = value1.M31 * value2.M13 + value1.M32 * value2.M23 + value1.M33 * value2.M33 + value1.M34 * value2.M43; - - result.M34 = value1.M31 * value2.M14 + value1.M32 * value2.M24 + value1.M33 * value2.M34 + value1.M34 * value2.M44; - - // Fourth row - result.M41 = value1.M41 * value2.M11 + value1.M42 * value2.M21 + value1.M43 * value2.M31 + value1.M44 * value2.M41; - - result.M42 = value1.M41 * value2.M12 + value1.M42 * value2.M22 + value1.M43 * value2.M32 + value1.M44 * value2.M42; - - result.M43 = value1.M41 * value2.M13 + value1.M42 * value2.M23 + value1.M43 * value2.M33 + value1.M44 * value2.M43; - - result.M44 = value1.M41 * value2.M14 + value1.M42 * value2.M24 + value1.M43 * value2.M34 + value1.M44 * value2.M44; - - return result; - } - - /// - /// Multiplies a matrix by a scalar value. - /// - /// The source matrix. - /// The scaling factor. - /// The scaled matrix. - public static Matrix4x4 Multiply(Matrix4x4 value1, float value2) - { - Matrix4x4 result; - - result.M11 = value1.M11 * value2; - result.M12 = value1.M12 * value2; - result.M13 = value1.M13 * value2; - result.M14 = value1.M14 * value2; - result.M21 = value1.M21 * value2; - result.M22 = value1.M22 * value2; - result.M23 = value1.M23 * value2; - result.M24 = value1.M24 * value2; - result.M31 = value1.M31 * value2; - result.M32 = value1.M32 * value2; - result.M33 = value1.M33 * value2; - result.M34 = value1.M34 * value2; - result.M41 = value1.M41 * value2; - result.M42 = value1.M42 * value2; - result.M43 = value1.M43 * value2; - result.M44 = value1.M44 * value2; - - return result; - } - - /// - /// Returns a new matrix with the negated elements of the given matrix. - /// - /// The source matrix. - /// The negated matrix. - public static Matrix4x4 operator -(Matrix4x4 value) - { - Matrix4x4 m; - - m.M11 = -value.M11; - m.M12 = -value.M12; - m.M13 = -value.M13; - m.M14 = -value.M14; - m.M21 = -value.M21; - m.M22 = -value.M22; - m.M23 = -value.M23; - m.M24 = -value.M24; - m.M31 = -value.M31; - m.M32 = -value.M32; - m.M33 = -value.M33; - m.M34 = -value.M34; - m.M41 = -value.M41; - m.M42 = -value.M42; - m.M43 = -value.M43; - m.M44 = -value.M44; - - return m; - } - - /// - /// Adds two matrices together. - /// - /// The first source matrix. - /// The second source matrix. - /// The resulting matrix. - public static Matrix4x4 operator +(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 m; - - m.M11 = value1.M11 + value2.M11; - m.M12 = value1.M12 + value2.M12; - m.M13 = value1.M13 + value2.M13; - m.M14 = value1.M14 + value2.M14; - m.M21 = value1.M21 + value2.M21; - m.M22 = value1.M22 + value2.M22; - m.M23 = value1.M23 + value2.M23; - m.M24 = value1.M24 + value2.M24; - m.M31 = value1.M31 + value2.M31; - m.M32 = value1.M32 + value2.M32; - m.M33 = value1.M33 + value2.M33; - m.M34 = value1.M34 + value2.M34; - m.M41 = value1.M41 + value2.M41; - m.M42 = value1.M42 + value2.M42; - m.M43 = value1.M43 + value2.M43; - m.M44 = value1.M44 + value2.M44; - - return m; - } - - /// - /// Subtracts the second matrix from the first. - /// - /// The first source matrix. - /// The second source matrix. - /// The result of the subtraction. - public static Matrix4x4 operator -(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 m; - - m.M11 = value1.M11 - value2.M11; - m.M12 = value1.M12 - value2.M12; - m.M13 = value1.M13 - value2.M13; - m.M14 = value1.M14 - value2.M14; - m.M21 = value1.M21 - value2.M21; - m.M22 = value1.M22 - value2.M22; - m.M23 = value1.M23 - value2.M23; - m.M24 = value1.M24 - value2.M24; - m.M31 = value1.M31 - value2.M31; - m.M32 = value1.M32 - value2.M32; - m.M33 = value1.M33 - value2.M33; - m.M34 = value1.M34 - value2.M34; - m.M41 = value1.M41 - value2.M41; - m.M42 = value1.M42 - value2.M42; - m.M43 = value1.M43 - value2.M43; - m.M44 = value1.M44 - value2.M44; - - return m; - } - - /// - /// Multiplies a matrix by another matrix. - /// - /// The first source matrix. - /// The second source matrix. - /// The result of the multiplication. - public static Matrix4x4 operator *(Matrix4x4 value1, Matrix4x4 value2) - { - Matrix4x4 m; - - // First row - m.M11 = value1.M11 * value2.M11 + value1.M12 * value2.M21 + value1.M13 * value2.M31 + value1.M14 * value2.M41; - - m.M12 = value1.M11 * value2.M12 + value1.M12 * value2.M22 + value1.M13 * value2.M32 + value1.M14 * value2.M42; - - m.M13 = value1.M11 * value2.M13 + value1.M12 * value2.M23 + value1.M13 * value2.M33 + value1.M14 * value2.M43; - - m.M14 = value1.M11 * value2.M14 + value1.M12 * value2.M24 + value1.M13 * value2.M34 + value1.M14 * value2.M44; - - // Second row - m.M21 = value1.M21 * value2.M11 + value1.M22 * value2.M21 + value1.M23 * value2.M31 + value1.M24 * value2.M41; - - m.M22 = value1.M21 * value2.M12 + value1.M22 * value2.M22 + value1.M23 * value2.M32 + value1.M24 * value2.M42; - - m.M23 = value1.M21 * value2.M13 + value1.M22 * value2.M23 + value1.M23 * value2.M33 + value1.M24 * value2.M43; - - m.M24 = value1.M21 * value2.M14 + value1.M22 * value2.M24 + value1.M23 * value2.M34 + value1.M24 * value2.M44; - - // Third row - m.M31 = value1.M31 * value2.M11 + value1.M32 * value2.M21 + value1.M33 * value2.M31 + value1.M34 * value2.M41; - - m.M32 = value1.M31 * value2.M12 + value1.M32 * value2.M22 + value1.M33 * value2.M32 + value1.M34 * value2.M42; - - m.M33 = value1.M31 * value2.M13 + value1.M32 * value2.M23 + value1.M33 * value2.M33 + value1.M34 * value2.M43; - - m.M34 = value1.M31 * value2.M14 + value1.M32 * value2.M24 + value1.M33 * value2.M34 + value1.M34 * value2.M44; - - // Fourth row - m.M41 = value1.M41 * value2.M11 + value1.M42 * value2.M21 + value1.M43 * value2.M31 + value1.M44 * value2.M41; - - m.M42 = value1.M41 * value2.M12 + value1.M42 * value2.M22 + value1.M43 * value2.M32 + value1.M44 * value2.M42; - - m.M43 = value1.M41 * value2.M13 + value1.M42 * value2.M23 + value1.M43 * value2.M33 + value1.M44 * value2.M43; - - m.M44 = value1.M41 * value2.M14 + value1.M42 * value2.M24 + value1.M43 * value2.M34 + value1.M44 * value2.M44; - - return m; - } - - /// - /// Multiplies a matrix by a scalar value. - /// - /// The source matrix. - /// The scaling factor. - /// The scaled matrix. - public static Matrix4x4 operator *(Matrix4x4 value1, float value2) - { - Matrix4x4 m; - - m.M11 = value1.M11 * value2; - m.M12 = value1.M12 * value2; - m.M13 = value1.M13 * value2; - m.M14 = value1.M14 * value2; - m.M21 = value1.M21 * value2; - m.M22 = value1.M22 * value2; - m.M23 = value1.M23 * value2; - m.M24 = value1.M24 * value2; - m.M31 = value1.M31 * value2; - m.M32 = value1.M32 * value2; - m.M33 = value1.M33 * value2; - m.M34 = value1.M34 * value2; - m.M41 = value1.M41 * value2; - m.M42 = value1.M42 * value2; - m.M43 = value1.M43 * value2; - m.M44 = value1.M44 * value2; - return m; - } - - /// - /// Returns a boolean indicating whether the given two matrices are equal. - /// - /// The first matrix to compare. - /// The second matrix to compare. - /// True if the given matrices are equal; False otherwise. - public static bool operator ==(Matrix4x4 value1, Matrix4x4 value2) - { - return value1.M11 == value2.M11 && - value1.M22 == value2.M22 && - value1.M33 == value2.M33 && - value1.M44 == value2.M44 && // Check diagonal element first for early out. - value1.M12 == value2.M12 && - value1.M13 == value2.M13 && - value1.M14 == value2.M14 && - value1.M21 == value2.M21 && - value1.M23 == value2.M23 && - value1.M24 == value2.M24 && - value1.M31 == value2.M31 && - value1.M32 == value2.M32 && - value1.M34 == value2.M34 && - value1.M41 == value2.M41 && - value1.M42 == value2.M42 && - value1.M43 == value2.M43; - } - - /// - /// Returns a boolean indicating whether the given two matrices are not equal. - /// - /// The first matrix to compare. - /// The second matrix to compare. - /// True if the given matrices are not equal; False if they are equal. - public static bool operator !=(Matrix4x4 value1, Matrix4x4 value2) - { - return value1.M11 != value2.M11 || - value1.M12 != value2.M12 || - value1.M13 != value2.M13 || - value1.M14 != value2.M14 || - value1.M21 != value2.M21 || - value1.M22 != value2.M22 || - value1.M23 != value2.M23 || - value1.M24 != value2.M24 || - value1.M31 != value2.M31 || - value1.M32 != value2.M32 || - value1.M33 != value2.M33 || - value1.M34 != value2.M34 || - value1.M41 != value2.M41 || - value1.M42 != value2.M42 || - value1.M43 != value2.M43 || - value1.M44 != value2.M44; - } - - /// - /// Returns a boolean indicating whether this matrix instance is equal to the other given matrix. - /// - /// The matrix to compare this instance to. - /// True if the matrices are equal; False otherwise. - public bool Equals(Matrix4x4 other) - { - return M11 == other.M11 && - M22 == other.M22 && - M33 == other.M33 && - M44 == other.M44 && // Check diagonal element first for early out. - M12 == other.M12 && - M13 == other.M13 && - M14 == other.M14 && - M21 == other.M21 && - M23 == other.M23 && - M24 == other.M24 && - M31 == other.M31 && - M32 == other.M32 && - M34 == other.M34 && - M41 == other.M41 && - M42 == other.M42 && - M43 == other.M43; - } - - /// - /// Returns a boolean indicating whether the given Object is equal to this matrix instance. - /// - /// The Object to compare against. - /// True if the Object is equal to this matrix; False otherwise. - public override bool Equals(object obj) - { - if (obj is Matrix4x4 matrix4) - { - return Equals(matrix4); - } - - return false; - } - - /// - /// Returns a String representing this matrix instance. - /// - /// The string representation. - public override string ToString() - { - CultureInfo ci = CultureInfo.CurrentCulture; - - return string.Format( - ci, - "{{ {{M11:{0} M12:{1} M13:{2} M14:{3}}} {{M21:{4} M22:{5} M23:{6} M24:{7}}} {{M31:{8} M32:{9} M33:{10} M34:{11}}} {{M41:{12} M42:{13} M43:{14} M44:{15}}} }}", - M11.ToString(ci), M12.ToString(ci), M13.ToString(ci), M14.ToString(ci), M21.ToString(ci), M22.ToString(ci), M23.ToString(ci), - M24.ToString(ci), M31.ToString(ci), M32.ToString(ci), M33.ToString(ci), M34.ToString(ci), M41.ToString(ci), M42.ToString(ci), - M43.ToString(ci), M44.ToString(ci)); - } - - /// - /// Returns the hash code for this instance. - /// - /// The hash code. - public override int GetHashCode() - { - return M11.GetHashCode() + - M12.GetHashCode() + - M13.GetHashCode() + - M14.GetHashCode() + - M21.GetHashCode() + - M22.GetHashCode() + - M23.GetHashCode() + - M24.GetHashCode() + - M31.GetHashCode() + - M32.GetHashCode() + - M33.GetHashCode() + - M34.GetHashCode() + - M41.GetHashCode() + - M42.GetHashCode() + - M43.GetHashCode() + - M44.GetHashCode(); - } - - public IEnumerable GetBytes(params object[] options) - { - // 4 bytes per matrix cell - var buffer = new List(); - buffer.AddRange(M11.GetBytes()); - buffer.AddRange(M21.GetBytes()); - buffer.AddRange(M31.GetBytes()); - buffer.AddRange(M41.GetBytes()); - buffer.AddRange(M12.GetBytes()); - buffer.AddRange(M22.GetBytes()); - buffer.AddRange(M32.GetBytes()); - buffer.AddRange(M42.GetBytes()); - buffer.AddRange(M13.GetBytes()); - buffer.AddRange(M23.GetBytes()); - buffer.AddRange(M33.GetBytes()); - buffer.AddRange(M43.GetBytes()); - buffer.AddRange(M14.GetBytes()); - buffer.AddRange(M24.GetBytes()); - buffer.AddRange(M34.GetBytes()); - buffer.AddRange(M44.GetBytes()); - return buffer; + public void Read(SBinaryReader binaryReader) + { + M11 = binaryReader.ReadSingle(); + M21 = binaryReader.ReadSingle(); + M31 = binaryReader.ReadSingle(); + M41 = binaryReader.ReadSingle(); + M12 = binaryReader.ReadSingle(); + M22 = binaryReader.ReadSingle(); + M32 = binaryReader.ReadSingle(); + M42 = binaryReader.ReadSingle(); + M13 = binaryReader.ReadSingle(); + M23 = binaryReader.ReadSingle(); + M33 = binaryReader.ReadSingle(); + M43 = binaryReader.ReadSingle(); + M14 = binaryReader.ReadSingle(); + M24 = binaryReader.ReadSingle(); + M34 = binaryReader.ReadSingle(); + M44 = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(M11); + binaryWriter.Write(M21); + binaryWriter.Write(M31); + binaryWriter.Write(M41); + binaryWriter.Write(M12); + binaryWriter.Write(M22); + binaryWriter.Write(M32); + binaryWriter.Write(M42); + binaryWriter.Write(M13); + binaryWriter.Write(M23); + binaryWriter.Write(M33); + binaryWriter.Write(M43); + binaryWriter.Write(M14); + binaryWriter.Write(M24); + binaryWriter.Write(M34); + binaryWriter.Write(M44); } } diff --git a/src/Parsec/Shaiya/Common/MeshFace.cs b/src/Parsec/Shaiya/Common/MeshFace.cs new file mode 100644 index 00000000..a1344fa4 --- /dev/null +++ b/src/Parsec/Shaiya/Common/MeshFace.cs @@ -0,0 +1,39 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Common; + +/// +/// Class that represents a mesh's triangular face (polygon). All faces in shaiya (3DC, 3DO, SMOD, VAni, etc.) are triangular. +/// +public sealed class MeshFace : ISerializable +{ + /// + /// Index of the first vertex of the mesh + /// + public ushort VertexIndex1 { get; set; } + + /// + /// Index of the second vertex of the mesh + /// + public ushort VertexIndex2 { get; set; } + + /// + /// Index of the third vertex of the mesh + /// + public ushort VertexIndex3 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + VertexIndex1 = binaryReader.ReadUInt16(); + VertexIndex2 = binaryReader.ReadUInt16(); + VertexIndex3 = binaryReader.ReadUInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(VertexIndex1); + binaryWriter.Write(VertexIndex2); + binaryWriter.Write(VertexIndex3); + } +} diff --git a/src/Parsec/Shaiya/Common/Quaternion.cs b/src/Parsec/Shaiya/Common/Quaternion.cs index e27c91e2..2123adc2 100644 --- a/src/Parsec/Shaiya/Common/Quaternion.cs +++ b/src/Parsec/Shaiya/Common/Quaternion.cs @@ -1,14 +1,4 @@ -/* - Code based on https://github.com/microsoft/referencesource/blob/master/System.Numerics/System/Numerics/Quaternion.cs - From the repository https://github.com/microsoft/referencesource - Copyright (c) Microsoft. All rights reserved. - Licensed under the MIT license. See LICENSE file in the project root for full license information. -*/ - -using System.Globalization; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; @@ -17,7 +7,7 @@ namespace Parsec.Shaiya.Common; /// A structure encapsulating a four-dimensional vector (x,y,z,w), /// which is used to efficiently rotate an object about the (x,y,z) vector by the angle theta, where w = cos(theta/2). /// -public struct Quaternion : IEquatable, IBinary +public struct Quaternion : ISerializable { /// /// Specifies the X-value of the vector component of the Quaternion. @@ -39,38 +29,6 @@ public struct Quaternion : IEquatable, IBinary /// public float W; - public Quaternion(SBinaryReader binaryReader) - { - X = binaryReader.Read(); - Y = binaryReader.Read(); - Z = binaryReader.Read(); - W = binaryReader.Read(); - } - - /// - /// Returns a Quaternion representing no rotation. - /// - public static Quaternion Identity - { - get { return new Quaternion(0, 0, 0, 1); } - } - - /// - /// Returns whether the Quaternion is the identity Quaternion. - /// - [JsonIgnore] - public bool IsIdentity - { - get { return X == 0f && Y == 0f && Z == 0f && W == 1f; } - } - - /// - /// Constructs a Quaternion from the given components. - /// - /// The X component of the Quaternion. - /// The Y component of the Quaternion. - /// The Z component of the Quaternion. - /// The W component of the Quaternion. public Quaternion(float x, float y, float z, float w) { X = x; @@ -79,567 +37,19 @@ public Quaternion(float x, float y, float z, float w) W = w; } - /// - /// Returns the inverse of a Quaternion. - /// - /// The source Quaternion. - /// The inverted Quaternion. - public static Quaternion Inverse(Quaternion value) - { - // -1 ( a -v ) - // q = ( ------------- ------------- ) - // ( a^2 + |v|^2 , a^2 + |v|^2 ) - - Quaternion ans; - - float ls = value.X * value.X + value.Y * value.Y + value.Z * value.Z + value.W * value.W; - float invNorm = 1.0f / ls; - - ans.X = -value.X * invNorm; - ans.Y = -value.Y * invNorm; - ans.Z = -value.Z * invNorm; - ans.W = value.W * invNorm; - - return ans; - } - - /// - /// Creates a Quaternion from the given rotation matrix. - /// - /// The rotation matrix. - /// The created Quaternion. - public static Quaternion CreateFromRotationMatrix(Matrix4x4 matrix) - { - float trace = matrix.M11 + matrix.M22 + matrix.M33; - - Quaternion q = new Quaternion(); - - if (trace > 0.0f) - { - float s = (float)Math.Sqrt(trace + 1.0f); - q.W = s * 0.5f; - s = 0.5f / s; - q.X = (matrix.M23 - matrix.M32) * s; - q.Y = (matrix.M31 - matrix.M13) * s; - q.Z = (matrix.M12 - matrix.M21) * s; - } - else - { - if (matrix.M11 >= matrix.M22 && matrix.M11 >= matrix.M33) - { - float s = (float)Math.Sqrt(1.0f + matrix.M11 - matrix.M22 - matrix.M33); - float invS = 0.5f / s; - q.X = 0.5f * s; - q.Y = (matrix.M12 + matrix.M21) * invS; - q.Z = (matrix.M13 + matrix.M31) * invS; - q.W = (matrix.M23 - matrix.M32) * invS; - } - else if (matrix.M22 > matrix.M33) - { - float s = (float)Math.Sqrt(1.0f + matrix.M22 - matrix.M11 - matrix.M33); - float invS = 0.5f / s; - q.X = (matrix.M21 + matrix.M12) * invS; - q.Y = 0.5f * s; - q.Z = (matrix.M32 + matrix.M23) * invS; - q.W = (matrix.M31 - matrix.M13) * invS; - } - else - { - float s = (float)Math.Sqrt(1.0f + matrix.M33 - matrix.M11 - matrix.M22); - float invS = 0.5f / s; - q.X = (matrix.M31 + matrix.M13) * invS; - q.Y = (matrix.M32 + matrix.M23) * invS; - q.Z = 0.5f * s; - q.W = (matrix.M12 - matrix.M21) * invS; - } - } - - return q; - } - - /// - /// Calculates the dot product of two Quaternions. - /// - /// The first source Quaternion. - /// The second source Quaternion. - /// The dot product of the Quaternions. - public static float Dot(Quaternion quaternion1, Quaternion quaternion2) - { - return quaternion1.X * quaternion2.X + quaternion1.Y * quaternion2.Y + quaternion1.Z * quaternion2.Z + - quaternion1.W * quaternion2.W; - } - - /// - /// Interpolates between two quaternions, using spherical linear interpolation. - /// - /// The first source Quaternion. - /// The second source Quaternion. - /// The relative weight of the second source Quaternion in the interpolation. - /// The interpolated Quaternion. - public static Quaternion Slerp(Quaternion quaternion1, Quaternion quaternion2, float amount) - { - const float epsilon = 1e-6f; - - float t = amount; - - float cosOmega = quaternion1.X * quaternion2.X + - quaternion1.Y * quaternion2.Y + - quaternion1.Z * quaternion2.Z + - quaternion1.W * quaternion2.W; - - bool flip = false; - - if (cosOmega < 0.0f) - { - flip = true; - cosOmega = -cosOmega; - } - - float s1, s2; - - if (cosOmega > 1.0f - epsilon) - { - // Too close, do straight linear interpolation. - s1 = 1.0f - t; - s2 = flip ? -t : t; - } - else - { - float omega = (float)Math.Acos(cosOmega); - float invSinOmega = (float)(1 / Math.Sin(omega)); - - s1 = (float)Math.Sin((1.0f - t) * omega) * invSinOmega; - s2 = flip ? (float)-Math.Sin(t * omega) * invSinOmega : (float)Math.Sin(t * omega) * invSinOmega; - } - - Quaternion ans; - - ans.X = s1 * quaternion1.X + s2 * quaternion2.X; - ans.Y = s1 * quaternion1.Y + s2 * quaternion2.Y; - ans.Z = s1 * quaternion1.Z + s2 * quaternion2.Z; - ans.W = s1 * quaternion1.W + s2 * quaternion2.W; - - return ans; - } - - /// - /// Linearly interpolates between two quaternions. - /// - /// The first source Quaternion. - /// The second source Quaternion. - /// The relative weight of the second source Quaternion in the interpolation. - /// The interpolated Quaternion. - public static Quaternion Lerp(Quaternion quaternion1, Quaternion quaternion2, float amount) - { - float t = amount; - float t1 = 1.0f - t; - - Quaternion r = new Quaternion(); - - float dot = quaternion1.X * quaternion2.X + quaternion1.Y * quaternion2.Y + quaternion1.Z * quaternion2.Z + - quaternion1.W * quaternion2.W; - - if (dot >= 0.0f) - { - r.X = t1 * quaternion1.X + t * quaternion2.X; - r.Y = t1 * quaternion1.Y + t * quaternion2.Y; - r.Z = t1 * quaternion1.Z + t * quaternion2.Z; - r.W = t1 * quaternion1.W + t * quaternion2.W; - } - else - { - r.X = t1 * quaternion1.X - t * quaternion2.X; - r.Y = t1 * quaternion1.Y - t * quaternion2.Y; - r.Z = t1 * quaternion1.Z - t * quaternion2.Z; - r.W = t1 * quaternion1.W - t * quaternion2.W; - } - - // Normalize it. - float ls = r.X * r.X + r.Y * r.Y + r.Z * r.Z + r.W * r.W; - float invNorm = 1.0f / (float)Math.Sqrt(ls); - - r.X *= invNorm; - r.Y *= invNorm; - r.Z *= invNorm; - r.W *= invNorm; - - return r; - } - - /// - /// Flips the sign of each component of the quaternion. - /// - /// The source Quaternion. - /// The negated Quaternion. - public static Quaternion Negate(Quaternion value) - { - Quaternion ans; - - ans.X = -value.X; - ans.Y = -value.Y; - ans.Z = -value.Z; - ans.W = -value.W; - - return ans; - } - - /// - /// Adds two Quaternions element-by-element. - /// - /// The first source Quaternion. - /// The second source Quaternion. - /// The result of adding the Quaternions. - public static Quaternion Add(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - ans.X = value1.X + value2.X; - ans.Y = value1.Y + value2.Y; - ans.Z = value1.Z + value2.Z; - ans.W = value1.W + value2.W; - - return ans; - } - - /// - /// Subtracts one Quaternion from another. - /// - /// The first source Quaternion. - /// The second Quaternion, to be subtracted from the first. - /// The result of the subtraction. - public static Quaternion Subtract(Quaternion value1, Quaternion value2) + public void Read(SBinaryReader binaryReader) { - Quaternion ans; - - ans.X = value1.X - value2.X; - ans.Y = value1.Y - value2.Y; - ans.Z = value1.Z - value2.Z; - ans.W = value1.W - value2.W; - - return ans; + X = binaryReader.ReadSingle(); + Y = binaryReader.ReadSingle(); + Z = binaryReader.ReadSingle(); + W = binaryReader.ReadSingle(); } - /// - /// Multiplies two Quaternions together. - /// - /// The Quaternion on the left side of the multiplication. - /// The Quaternion on the right side of the multiplication. - /// The result of the multiplication. - public static Quaternion Multiply(Quaternion value1, Quaternion value2) + public void Write(SBinaryWriter binaryWriter) { - Quaternion ans; - - float q1x = value1.X; - float q1y = value1.Y; - float q1z = value1.Z; - float q1w = value1.W; - - float q2x = value2.X; - float q2y = value2.Y; - float q2z = value2.Z; - float q2w = value2.W; - - // cross(av, bv) - float cx = q1y * q2z - q1z * q2y; - float cy = q1z * q2x - q1x * q2z; - float cz = q1x * q2y - q1y * q2x; - - float dot = q1x * q2x + q1y * q2y + q1z * q2z; - - ans.X = q1x * q2w + q2x * q1w + cx; - ans.Y = q1y * q2w + q2y * q1w + cy; - ans.Z = q1z * q2w + q2z * q1w + cz; - ans.W = q1w * q2w - dot; - - return ans; - } - - /// - /// Multiplies a Quaternion by a scalar value. - /// - /// The source Quaternion. - /// The scalar value. - /// The result of the multiplication. - public static Quaternion Multiply(Quaternion value1, float value2) - { - Quaternion ans; - - ans.X = value1.X * value2; - ans.Y = value1.Y * value2; - ans.Z = value1.Z * value2; - ans.W = value1.W * value2; - - return ans; - } - - /// - /// Divides a Quaternion by another Quaternion. - /// - /// The source Quaternion. - /// The divisor. - /// The result of the division. - public static Quaternion Divide(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - float q1x = value1.X; - float q1y = value1.Y; - float q1z = value1.Z; - float q1w = value1.W; - - //------------------------------------- - // Inverse part. - float ls = value2.X * value2.X + value2.Y * value2.Y + value2.Z * value2.Z + value2.W * value2.W; - float invNorm = 1.0f / ls; - - float q2x = -value2.X * invNorm; - float q2y = -value2.Y * invNorm; - float q2z = -value2.Z * invNorm; - float q2w = value2.W * invNorm; - - //------------------------------------- - // Multiply part. - - // cross(av, bv) - float cx = q1y * q2z - q1z * q2y; - float cy = q1z * q2x - q1x * q2z; - float cz = q1x * q2y - q1y * q2x; - - float dot = q1x * q2x + q1y * q2y + q1z * q2z; - - ans.X = q1x * q2w + q2x * q1w + cx; - ans.Y = q1y * q2w + q2y * q1w + cy; - ans.Z = q1z * q2w + q2z * q1w + cz; - ans.W = q1w * q2w - dot; - - return ans; - } - - /// - /// Flips the sign of each component of the quaternion. - /// - /// The source Quaternion. - /// The negated Quaternion. - public static Quaternion operator -(Quaternion value) - { - Quaternion ans; - - ans.X = -value.X; - ans.Y = -value.Y; - ans.Z = -value.Z; - ans.W = -value.W; - - return ans; - } - - /// - /// Adds two Quaternions element-by-element. - /// - /// The first source Quaternion. - /// The second source Quaternion. - /// The result of adding the Quaternions. - public static Quaternion operator +(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - ans.X = value1.X + value2.X; - ans.Y = value1.Y + value2.Y; - ans.Z = value1.Z + value2.Z; - ans.W = value1.W + value2.W; - - return ans; - } - - /// - /// Subtracts one Quaternion from another. - /// - /// The first source Quaternion. - /// The second Quaternion, to be subtracted from the first. - /// The result of the subtraction. - public static Quaternion operator -(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - ans.X = value1.X - value2.X; - ans.Y = value1.Y - value2.Y; - ans.Z = value1.Z - value2.Z; - ans.W = value1.W - value2.W; - - return ans; - } - - /// - /// Multiplies two Quaternions together. - /// - /// The Quaternion on the left side of the multiplication. - /// The Quaternion on the right side of the multiplication. - /// The result of the multiplication. - public static Quaternion operator *(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - float q1x = value1.X; - float q1y = value1.Y; - float q1z = value1.Z; - float q1w = value1.W; - - float q2x = value2.X; - float q2y = value2.Y; - float q2z = value2.Z; - float q2w = value2.W; - - // cross(av, bv) - float cx = q1y * q2z - q1z * q2y; - float cy = q1z * q2x - q1x * q2z; - float cz = q1x * q2y - q1y * q2x; - - float dot = q1x * q2x + q1y * q2y + q1z * q2z; - - ans.X = q1x * q2w + q2x * q1w + cx; - ans.Y = q1y * q2w + q2y * q1w + cy; - ans.Z = q1z * q2w + q2z * q1w + cz; - ans.W = q1w * q2w - dot; - - return ans; - } - - /// - /// Multiplies a Quaternion by a scalar value. - /// - /// The source Quaternion. - /// The scalar value. - /// The result of the multiplication. - public static Quaternion operator *(Quaternion value1, float value2) - { - Quaternion ans; - - ans.X = value1.X * value2; - ans.Y = value1.Y * value2; - ans.Z = value1.Z * value2; - ans.W = value1.W * value2; - - return ans; - } - - /// - /// Divides a Quaternion by another Quaternion. - /// - /// The source Quaternion. - /// The divisor. - /// The result of the division. - public static Quaternion operator /(Quaternion value1, Quaternion value2) - { - Quaternion ans; - - float q1x = value1.X; - float q1y = value1.Y; - float q1z = value1.Z; - float q1w = value1.W; - - //------------------------------------- - // Inverse part. - float ls = value2.X * value2.X + value2.Y * value2.Y + value2.Z * value2.Z + value2.W * value2.W; - float invNorm = 1.0f / ls; - - float q2x = -value2.X * invNorm; - float q2y = -value2.Y * invNorm; - float q2z = -value2.Z * invNorm; - float q2w = value2.W * invNorm; - - //------------------------------------- - // Multiply part. - - // cross(av, bv) - float cx = q1y * q2z - q1z * q2y; - float cy = q1z * q2x - q1x * q2z; - float cz = q1x * q2y - q1y * q2x; - - float dot = q1x * q2x + q1y * q2y + q1z * q2z; - - ans.X = q1x * q2w + q2x * q1w + cx; - ans.Y = q1y * q2w + q2y * q1w + cy; - ans.Z = q1z * q2w + q2z * q1w + cz; - ans.W = q1w * q2w - dot; - - return ans; - } - - /// - /// Returns a boolean indicating whether the two given Quaternions are equal. - /// - /// The first Quaternion to compare. - /// The second Quaternion to compare. - /// True if the Quaternions are equal; False otherwise. - public static bool operator ==(Quaternion value1, Quaternion value2) - { - return value1.X == value2.X && value1.Y == value2.Y && value1.Z == value2.Z && value1.W == value2.W; - } - - /// - /// Returns a boolean indicating whether the two given Quaternions are not equal. - /// - /// The first Quaternion to compare. - /// The second Quaternion to compare. - /// True if the Quaternions are not equal; False if they are equal. - public static bool operator !=(Quaternion value1, Quaternion value2) - { - return value1.X != value2.X || value1.Y != value2.Y || value1.Z != value2.Z || value1.W != value2.W; - } - - /// - /// Returns a boolean indicating whether the given Quaternion is equal to this Quaternion instance. - /// - /// The Quaternion to compare this instance to. - /// True if the other Quaternion is equal to this instance; False otherwise. - public bool Equals(Quaternion other) - { - return X == other.X && Y == other.Y && Z == other.Z && W == other.W; - } - - /// - /// Returns a boolean indicating whether the given Object is equal to this Quaternion instance. - /// - /// The Object to compare against. - /// True if the Object is equal to this Quaternion; False otherwise. - public override bool Equals(object obj) - { - if (obj is Quaternion) - { - return Equals((Quaternion)obj); - } - - return false; - } - - /// - /// Returns a String representing this Quaternion instance. - /// - /// The string representation. - public override string ToString() - { - CultureInfo ci = CultureInfo.CurrentCulture; - - return String.Format(ci, "{{X:{0} Y:{1} Z:{2} W:{3}}}", X.ToString(ci), Y.ToString(ci), Z.ToString(ci), W.ToString(ci)); - } - - /// - /// Returns the hash code for this instance. - /// - /// The hash code. - public override int GetHashCode() - { - return X.GetHashCode() + Y.GetHashCode() + Z.GetHashCode() + W.GetHashCode(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - - buffer.AddRange(X.GetBytes()); - buffer.AddRange(Y.GetBytes()); - buffer.AddRange(Z.GetBytes()); - buffer.AddRange(W.GetBytes()); - - return buffer; + binaryWriter.Write(X); + binaryWriter.Write(Y); + binaryWriter.Write(Z); + binaryWriter.Write(W); } } diff --git a/src/Parsec/Shaiya/Common/String256.cs b/src/Parsec/Shaiya/Common/String256.cs index 650105a2..16a0dab1 100644 --- a/src/Parsec/Shaiya/Common/String256.cs +++ b/src/Parsec/Shaiya/Common/String256.cs @@ -1,28 +1,21 @@ using System.Text; -using Parsec.Attributes; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; -public sealed class String256 : IBinary +public sealed class String256 : ISerializable { - public String256() - { - } + public string Value { get; set; } = string.Empty; - public String256(string str) - { - Value = str; - } + public char PaddingChar { get; set; } = '\0'; - public String256(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - byte[] unparsedBytes = binaryReader.ReadBytes(256); - int stringEndIndex = 0; + var unparsedBytes = binaryReader.ReadBytes(256); + var stringEndIndex = 0; - for (int i = 0; i < 256; i++) + for (var i = 0; i < 256; i++) { if (unparsedBytes[i] == 0) { @@ -34,15 +27,15 @@ public String256(SBinaryReader binaryReader) Value = Encoding.ASCII.GetString(unparsedBytes, 0, stringEndIndex); } - [ShaiyaProperty] - [FixedLengthString(isString256: true)] - public string Value { get; set; } - - public IEnumerable GetBytes(params object[] options) => Value.PadRight(256, '\0').GetBytes(); + public void Write(SBinaryWriter binaryWriter) + { + var value = Value.PadRight(256, PaddingChar); + binaryWriter.Write(value); + } public override string ToString() => Value; public static implicit operator string(String256 string256) => string256.ToString(); - public static implicit operator String256(string str) => new(str); + public static implicit operator String256(string str) => new() { Value = str }; } diff --git a/src/Parsec/Shaiya/Common/Vector2.cs b/src/Parsec/Shaiya/Common/Vector2.cs index 3d87d37c..56df358e 100644 --- a/src/Parsec/Shaiya/Common/Vector2.cs +++ b/src/Parsec/Shaiya/Common/Vector2.cs @@ -1,5 +1,4 @@ using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; @@ -8,7 +7,7 @@ namespace Parsec.Shaiya.Common; /// /// Represents a vector in a 2-dimensional space /// -public struct Vector2 : IBinary +public struct Vector2 : ISerializable { /// /// 1st (first) element of the vector @@ -27,17 +26,19 @@ public Vector2(float x, float y) Y = y; } - public Vector2(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - X = binaryReader.Read(); - Y = binaryReader.Read(); + X = binaryReader.ReadSingle(); + Y = binaryReader.ReadSingle(); } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(X.GetBytes()); - buffer.AddRange(Y.GetBytes()); - return buffer; + binaryWriter.Write(X); + binaryWriter.Write(Y); } + + public static Vector2 operator +(Vector2 vec1, Vector2 vec2) => new(vec1.X + vec2.X, vec1.Y + vec2.Y); + + public static Vector2 operator -(Vector2 vec1, Vector2 vec2) => new(vec1.X - vec2.X, vec1.Y - vec2.Y); } diff --git a/src/Parsec/Shaiya/Common/Vector3.cs b/src/Parsec/Shaiya/Common/Vector3.cs index de393a7a..0dcc2b41 100644 --- a/src/Parsec/Shaiya/Common/Vector3.cs +++ b/src/Parsec/Shaiya/Common/Vector3.cs @@ -1,5 +1,4 @@ using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; @@ -8,7 +7,7 @@ namespace Parsec.Shaiya.Common; /// /// Represents a vector in a 3-dimensional space /// -public struct Vector3 : IBinary +public struct Vector3 : ISerializable { /// /// 1st (first) element of the vector @@ -33,20 +32,18 @@ public Vector3(float x, float y, float z) Z = z; } - public Vector3(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - X = binaryReader.Read(); - Y = binaryReader.Read(); - Z = binaryReader.Read(); + X = binaryReader.ReadSingle(); + Y = binaryReader.ReadSingle(); + Z = binaryReader.ReadSingle(); } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(X.GetBytes()); - buffer.AddRange(Y.GetBytes()); - buffer.AddRange(Z.GetBytes()); - return buffer; + binaryWriter.Write(X); + binaryWriter.Write(Y); + binaryWriter.Write(Z); } public static Vector3 operator +(Vector3 vec1, Vector3 vec2) => new(vec1.X + vec2.X, vec1.Y + vec2.Y, vec1.Z + vec2.Z); diff --git a/src/Parsec/Shaiya/Common/Vector4.cs b/src/Parsec/Shaiya/Common/Vector4.cs index e8dde66c..a58ef94f 100644 --- a/src/Parsec/Shaiya/Common/Vector4.cs +++ b/src/Parsec/Shaiya/Common/Vector4.cs @@ -1,5 +1,4 @@ -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Common; @@ -7,7 +6,7 @@ namespace Parsec.Shaiya.Common; /// /// Represents a vector in a 4-dimensional space /// -public struct Vector4 : IBinary +public struct Vector4 : ISerializable { /// /// 1st (first) element of the vector @@ -37,21 +36,19 @@ public Vector4(float x, float y, float z, float w) W = w; } - public Vector4(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - X = binaryReader.Read(); - Y = binaryReader.Read(); - Z = binaryReader.Read(); - W = binaryReader.Read(); + X = binaryReader.ReadSingle(); + Y = binaryReader.ReadSingle(); + Z = binaryReader.ReadSingle(); + W = binaryReader.ReadSingle(); } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(X.GetBytes()); - buffer.AddRange(Y.GetBytes()); - buffer.AddRange(Z.GetBytes()); - buffer.AddRange(W.GetBytes()); - return buffer; + binaryWriter.Write(X); + binaryWriter.Write(Y); + binaryWriter.Write(Z); + binaryWriter.Write(W); } } diff --git a/src/Parsec/Shaiya/Common/Vector5.cs b/src/Parsec/Shaiya/Common/Vector5.cs deleted file mode 100644 index 1b88421e..00000000 --- a/src/Parsec/Shaiya/Common/Vector5.cs +++ /dev/null @@ -1,65 +0,0 @@ -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Common; - -/// -/// Represents a vector in a 5-dimensional space -/// -public struct Vector5 : IBinary -{ - /// - /// 1st (first) element of the vector - /// - public float X { get; set; } - - /// - /// 2nd (second) element of the vector - /// - public float Y { get; set; } - - /// - /// 3rd (third) element of the vector - /// - public float Z { get; set; } - - /// - /// 4th (fourth) element of the vector - /// - public float W { get; set; } - - /// - /// 5th (fifth) element of the vector - /// - public float U { get; set; } - - public Vector5(float x, float y, float z, float w, float u) - { - X = x; - Y = y; - Z = z; - W = w; - U = u; - } - - public Vector5(SBinaryReader binaryReader) - { - X = binaryReader.Read(); - Y = binaryReader.Read(); - Z = binaryReader.Read(); - W = binaryReader.Read(); - U = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(X.GetBytes()); - buffer.AddRange(Y.GetBytes()); - buffer.AddRange(Z.GetBytes()); - buffer.AddRange(W.GetBytes()); - buffer.AddRange(U.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Core/FileBase.cs b/src/Parsec/Shaiya/Core/FileBase.cs index 182ad963..c821a95f 100644 --- a/src/Parsec/Shaiya/Core/FileBase.cs +++ b/src/Parsec/Shaiya/Core/FileBase.cs @@ -1,9 +1,7 @@ -using System.Reflection; -using System.Text; +using System.Text; using Newtonsoft.Json; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Serialization; -using Parsec.Attributes; using Parsec.Common; using Parsec.Extensions; using Parsec.Helpers; @@ -12,11 +10,8 @@ namespace Parsec.Shaiya.Core; -public abstract class FileBase : IFileBase, IJsonWritable +public abstract class FileBase : IJsonWritable { - [JsonIgnore] - protected SBinaryReader _binaryReader { get; set; } = null!; - /// /// Full path to the file /// @@ -44,8 +39,10 @@ public abstract class FileBase : IFileBase, IJsonWritable public string FileNameWithoutExtension => System.IO.Path.GetFileNameWithoutExtension(Path); /// - public void WriteJson(string path, params string[] ignoredPropertyNames) => + public void WriteJson(string path, params string[] ignoredPropertyNames) + { FileHelper.WriteFile(path, JsonSerialize(this, ignoredPropertyNames), Encoding); + } /// public virtual string JsonSerialize(FileBase obj, params string[] ignoredPropertyNames) @@ -64,135 +61,22 @@ public virtual string JsonSerialize(FileBase obj, params string[] ignoredPropert return JsonConvert.SerializeObject(obj, settings); } - /// - public virtual void Write(string path, Episode episode = Episode.Unknown) - { - FileHelper.WriteFile(path, GetBytes(episode)); - } - - /// - public virtual IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - var type = GetType(); + protected abstract void Read(SBinaryReader binaryReader); - // If episode wasn't explicitly set, use former episode - if (episode == Episode.Unknown) - episode = Episode; - - if (episode == Episode.Unknown && type.IsDefined(typeof(DefaultVersionAttribute))) - { - var defaultEpisodeAttribute = type.GetCustomAttributes().FirstOrDefault(); - episode = defaultEpisodeAttribute!.Episode; - } + protected abstract void Write(SBinaryWriter binaryWriter); - // Add version prefix if present (eg. "ANI_V2", "MO2", "MO4", etc) - bool isVersionPrefixed = type.IsDefined(typeof(VersionPrefixedAttribute)); - if (isVersionPrefixed) - { - var versionPrefixes = type.GetCustomAttributes(); - - foreach (var versionPrefix in versionPrefixes) - { - if ((episode == versionPrefix.MinEpisode && versionPrefix.MaxEpisode == Episode.Unknown) || - (episode >= versionPrefix.MinEpisode && episode <= versionPrefix.MaxEpisode)) - { - if (versionPrefix.PrefixType == typeof(string)) - { - buffer.AddRange(((string)versionPrefix.Prefix).GetBytes()); - } - else if (versionPrefix.PrefixType.IsPrimitive) - { - buffer.AddRange(ReflectionHelper.GetPrimitiveBytes(versionPrefix.PrefixType, versionPrefix.Prefix)); - } - } - } - } - - // Get bytes for all properties - var properties = GetType().GetProperties(); - foreach (var property in properties) - { - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute))) - continue; - - buffer.AddRange(ReflectionHelper.GetPropertyBytes(type, this, property, Encoding, episode)); - } - - return buffer; + public void Write(string path) + { + var serializationOptions = new BinarySerializationOptions(Episode, Encoding); + using var binaryWriter = new SBinaryWriter(path, serializationOptions); + Write(binaryWriter); } - /// - public virtual void Read() + public void Write(string path, Episode episode, Encoding encoding) { - var type = GetType(); - - // Set default version (Episode) if defined. This must be checked/set before checking the existence of the VersionPrefixedAttribute - if (type.IsDefined(typeof(DefaultVersionAttribute))) - { - var defaultEpisodeAttribute = type.GetCustomAttributes().First(); - Episode = defaultEpisodeAttribute.Episode; - } - - // Check if version prefix could be present (eg. "ANI_V2", "MO2", "MO4", etc) - bool isVersionPrefixed = type.IsDefined(typeof(VersionPrefixedAttribute)); - - if (isVersionPrefixed) - { - var versionPrefixes = type.GetCustomAttributes(); - - foreach (var versionPrefix in versionPrefixes) - { - object filePrefix; - if (versionPrefix.PrefixType == typeof(string)) - { - filePrefix = _binaryReader.ReadString(((string)versionPrefix.Prefix).Length); - } - else if (versionPrefix.PrefixType.IsPrimitive) - { - filePrefix = ReflectionHelper.ReadPrimitive(_binaryReader, versionPrefix.PrefixType); - } - else - { - continue; - } - - // If prefix matches, episode must be set and reading must continue. If it doesn't, the reading offset must be reset to the beginning of the file - if (filePrefix.Equals(versionPrefix.Prefix)) - { - Episode = versionPrefix.MinEpisode; - break; - } - - _binaryReader.ResetOffset(); - } - } - - // Read all properties - var properties = GetType().GetProperties(); - - foreach (var property in properties) - { - // skip non ShaiyaProperty properties - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute))) - continue; - - object value = ReflectionHelper.ReadProperty(_binaryReader, type, this, property, Episode, Encoding); - property.SetValue(this, Convert.ChangeType(value, property.PropertyType)); - - // Set episode based on property - if (property.IsDefined(typeof(EpisodeDefinerAttribute))) - { - var definerAttributes = property.GetCustomAttributes(); - foreach (var definer in definerAttributes) - { - if (value.Equals(definer.Value)) - { - Episode = definer.Episode; - } - } - } - } + var serializationOptions = new BinarySerializationOptions(episode, encoding); + using var binaryWriter = new SBinaryWriter(path, serializationOptions); + Write(binaryWriter); } /// @@ -204,19 +88,15 @@ public virtual void Read() /// T instance internal static T ReadFromFile(string path, BinarySerializationOptions serializationOptions) where T : FileBase, new() { - var instance = new T - { - Path = path, - _binaryReader = new SBinaryReader(path, serializationOptions), - Episode = serializationOptions.Episode, - Encoding = serializationOptions.Encoding - }; + var instance = new T { Path = path, Episode = serializationOptions.Episode, Encoding = serializationOptions.Encoding }; + var binaryReader = new SBinaryReader(path, serializationOptions); - if (instance is IEncryptable encryptableInstance) - encryptableInstance.DecryptBuffer(); + // TODO: + // if (instance is IEncryptable encryptableInstance) + // encryptableInstance.DecryptBuffer(); - instance.Read(); - instance._binaryReader.Dispose(); + instance.Read(binaryReader); + binaryReader.Dispose(); return instance; } @@ -233,18 +113,19 @@ internal static FileBase ReadFromFile(string path, Type type, BinarySerializatio if (!type.GetBaseClassesAndInterfaces().Contains(typeof(FileBase))) throw new ArgumentException("Type must be a child of FileBase"); - var binaryReader = new SBinaryReader(path, serializationOptions); var instance = (FileBase)Activator.CreateInstance(type); instance.Path = path; - instance._binaryReader = binaryReader; instance.Episode = serializationOptions.Episode; instance.Encoding = serializationOptions.Encoding; - if (instance is IEncryptable encryptableInstance) - encryptableInstance.DecryptBuffer(); + var binaryReader = new SBinaryReader(path, serializationOptions); + + // TODO: + // if (instance is IEncryptable encryptableInstance) + // encryptableInstance.DecryptBuffer(); - instance.Read(); - instance._binaryReader.Dispose(); + instance.Read(binaryReader); + binaryReader.Dispose(); return instance; } @@ -259,19 +140,15 @@ internal static FileBase ReadFromFile(string path, Type type, BinarySerializatio /// T instance internal static T ReadFromBuffer(string name, byte[] buffer, BinarySerializationOptions serializationOptions) where T : FileBase, new() { - var instance = new T - { - Path = name, - _binaryReader = new SBinaryReader(buffer, serializationOptions), - Episode = serializationOptions.Episode, - Encoding = serializationOptions.Encoding - }; + var instance = new T { Path = name, Episode = serializationOptions.Episode, Encoding = serializationOptions.Encoding }; + var binaryReader = new SBinaryReader(buffer, serializationOptions); - if (instance is IEncryptable encryptableInstance) - encryptableInstance.DecryptBuffer(); + // TODO: + // if (instance is IEncryptable encryptableInstance) + // encryptableInstance.DecryptBuffer(); - instance.Read(); - instance._binaryReader.Dispose(); + instance.Read(binaryReader); + binaryReader.Dispose(); return instance; } @@ -291,15 +168,17 @@ internal static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, B var instance = (FileBase)Activator.CreateInstance(type); instance.Path = name; - instance._binaryReader = new SBinaryReader(buffer, serializationOptions); instance.Episode = serializationOptions.Episode; instance.Encoding = serializationOptions.Encoding; - if (instance is IEncryptable encryptableInstance) - encryptableInstance.DecryptBuffer(); + var binaryReader = new SBinaryReader(buffer, serializationOptions); + + // TODO: + // if (instance is IEncryptable encryptableInstance) + // encryptableInstance.DecryptBuffer(); - instance.Read(); - instance._binaryReader.Dispose(); + instance.Read(binaryReader); + binaryReader.Dispose(); return instance; } @@ -331,4 +210,18 @@ internal static FileBase ReadFromData(Data.Data data, SFile file, Type type, Bin return ReadFromBuffer(file.Name, data.GetFileBuffer(file), type, serializationOptions); } + + public IEnumerable GetBytes() + { + var serializationOptions = BinarySerializationOptions.Default; + return GetBytes(serializationOptions); + } + + public IEnumerable GetBytes(BinarySerializationOptions serializationOptions) + { + using var memoryStream = new MemoryStream(); + using var binaryWriter = new SBinaryWriter(memoryStream, serializationOptions); + Write(binaryWriter); + return memoryStream.ToArray(); + } } diff --git a/src/Parsec/Shaiya/Core/IBinary.cs b/src/Parsec/Shaiya/Core/IBinary.cs deleted file mode 100644 index 6add7aae..00000000 --- a/src/Parsec/Shaiya/Core/IBinary.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Parsec.Shaiya.Core; - -public interface IBinary -{ - /// - /// Serializes the file into a byte array - /// - /// Extra options - IEnumerable GetBytes(params object[] options); -} diff --git a/src/Parsec/Shaiya/Core/IEncryptable.cs b/src/Parsec/Shaiya/Core/IEncryptable.cs index 924e2752..3753d8c1 100644 --- a/src/Parsec/Shaiya/Core/IEncryptable.cs +++ b/src/Parsec/Shaiya/Core/IEncryptable.cs @@ -1,11 +1,13 @@ -namespace Parsec.Shaiya.Core; +using Parsec.Serialization; + +namespace Parsec.Shaiya.Core; public interface IEncryptable { /// /// Decrypts the file's buffer /// - void DecryptBuffer(bool validateChecksum = false); + void DecryptBuffer(SBinaryReader binaryReader, bool validateChecksum = false); /// /// Gets the encrypted file bytes diff --git a/src/Parsec/Shaiya/Core/IFileBase.cs b/src/Parsec/Shaiya/Core/IFileBase.cs deleted file mode 100644 index 970dc848..00000000 --- a/src/Parsec/Shaiya/Core/IFileBase.cs +++ /dev/null @@ -1,24 +0,0 @@ -using Parsec.Common; - -namespace Parsec.Shaiya.Core; - -public interface IFileBase -{ - /// - /// Reads and parses the file - /// - void Read(); - - /// - /// Writes the file to its original format - /// - /// Path where to write the file - /// The desired output format - void Write(string path, Episode episode = Episode.Unknown); - - /// - /// Gets the serialized file data - /// - /// The desired file episode - IEnumerable GetBytes(Episode episode = Episode.Unknown); -} diff --git a/src/Parsec/Shaiya/Core/ISerializable.cs b/src/Parsec/Shaiya/Core/ISerializable.cs new file mode 100644 index 00000000..c856b8f3 --- /dev/null +++ b/src/Parsec/Shaiya/Core/ISerializable.cs @@ -0,0 +1,10 @@ +using Parsec.Serialization; + +namespace Parsec.Shaiya.Core; + +public interface ISerializable +{ + void Read(SBinaryReader binaryReader); + + void Write(SBinaryWriter binaryWriter); +} diff --git a/src/Parsec/Shaiya/Core/ReflectionHelper.cs b/src/Parsec/Shaiya/Core/ReflectionHelper.cs deleted file mode 100644 index 1ca94b8c..00000000 --- a/src/Parsec/Shaiya/Core/ReflectionHelper.cs +++ /dev/null @@ -1,409 +0,0 @@ -using System.Reflection; -using System.Text; -using Parsec.Attributes; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; - -namespace Parsec.Shaiya.Core; - -internal static class ReflectionHelper -{ - public static object ReadProperty( - SBinaryReader binaryReader, - Type parentType, - object parentInstance, - PropertyInfo propertyInfo, - Episode episode = Episode.Unknown, - Encoding encoding = null - ) - { - encoding ??= Encoding.ASCII; - var type = propertyInfo.PropertyType; - - var attributes = propertyInfo.GetCustomAttributes().ToList(); - - // If property isn't marked as a ShaiyaProperty, it must be skipped - if (!attributes.Exists(a => a.GetType() == typeof(ShaiyaPropertyAttribute))) - return null; - - foreach (var attribute in attributes) - { - switch (attribute) - { - case ShaiyaPropertyAttribute shaiyaPropertyAttribute: - // If episode limits weren't specified, then property must be read - if (shaiyaPropertyAttribute.MinEpisode == Episode.Unknown && shaiyaPropertyAttribute.MaxEpisode == Episode.Unknown) - break; - - if (shaiyaPropertyAttribute.MaxEpisode == Episode.Unknown && episode >= shaiyaPropertyAttribute.MinEpisode) - break; - - if (shaiyaPropertyAttribute.MinEpisode == Episode.Unknown && episode < shaiyaPropertyAttribute.MaxEpisode) - break; - - if (episode >= shaiyaPropertyAttribute.MinEpisode && episode <= shaiyaPropertyAttribute.MaxEpisode) - break; - - return null; - - case ConditionalPropertyAttribute conditionalPropertyAttribute: - var conditioningPropertyType = parentType.GetProperty(conditionalPropertyAttribute.ConditioningPropertyName); - object conditioningPropertyValue = conditioningPropertyType?.GetValue(parentInstance); - - if (!conditionalPropertyAttribute.ConditioningPropertyValue.Equals(conditioningPropertyValue)) - return GetDefault(type); - break; - - case FixedLengthListAttribute fixedLengthListAttribute: - // Create generic list - var fixedLengthListType = typeof(List<>); - var constructedFixedListType = fixedLengthListType.MakeGenericType(fixedLengthListAttribute.ItemType); - var itemList = (IList)Activator.CreateInstance(constructedFixedListType); - - var typeProperties = fixedLengthListAttribute.ItemType.GetProperties(); - var genericArgumentType = type.GetGenericArguments().First(); - - for (int i = 0; i < fixedLengthListAttribute.Length; i++) - { - object item = Activator.CreateInstance(fixedLengthListAttribute.ItemType); - - if (genericArgumentType.IsPrimitive) - { - item = ReadPrimitive(binaryReader, genericArgumentType); - } - else - { - foreach (var property in typeProperties) - { - // skip non ShaiyaProperty properties - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute))) - continue; - - object propertyValue = ReadProperty(binaryReader, genericArgumentType, item, property, episode, encoding); - property.SetValue(item, propertyValue); - } - } - - itemList.Add(item); - } - - return itemList; - - case LengthPrefixedListAttribute lengthPrefixedListAttribute: - int length = 0; - - var lengthType = lengthPrefixedListAttribute.LengthType; - - if (lengthType == typeof(int)) - { - length = binaryReader.Read(); - } - else if (lengthType == typeof(uint)) - { - length = (int)binaryReader.Read(); - } - else if (lengthType == typeof(short)) - { - length = binaryReader.Read(); - } - else if (lengthType == typeof(ushort)) - { - length = binaryReader.Read(); - } - else if (lengthType == typeof(byte)) - { - length = binaryReader.Read(); - } - else if (lengthType == typeof(sbyte)) - { - length = binaryReader.Read(); - } - else - { - throw new NotSupportedException(); - } - - // Apply multiplier - var multiplierAttribute = attributes.FirstOrDefault(x => - x is ListLengthMultiplierAttribute multiplierAttribute && multiplierAttribute.Episode == episode); - if (multiplierAttribute is ListLengthMultiplierAttribute mAttr) - length *= mAttr.Multiplier; - - // Create generic list - var listType = typeof(List<>); - var constructedListType = listType.MakeGenericType(lengthPrefixedListAttribute.ItemType); - var list = (IList)Activator.CreateInstance(constructedListType); - - var genericItemType = lengthPrefixedListAttribute.ItemType; - var properties = genericItemType.GetProperties(); - - for (int i = 0; i < length; i++) - { - object item = Activator.CreateInstance(lengthPrefixedListAttribute.ItemType); - - if (genericItemType.IsPrimitive) - { - item = ReadPrimitive(binaryReader, genericItemType); - } - else - { - foreach (var property in properties) - { - // skip non ShaiyaProperty properties - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute))) - continue; - - object propertyValue = ReadProperty(binaryReader, genericItemType, item, property, episode, encoding); - property.SetValue(item, propertyValue); - } - } - - list.Add(item); - } - - return list; - - case LengthPrefixedStringAttribute lengthPrefixedStringAttribute: - string lengthPrefixedStr = binaryReader.ReadString(encoding, !lengthPrefixedStringAttribute.IncludeStringTerminator); - return lengthPrefixedStr; - - case FixedLengthStringAttribute fixedLengthStringAttribute: - if (fixedLengthStringAttribute.IsString256) - return new String256(binaryReader).Value; - - string fixedLengthStr = binaryReader.ReadString(encoding, fixedLengthStringAttribute.Length, - !fixedLengthStringAttribute.IncludeStringTerminator); - - return fixedLengthStr; - } - } - - // If property implements IBinary, the IBinary must be instantiated through its single parameter constructor with takes the SBinaryReader instance - // this is the case for types Vector, Quaternion, Matrix, BoundingBox, etc. - if (type.GetInterfaces().Contains(typeof(IBinary))) - { - var binary = (IBinary)Activator.CreateInstance(type, binaryReader); - return binary; - } - - if (type.IsEnum) - { - var underlyingEnumType = Enum.GetUnderlyingType(type); - return ReadPrimitive(binaryReader, underlyingEnumType); - } - - return ReadPrimitive(binaryReader, type); - } - - public static object ReadPrimitive(SBinaryReader binaryReader, Type type) => binaryReader.Read(type); - - public static IEnumerable GetPropertyBytes(Type parentType, object obj, PropertyInfo propertyInfo, Encoding encoding, - Episode episode = Episode.Unknown) - { - var type = propertyInfo.PropertyType; - var attributes = propertyInfo.GetCustomAttributes().ToList(); - - // If property isn't marked as a ShaiyaAttribute, it must be skipped - if (!attributes.Exists(a => a.GetType() == typeof(ShaiyaPropertyAttribute))) - return Array.Empty(); - - object propertyValue = propertyInfo.GetValue(obj); - - foreach (var attribute in attributes) - { - switch (attribute) - { - case ShaiyaPropertyAttribute shaiyaProperty: - var ep = episode; - - // FileBase instances include the Episode property - if (obj is FileBase fileBase) - { - if (episode == Episode.Unknown) - ep = fileBase.Episode; - } - - // if format can't be determined, nothing else should be done here - if (ep == Episode.Unknown) - break; - - // if the ShaiyaProperty didn't specify an episode, then it's present in all of them - if (shaiyaProperty.MinEpisode == Episode.Unknown && shaiyaProperty.MaxEpisode == Episode.Unknown) - break; - - // single episode checks - if (shaiyaProperty.MaxEpisode == Episode.Unknown && ep >= shaiyaProperty.MinEpisode) - break; - - if (shaiyaProperty.MinEpisode == Episode.Unknown && ep <= shaiyaProperty.MaxEpisode) - break; - - // multiple episode check - if (ep >= shaiyaProperty.MinEpisode && ep <= shaiyaProperty.MaxEpisode) - break; - - return Array.Empty(); - - case ConditionalPropertyAttribute conditionalPropertyAttribute: - var conditioningPropertyType = parentType.GetProperty(conditionalPropertyAttribute.ConditioningPropertyName); - object conditioningPropertyValue = conditioningPropertyType?.GetValue(obj); - - if (!conditionalPropertyAttribute.ConditioningPropertyValue.Equals(conditioningPropertyValue)) - return Array.Empty(); - - break; - - case FixedLengthListAttribute fixedLengthListAttribute: - var listItems = (propertyValue as IEnumerable).Cast().Take(fixedLengthListAttribute.Length); - - var buf = new List(); - - var genericArgumentType = type.GetGenericArguments().First(); - - foreach (object item in listItems) - { - if (genericArgumentType.IsPrimitive) - { - buf.AddRange(GetPrimitiveBytes(genericArgumentType, item)); - } - else - { - foreach (var property in fixedLengthListAttribute.ItemType.GetProperties()) - { - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute)) && !fixedLengthListAttribute.ItemType.IsPrimitive) - continue; - - buf.AddRange(GetPropertyBytes(genericArgumentType, item, property, encoding, episode)); - } - } - } - - return buf.ToArray(); - - case LengthPrefixedListAttribute lengthPrefixedListAttribute: - var lengthType = lengthPrefixedListAttribute.LengthType; - var items = propertyValue as IEnumerable; - int itemCount = items.Cast().Count(); - - // Restore length if it had been multiplied previously - var multiplierAttribute = attributes.FirstOrDefault(x => - x is ListLengthMultiplierAttribute multiplierAttribute && multiplierAttribute.Episode == episode); - if (multiplierAttribute is ListLengthMultiplierAttribute mAttr) - itemCount /= mAttr.Multiplier; - - - var genericItemType = type.GetGenericArguments().First(); - var buffer = new List(); - - if (lengthType == typeof(int)) - { - buffer.AddRange(itemCount.GetBytes()); - } - else if (lengthType == typeof(short)) - { - buffer.AddRange(((short)itemCount).GetBytes()); - } - else if (lengthType == typeof(byte)) - { - buffer.Add((byte)itemCount); - } - else - { - // only int, short and byte lengths are expected - throw new NotSupportedException(); - } - - foreach (object item in items) - { - if (genericItemType.IsPrimitive) - { - buffer.AddRange(GetPrimitiveBytes(genericItemType, item)); - } - else - { - foreach (var property in lengthPrefixedListAttribute.ItemType.GetProperties()) - { - if (!property.IsDefined(typeof(ShaiyaPropertyAttribute)) && - !lengthPrefixedListAttribute.ItemType.IsPrimitive) - continue; - - buffer.AddRange(GetPropertyBytes(genericItemType, item, property, encoding, episode)); - } - } - } - - return buffer; - - case LengthPrefixedStringAttribute lengthPrefixedStringAttribute: - return ((string)propertyValue + lengthPrefixedStringAttribute.Suffix).GetLengthPrefixedBytes(encoding, - lengthPrefixedStringAttribute.IncludeStringTerminator); - - case FixedLengthStringAttribute fixedLengthStringAttribute: - if (fixedLengthStringAttribute.IsString256) - return ((string)propertyValue).PadRight(256, '\0').GetBytes(encoding); - return ((string)propertyValue + fixedLengthStringAttribute.Suffix) - .PadRight(fixedLengthStringAttribute.Length, '\0').GetBytes(encoding); - } - } - - // If property implements IBinary, bytes can be retrieved by calling GetBytes() - // this is the case for types Vector, Quaternion, Matrix, BoundingBox, etc. - if (type.GetInterfaces().Contains(typeof(IBinary))) - return ((IBinary)propertyValue).GetBytes(); - - if (type.IsEnum) - { - var underlyingEnumType = Enum.GetUnderlyingType(type); - return GetPrimitiveBytes(underlyingEnumType, propertyValue); - } - - return GetPrimitiveBytes(type, propertyValue); - } - - public static IEnumerable GetPrimitiveBytes(Type type, object value) - { - if (type == typeof(byte)) - return new[] { (byte)value }; - - if (type == typeof(bool)) - return new[] { (byte)value }; - - if (type == typeof(int)) - return ((int)value).GetBytes(); - - if (type == typeof(uint)) - return ((uint)value).GetBytes(); - - if (type == typeof(short)) - return ((short)value).GetBytes(); - - if (type == typeof(ushort)) - return ((ushort)value).GetBytes(); - - if (type == typeof(long)) - return ((long)value).GetBytes(); - - if (type == typeof(ulong)) - return ((ulong)value).GetBytes(); - - if (type == typeof(float)) - return ((float)value).GetBytes(); - - if (type == typeof(byte[])) - return (byte[])value; - - throw new ArgumentException(); - } - - private static object GetDefault(Type type) - { - if (type.IsValueType) - { - return Activator.CreateInstance(type); - } - - return null; - } -} diff --git a/src/Parsec/Shaiya/Data/Data.cs b/src/Parsec/Shaiya/Data/Data.cs index 71df4fae..1b6db2a9 100644 --- a/src/Parsec/Shaiya/Data/Data.cs +++ b/src/Parsec/Shaiya/Data/Data.cs @@ -10,37 +10,20 @@ public Data(Sah sah, Saf saf) Saf = saf; } - public Data(string path) + public Data(string sahPath, string safPath) { - if (!FileHelper.FileExists(path)) - throw new FileNotFoundException($"Data file not found at {path}"); - - switch (Path.GetExtension(path)) + if (!FileHelper.FileExists(sahPath)) { - case ".sah": - { - Sah = Reader.ReadFromFile(path); - - if (!FileHelper.FileExists(Sah.SafPath)) - throw new FileNotFoundException("A valid saf file must be placed in the same directory as the sah file."); - - Saf = new Saf(Sah.SafPath); - break; - } - case ".saf": - { - Saf = new Saf(path); - - if (!FileHelper.FileExists(Saf.SahPath)) - throw new FileNotFoundException("A valid sah file must be placed in the same directory as the saf file."); - - Sah = Reader.ReadFromFile(Saf.SahPath); + throw new FileNotFoundException($"data.sah file not found at {sahPath}"); + } - break; - } - default: - throw new ArgumentException("The provided path must belong to either a .sah or a .saf file"); + if (!FileHelper.FileExists(safPath)) + { + throw new FileNotFoundException($"data.saf file not found at {safPath}"); } + + Sah = Reader.ReadFromFile(sahPath); + Saf = new Saf(safPath); } /// diff --git a/src/Parsec/Shaiya/Data/SDirectory.cs b/src/Parsec/Shaiya/Data/SDirectory.cs index 5017a8ab..586ec4d3 100644 --- a/src/Parsec/Shaiya/Data/SDirectory.cs +++ b/src/Parsec/Shaiya/Data/SDirectory.cs @@ -1,13 +1,11 @@ using System.Runtime.Serialization; using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; -using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Data; [DataContract] -public sealed class SDirectory : IBinary +public sealed class SDirectory { [JsonConstructor] public SDirectory() @@ -39,19 +37,17 @@ Dictionary fileIndex directoryIndex.Add(RelativePath, this); - int fileCount = binaryReader.Read(); - - // Read all files in this folder - for (int i = 0; i < fileCount; i++) + var fileCount = binaryReader.ReadInt32(); + for (var i = 0; i < fileCount; i++) { var file = new SFile(binaryReader, this, fileIndex); AddFile(file); } - int subfolderCount = binaryReader.Read(); + var subfolderCount = binaryReader.ReadInt32(); - // Recursively read subfolders data - for (int i = 0; i < subfolderCount; i++) + // Recursively read subfolder data + for (var i = 0; i < subfolderCount; i++) { var subfolder = new SDirectory(binaryReader, this, directoryIndex, fileIndex); AddDirectory(subfolder); @@ -95,14 +91,28 @@ public SDirectory(string name, SDirectory parentDirectory) : this(parentDirector /// public SDirectory? ParentDirectory { get; set; } - /// - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(ParentDirectory == null ? RealName.GetLengthPrefixedBytes() : Name.GetLengthPrefixedBytes()); - buffer.AddRange(Files.GetBytes()); - buffer.AddRange(Directories.GetBytes()); - return buffer; + if (ParentDirectory == null) + { + binaryWriter.Write(RealName); + } + else + { + binaryWriter.Write(Name); + } + + binaryWriter.Write(Files.Count); + foreach (var file in Files) + { + file.Write(binaryWriter); + } + + binaryWriter.Write(Directories.Count); + foreach (var directory in Directories) + { + directory.Write(binaryWriter); + } } /// diff --git a/src/Parsec/Shaiya/Data/SFile.cs b/src/Parsec/Shaiya/Data/SFile.cs index 3eb7f390..2a94b286 100644 --- a/src/Parsec/Shaiya/Data/SFile.cs +++ b/src/Parsec/Shaiya/Data/SFile.cs @@ -1,13 +1,11 @@ using System.Runtime.Serialization; using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; -using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Data; [DataContract] -public sealed class SFile : IBinary +public sealed class SFile { [JsonConstructor] public SFile() @@ -29,9 +27,9 @@ public SFile(string name, long offset, int length) public SFile(SBinaryReader binaryReader, SDirectory directory, Dictionary fileIndex) : this(directory) { Name = binaryReader.ReadString(); - Offset = binaryReader.Read(); - Length = binaryReader.Read(); - Version = binaryReader.Read(); + Offset = binaryReader.ReadInt64(); + Length = binaryReader.ReadInt32(); + Version = binaryReader.ReadInt32(); if (!fileIndex.ContainsKey(RelativePath)) fileIndex.Add(RelativePath, this); @@ -41,7 +39,7 @@ public SFile(SBinaryReader binaryReader, SDirectory directory, Dictionary [DataMember] - public string Name { get; set; } + public string Name { get; set; } = string.Empty; /// /// The offset in data.saf where the file is located @@ -64,23 +62,18 @@ public SFile(SBinaryReader binaryReader, SDirectory directory, Dictionary /// The relative path to the file /// - public string RelativePath => ParentDirectory == null || string.IsNullOrEmpty(ParentDirectory.Name) - ? Name - : Path.Combine(ParentDirectory.RelativePath, Name); + public string RelativePath => string.IsNullOrEmpty(ParentDirectory.Name) ? Name : Path.Combine(ParentDirectory.RelativePath, Name); /// /// The directory in which the file is /// - public SDirectory ParentDirectory { get; set; } + public SDirectory ParentDirectory { get; set; } = null!; - /// - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes()); - buffer.AddRange(Offset.GetBytes()); - buffer.AddRange(Length.GetBytes()); - buffer.AddRange(Version.GetBytes()); - return buffer; + binaryWriter.Write(Name); + binaryWriter.Write(Offset); + binaryWriter.Write(Length); + binaryWriter.Write(Version); } } diff --git a/src/Parsec/Shaiya/Data/Saf.cs b/src/Parsec/Shaiya/Data/Saf.cs index d767ebef..80b7253e 100644 --- a/src/Parsec/Shaiya/Data/Saf.cs +++ b/src/Parsec/Shaiya/Data/Saf.cs @@ -12,11 +12,6 @@ public Saf(string path) /// public string Path { get; set; } - /// - /// Absolute path to the saf file linked to this saf - /// - public string SahPath => string.Concat(Path.Substring(0, Path.Length - 3), "sah"); - /// /// Reads an array of bytes from the saf file /// @@ -27,7 +22,7 @@ public byte[] ReadBytes(long offset, int length) using var safReader = new BinaryReader(File.OpenRead(Path)); safReader.BaseStream.Seek(offset, SeekOrigin.Begin); - byte[] bytes = safReader.ReadBytes(length); + var bytes = safReader.ReadBytes(length); return bytes; } diff --git a/src/Parsec/Shaiya/Data/Sah.cs b/src/Parsec/Shaiya/Data/Sah.cs index e59aa996..9e80468c 100644 --- a/src/Parsec/Shaiya/Data/Sah.cs +++ b/src/Parsec/Shaiya/Data/Sah.cs @@ -1,7 +1,7 @@ using System.Runtime.Serialization; using Newtonsoft.Json; -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Data; @@ -47,11 +47,6 @@ public Sah(string path, SDirectory rootDirectory, int fileCount) /// public int Version { get; set; } - /// - /// Path to the saf file linked to this sah - /// - public string SafPath => string.Concat(Path.Substring(0, Path.Length - 3), "saf"); - /// /// Total amount of files that are present in the data; does not include directories. /// @@ -68,16 +63,16 @@ public Sah(string path, SDirectory rootDirectory, int fileCount) public override string Extension => "sah"; /// - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Signature = _binaryReader.ReadString(3); - Version = _binaryReader.Read(); - FileCount = _binaryReader.Read(); + Signature = binaryReader.ReadString(3); + Version = binaryReader.ReadInt32(); + FileCount = binaryReader.ReadInt32(); // Index where data starts (after header - skip padding bytes) - _binaryReader.Skip(40); + binaryReader.Skip(40); - RootDirectory = new SDirectory(_binaryReader, null, DirectoryIndex, FileIndex); + RootDirectory = new SDirectory(binaryReader, null, DirectoryIndex, FileIndex); } /// @@ -112,7 +107,7 @@ public SDirectory EnsureFolderExists(string path) var pathFolders = path.Separate().ToList(); var currentFolder = RootDirectory; - foreach (string folderName in pathFolders) + foreach (var folderName in pathFolders) { if (!currentFolder.HasSubfolder(folderName)) { @@ -143,17 +138,16 @@ public SDirectory EnsureFolderExists(string path) /// File's relative path (ie. "Character/Human/3DC/model.3DC") public bool HasFile(string relativePath) => FileIndex.ContainsKey(relativePath); - /// - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Signature.GetBytes()); - buffer.AddRange(Version.GetBytes()); - buffer.AddRange(FileCount.GetBytes()); - buffer.AddRange(new byte[40]); // Padding - buffer.AddRange(RootDirectory.GetBytes()); + binaryWriter.Write(Signature.Take(3).ToString()); + binaryWriter.Write(Version); + binaryWriter.Write(FileCount); + binaryWriter.Write(new byte[40]); // Padding + + RootDirectory.Write(binaryWriter); + // Suffix with 8 empty bytes - I don't think the game cares about these at all, but some other tools do - buffer.AddRange(new byte[8]); - return buffer; + binaryWriter.Write(new byte[8]); } } diff --git a/src/Parsec/Shaiya/DualLayerClothes/DBDualLayerClothesDataRecord.cs b/src/Parsec/Shaiya/DualLayerClothes/DBDualLayerClothesDataRecord.cs index 3e31bf3e..917504a5 100644 --- a/src/Parsec/Shaiya/DualLayerClothes/DBDualLayerClothesDataRecord.cs +++ b/src/Parsec/Shaiya/DualLayerClothes/DBDualLayerClothesDataRecord.cs @@ -1,28 +1,44 @@ -using Parsec.Attributes; + +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.DualLayerClothes; public sealed class DBDualLayerClothesDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long Top { get; set; } - [ShaiyaProperty] public long Hand { get; set; } - [ShaiyaProperty] public long Bottom { get; set; } - [ShaiyaProperty] public long Shoe { get; set; } - [ShaiyaProperty] public long Empty { get; set; } - [ShaiyaProperty] public long Helmet { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Top = binaryReader.ReadInt64(); + Hand = binaryReader.ReadInt64(); + Bottom = binaryReader.ReadInt64(); + Shoe = binaryReader.ReadInt64(); + Empty = binaryReader.ReadInt64(); + Helmet = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Top); + binaryWriter.Write(Hand); + binaryWriter.Write(Bottom); + binaryWriter.Write(Shoe); + binaryWriter.Write(Empty); + binaryWriter.Write(Helmet); + } } diff --git a/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothes.cs b/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothes.cs index 6b33fe6d..22c5b8a8 100644 --- a/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothes.cs +++ b/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothes.cs @@ -1,12 +1,19 @@ -using Parsec.Attributes; -using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.DualLayerClothes; -[DefaultVersion(Episode.EP6)] public sealed class DualLayerClothes : SData.SData { - [ShaiyaProperty] - [LengthPrefixedList(typeof(DualLayerClothesRecord))] public List Records { get; set; } = new(); + + protected override void Read(SBinaryReader binaryReader) + { + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Records.ToSerializable()); + } } diff --git a/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothesRecord.cs b/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothesRecord.cs index b1a1b65e..3899c32a 100644 --- a/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothesRecord.cs +++ b/src/Parsec/Shaiya/DualLayerClothes/DualLayerClothesRecord.cs @@ -1,27 +1,43 @@ -using Parsec.Attributes; +using Parsec.Serialization; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.DualLayerClothes; -public sealed class DualLayerClothesRecord +public sealed class DualLayerClothesRecord : ISerializable { - [ShaiyaProperty] - public short Index { get; set; } + public ushort Index { get; set; } - [ShaiyaProperty] - public short Upper { get; set; } + public ushort Upper { get; set; } - [ShaiyaProperty] - public short Hands { get; set; } + public ushort Hands { get; set; } - [ShaiyaProperty] - public short Lower { get; set; } + public ushort Lower { get; set; } - [ShaiyaProperty] - public short Feet { get; set; } + public ushort Feet { get; set; } - [ShaiyaProperty] - public short Face { get; set; } + public ushort Face { get; set; } - [ShaiyaProperty] - public short Head { get; set; } + public ushort Head { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Index = binaryReader.ReadUInt16(); + Upper = binaryReader.ReadUInt16(); + Hands = binaryReader.ReadUInt16(); + Lower = binaryReader.ReadUInt16(); + Feet = binaryReader.ReadUInt16(); + Face = binaryReader.ReadUInt16(); + Head = binaryReader.ReadUInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Index); + binaryWriter.Write(Upper); + binaryWriter.Write(Hands); + binaryWriter.Write(Lower); + binaryWriter.Write(Feet); + binaryWriter.Write(Face); + binaryWriter.Write(Head); + } } diff --git a/src/Parsec/Shaiya/EFT/EFT.cs b/src/Parsec/Shaiya/EFT/EFT.cs deleted file mode 100644 index 028d1ea5..00000000 --- a/src/Parsec/Shaiya/EFT/EFT.cs +++ /dev/null @@ -1,64 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EFT : FileBase -{ - [JsonIgnore] - public EFTFormat Format { get; set; } - - public List Objects { get; } = new(); - public List Textures { get; } = new(); - public List Effects { get; } = new(); - public List EffectSequences { get; } = new(); - - [JsonIgnore] - public override string Extension => "EFT"; - - public override void Read() - { - string signature = _binaryReader.ReadString(3); - - Format = signature switch - { - "EFT" => EFTFormat.EFT, - "EF2" => EFTFormat.EF2, - "EF3" => EFTFormat.EF3, - _ => EFTFormat.Unknown - }; - - int effectObjectCount = _binaryReader.Read(); - for (int i = 0; i < effectObjectCount; i++) - Objects.Add(new EffectObject(_binaryReader, i)); - - int textureCount = _binaryReader.Read(); - for (int i = 0; i < textureCount; i++) - Textures.Add(new EFTTexture(_binaryReader, i)); - - int effectCount = _binaryReader.Read(); - for (int i = 0; i < effectCount; i++) - Effects.Add(new Effect(_binaryReader, Format, i)); - - int sequenceCount = _binaryReader.Read(); - for (int i = 0; i < sequenceCount; i++) - EffectSequences.Add(new EffectSequence(_binaryReader)); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Format.ToString().GetBytes()); - buffer.AddRange(Objects.GetBytes()); - buffer.AddRange(Textures.GetBytes()); - - buffer.AddRange(Effects.Count.GetBytes()); - foreach (var effect in Effects) - buffer.AddRange(effect.GetBytes(Format)); - - buffer.AddRange(EffectSequences.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/EFT/EFTFormat.cs b/src/Parsec/Shaiya/EFT/EFTFormat.cs deleted file mode 100644 index 9466416d..00000000 --- a/src/Parsec/Shaiya/EFT/EFTFormat.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Parsec.Shaiya.EFT; - -public enum EFTFormat -{ - EFT, - EF2, - EF3, - Unknown -} diff --git a/src/Parsec/Shaiya/EFT/EFTTexture.cs b/src/Parsec/Shaiya/EFT/EFTTexture.cs deleted file mode 100644 index 88f6355b..00000000 --- a/src/Parsec/Shaiya/EFT/EFTTexture.cs +++ /dev/null @@ -1,25 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EFTTexture : IBinary -{ - [JsonConstructor] - public EFTTexture() - { - } - - public EFTTexture(SBinaryReader binaryReader, int index) - { - Index = index; - Name = binaryReader.ReadString(); - } - - public int Index { get; set; } - public string Name { get; set; } = string.Empty; - - public IEnumerable GetBytes(params object[] options) => Name.GetLengthPrefixedBytes(); -} diff --git a/src/Parsec/Shaiya/EFT/Effect.cs b/src/Parsec/Shaiya/EFT/Effect.cs deleted file mode 100644 index b41e92f5..00000000 --- a/src/Parsec/Shaiya/EFT/Effect.cs +++ /dev/null @@ -1,232 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT -{ - public class Effect : IBinary - { - /// - /// Not part of the structure, but left here for readability purposes - /// - public int Index { get; set; } - - public string Name { get; set; } = string.Empty; - public int Unknown1 { get; set; } - public int Unknown2 { get; set; } - public int Unknown3 { get; set; } - public int Unknown4 { get; set; } - public int Unknown5 { get; set; } - public int Unknown6 { get; set; } - public int Unknown7 { get; set; } - public int Unknown8 { get; set; } - public int Object3DEId { get; set; } - public int Unknown10 { get; set; } - public float Unknown11 { get; set; } - public float Unknown12 { get; set; } - public float Unknown13 { get; set; } - public float Unknown14 { get; set; } - public float Unknown15 { get; set; } - public float Unknown16 { get; set; } - public float Unknown17 { get; set; } - public float Unknown18 { get; set; } - - public Vector3 UnknownVec1 { get; set; } - public Vector3 UnknownVec2 { get; set; } - - /// - /// The position where the effect should be rendered, relative to the effect's origin. - /// In the case of mob effects, the origin is the bone to which the effect is attached to. - /// - public Vector3 Position { get; set; } - public Vector3 UnknownVec4 { get; set; } - public Vector3 UnknownVec5 { get; set; } - - public int Unknown19 { get; set; } - public int Unknown20 { get; set; } - public int Unknown21 { get; set; } - - public Vector3 UnknownVec6 { get; set; } - - public float Unknown22 { get; set; } - public int Unknown23 { get; set; } - public int Unknown24 { get; set; } - public float Unknown25 { get; set; } - public int Unknown26 { get; set; } - - /// - /// Only present in EF3 - /// - public float Unknown27 { get; set; } - - /// - /// Only present in EF3 - /// - public float Unknown28 { get; set; } - - public List Rotations { get; } = new(); - public List OpacityFrames { get; } = new(); - public List EffectSub3 { get; } = new(); - - public int Unknown29 { get; set; } - public int Unknown30 { get; set; } - public int Unknown31 { get; set; } - public int Unknown32 { get; set; } - - public List Textures { get; } = new(); - - [JsonConstructor] - public Effect() - { - } - - public Effect(SBinaryReader binaryReader, EFTFormat format, int index) - { - Index = index; - Name = binaryReader.ReadString(Encoding.ASCII); - - Unknown1 = binaryReader.Read(); - Unknown2 = binaryReader.Read(); - Unknown3 = binaryReader.Read(); - Unknown4 = binaryReader.Read(); - Unknown5 = binaryReader.Read(); - Unknown6 = binaryReader.Read(); - Unknown7 = binaryReader.Read(); - Unknown8 = binaryReader.Read(); - Object3DEId = binaryReader.Read(); - Unknown10 = binaryReader.Read(); - - Unknown11 = binaryReader.Read(); - Unknown12 = binaryReader.Read(); - Unknown13 = binaryReader.Read(); - Unknown14 = binaryReader.Read(); - Unknown15 = binaryReader.Read(); - Unknown16 = binaryReader.Read(); - Unknown17 = binaryReader.Read(); - Unknown18 = binaryReader.Read(); - - UnknownVec1 = new Vector3(binaryReader); - UnknownVec2 = new Vector3(binaryReader); - Position = new Vector3(binaryReader); - UnknownVec4 = new Vector3(binaryReader); - UnknownVec5 = new Vector3(binaryReader); - - Unknown19 = binaryReader.Read(); - Unknown20 = binaryReader.Read(); - Unknown21 = binaryReader.Read(); - - UnknownVec6 = new Vector3(binaryReader); - - Unknown22 = binaryReader.Read(); - Unknown23 = binaryReader.Read(); - Unknown24 = binaryReader.Read(); - Unknown25 = binaryReader.Read(); - Unknown26 = binaryReader.Read(); - - if (format == EFTFormat.EF3) - { - Unknown27 = binaryReader.Read(); - Unknown28 = binaryReader.Read(); - } - - int rotationCount = binaryReader.Read(); - for (int i = 0; i < rotationCount; i++) - { - var rotation = new Rotation(binaryReader); - Rotations.Add(rotation); - } - - int sceneSub2Count = binaryReader.Read(); - for (int i = 0; i < sceneSub2Count; i++) - { - var frame = new OpacityFrame(binaryReader); - OpacityFrames.Add(frame); - } - - int sceneSub3Count = binaryReader.Read(); - for (int i = 0; i < sceneSub3Count; i++) - { - var sub3 = new EffectSub3(binaryReader); - EffectSub3.Add(sub3); - } - - Unknown29 = binaryReader.Read(); - Unknown30 = binaryReader.Read(); - Unknown31 = binaryReader.Read(); - Unknown32 = binaryReader.Read(); - - int sceneSub4Count = binaryReader.Read(); - for (int i = 0; i < sceneSub4Count; i++) - { - var texture = new EffectTexture(binaryReader); - Textures.Add(texture); - } - } - - /// - /// Expects as a parameter - /// - public IEnumerable GetBytes(params object[] options) - { - var format = EFTFormat.Unknown; - - if (options.Length > 0) - format = (EFTFormat)options[0]; - - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes(Encoding.ASCII)); - - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Unknown3.GetBytes()); - buffer.AddRange(Unknown4.GetBytes()); - buffer.AddRange(Unknown5.GetBytes()); - buffer.AddRange(Unknown6.GetBytes()); - buffer.AddRange(Unknown7.GetBytes()); - buffer.AddRange(Unknown8.GetBytes()); - buffer.AddRange(Object3DEId.GetBytes()); - buffer.AddRange(Unknown10.GetBytes()); - buffer.AddRange(Unknown11.GetBytes()); - buffer.AddRange(Unknown12.GetBytes()); - buffer.AddRange(Unknown13.GetBytes()); - buffer.AddRange(Unknown14.GetBytes()); - buffer.AddRange(Unknown15.GetBytes()); - buffer.AddRange(Unknown16.GetBytes()); - buffer.AddRange(Unknown17.GetBytes()); - buffer.AddRange(Unknown18.GetBytes()); - buffer.AddRange(UnknownVec1.GetBytes()); - buffer.AddRange(UnknownVec2.GetBytes()); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(UnknownVec4.GetBytes()); - buffer.AddRange(UnknownVec5.GetBytes()); - buffer.AddRange(Unknown19.GetBytes()); - buffer.AddRange(Unknown20.GetBytes()); - buffer.AddRange(Unknown21.GetBytes()); - buffer.AddRange(UnknownVec6.GetBytes()); - buffer.AddRange(Unknown22.GetBytes()); - buffer.AddRange(Unknown23.GetBytes()); - buffer.AddRange(Unknown24.GetBytes()); - buffer.AddRange(Unknown25.GetBytes()); - buffer.AddRange(Unknown26.GetBytes()); - - if (format == EFTFormat.EF3) - { - buffer.AddRange(Unknown27.GetBytes()); - buffer.AddRange(Unknown28.GetBytes()); - } - - buffer.AddRange(Rotations.GetBytes()); - buffer.AddRange(OpacityFrames.GetBytes()); - buffer.AddRange(EffectSub3.GetBytes()); - buffer.AddRange(Unknown29.GetBytes()); - buffer.AddRange(Unknown30.GetBytes()); - buffer.AddRange(Unknown31.GetBytes()); - buffer.AddRange(Unknown32.GetBytes()); - buffer.AddRange(Textures.GetBytes()); - return buffer; - } - } -} diff --git a/src/Parsec/Shaiya/EFT/EffectObject.cs b/src/Parsec/Shaiya/EFT/EffectObject.cs deleted file mode 100644 index b51f59c2..00000000 --- a/src/Parsec/Shaiya/EFT/EffectObject.cs +++ /dev/null @@ -1,25 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EffectObject : IBinary -{ - [JsonConstructor] - public EffectObject() - { - } - - public EffectObject(SBinaryReader binaryReader, int index) - { - Index = index; - Name = binaryReader.ReadString(); - } - - public int Index { get; set; } - public string Name { get; set; } = string.Empty; - - public IEnumerable GetBytes(params object[] options) => Name.GetLengthPrefixedBytes(); -} diff --git a/src/Parsec/Shaiya/EFT/EffectSequence.cs b/src/Parsec/Shaiya/EFT/EffectSequence.cs deleted file mode 100644 index 55072ea6..00000000 --- a/src/Parsec/Shaiya/EFT/EffectSequence.cs +++ /dev/null @@ -1,38 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EffectSequence : IBinary -{ - [JsonConstructor] - public EffectSequence() - { - } - - public EffectSequence(SBinaryReader binaryReader) - { - Name = binaryReader.ReadString(Encoding.ASCII); - - int recordCount = binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new SequenceRecord(binaryReader); - Records.Add(record); - } - } - - public string Name { get; set; } - public List Records { get; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes(Encoding.ASCII)); - buffer.AddRange(Records.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/EFT/EffectSub3.cs b/src/Parsec/Shaiya/EFT/EffectSub3.cs deleted file mode 100644 index 204d94d1..00000000 --- a/src/Parsec/Shaiya/EFT/EffectSub3.cs +++ /dev/null @@ -1,34 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EffectSub3 : IBinary -{ - [JsonConstructor] - public EffectSub3() - { - } - - public EffectSub3(SBinaryReader binaryReader) - { - Unknown1 = binaryReader.Read(); - Unknown2 = binaryReader.Read(); - Time = binaryReader.Read(); - } - - public float Unknown1 { get; set; } - public float Unknown2 { get; set; } - public float Time { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Time.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/EFT/EffectSub4.cs b/src/Parsec/Shaiya/EFT/EffectSub4.cs deleted file mode 100644 index ba968233..00000000 --- a/src/Parsec/Shaiya/EFT/EffectSub4.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EffectSub4 : IBinary -{ - [JsonConstructor] - public EffectSub4() - { - } - - public EffectSub4(SBinaryReader binaryReader) - { - Unknown = binaryReader.Read(); - } - - public int Unknown { get; set; } - - public IEnumerable GetBytes(params object[] options) => Unknown.GetBytes(); -} diff --git a/src/Parsec/Shaiya/EFT/EffectTexture.cs b/src/Parsec/Shaiya/EFT/EffectTexture.cs deleted file mode 100644 index 6c05adc3..00000000 --- a/src/Parsec/Shaiya/EFT/EffectTexture.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class EffectTexture : IBinary -{ - [JsonConstructor] - public EffectTexture() - { - } - - public EffectTexture(SBinaryReader binaryReader) - { - TextureId = binaryReader.Read(); - } - - public int TextureId { get; set; } - - public IEnumerable GetBytes(params object[] options) => TextureId.GetBytes(); -} diff --git a/src/Parsec/Shaiya/EFT/Eft.cs b/src/Parsec/Shaiya/EFT/Eft.cs new file mode 100644 index 00000000..baae098b --- /dev/null +++ b/src/Parsec/Shaiya/EFT/Eft.cs @@ -0,0 +1,64 @@ +using Newtonsoft.Json; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class Eft : FileBase +{ + [JsonIgnore] + public EftFormat Format { get; set; } + + public List Objects { get; set; } = new(); + + public List Textures { get; set; } = new(); + + public List Effects { get; set; } = new(); + + public List EffectSequences { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "EFT"; + + protected override void Read(SBinaryReader binaryReader) + { + var signature = binaryReader.ReadString(3); + + Format = signature switch + { + "EFT" => EftFormat.EFT, + "EF2" => EftFormat.EF2, + "EF3" => EftFormat.EF3, + _ => EftFormat.Unknown + }; + + // Effect instances expect the Format to be set as the ExtraOption property on the serialization settings + binaryReader.SerializationOptions.ExtraOption = Format; + + Objects = binaryReader.ReadList().ToList(); + Textures = binaryReader.ReadList().ToList(); + Effects = binaryReader.ReadList().ToList(); + EffectSequences = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + var signature = Format switch + { + EftFormat.EFT => "EFT", + EftFormat.EF2 => "EF2", + EftFormat.EF3 => "EF3", + _ => "EFT" + }; + + // Effect instances expect the Format to be set as the ExtraOption property on the serialization settings + binaryWriter.SerializationOptions.ExtraOption = Format; + + binaryWriter.Write(signature); + binaryWriter.Write(Objects.ToSerializable()); + binaryWriter.Write(Textures.ToSerializable()); + binaryWriter.Write(Effects.ToSerializable()); + binaryWriter.Write(EffectSequences.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffect.cs b/src/Parsec/Shaiya/EFT/EftEffect.cs new file mode 100644 index 00000000..fdcab489 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffect.cs @@ -0,0 +1,228 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public class EftEffect : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public int Unknown1 { get; set; } + + public int Unknown2 { get; set; } + + public int Unknown3 { get; set; } + + public int Unknown4 { get; set; } + + public int Unknown5 { get; set; } + + public int Unknown6 { get; set; } + + public int Unknown7 { get; set; } + + public int Unknown8 { get; set; } + + /// + /// Index of the 3DE mesh object + /// + public int MeshIndex { get; set; } + + public int Unknown10 { get; set; } + + public float Unknown11 { get; set; } + + public float Unknown12 { get; set; } + + public float Unknown13 { get; set; } + + public float Unknown14 { get; set; } + + public float Unknown15 { get; set; } + + public float Unknown16 { get; set; } + + public float Unknown17 { get; set; } + + public float Unknown18 { get; set; } + + public Vector3 UnknownVec1 { get; set; } + + public Vector3 UnknownVec2 { get; set; } + + /// + /// The position where the effect should be rendered, relative to the effect's origin. + /// In the case of mob effects, the origin is the bone to which the effect is attached to. + /// + public Vector3 Position { get; set; } + + public Vector3 UnknownVec4 { get; set; } + + public Vector3 UnknownVec5 { get; set; } + + public int Unknown19 { get; set; } + + public int Unknown20 { get; set; } + + public int Unknown21 { get; set; } + + public Vector3 UnknownVec6 { get; set; } + + public float Unknown22 { get; set; } + + public int Unknown23 { get; set; } + + public int Unknown24 { get; set; } + + public float Unknown25 { get; set; } + + public int Unknown26 { get; set; } + + /// + /// Only present in EF3 + /// + public float Unknown27 { get; set; } + + /// + /// Only present in EF3 + /// + public float Unknown28 { get; set; } + + public List Rotations { get; set; } = new(); + + public List OpacityFrames { get; set; } = new(); + + public List EffectSub3List { get; set; } = new(); + + public int Unknown29 { get; set; } + + public int Unknown30 { get; set; } + + public int Unknown31 { get; set; } + + public int Unknown32 { get; set; } + + public List Textures { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + var format = EftFormat.EFT; + + if (binaryReader.SerializationOptions.ExtraOption is EftFormat formatOption) + { + format = formatOption; + } + + Name = binaryReader.ReadString(); + Unknown1 = binaryReader.ReadInt32(); + Unknown2 = binaryReader.ReadInt32(); + Unknown3 = binaryReader.ReadInt32(); + Unknown4 = binaryReader.ReadInt32(); + Unknown5 = binaryReader.ReadInt32(); + Unknown6 = binaryReader.ReadInt32(); + Unknown7 = binaryReader.ReadInt32(); + Unknown8 = binaryReader.ReadInt32(); + MeshIndex = binaryReader.ReadInt32(); + Unknown10 = binaryReader.ReadInt32(); + Unknown11 = binaryReader.ReadSingle(); + Unknown12 = binaryReader.ReadSingle(); + Unknown13 = binaryReader.ReadSingle(); + Unknown14 = binaryReader.ReadSingle(); + Unknown15 = binaryReader.ReadSingle(); + Unknown16 = binaryReader.ReadSingle(); + Unknown17 = binaryReader.ReadSingle(); + Unknown18 = binaryReader.ReadSingle(); + + UnknownVec1 = binaryReader.Read(); + UnknownVec2 = binaryReader.Read(); + Position = binaryReader.Read(); + UnknownVec4 = binaryReader.Read(); + UnknownVec5 = binaryReader.Read(); + + Unknown19 = binaryReader.ReadInt32(); + Unknown20 = binaryReader.ReadInt32(); + Unknown21 = binaryReader.ReadInt32(); + + UnknownVec6 = binaryReader.Read(); + + Unknown22 = binaryReader.ReadSingle(); + Unknown23 = binaryReader.ReadInt32(); + Unknown24 = binaryReader.ReadInt32(); + Unknown25 = binaryReader.ReadSingle(); + Unknown26 = binaryReader.ReadInt32(); + + if (format == EftFormat.EF3) + { + Unknown27 = binaryReader.ReadSingle(); + Unknown28 = binaryReader.ReadSingle(); + } + + Rotations = binaryReader.ReadList().ToList(); + OpacityFrames = binaryReader.ReadList().ToList(); + EffectSub3List = binaryReader.ReadList().ToList(); + + Unknown29 = binaryReader.ReadInt32(); + Unknown30 = binaryReader.ReadInt32(); + Unknown31 = binaryReader.ReadInt32(); + Unknown32 = binaryReader.ReadInt32(); + + Textures = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Unknown3); + binaryWriter.Write(Unknown4); + binaryWriter.Write(Unknown5); + binaryWriter.Write(Unknown6); + binaryWriter.Write(Unknown7); + binaryWriter.Write(Unknown8); + binaryWriter.Write(MeshIndex); + binaryWriter.Write(Unknown10); + binaryWriter.Write(Unknown11); + binaryWriter.Write(Unknown12); + binaryWriter.Write(Unknown13); + binaryWriter.Write(Unknown14); + binaryWriter.Write(Unknown15); + binaryWriter.Write(Unknown16); + binaryWriter.Write(Unknown17); + binaryWriter.Write(Unknown18); + + binaryWriter.Write(UnknownVec1); + binaryWriter.Write(UnknownVec2); + binaryWriter.Write(Position); + binaryWriter.Write(UnknownVec4); + binaryWriter.Write(UnknownVec5); + + binaryWriter.Write(Unknown19); + binaryWriter.Write(Unknown20); + binaryWriter.Write(Unknown21); + + binaryWriter.Write(UnknownVec6); + + binaryWriter.Write(Unknown22); + binaryWriter.Write(Unknown23); + binaryWriter.Write(Unknown24); + binaryWriter.Write(Unknown25); + binaryWriter.Write(Unknown26); + + binaryWriter.Write(Unknown27); + binaryWriter.Write(Unknown28); + + binaryWriter.Write(Rotations.ToSerializable()); + binaryWriter.Write(OpacityFrames.ToSerializable()); + binaryWriter.Write(EffectSub3List.ToSerializable()); + + binaryWriter.Write(Unknown29); + binaryWriter.Write(Unknown30); + binaryWriter.Write(Unknown31); + binaryWriter.Write(Unknown32); + + binaryWriter.Write(Textures.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectMesh.cs b/src/Parsec/Shaiya/EFT/EftEffectMesh.cs new file mode 100644 index 00000000..1350845f --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectMesh.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectMesh : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(Name); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectSequence.cs b/src/Parsec/Shaiya/EFT/EftEffectSequence.cs new file mode 100644 index 00000000..4e0c50dc --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectSequence.cs @@ -0,0 +1,24 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectSequence : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public List Records { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + Records = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Records.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectSequenceRecord.cs b/src/Parsec/Shaiya/EFT/EftEffectSequenceRecord.cs new file mode 100644 index 00000000..f831541c --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectSequenceRecord.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectSequenceRecord : ISerializable +{ + public int EffectId { get; set; } + + public float Time { get; set; } + + public void Read(SBinaryReader binaryReader) + { + EffectId = binaryReader.ReadInt32(); + Time = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(EffectId); + binaryWriter.Write(Time); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectSub3.cs b/src/Parsec/Shaiya/EFT/EftEffectSub3.cs new file mode 100644 index 00000000..d7e67216 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectSub3.cs @@ -0,0 +1,27 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectSub3 : ISerializable +{ + public float Unknown1 { get; set; } + + public float Unknown2 { get; set; } + + public float Time { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Unknown1 = binaryReader.ReadSingle(); + Unknown2 = binaryReader.ReadSingle(); + Time = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Time); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectSub4.cs b/src/Parsec/Shaiya/EFT/EftEffectSub4.cs new file mode 100644 index 00000000..fa8dd389 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectSub4.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectSub4 : ISerializable +{ + public int Unknown { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Unknown = binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Unknown); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftEffectTexture.cs b/src/Parsec/Shaiya/EFT/EftEffectTexture.cs new file mode 100644 index 00000000..4fc9e77e --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftEffectTexture.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftEffectTexture : ISerializable +{ + public int TextureId { get; set; } + + public void Read(SBinaryReader binaryReader) + { + TextureId = binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(TextureId); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftFormat.cs b/src/Parsec/Shaiya/EFT/EftFormat.cs new file mode 100644 index 00000000..d67dad59 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftFormat.cs @@ -0,0 +1,9 @@ +namespace Parsec.Shaiya.Eft; + +public enum EftFormat +{ + EFT, + EF2, + EF3, + Unknown +} diff --git a/src/Parsec/Shaiya/EFT/EftOpacityFrame.cs b/src/Parsec/Shaiya/EFT/EftOpacityFrame.cs new file mode 100644 index 00000000..59abcaf2 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftOpacityFrame.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftOpacityFrame : ISerializable +{ + public float Opacity { get; set; } + + public float Time { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Opacity = binaryReader.ReadSingle(); + Time = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Opacity); + binaryWriter.Write(Time); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftRotation.cs b/src/Parsec/Shaiya/EFT/EftRotation.cs new file mode 100644 index 00000000..e67c0d91 --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftRotation.cs @@ -0,0 +1,24 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftRotation : ISerializable +{ + public Quaternion Quaternion { get; set; } + + public float Time { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Quaternion = binaryReader.Read(); + Time = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Quaternion); + binaryWriter.Write(Time); + } +} diff --git a/src/Parsec/Shaiya/EFT/EftTexture.cs b/src/Parsec/Shaiya/EFT/EftTexture.cs new file mode 100644 index 00000000..fe176cdb --- /dev/null +++ b/src/Parsec/Shaiya/EFT/EftTexture.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Eft; + +public sealed class EftTexture : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Name); + } +} diff --git a/src/Parsec/Shaiya/EFT/OpacityFrame.cs b/src/Parsec/Shaiya/EFT/OpacityFrame.cs deleted file mode 100644 index 35c8e681..00000000 --- a/src/Parsec/Shaiya/EFT/OpacityFrame.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class OpacityFrame : IBinary -{ - [JsonConstructor] - public OpacityFrame() - { - } - - public OpacityFrame(SBinaryReader binaryReader) - { - Opacity = binaryReader.Read(); - Time = binaryReader.Read(); - } - - public float Opacity { get; set; } - public float Time { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Opacity.GetBytes()); - buffer.AddRange(Time.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/EFT/Rotation.cs b/src/Parsec/Shaiya/EFT/Rotation.cs deleted file mode 100644 index 9f9faba4..00000000 --- a/src/Parsec/Shaiya/EFT/Rotation.cs +++ /dev/null @@ -1,32 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class Rotation : IBinary -{ - [JsonConstructor] - public Rotation() - { - } - - public Rotation(SBinaryReader binaryReader) - { - Quaternion = new Quaternion(binaryReader); - Time = binaryReader.Read(); - } - - public Quaternion Quaternion { get; set; } - public float Time { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Quaternion.GetBytes()); - buffer.AddRange(Time.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/EFT/SequenceRecord.cs b/src/Parsec/Shaiya/EFT/SequenceRecord.cs deleted file mode 100644 index 1bdbcc49..00000000 --- a/src/Parsec/Shaiya/EFT/SequenceRecord.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.EFT; - -public sealed class SequenceRecord : IBinary -{ - [JsonConstructor] - public SequenceRecord() - { - } - - public SequenceRecord(SBinaryReader binaryReader) - { - EffectId = binaryReader.Read(); - Time = binaryReader.Read(); - } - - public int EffectId { get; set; } - public float Time { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(EffectId.GetBytes()); - buffer.AddRange(Time.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs b/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs index cfc3a676..7a04ebdb 100644 --- a/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs +++ b/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs @@ -1,5 +1,5 @@ -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.GuildHouse; @@ -11,33 +11,32 @@ public sealed class GuildHouse : SData.SData public int ServicePrice { get; set; } - public List NpcInfoList { get; set; } = new(); + /// + /// Npc detail list. 36 elements + /// + public List NpcInfoList { get; set; } = new(); + /// + /// Npc Id list. 24 elements + /// public List Npcs { get; set; } = new(); /// - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Unknown = _binaryReader.Read(); - HousePrice = _binaryReader.Read(); - ServicePrice = _binaryReader.Read(); - - for (int i = 0; i < 36; i++) - NpcInfoList.Add(new NpcInfo(_binaryReader)); - - for (int i = 0; i < 24; i++) - Npcs.Add(new GuildHouseNpc(_binaryReader)); + Unknown = binaryReader.ReadInt32(); + HousePrice = binaryReader.ReadInt32(); + ServicePrice = binaryReader.ReadInt32(); + NpcInfoList = binaryReader.ReadList(36).ToList(); + Npcs = binaryReader.ReadList(24).ToList(); } - /// - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Unknown.GetBytes()); - buffer.AddRange(HousePrice.GetBytes()); - buffer.AddRange(ServicePrice.GetBytes()); - buffer.AddRange(NpcInfoList.Take(36).GetBytes(false)); - buffer.AddRange(Npcs.Take(24).GetBytes(false)); - return buffer; + binaryWriter.Write(Unknown); + binaryWriter.Write(HousePrice); + binaryWriter.Write(ServicePrice); + binaryWriter.Write(NpcInfoList.ToSerializable()); + binaryWriter.Write(Npcs.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs index a053664c..a273b0d1 100644 --- a/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs +++ b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpc.cs @@ -1,24 +1,19 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.GuildHouse; -public class GuildHouseNpc : IBinary +public class GuildHouseNpc : ISerializable { - public int NpcId { get; set; } + public uint NpcId { get; set; } - [JsonConstructor] - public GuildHouseNpc() + public void Read(SBinaryReader binaryReader) { + NpcId = binaryReader.ReadUInt32(); } - public GuildHouseNpc(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - NpcId = binaryReader.Read(); + binaryWriter.Write(NpcId); } - - /// - public IEnumerable GetBytes(params object[] options) => NpcId.GetBytes(); } diff --git a/src/Parsec/Shaiya/GuildHouse/GuildHouseNpcInfo.cs b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpcInfo.cs new file mode 100644 index 00000000..ca6b95d0 --- /dev/null +++ b/src/Parsec/Shaiya/GuildHouse/GuildHouseNpcInfo.cs @@ -0,0 +1,59 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.GuildHouse; + +public class GuildHouseNpcInfo : ISerializable +{ + public byte PriceRate { get; set; } + + public byte NpcLvl { get; set; } + + public byte RapiceMixPercentRate { get; set; } + + public byte RapiceMixDecreRate { get; set; } + + public byte MinRank { get; set; } + + public ushort Icon { get; set; } + + public ushort SysMsgId { get; set; } + + public ushort UpPrice { get; set; } + + public ushort ServicePrice { get; set; } + + public byte NpcType { get; set; } + + public byte Group { get; set; } + + public void Read(SBinaryReader binaryReader) + { + PriceRate = binaryReader.ReadByte(); + NpcLvl = binaryReader.ReadByte(); + RapiceMixPercentRate = binaryReader.ReadByte(); + RapiceMixDecreRate = binaryReader.ReadByte(); + MinRank = binaryReader.ReadByte(); + Icon = binaryReader.ReadUInt16(); + SysMsgId = binaryReader.ReadUInt16(); + UpPrice = binaryReader.ReadUInt16(); + ServicePrice = binaryReader.ReadUInt16(); + NpcType = binaryReader.ReadByte(); + Group = binaryReader.ReadByte(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(PriceRate); + binaryWriter.Write(NpcLvl); + binaryWriter.Write(RapiceMixPercentRate); + binaryWriter.Write(RapiceMixDecreRate); + binaryWriter.Write(MinRank); + binaryWriter.Write(Icon); + binaryWriter.Write(SysMsgId); + binaryWriter.Write(UpPrice); + binaryWriter.Write(ServicePrice); + binaryWriter.Write(NpcType); + binaryWriter.Write(Group); + } +} diff --git a/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs b/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs deleted file mode 100644 index 0c715996..00000000 --- a/src/Parsec/Shaiya/GuildHouse/NpcInfo.cs +++ /dev/null @@ -1,59 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.GuildHouse; - -public class NpcInfo : IBinary -{ - public byte PriceRate { get; set; } - public byte NpcLvl { get; set; } - public byte RapiceMixPercentRate { get; set; } - public byte RapiceMixDecreRate { get; set; } - public byte MinRank { get; set; } - public ushort Icon { get; set; } - public ushort SysMsgId { get; set; } - public ushort UpPrice { get; set; } - public ushort ServicePrice { get; set; } - public byte NpcType { get; set; } - public byte Group { get; set; } - - [JsonConstructor] - public NpcInfo() - { - } - - public NpcInfo(SBinaryReader binaryReader) - { - PriceRate = binaryReader.Read(); - NpcLvl = binaryReader.Read(); - RapiceMixPercentRate = binaryReader.Read(); - RapiceMixDecreRate = binaryReader.Read(); - MinRank = binaryReader.Read(); - Icon = binaryReader.Read(); - SysMsgId = binaryReader.Read(); - UpPrice = binaryReader.Read(); - ServicePrice = binaryReader.Read(); - NpcType = binaryReader.Read(); - Group = binaryReader.Read(); - } - - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.Add(PriceRate); - buffer.Add(NpcLvl); - buffer.Add(RapiceMixPercentRate); - buffer.Add(RapiceMixDecreRate); - buffer.Add(MinRank); - buffer.AddRange(Icon.GetBytes()); - buffer.AddRange(SysMsgId.GetBytes()); - buffer.AddRange(UpPrice.GetBytes()); - buffer.AddRange(ServicePrice.GetBytes()); - buffer.Add(NpcType); - buffer.Add(Group); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/ITM/ITM.cs b/src/Parsec/Shaiya/ITM/ITM.cs deleted file mode 100644 index b09fddb2..00000000 --- a/src/Parsec/Shaiya/ITM/ITM.cs +++ /dev/null @@ -1,88 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.ITM; - -public sealed class ITM : FileBase -{ - /// - /// File Signature. Read as char[3]. "ITM" or "IT2" - /// - public string Signature { get; set; } = string.Empty; - - [JsonIgnore] - public ITMFormat Format { get; set; } - - /// - /// List of .3DO object names - /// - public List Obj3DONames { get; } = new(); - - /// - /// List of .dds texture names - /// - public List TextureNames { get; } = new(); - - /// - /// List of ITM records - /// - public List Records { get; } = new(); - - [JsonIgnore] - public override string Extension => "ITM"; - - public override void Read() - { - Signature = _binaryReader.ReadString(3); - - Format = Signature switch - { - "ITM" => ITMFormat.ITM, - "IT2" => ITMFormat.IT2, - _ => ITMFormat.Unknown - }; - - int obj3doCount = _binaryReader.Read(); - for (int i = 0; i < obj3doCount; i++) - { - string obj3doName = _binaryReader.ReadString(); - Obj3DONames.Add(obj3doName); - } - - int textureNameCount = _binaryReader.Read(); - for (int i = 0; i < textureNameCount; i++) - { - string textureName = _binaryReader.ReadString(); - TextureNames.Add(textureName); - } - - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new Record(Format, _binaryReader); - Records.Add(record); - } - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Signature.GetBytes()); - - buffer.AddRange(Obj3DONames.Count.GetBytes()); - foreach (string obj3doName in Obj3DONames) - buffer.AddRange(obj3doName.GetLengthPrefixedBytes()); - - buffer.AddRange(TextureNames.Count.GetBytes()); - foreach (string textureName in TextureNames) - buffer.AddRange(textureName.GetLengthPrefixedBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - foreach (var record in Records) - buffer.AddRange(record.GetBytes(Format)); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/ITM/ITMFormat.cs b/src/Parsec/Shaiya/ITM/ITMFormat.cs deleted file mode 100644 index ec9bf03c..00000000 --- a/src/Parsec/Shaiya/ITM/ITMFormat.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace Parsec.Shaiya.ITM; - -public enum ITMFormat -{ - ITM, - IT2, - Unknown -} diff --git a/src/Parsec/Shaiya/ITM/Record.cs b/src/Parsec/Shaiya/ITM/Record.cs deleted file mode 100644 index 38f58cfd..00000000 --- a/src/Parsec/Shaiya/ITM/Record.cs +++ /dev/null @@ -1,114 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.ITM; - -public sealed class Record : IBinary -{ - [JsonConstructor] - public Record() - { - } - - public Record(ITMFormat format, SBinaryReader binaryReader) - { - Obj3DOIndex = binaryReader.Read(); - TextureIndex = binaryReader.Read(); - Glow = binaryReader.Read(); - Unknown1 = binaryReader.Read(); - Format = binaryReader.Read(); - Unknown2 = binaryReader.Read(); - - if (Format == 1) - { - RGBA = binaryReader.Read(); - Rotation = binaryReader.Read(); - Scale = binaryReader.Read(); - Unknown3 = binaryReader.Read(); - } - - if (format == ITMFormat.IT2) - Unknown4 = binaryReader.ReadBytes(1024); - } - - /// - /// Index of the .3DO filename - /// - public int Obj3DOIndex { get; set; } - - /// - /// Index of the .DDS filename - /// - public int TextureIndex { get; set; } - - public int Glow { get; set; } - public int Unknown1 { get; set; } - - /// - /// Record format. 0 or 1. - /// - public int Format { get; set; } - - public int Unknown2 { get; set; } - - /// - /// Present if is 1. - /// - public uint RGBA { get; set; } - - /// - /// Present if is 1. - /// - public float Rotation { get; set; } - - /// - /// Present if is 1. - /// - public float Scale { get; set; } - - /// - /// Present if is 1. - /// - public int Unknown3 { get; set; } - - /// - /// Present if is "IT2". - /// 1024 unknown bytes. 32 blocks of 8 uint32. - /// - public byte[] Unknown4 { get; } = new byte[1024]; - - /// - /// Expects as an option - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - - var format = ITMFormat.ITM; - - if (options.Length > 0) - format = (ITMFormat)options[0]; - - buffer.AddRange(Obj3DOIndex.GetBytes()); - buffer.AddRange(TextureIndex.GetBytes()); - buffer.AddRange(Glow.GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Format.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - - if (Format == 1) - { - buffer.AddRange(RGBA.GetBytes()); - buffer.AddRange(Rotation.GetBytes()); - buffer.AddRange(Scale.GetBytes()); - buffer.AddRange(Unknown3.GetBytes()); - } - - if (format == ITMFormat.IT2) - buffer.AddRange(Unknown4); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Item/DBItemDataRecord.cs b/src/Parsec/Shaiya/Item/DBItemDataRecord.cs index 7069b385..b6eb0010 100644 --- a/src/Parsec/Shaiya/Item/DBItemDataRecord.cs +++ b/src/Parsec/Shaiya/Item/DBItemDataRecord.cs @@ -1,217 +1,295 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Item; public sealed class DBItemDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long ItemType { get; set; } - [ShaiyaProperty] public long ItemTypeId { get; set; } - [ShaiyaProperty] public long Image { get; set; } - [ShaiyaProperty] public long Icon { get; set; } - [ShaiyaProperty] public long Level { get; set; } - [ShaiyaProperty] public long Country { get; set; } - [ShaiyaProperty] public long AttackFighter { get; set; } - [ShaiyaProperty] public long DefenseFighter { get; set; } - [ShaiyaProperty] public long PatrolRogue { get; set; } - [ShaiyaProperty] public long ShootRogue { get; set; } - [ShaiyaProperty] public long AttackMage { get; set; } - [ShaiyaProperty] public long DefenseMage { get; set; } - [ShaiyaProperty] public long Grow { get; set; } - [ShaiyaProperty] public long Str { get; set; } - [ShaiyaProperty] public long Dex { get; set; } - [ShaiyaProperty] public long Rec { get; set; } - [ShaiyaProperty] public long Int { get; set; } - [ShaiyaProperty] public long Wis { get; set; } - [ShaiyaProperty] public long Luc { get; set; } - [ShaiyaProperty] public long Vg { get; set; } - [ShaiyaProperty] public long Og { get; set; } - [ShaiyaProperty] public long Ig { get; set; } - [ShaiyaProperty] public long Range { get; set; } - [ShaiyaProperty] public long AttackTime { get; set; } - [ShaiyaProperty] public long Attrib { get; set; } - [ShaiyaProperty] public long Special { get; set; } - [ShaiyaProperty] public long Slot { get; set; } - [ShaiyaProperty] public long Quality { get; set; } - [ShaiyaProperty] public long Effect1 { get; set; } - [ShaiyaProperty] public long Effect2 { get; set; } - [ShaiyaProperty] public long Effect3 { get; set; } - [ShaiyaProperty] public long Effect4 { get; set; } - [ShaiyaProperty] public long ConstHp { get; set; } - [ShaiyaProperty] public long ConstSp { get; set; } - [ShaiyaProperty] public long ConstMp { get; set; } - [ShaiyaProperty] public long ConstStr { get; set; } - [ShaiyaProperty] public long ConstDex { get; set; } - [ShaiyaProperty] public long ConstRec { get; set; } - [ShaiyaProperty] public long ConstInt { get; set; } - [ShaiyaProperty] public long ConstWis { get; set; } - [ShaiyaProperty] public long ConstLuc { get; set; } - [ShaiyaProperty] public long Speed { get; set; } - [ShaiyaProperty] public long Exp { get; set; } - [ShaiyaProperty] public long Buy { get; set; } - [ShaiyaProperty] public long Sell { get; set; } - [ShaiyaProperty] public long Grade { get; set; } - [ShaiyaProperty] public long Drop { get; set; } - [ShaiyaProperty] public long Server { get; set; } - [ShaiyaProperty] public long Count { get; set; } - [ShaiyaProperty] public long Duration { get; set; } - [ShaiyaProperty] public long ExtDuration { get; set; } - [ShaiyaProperty] public long SecOption { get; set; } - [ShaiyaProperty] public long OptionRate { get; set; } - [ShaiyaProperty] public long BuyMethod { get; set; } - [ShaiyaProperty] public long MaxLevel { get; set; } - [ShaiyaProperty] public long WeaponPart { get; set; } - [ShaiyaProperty] public long DyeingType { get; set; } - [ShaiyaProperty] public long Arg3 { get; set; } - [ShaiyaProperty] public long Arg4 { get; set; } - [ShaiyaProperty] public long UseConType { get; set; } - [ShaiyaProperty] public long UseConVar { get; set; } - [ShaiyaProperty] public long MoneyType { get; set; } - [ShaiyaProperty] public long ItemSkill { get; set; } - [ShaiyaProperty] public long ItemUpgrade { get; set; } - [ShaiyaProperty] public long Arg10 { get; set; } - [ShaiyaProperty] public long GeneCount { get; set; } - [ShaiyaProperty] public long Arg12 { get; set; } - [ShaiyaProperty] public long SpellBookExp { get; set; } - [ShaiyaProperty] public long SpellBookDurability { get; set; } - [ShaiyaProperty] public long CastTime { get; set; } + + public void Read(SBinaryReader binaryReader) + { + ItemType = binaryReader.ReadInt64(); + ItemTypeId = binaryReader.ReadInt64(); + Image = binaryReader.ReadInt64(); + Icon = binaryReader.ReadInt64(); + Level = binaryReader.ReadInt64(); + Country = binaryReader.ReadInt64(); + AttackFighter = binaryReader.ReadInt64(); + DefenseFighter = binaryReader.ReadInt64(); + PatrolRogue = binaryReader.ReadInt64(); + ShootRogue = binaryReader.ReadInt64(); + AttackMage = binaryReader.ReadInt64(); + DefenseMage = binaryReader.ReadInt64(); + Grow = binaryReader.ReadInt64(); + Str = binaryReader.ReadInt64(); + Dex = binaryReader.ReadInt64(); + Rec = binaryReader.ReadInt64(); + Int = binaryReader.ReadInt64(); + Wis = binaryReader.ReadInt64(); + Luc = binaryReader.ReadInt64(); + Vg = binaryReader.ReadInt64(); + Og = binaryReader.ReadInt64(); + Ig = binaryReader.ReadInt64(); + Range = binaryReader.ReadInt64(); + AttackTime = binaryReader.ReadInt64(); + Attrib = binaryReader.ReadInt64(); + Special = binaryReader.ReadInt64(); + Slot = binaryReader.ReadInt64(); + Quality = binaryReader.ReadInt64(); + Effect1 = binaryReader.ReadInt64(); + Effect2 = binaryReader.ReadInt64(); + Effect3 = binaryReader.ReadInt64(); + Effect4 = binaryReader.ReadInt64(); + ConstHp = binaryReader.ReadInt64(); + ConstSp = binaryReader.ReadInt64(); + ConstMp = binaryReader.ReadInt64(); + ConstStr = binaryReader.ReadInt64(); + ConstDex = binaryReader.ReadInt64(); + ConstRec = binaryReader.ReadInt64(); + ConstInt = binaryReader.ReadInt64(); + ConstWis = binaryReader.ReadInt64(); + ConstLuc = binaryReader.ReadInt64(); + Speed = binaryReader.ReadInt64(); + Exp = binaryReader.ReadInt64(); + Buy = binaryReader.ReadInt64(); + Sell = binaryReader.ReadInt64(); + Grade = binaryReader.ReadInt64(); + Drop = binaryReader.ReadInt64(); + Server = binaryReader.ReadInt64(); + Count = binaryReader.ReadInt64(); + Duration = binaryReader.ReadInt64(); + ExtDuration = binaryReader.ReadInt64(); + SecOption = binaryReader.ReadInt64(); + OptionRate = binaryReader.ReadInt64(); + BuyMethod = binaryReader.ReadInt64(); + MaxLevel = binaryReader.ReadInt64(); + WeaponPart = binaryReader.ReadInt64(); + DyeingType = binaryReader.ReadInt64(); + Arg3 = binaryReader.ReadInt64(); + Arg4 = binaryReader.ReadInt64(); + UseConType = binaryReader.ReadInt64(); + UseConVar = binaryReader.ReadInt64(); + MoneyType = binaryReader.ReadInt64(); + ItemSkill = binaryReader.ReadInt64(); + ItemUpgrade = binaryReader.ReadInt64(); + Arg10 = binaryReader.ReadInt64(); + GeneCount = binaryReader.ReadInt64(); + Arg12 = binaryReader.ReadInt64(); + SpellBookExp = binaryReader.ReadInt64(); + SpellBookDurability = binaryReader.ReadInt64(); + CastTime = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(ItemType); + binaryWriter.Write(ItemTypeId); + binaryWriter.Write(Image); + binaryWriter.Write(Icon); + binaryWriter.Write(Level); + binaryWriter.Write(Country); + binaryWriter.Write(AttackFighter); + binaryWriter.Write(DefenseFighter); + binaryWriter.Write(PatrolRogue); + binaryWriter.Write(ShootRogue); + binaryWriter.Write(AttackMage); + binaryWriter.Write(DefenseMage); + binaryWriter.Write(Grow); + binaryWriter.Write(Str); + binaryWriter.Write(Dex); + binaryWriter.Write(Rec); + binaryWriter.Write(Int); + binaryWriter.Write(Wis); + binaryWriter.Write(Luc); + binaryWriter.Write(Vg); + binaryWriter.Write(Og); + binaryWriter.Write(Ig); + binaryWriter.Write(Range); + binaryWriter.Write(AttackTime); + binaryWriter.Write(Attrib); + binaryWriter.Write(Special); + binaryWriter.Write(Slot); + binaryWriter.Write(Quality); + binaryWriter.Write(Effect1); + binaryWriter.Write(Effect2); + binaryWriter.Write(Effect3); + binaryWriter.Write(Effect4); + binaryWriter.Write(ConstHp); + binaryWriter.Write(ConstSp); + binaryWriter.Write(ConstMp); + binaryWriter.Write(ConstStr); + binaryWriter.Write(ConstDex); + binaryWriter.Write(ConstRec); + binaryWriter.Write(ConstInt); + binaryWriter.Write(ConstWis); + binaryWriter.Write(ConstLuc); + binaryWriter.Write(Speed); + binaryWriter.Write(Exp); + binaryWriter.Write(Buy); + binaryWriter.Write(Sell); + binaryWriter.Write(Grade); + binaryWriter.Write(Drop); + binaryWriter.Write(Server); + binaryWriter.Write(Count); + binaryWriter.Write(Duration); + binaryWriter.Write(ExtDuration); + binaryWriter.Write(SecOption); + binaryWriter.Write(OptionRate); + binaryWriter.Write(BuyMethod); + binaryWriter.Write(MaxLevel); + binaryWriter.Write(WeaponPart); + binaryWriter.Write(DyeingType); + binaryWriter.Write(Arg3); + binaryWriter.Write(Arg4); + binaryWriter.Write(UseConType); + binaryWriter.Write(UseConVar); + binaryWriter.Write(MoneyType); + binaryWriter.Write(ItemSkill); + binaryWriter.Write(ItemUpgrade); + binaryWriter.Write(Arg10); + binaryWriter.Write(GeneCount); + binaryWriter.Write(Arg12); + binaryWriter.Write(SpellBookExp); + binaryWriter.Write(SpellBookDurability); + binaryWriter.Write(CastTime); + } } diff --git a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs index 5c9e895e..d9a309dd 100644 --- a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs +++ b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs @@ -1,21 +1,31 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Item; public sealed class DBItemTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long ItemType { get; set; } - [ShaiyaProperty] public long ItemTypeId { get; set; } - [ShaiyaProperty] - [LengthPrefixedString(false)] public string ItemName { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Text { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + ItemType = binaryReader.ReadInt64(); + ItemTypeId = binaryReader.ReadInt64(); + ItemName = binaryReader.ReadString(); + Text = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(ItemType); + binaryWriter.Write(ItemTypeId); + binaryWriter.WriteLengthPrefixedString(ItemName, false); + binaryWriter.WriteLengthPrefixedString(Text, false); + } } diff --git a/src/Parsec/Shaiya/Item/Item.cs b/src/Parsec/Shaiya/Item/Item.cs index 213f90d5..2565ac47 100644 --- a/src/Parsec/Shaiya/Item/Item.cs +++ b/src/Parsec/Shaiya/Item/Item.cs @@ -1,102 +1,72 @@ -using System.Globalization; -using System.Text; -using CsvHelper; -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.Item; -public sealed class Item : SData.SData, ICsv +public sealed class Item : SData.SData { - [JsonIgnore] - public Dictionary<(byte type, byte typeId), ItemDefinition> ItemIndex = new(); + public List ItemGroups { get; set; } = new(); - public int MaxItemType { get; set; } - - public List ItemTypes { get; } = new(); - - public override void Read() - { - MaxItemType = _binaryReader.Read(); - for (int i = 0; i < MaxItemType; i++) - { - var itemType = new ItemType(_binaryReader, i + 1, Episode, ItemIndex); - ItemTypes.Add(itemType); - } - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Read(SBinaryReader binaryReader) { - var buffer = new List(); - buffer.AddRange(MaxItemType.GetBytes()); - - for (int i = 1; i <= MaxItemType; i++) - { - var type = ItemTypes.SingleOrDefault(t => t.Id == i); - - // When type isn't part of the item, its MaxTypeId = 0 must be written to the file anyways - if (type == null) - { - buffer.AddRange(0.GetBytes()); - continue; - } - - buffer.AddRange(type.GetBytes(episode, Encoding)); - } - - return buffer; + ItemGroups = binaryReader.ReadList().ToList(); } - /// - /// Reads the Item.SData format from a csv file - /// - /// csv file path - /// The Item.SData format - /// Item.SData encoding - /// instance - public static Item ReadFromCsv(string csvPath, Episode episode, Encoding? encoding = null) + protected override void Write(SBinaryWriter binaryWriter) { - encoding ??= Encoding.ASCII; - - // Create Item.SData instance - var item = new Item { Episode = episode, Encoding = encoding }; - - // Read item definitions from csv - using var reader = new StreamReader(csvPath, encoding); - using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); - var itemDefinitions = csvReader.GetRecords().ToList(); - - // Get max type from items - item.MaxItemType = itemDefinitions.Max(x => x.Type); - - // Add all items to item index - var itemIndex = itemDefinitions.ToDictionary(itemDef => (itemDef.Type, itemDef.TypeId)); - item.ItemIndex = itemIndex; - - // Create item types - for (int i = 1; i <= item.MaxItemType; i++) - { - // Get items for this type - var items = item.ItemIndex.Values.Where(x => x.Type == i).ToList(); - - int maxTypeId = items.Count == 0 ? 0 : items.Max(x => x.TypeId); - - var type = new ItemType(i, maxTypeId, items); - item.ItemTypes.Add(type); - } - - return item; + binaryWriter.Write(ItemGroups.ToSerializable()); } - /// - public void WriteCsv(string outputPath, Encoding? encoding = null) - { - encoding ??= Encoding; - - var items = ItemIndex.Values.ToList().ToList(); - using var writer = new StreamWriter(outputPath, false, encoding); - using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); - csvWriter.WriteRecords(items); - } + // TODO: Add csv support + // /// + // /// Reads the Item.SData format from a csv file + // /// + // /// csv file path + // /// The Item.SData format + // /// Item.SData encoding + // /// instance + // public static Item ReadFromCsv(string csvPath, Episode episode, Encoding? encoding = null) + // { + // encoding ??= Encoding.ASCII; + // + // // Create Item.SData instance + // var item = new Item { Episode = episode, Encoding = encoding }; + // + // // Read item definitions from csv + // using var reader = new StreamReader(csvPath, encoding); + // using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + // var itemDefinitions = csvReader.GetRecords().ToList(); + // + // // Get max type from items + // item.MaxItemType = itemDefinitions.Max(x => x.Type); + // + // // Add all items to item index + // var itemIndex = itemDefinitions.ToDictionary(itemDef => (itemDef.Type, itemDef.TypeId)); + // item.ItemIndex = itemIndex; + // + // // Create item types + // for (int i = 1; i <= item.MaxItemType; i++) + // { + // // Get items for this type + // var items = item.ItemIndex.Values.Where(x => x.Type == i).ToList(); + // + // int maxTypeId = items.Count == 0 ? 0 : items.Max(x => x.TypeId); + // + // var type = new ItemType(i, maxTypeId, items); + // item.ItemTypes.Add(type); + // } + // + // return item; + // } + // + // /// + // public void WriteCsv(string outputPath, Encoding? encoding = null) + // { + // encoding ??= Encoding; + // + // var items = ItemIndex.Values.ToList().ToList(); + // using var writer = new StreamWriter(outputPath, false, encoding); + // using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); + // csvWriter.WriteRecords(items); + // } } diff --git a/src/Parsec/Shaiya/Item/ItemDefinition.cs b/src/Parsec/Shaiya/Item/ItemDefinition.cs deleted file mode 100644 index 19fb3b63..00000000 --- a/src/Parsec/Shaiya/Item/ItemDefinition.cs +++ /dev/null @@ -1,315 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Item; - -public sealed class ItemDefinition : IBinary -{ - [JsonConstructor] - public ItemDefinition() - { - } - - public ItemDefinition(SBinaryReader binaryReader, Episode episode) - { - Name = binaryReader.ReadString(); - Description = binaryReader.ReadString(); - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); - Model = binaryReader.Read(); - Icon = binaryReader.Read(); - MinLevel = binaryReader.Read(); - Country = binaryReader.Read(); - AttackFighter = binaryReader.Read(); - DefenseFighter = binaryReader.Read(); - PatrolRogue = binaryReader.Read(); - ShootRogue = binaryReader.Read(); - AttackMage = binaryReader.Read(); - DefenseMage = binaryReader.Read(); - Grow = binaryReader.Read(); - Type2 = binaryReader.Read(); - Type3 = binaryReader.Read(); - ReqStr = binaryReader.Read(); - ReqDex = binaryReader.Read(); - ReqRec = binaryReader.Read(); - ReqInt = binaryReader.Read(); - ReqWis = binaryReader.Read(); - ReqLuc = binaryReader.Read(); - ReqVg = binaryReader.Read(); - - if (episode >= Episode.EP6) - { - Unknown = binaryReader.Read(); - } - - ReqOg = binaryReader.Read(); - ReqIg = binaryReader.Read(); - - - Range = binaryReader.Read(); - // Range = binaryReader.Read(); - - - AttackTime = binaryReader.Read(); - Attrib = binaryReader.Read(); - Special = binaryReader.Read(); - Slot = binaryReader.Read(); - Quality = binaryReader.Read(); - Attack = binaryReader.Read(); - AttackAdd = binaryReader.Read(); - Def = binaryReader.Read(); - Resist = binaryReader.Read(); - Hp = binaryReader.Read(); - Sp = binaryReader.Read(); - Mp = binaryReader.Read(); - Str = binaryReader.Read(); - Dex = binaryReader.Read(); - Rec = binaryReader.Read(); - Int = binaryReader.Read(); - Wis = binaryReader.Read(); - Luc = binaryReader.Read(); - Speed = binaryReader.Read(); - Exp = binaryReader.Read(); - BuyPrice = binaryReader.Read(); - SellPrice = binaryReader.Read(); - Grade = binaryReader.Read(); - Drop = binaryReader.Read(); - Server = binaryReader.Read(); - Count = binaryReader.Read(); - - if (episode >= Episode.EP6) - { - Duration = binaryReader.Read(); - ExtDuration = binaryReader.Read(); - SecOption = binaryReader.Read(); - OptionRate = binaryReader.Read(); - BuyMethod = binaryReader.Read(); - MaxLevel = binaryReader.Read(); - - Arg1 = binaryReader.Read(); - Arg2 = binaryReader.Read(); - Arg3 = binaryReader.Read(); - Arg4 = binaryReader.Read(); - Arg5 = binaryReader.Read(); - - Arg6 = binaryReader.Read(); - Arg7 = binaryReader.Read(); - Arg8 = binaryReader.Read(); - Arg9 = binaryReader.Read(); - Arg10 = binaryReader.Read(); - Arg11 = binaryReader.Read(); - Arg12 = binaryReader.Read(); - Arg13 = binaryReader.Read(); - Arg14 = binaryReader.Read(); - } - } - - /// - /// Order: 2. Changed because of CSV. - /// - public byte Type { get; set; } - - /// - /// Order: 3. Changed because of CSV. - /// - public byte TypeId { get; set; } - - /// - /// Order: 0. Changed because of CSV. - /// - public string Name { get; set; } = string.Empty; - - /// - /// Order: 1. Changed because of CSV. - /// - public string Description { get; set; } = string.Empty; - - public byte Model { get; set; } - public byte Icon { get; set; } - public ushort MinLevel { get; set; } - public byte Country { get; set; } - public byte AttackFighter { get; set; } - public byte DefenseFighter { get; set; } - public byte PatrolRogue { get; set; } - public byte ShootRogue { get; set; } - public byte AttackMage { get; set; } - public byte DefenseMage { get; set; } - public byte Grow { get; set; } - public byte Type2 { get; set; } - public byte Type3 { get; set; } - public ushort ReqStr { get; set; } - public ushort ReqDex { get; set; } - public ushort ReqRec { get; set; } - public ushort ReqInt { get; set; } - public ushort ReqWis { get; set; } - public ushort ReqLuc { get; set; } - public ushort ReqVg { get; set; } - public ushort Unknown { get; set; } - public byte ReqOg { get; set; } - public byte ReqIg { get; set; } - public ushort Range { get; set; } - public byte AttackTime { get; set; } - public byte Attrib { get; set; } - public byte Special { get; set; } - public byte Slot { get; set; } - public ushort Quality { get; set; } - public ushort Attack { get; set; } - public ushort AttackAdd { get; set; } - public ushort Def { get; set; } - public ushort Resist { get; set; } - public ushort Hp { get; set; } - public ushort Sp { get; set; } - public ushort Mp { get; set; } - public ushort Str { get; set; } - public ushort Dex { get; set; } - public ushort Rec { get; set; } - public ushort Int { get; set; } - public ushort Wis { get; set; } - public ushort Luc { get; set; } - public byte Speed { get; set; } - public byte Exp { get; set; } - public uint BuyPrice { get; set; } - public uint SellPrice { get; set; } - public ushort Grade { get; set; } - public ushort Drop { get; set; } - public byte Server { get; set; } - public byte Count { get; set; } - - public uint Duration { get; set; } - public byte ExtDuration { get; set; } - public byte SecOption { get; set; } - public byte OptionRate { get; set; } - public byte BuyMethod { get; set; } - public byte MaxLevel { get; set; } - public byte Arg1 { get; set; } - public byte Arg2 { get; set; } - public byte Arg3 { get; set; } - public byte Arg4 { get; set; } - public byte Arg5 { get; set; } - - public uint Arg6 { get; set; } - public uint Arg7 { get; set; } - public uint Arg8 { get; set; } - public uint Arg9 { get; set; } - public uint Arg10 { get; set; } - public uint Arg11 { get; set; } - public uint Arg12 { get; set; } - public uint Arg13 { get; set; } - public uint Arg14 { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var encoding = Encoding.ASCII; - var episode = Episode.EP5; - - if (options.Length > 0 && options[0] is Episode episodeOption) - { - episode = episodeOption; - } - - if (options.Length > 1 && options[1] is Encoding stringEncoding) - { - encoding = stringEncoding; - } - - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes(encoding)); - buffer.AddRange(Description.GetLengthPrefixedBytes(encoding)); - buffer.Add(Type); - buffer.Add(TypeId); - buffer.Add(Model); - buffer.Add(Icon); - buffer.AddRange(MinLevel.GetBytes()); - buffer.Add(Country); - buffer.Add(AttackFighter); - buffer.Add(DefenseFighter); - buffer.Add(PatrolRogue); - buffer.Add(ShootRogue); - buffer.Add(AttackMage); - buffer.Add(DefenseMage); - buffer.Add(Grow); - buffer.Add(Type2); - buffer.Add(Type3); - buffer.AddRange(ReqStr.GetBytes()); - buffer.AddRange(ReqDex.GetBytes()); - buffer.AddRange(ReqRec.GetBytes()); - buffer.AddRange(ReqInt.GetBytes()); - buffer.AddRange(ReqWis.GetBytes()); - buffer.AddRange(ReqLuc.GetBytes()); - buffer.AddRange(ReqVg.GetBytes()); - - if (episode >= Episode.EP6) - { - buffer.AddRange(Unknown.GetBytes()); - } - - buffer.Add(ReqOg); - buffer.Add(ReqIg); - - if (episode <= Episode.EP5) - { - buffer.Add((byte)Range); - } - else - { - buffer.AddRange(Range.GetBytes()); - } - - buffer.Add(AttackTime); - buffer.Add(Attrib); - buffer.Add(Special); - buffer.Add(Slot); - buffer.AddRange(Quality.GetBytes()); - buffer.AddRange(Attack.GetBytes()); - buffer.AddRange(AttackAdd.GetBytes()); - buffer.AddRange(Def.GetBytes()); - buffer.AddRange(Resist.GetBytes()); - buffer.AddRange(Hp.GetBytes()); - buffer.AddRange(Sp.GetBytes()); - buffer.AddRange(Mp.GetBytes()); - buffer.AddRange(Str.GetBytes()); - buffer.AddRange(Dex.GetBytes()); - buffer.AddRange(Rec.GetBytes()); - buffer.AddRange(Int.GetBytes()); - buffer.AddRange(Wis.GetBytes()); - buffer.AddRange(Luc.GetBytes()); - buffer.Add(Speed); - buffer.Add(Exp); - buffer.AddRange(BuyPrice.GetBytes()); - buffer.AddRange(SellPrice.GetBytes()); - buffer.AddRange(Grade.GetBytes()); - buffer.AddRange(Drop.GetBytes()); - buffer.Add(Server); - buffer.Add(Count); - - if (episode >= Episode.EP6) - { - buffer.AddRange(Duration.GetBytes()); - buffer.Add(ExtDuration); - buffer.Add(SecOption); - buffer.Add(OptionRate); - buffer.Add(BuyMethod); - buffer.Add(MaxLevel); - buffer.Add(Arg1); - buffer.Add(Arg2); - buffer.Add(Arg3); - buffer.Add(Arg4); - buffer.Add(Arg5); - buffer.AddRange(Arg6.GetBytes()); - buffer.AddRange(Arg7.GetBytes()); - buffer.AddRange(Arg8.GetBytes()); - buffer.AddRange(Arg9.GetBytes()); - buffer.AddRange(Arg10.GetBytes()); - buffer.AddRange(Arg11.GetBytes()); - buffer.AddRange(Arg12.GetBytes()); - buffer.AddRange(Arg13.GetBytes()); - buffer.AddRange(Arg14.GetBytes()); - } - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Item/ItemGroup.cs b/src/Parsec/Shaiya/Item/ItemGroup.cs new file mode 100644 index 00000000..37d0dd57 --- /dev/null +++ b/src/Parsec/Shaiya/Item/ItemGroup.cs @@ -0,0 +1,24 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Item; + +public sealed class ItemGroup : ISerializable +{ + public int MaxTypeId { get; set; } + + public List ItemDefinitions { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + MaxTypeId = binaryReader.ReadInt32(); + ItemDefinitions = binaryReader.ReadList(MaxTypeId).ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(MaxTypeId); + binaryWriter.Write(ItemDefinitions.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Item/ItemGroupRecord.cs b/src/Parsec/Shaiya/Item/ItemGroupRecord.cs new file mode 100644 index 00000000..ae83913f --- /dev/null +++ b/src/Parsec/Shaiya/Item/ItemGroupRecord.cs @@ -0,0 +1,369 @@ +using Parsec.Common; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Item; + +public sealed class ItemGroupRecord : ISerializable +{ + /// + /// Order: 2. Changed because of CSV. + /// + public byte ItemType { get; set; } + + /// + /// Order: 3. Changed because of CSV. + /// + public byte ItemTypeId { get; set; } + + /// + /// Order: 0. Changed because of CSV. + /// + public string Name { get; set; } = string.Empty; + + /// + /// Order: 1. Changed because of CSV. + /// + public string Description { get; set; } = string.Empty; + + public byte Model { get; set; } + + public byte Icon { get; set; } + + public ushort MinLevel { get; set; } + + public byte Country { get; set; } + + public byte AttackFighter { get; set; } + + public byte DefenseFighter { get; set; } + + public byte PatrolRogue { get; set; } + + public byte ShootRogue { get; set; } + + public byte AttackMage { get; set; } + + public byte DefenseMage { get; set; } + + public byte Grow { get; set; } + + public byte Type2 { get; set; } + + public byte Type3 { get; set; } + + public ushort ReqStr { get; set; } + + public ushort ReqDex { get; set; } + + public ushort ReqRec { get; set; } + + public ushort ReqInt { get; set; } + + public ushort ReqWis { get; set; } + + public ushort ReqLuc { get; set; } + + public ushort ReqVg { get; set; } + + public ushort Unknown { get; set; } + + public byte ReqOg { get; set; } + + public byte ReqIg { get; set; } + + public ushort Range { get; set; } + + public byte AttackTime { get; set; } + + public byte Attrib { get; set; } + + public byte Special { get; set; } + + public byte Slot { get; set; } + + public ushort Quality { get; set; } + + public ushort Attack { get; set; } + + public ushort AttackAdd { get; set; } + + public ushort Def { get; set; } + + public ushort Resist { get; set; } + + public ushort Hp { get; set; } + + public ushort Sp { get; set; } + + public ushort Mp { get; set; } + + public ushort Str { get; set; } + + public ushort Dex { get; set; } + + public ushort Rec { get; set; } + + public ushort Int { get; set; } + + public ushort Wis { get; set; } + + public ushort Luc { get; set; } + + public byte Speed { get; set; } + + public byte Exp { get; set; } + + public uint BuyPrice { get; set; } + + public uint SellPrice { get; set; } + + public ushort Grade { get; set; } + + public ushort Drop { get; set; } + + public byte Server { get; set; } + + public byte Count { get; set; } + + public uint Duration { get; set; } + + public byte ExtDuration { get; set; } + + public byte SecOption { get; set; } + + public byte OptionRate { get; set; } + + public byte BuyMethod { get; set; } + + public byte MaxLevel { get; set; } + + public byte Arg1 { get; set; } + + public byte Arg2 { get; set; } + + public byte Arg3 { get; set; } + + public byte Arg4 { get; set; } + + public byte Arg5 { get; set; } + + public uint Arg6 { get; set; } + + public uint Arg7 { get; set; } + + public uint Arg8 { get; set; } + + public uint Arg9 { get; set; } + + public uint Arg10 { get; set; } + + public uint Arg11 { get; set; } + + public uint Arg12 { get; set; } + + public uint Arg13 { get; set; } + + public uint Arg14 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + var episode = binaryReader.SerializationOptions.Episode; + + Name = binaryReader.ReadString(); + Description = binaryReader.ReadString(); + ItemType = binaryReader.ReadByte(); + ItemTypeId = binaryReader.ReadByte(); + Model = binaryReader.ReadByte(); + Icon = binaryReader.ReadByte(); + MinLevel = binaryReader.ReadUInt16(); + Country = binaryReader.ReadByte(); + AttackFighter = binaryReader.ReadByte(); + DefenseFighter = binaryReader.ReadByte(); + PatrolRogue = binaryReader.ReadByte(); + ShootRogue = binaryReader.ReadByte(); + AttackMage = binaryReader.ReadByte(); + DefenseMage = binaryReader.ReadByte(); + Grow = binaryReader.ReadByte(); + Type2 = binaryReader.ReadByte(); + Type3 = binaryReader.ReadByte(); + ReqStr = binaryReader.ReadUInt16(); + ReqDex = binaryReader.ReadUInt16(); + ReqRec = binaryReader.ReadUInt16(); + ReqInt = binaryReader.ReadUInt16(); + ReqWis = binaryReader.ReadUInt16(); + ReqLuc = binaryReader.ReadUInt16(); + ReqVg = binaryReader.ReadUInt16(); + + if (episode >= Episode.EP6) + { + Unknown = binaryReader.ReadUInt16(); + } + + ReqOg = binaryReader.ReadByte(); + ReqIg = binaryReader.ReadByte(); + + + if (episode <= Episode.EP5) + { + Range = binaryReader.ReadByte(); + } + else + { + Range = binaryReader.ReadUInt16(); + } + + AttackTime = binaryReader.ReadByte(); + Attrib = binaryReader.ReadByte(); + Special = binaryReader.ReadByte(); + Slot = binaryReader.ReadByte(); + Quality = binaryReader.ReadUInt16(); + Attack = binaryReader.ReadUInt16(); + AttackAdd = binaryReader.ReadUInt16(); + Def = binaryReader.ReadUInt16(); + Resist = binaryReader.ReadUInt16(); + Hp = binaryReader.ReadUInt16(); + Sp = binaryReader.ReadUInt16(); + Mp = binaryReader.ReadUInt16(); + Str = binaryReader.ReadUInt16(); + Dex = binaryReader.ReadUInt16(); + Rec = binaryReader.ReadUInt16(); + Int = binaryReader.ReadUInt16(); + Wis = binaryReader.ReadUInt16(); + Luc = binaryReader.ReadUInt16(); + Speed = binaryReader.ReadByte(); + Exp = binaryReader.ReadByte(); + BuyPrice = binaryReader.ReadUInt32(); + SellPrice = binaryReader.ReadUInt32(); + Grade = binaryReader.ReadUInt16(); + Drop = binaryReader.ReadUInt16(); + Server = binaryReader.ReadByte(); + Count = binaryReader.ReadByte(); + + if (episode >= Episode.EP6) + { + Duration = binaryReader.ReadUInt32(); + ExtDuration = binaryReader.ReadByte(); + SecOption = binaryReader.ReadByte(); + OptionRate = binaryReader.ReadByte(); + BuyMethod = binaryReader.ReadByte(); + MaxLevel = binaryReader.ReadByte(); + + Arg1 = binaryReader.ReadByte(); + Arg2 = binaryReader.ReadByte(); + Arg3 = binaryReader.ReadByte(); + Arg4 = binaryReader.ReadByte(); + Arg5 = binaryReader.ReadByte(); + + Arg6 = binaryReader.ReadUInt32(); + Arg7 = binaryReader.ReadUInt32(); + Arg8 = binaryReader.ReadUInt32(); + Arg9 = binaryReader.ReadUInt32(); + Arg10 = binaryReader.ReadUInt32(); + Arg11 = binaryReader.ReadUInt32(); + Arg12 = binaryReader.ReadUInt32(); + Arg13 = binaryReader.ReadUInt32(); + Arg14 = binaryReader.ReadUInt32(); + } + } + + public void Write(SBinaryWriter binaryWriter) + { + var episode = binaryWriter.SerializationOptions.Episode; + + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.WriteLengthPrefixedString(Description); + binaryWriter.Write(ItemType); + binaryWriter.Write(ItemTypeId); + binaryWriter.Write(Model); + binaryWriter.Write(Icon); + binaryWriter.Write(MinLevel); + binaryWriter.Write(Country); + binaryWriter.Write(AttackFighter); + binaryWriter.Write(DefenseFighter); + binaryWriter.Write(PatrolRogue); + binaryWriter.Write(ShootRogue); + binaryWriter.Write(AttackMage); + binaryWriter.Write(DefenseMage); + binaryWriter.Write(Grow); + binaryWriter.Write(Type2); + binaryWriter.Write(Type3); + binaryWriter.Write(ReqStr); + binaryWriter.Write(ReqDex); + binaryWriter.Write(ReqRec); + binaryWriter.Write(ReqInt); + binaryWriter.Write(ReqWis); + binaryWriter.Write(ReqLuc); + binaryWriter.Write(ReqVg); + + if (episode >= Episode.EP6) + { + binaryWriter.Write(Unknown); + } + + binaryWriter.Write(ReqOg); + binaryWriter.Write(ReqIg); + + if (episode <= Episode.EP5) + { + binaryWriter.Write(Range); + } + else + { + binaryWriter.Write(Range); + } + + binaryWriter.Write(AttackTime); + binaryWriter.Write(Attrib); + binaryWriter.Write(Special); + binaryWriter.Write(Slot); + binaryWriter.Write(Quality); + binaryWriter.Write(Attack); + binaryWriter.Write(AttackAdd); + binaryWriter.Write(Def); + binaryWriter.Write(Resist); + binaryWriter.Write(Hp); + binaryWriter.Write(Sp); + binaryWriter.Write(Mp); + binaryWriter.Write(Str); + binaryWriter.Write(Dex); + binaryWriter.Write(Rec); + binaryWriter.Write(Int); + binaryWriter.Write(Wis); + binaryWriter.Write(Luc); + binaryWriter.Write(Speed); + binaryWriter.Write(Exp); + binaryWriter.Write(BuyPrice); + binaryWriter.Write(SellPrice); + binaryWriter.Write(Grade); + binaryWriter.Write(Drop); + binaryWriter.Write(Server); + binaryWriter.Write(Count); + + if (episode >= Episode.EP6) + { + binaryWriter.Write(Duration); + binaryWriter.Write(ExtDuration); + binaryWriter.Write(SecOption); + binaryWriter.Write(OptionRate); + binaryWriter.Write(BuyMethod); + binaryWriter.Write(MaxLevel); + + binaryWriter.Write(Arg1); + binaryWriter.Write(Arg2); + binaryWriter.Write(Arg3); + binaryWriter.Write(Arg4); + binaryWriter.Write(Arg5); + + binaryWriter.Write(Arg6); + binaryWriter.Write(Arg7); + binaryWriter.Write(Arg8); + binaryWriter.Write(Arg9); + binaryWriter.Write(Arg10); + binaryWriter.Write(Arg11); + binaryWriter.Write(Arg12); + binaryWriter.Write(Arg13); + binaryWriter.Write(Arg14); + } + } +} diff --git a/src/Parsec/Shaiya/Item/ItemType.cs b/src/Parsec/Shaiya/Item/ItemType.cs deleted file mode 100644 index 0700b979..00000000 --- a/src/Parsec/Shaiya/Item/ItemType.cs +++ /dev/null @@ -1,68 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Item; - -public sealed class ItemType : IBinary -{ - public int Id { get; set; } - - public int MaxTypeId { get; set; } - - public List ItemDefinitions { get; } = new(); - - [JsonConstructor] - public ItemType() - { - } - - public ItemType(int id, int maxTypeId, IEnumerable itemDefinitions) - { - Id = id; - MaxTypeId = maxTypeId; - ItemDefinitions = itemDefinitions.ToList(); - } - - public ItemType(SBinaryReader binaryReader, int id, Episode episode, IDictionary<(byte type, byte typeId), ItemDefinition> itemIndex) - { - Id = id; - MaxTypeId = binaryReader.Read(); - - for (int i = 0; i < MaxTypeId; i++) - { - var itemDefinition = new ItemDefinition(binaryReader, episode); - ItemDefinitions.Add(itemDefinition); - itemIndex.Add((itemDefinition.Type, itemDefinition.TypeId), itemDefinition); - } - } - - public IEnumerable GetBytes(params object[] options) - { - var episode = Episode.EP5; - var encoding = Encoding.ASCII; - - if (options.Length > 0 && options[0] is Episode episodeOption) - { - episode = episodeOption; - } - - if (options.Length > 1 && options[1] is Encoding encodingOption) - { - encoding = encodingOption; - } - - var buffer = new List(); - buffer.AddRange(MaxTypeId.GetBytes()); - - foreach (var itemDefinition in ItemDefinitions) - { - buffer.AddRange(itemDefinition.GetBytes(episode, encoding)); - } - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Itm/Itm.cs b/src/Parsec/Shaiya/Itm/Itm.cs new file mode 100644 index 00000000..aaba422d --- /dev/null +++ b/src/Parsec/Shaiya/Itm/Itm.cs @@ -0,0 +1,95 @@ +using Newtonsoft.Json; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Itm; + +public sealed class Itm : FileBase +{ + /// + /// File Signature. Read as char[3]. "ITM" or "IT2" + /// + public string Signature { get; set; } = string.Empty; + + [JsonIgnore] + public ItmFormat Format { get; set; } + + /// + /// List of .3DO object names + /// + public List MeshNames { get; set; } = new(); + + /// + /// List of .dds texture names + /// + public List TextureNames { get; set; } = new(); + + /// + /// List of ITM records + /// + public List Records { get; set; } = new(); + + [JsonIgnore] + public override string Extension => "ITM"; + + protected override void Read(SBinaryReader binaryReader) + { + Signature = binaryReader.ReadString(3); + + Format = Signature switch + { + "ITM" => ItmFormat.ITM, + "IT2" => ItmFormat.IT2, + _ => ItmFormat.Unknown + }; + + // Records expect the format to be set on the serialization options ExtraOption property + binaryReader.SerializationOptions.ExtraOption = Format; + + var meshNameCount = binaryReader.ReadInt32(); + for (var i = 0; i < meshNameCount; i++) + { + var meshName = binaryReader.ReadString(); + MeshNames.Add(meshName); + } + + var textureNameCount = binaryReader.ReadInt32(); + for (var i = 0; i < textureNameCount; i++) + { + var textureName = binaryReader.ReadString(); + TextureNames.Add(textureName); + } + + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + // Records expect the format to be set on the serialization options ExtraOption property + binaryWriter.SerializationOptions.ExtraOption = Format; + + var signature = Format switch + { + ItmFormat.ITM => "ITM", + ItmFormat.IT2 => "IT2", + _ => "ITM" + }; + + binaryWriter.Write(signature); + + binaryWriter.Write(MeshNames.Count); + foreach (var meshName in MeshNames) + { + binaryWriter.Write(meshName); + } + + binaryWriter.Write(TextureNames.Count); + foreach (var textureName in TextureNames) + { + binaryWriter.Write(textureName); + } + + binaryWriter.Write(Records.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Itm/ItmFormat.cs b/src/Parsec/Shaiya/Itm/ItmFormat.cs new file mode 100644 index 00000000..f281d102 --- /dev/null +++ b/src/Parsec/Shaiya/Itm/ItmFormat.cs @@ -0,0 +1,8 @@ +namespace Parsec.Shaiya.Itm; + +public enum ItmFormat +{ + ITM, + IT2, + Unknown +} diff --git a/src/Parsec/Shaiya/Itm/ItmRecord.cs b/src/Parsec/Shaiya/Itm/ItmRecord.cs new file mode 100644 index 00000000..64b222bb --- /dev/null +++ b/src/Parsec/Shaiya/Itm/ItmRecord.cs @@ -0,0 +1,101 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Itm; + +public sealed class ItmRecord : ISerializable +{ + /// + /// Index of the .3DO filename + /// + public int MeshIndex { get; set; } + + /// + /// Index of the .DDS filename + /// + public int TextureIndex { get; set; } + + public AlphaBlendingMode AlphaBlendingMode { get; set; } + + public int Unknown1 { get; set; } + + /// + /// Record format. 0 or 1. + /// + public int RecordFormat { get; set; } + + public int Unknown2 { get; set; } + + /// + /// Present if is 1. + /// + public uint RGBA { get; set; } + + /// + /// Present if is 1. + /// + public float Rotation { get; set; } + + /// + /// Present if is 1. + /// + public float Scale { get; set; } + + /// + /// Present if is 1. + /// + public int Unknown3 { get; set; } + + /// + /// Present if is "IT2". + /// 1024 unknown bytes. 32 blocks of 8 uint32. + /// + public byte[] Unknown4 { get; set; } = new byte[1024]; + + public void Read(SBinaryReader binaryReader) + { + MeshIndex = binaryReader.ReadInt32(); + TextureIndex = binaryReader.ReadInt32(); + AlphaBlendingMode = (AlphaBlendingMode)binaryReader.ReadInt32(); + Unknown1 = binaryReader.ReadInt32(); + RecordFormat = binaryReader.ReadInt32(); + Unknown2 = binaryReader.ReadInt32(); + + if (RecordFormat == 1) + { + RGBA = binaryReader.ReadUInt32(); + Rotation = binaryReader.ReadSingle(); + Scale = binaryReader.ReadSingle(); + Unknown3 = binaryReader.ReadInt32(); + } + + if (binaryReader.SerializationOptions.ExtraOption is ItmFormat.IT2) + { + Unknown4 = binaryReader.ReadBytes(1024); + } + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(MeshIndex); + binaryWriter.Write(TextureIndex); + binaryWriter.Write((int)AlphaBlendingMode); + binaryWriter.Write(Unknown1); + binaryWriter.Write(RecordFormat); + binaryWriter.Write(Unknown2); + + if (RecordFormat == 1) + { + binaryWriter.Write(RGBA); + binaryWriter.Write(Rotation); + binaryWriter.Write(Scale); + binaryWriter.Write(Unknown3); + } + + if (binaryWriter.SerializationOptions.ExtraOption is ItmFormat.IT2) + { + binaryWriter.Write(Unknown4); + } + } +} diff --git a/src/Parsec/Shaiya/KillStatus/KillStatus.cs b/src/Parsec/Shaiya/KillStatus/KillStatus.cs index 5aa21fa5..76f19a2f 100644 --- a/src/Parsec/Shaiya/KillStatus/KillStatus.cs +++ b/src/Parsec/Shaiya/KillStatus/KillStatus.cs @@ -1,5 +1,5 @@ -using Parsec.Attributes; -using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.KillStatus; @@ -7,10 +7,17 @@ namespace Parsec.Shaiya.KillStatus; /// Class that represents the KillStatus.SData file format. /// This file contains the bonuses each faction receives based on bless of the goddess values. /// -[DefaultVersion(Episode.EP5)] public sealed class KillStatus : SData.SData { - [ShaiyaProperty] - [LengthPrefixedList(typeof(KillStatusRecord))] public List Records { get; set; } = new(); + + protected override void Read(SBinaryReader binaryReader) + { + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Records.ToSerializable()); + } } diff --git a/src/Parsec/Shaiya/KillStatus/KillStatusBonus.cs b/src/Parsec/Shaiya/KillStatus/KillStatusBonus.cs index 48397d30..c47195ef 100644 --- a/src/Parsec/Shaiya/KillStatus/KillStatusBonus.cs +++ b/src/Parsec/Shaiya/KillStatus/KillStatusBonus.cs @@ -1,18 +1,23 @@ -using Parsec.Attributes; +using Parsec.Serialization; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.KillStatus; -public sealed class KillStatusBonus +public sealed class KillStatusBonus : ISerializable { - /// - /// The type of bonus - /// - [ShaiyaProperty] - public KillStatusBonusType Type { get; set; } + public KillStatusBonusType BonusType { get; set; } - /// - /// The value of the bonus - /// - [ShaiyaProperty] - public short Value { get; set; } + public ushort BonusValue { get; set; } + + public void Read(SBinaryReader binaryReader) + { + BonusType = (KillStatusBonusType)binaryReader.ReadByte(); + BonusValue = binaryReader.ReadUInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write((byte)BonusType); + binaryWriter.Write(BonusValue); + } } diff --git a/src/Parsec/Shaiya/KillStatus/KillStatusFaction.cs b/src/Parsec/Shaiya/KillStatus/KillStatusFaction.cs new file mode 100644 index 00000000..faaa8372 --- /dev/null +++ b/src/Parsec/Shaiya/KillStatus/KillStatusFaction.cs @@ -0,0 +1,8 @@ +namespace Parsec.Shaiya.KillStatus; + +public enum KillStatusFaction : byte +{ + Light, + Fury, + Any +} diff --git a/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs b/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs index b035e306..f9d1e2d8 100644 --- a/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs +++ b/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs @@ -1,32 +1,44 @@ -using Parsec.Attributes; -using Parsec.Shaiya.Common; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.KillStatus; -public sealed class KillStatusRecord +public sealed class KillStatusRecord : ISerializable { /// /// The faction that will receive the bonus /// - [ShaiyaProperty] - public FactionByte Faction { get; set; } + public KillStatusFaction Faction { get; set; } /// /// The absolute bless value at which the bonuses will take effect /// - [ShaiyaProperty] public int BlessValue { get; set; } /// /// The index of this record /// - [ShaiyaProperty] - public short Index { get; set; } + public ushort Index { get; set; } /// - /// The bonuses to be applied + /// The bonuses to be applied (fixed length of 6) /// - [ShaiyaProperty] - [FixedLengthList(typeof(KillStatusBonus), 6)] public List Bonuses { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Faction = (KillStatusFaction)binaryReader.ReadByte(); + BlessValue = binaryReader.ReadInt32(); + Index = binaryReader.ReadUInt16(); + Bonuses = binaryReader.ReadList(6).ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write((byte)Faction); + binaryWriter.Write(BlessValue); + binaryWriter.Write(Index); + binaryWriter.Write(Bonuses.ToSerializable()); + } } diff --git a/src/Parsec/Shaiya/MAni/MAni.cs b/src/Parsec/Shaiya/MAni/MAni.cs deleted file mode 100644 index 99552a61..00000000 --- a/src/Parsec/Shaiya/MAni/MAni.cs +++ /dev/null @@ -1,117 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MAni; - -/// -/// Represents a .mani file. Its used to define an animation for an SMOD object, that's where the extension comes -/// from, given by "Mesh Animation" -/// -public sealed class MAni : FileBase -{ - /// - /// Always 0x21 = 33 - /// - public int Version { get; set; } - - public int Unknown1 { get; set; } - - public Vector3 UnknownVec1 { get; set; } - - public float Unknown2 { get; set; } - - public float Unknown3 { get; set; } - - public float Unknown4 { get; set; } - - public int Unknown5 { get; set; } - - public int Unknown6 { get; set; } - - public Vector3 UnknownVec2 { get; set; } - - public float Unknown7 { get; set; } - - public float Unknown8 { get; set; } - - /// - /// Indicates if the object should rotate - /// - public int EnableRotation { get; set; } - - /// - /// Indicates the axis of rotation of the object, -1f or 1f values should be used - /// - public Vector3 Rotation { get; set; } - - /// - /// Animation Speed [0.0f, 1.0f] - /// - public float AnimationSpeed { get; set; } - - public short UnknownShort1 { get; set; } - - public short UnknownShort2 { get; set; } - - public Vector3 UnknownVec4 { get; set; } - - public float Unknown11 { get; set; } - - public float Unknown12 { get; set; } - - public int Unknown13 { get; set; } - - public override string Extension => "mani"; - - public override void Read() - { - Version = _binaryReader.Read(); - Unknown1 = _binaryReader.Read(); - UnknownVec1 = new Vector3(_binaryReader); - Unknown2 = _binaryReader.Read(); - Unknown3 = _binaryReader.Read(); - Unknown4 = _binaryReader.Read(); - Unknown5 = _binaryReader.Read(); - Unknown6 = _binaryReader.Read(); - UnknownVec2 = new Vector3(_binaryReader); - Unknown7 = _binaryReader.Read(); - Unknown8 = _binaryReader.Read(); - EnableRotation = _binaryReader.Read(); - Rotation = new Vector3(_binaryReader); - AnimationSpeed = _binaryReader.Read(); - UnknownShort1 = _binaryReader.Read(); - UnknownShort2 = _binaryReader.Read(); - UnknownVec4 = new Vector3(_binaryReader); - Unknown11 = _binaryReader.Read(); - Unknown12 = _binaryReader.Read(); - Unknown13 = _binaryReader.Read(); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Version.GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(UnknownVec1.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Unknown3.GetBytes()); - buffer.AddRange(Unknown4.GetBytes()); - buffer.AddRange(Unknown5.GetBytes()); - buffer.AddRange(Unknown6.GetBytes()); - buffer.AddRange(UnknownVec2.GetBytes()); - buffer.AddRange(Unknown7.GetBytes()); - buffer.AddRange(Unknown8.GetBytes()); - buffer.AddRange(EnableRotation.GetBytes()); - buffer.AddRange(Rotation.GetBytes()); - buffer.AddRange(AnimationSpeed.GetBytes()); - buffer.AddRange(UnknownShort1.GetBytes()); - buffer.AddRange(UnknownShort2.GetBytes()); - buffer.AddRange(UnknownVec4.GetBytes()); - buffer.AddRange(Unknown11.GetBytes()); - buffer.AddRange(Unknown12.GetBytes()); - buffer.AddRange(Unknown13.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MLT/MLT.cs b/src/Parsec/Shaiya/MLT/MLT.cs deleted file mode 100644 index 921ed20b..00000000 --- a/src/Parsec/Shaiya/MLT/MLT.cs +++ /dev/null @@ -1,73 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MLT; - -public sealed class MLT : FileBase -{ - /// - /// File Signature. Read as char[3] - /// - public string Signature { get; set; } = string.Empty; - - /// - /// List of .3DC object names - /// - public List Obj3DCNames { get; } = new(); - - /// - /// List of .dds texture names - /// - public List TextureNames { get; } = new(); - - /// - /// List of MLT records - /// - public List Records { get; } = new(); - - public override string Extension => "MLT"; - - public override void Read() - { - Signature = _binaryReader.ReadString(3); - - int obj3dcCount = _binaryReader.Read(); - for (int i = 0; i < obj3dcCount; i++) - { - string obj3dcName = _binaryReader.ReadString(); - Obj3DCNames.Add(obj3dcName); - } - - int textureNameCount = _binaryReader.Read(); - for (int i = 0; i < textureNameCount; i++) - { - string textureName = _binaryReader.ReadString(); - TextureNames.Add(textureName); - } - - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new MLTRecord(_binaryReader); - Records.Add(record); - } - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Signature.GetBytes()); - - buffer.AddRange(Obj3DCNames.Count.GetBytes()); - foreach (string obj3dcName in Obj3DCNames) - buffer.AddRange(obj3dcName.GetLengthPrefixedBytes()); - - buffer.AddRange(TextureNames.Count.GetBytes()); - foreach (string textureName in TextureNames) - buffer.AddRange(textureName.GetLengthPrefixedBytes()); - - buffer.AddRange(Records.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MLT/MLTRecord.cs b/src/Parsec/Shaiya/MLT/MLTRecord.cs deleted file mode 100644 index c59444c0..00000000 --- a/src/Parsec/Shaiya/MLT/MLTRecord.cs +++ /dev/null @@ -1,45 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MLT; - -public sealed class MLTRecord : IBinary -{ - [JsonConstructor] - public MLTRecord() - { - } - - public MLTRecord(SBinaryReader binaryReader) - { - Obj3DCIndex = binaryReader.Read(); - TextureIndex = binaryReader.Read(); - Alpha = binaryReader.Read(); - } - - /// - /// Index of the .3DC filename - /// - public int Obj3DCIndex { get; set; } - - /// - /// Index of the .DDS filename - /// - public int TextureIndex { get; set; } - - /// - /// Alpha channel flag. 0: visibility 1: glow - /// - public int Alpha { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Obj3DCIndex.GetBytes()); - buffer.AddRange(TextureIndex.GetBytes()); - buffer.AddRange(Alpha.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MLX/MLX.cs b/src/Parsec/Shaiya/MLX/MLX.cs deleted file mode 100644 index 1ff250f2..00000000 --- a/src/Parsec/Shaiya/MLX/MLX.cs +++ /dev/null @@ -1,61 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MLX; - -/// -/// Represents a .MLX file, which is used as an index for 3DC-DDS combinations for each class/sex combination -/// -public sealed class MLX : FileBase -{ - public List Records { get; } = new(); - - public override string Extension => "MLX"; - - public MLXFormat Format { get; set; } = MLXFormat.MLX1; - - public override void Read() - { - // For some reason, sometimes MLX files are empty - if (_binaryReader.Length == 0) - return; - - string signature = _binaryReader.ReadString(4); - - if (signature == "MLX2") - Format = MLXFormat.MLX2; - else - _binaryReader.ResetOffset(); - - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - Records.Add(new MLXRecord(_binaryReader, Format)); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - - if (Format == MLXFormat.MLX2) - buffer.AddRange(MLXFormat.MLX2.ToString().GetBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - foreach (var record in Records) - buffer.AddRange(record.GetBytes(Format)); - - return buffer; - } - - /// - /// Helper method to recalculate MLX record indices, just in case they get messed up or new records have been added - /// - public void RecalculateIndices() - { - for (int i = 0; i < Records.Count; i++) - { - var record = Records[i]; - record.Id = i; - } - } -} diff --git a/src/Parsec/Shaiya/MLX/MLXFormat.cs b/src/Parsec/Shaiya/MLX/MLXFormat.cs deleted file mode 100644 index 671abba1..00000000 --- a/src/Parsec/Shaiya/MLX/MLXFormat.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace Parsec.Shaiya.MLX; - -public enum MLXFormat -{ - MLX1, - MLX2 -} diff --git a/src/Parsec/Shaiya/MLX/MLXRecord.cs b/src/Parsec/Shaiya/MLX/MLXRecord.cs deleted file mode 100644 index 6d239b0d..00000000 --- a/src/Parsec/Shaiya/MLX/MLXRecord.cs +++ /dev/null @@ -1,101 +0,0 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MLX; - -public sealed class MLXRecord : IBinary -{ - [JsonConstructor] - public MLXRecord() - { - } - - public MLXRecord(SBinaryReader binaryReader, MLXFormat format) - { - var stringEncoding = format == MLXFormat.MLX2 ? Encoding.Unicode : Encoding.ASCII; - - Id = binaryReader.Read(); - Name = binaryReader.ReadString(stringEncoding); - - UpperTextureName = binaryReader.ReadString(stringEncoding); - Upper3DCName = binaryReader.ReadString(stringEncoding); - - if (format == MLXFormat.MLX2) - UpperNumber = binaryReader.Read(); - - LowerTextureName = binaryReader.ReadString(stringEncoding); - Lower3DCName = binaryReader.ReadString(stringEncoding); - - if (format == MLXFormat.MLX2) - LowerNumber = binaryReader.Read(); - - BootsTextureName = binaryReader.ReadString(stringEncoding); - Boots3DCName = binaryReader.ReadString(stringEncoding); - - if (format == MLXFormat.MLX2) - BootsNumber = binaryReader.Read(); - - HandsTextureName = binaryReader.ReadString(stringEncoding); - Hands3DCName = binaryReader.ReadString(stringEncoding); - - if (format == MLXFormat.MLX2) - HandsNumber = binaryReader.Read(); - } - - public int Id { get; set; } - public string Name { get; set; } = string.Empty; - public string UpperTextureName { get; set; } = string.Empty; - public string Upper3DCName { get; set; } = string.Empty; - public int UpperNumber { get; set; } = 1; - public string LowerTextureName { get; set; } = string.Empty; - public string Lower3DCName { get; set; } = string.Empty; - public int LowerNumber { get; set; } = 1; - public string BootsTextureName { get; set; } = string.Empty; - public string Boots3DCName { get; set; } = string.Empty; - public int BootsNumber { get; set; } = 1; - public string HandsTextureName { get; set; } = string.Empty; - public string Hands3DCName { get; set; } = string.Empty; - public int HandsNumber { get; set; } = 1; - - public IEnumerable GetBytes(params object[] options) - { - var version = MLXFormat.MLX1; - - if (options.Length > 0) - version = (MLXFormat)options[0]; - - var stringEncoding = version == MLXFormat.MLX2 ? Encoding.Unicode : Encoding.ASCII; - - var buffer = new List(); - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Name.GetLengthPrefixedBytes(stringEncoding)); - buffer.AddRange(UpperTextureName.GetLengthPrefixedBytes(stringEncoding)); - buffer.AddRange(Upper3DCName.GetLengthPrefixedBytes(stringEncoding)); - - if (version == MLXFormat.MLX2) - buffer.AddRange(UpperNumber.GetBytes()); - - buffer.AddRange(LowerTextureName.GetLengthPrefixedBytes(stringEncoding)); - buffer.AddRange(Lower3DCName.GetLengthPrefixedBytes(stringEncoding)); - - if (version == MLXFormat.MLX2) - buffer.AddRange(LowerNumber.GetBytes()); - - buffer.AddRange(BootsTextureName.GetLengthPrefixedBytes(stringEncoding)); - buffer.AddRange(Boots3DCName.GetLengthPrefixedBytes(stringEncoding)); - - if (version == MLXFormat.MLX2) - buffer.AddRange(BootsNumber.GetBytes()); - - buffer.AddRange(HandsTextureName.GetLengthPrefixedBytes(stringEncoding)); - buffer.AddRange(Hands3DCName.GetLengthPrefixedBytes(stringEncoding)); - - if (version == MLXFormat.MLX2) - buffer.AddRange(HandsNumber.GetBytes()); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MON/MON.cs b/src/Parsec/Shaiya/MON/MON.cs deleted file mode 100644 index 920a03ea..00000000 --- a/src/Parsec/Shaiya/MON/MON.cs +++ /dev/null @@ -1,54 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MON; - -public sealed class MON : FileBase -{ - /// - /// File signature. "MO2", "MO4". Read as char[3] - /// - public string Signature { get; set; } = string.Empty; - - public MONFormat Format { get; set; } = MONFormat.MO2; - - public List Records { get; } = new(); - - public override string Extension => "MON"; - - public override void Read() - { - Signature = _binaryReader.ReadString(3); - - switch (Signature) - { - case "MO2": - default: - Format = MONFormat.MO2; - break; - case "MO4": - Format = MONFormat.MO4; - break; - } - - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new MONRecord(_binaryReader, Format); - Records.Add(record); - } - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Format.ToString().GetBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - foreach (var record in Records) - buffer.AddRange(record.GetBytes(Format)); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MON/MONEffect.cs b/src/Parsec/Shaiya/MON/MONEffect.cs deleted file mode 100644 index 066422f5..00000000 --- a/src/Parsec/Shaiya/MON/MONEffect.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MON; - -public class MONEffect : IBinary -{ - public int BoneId { get; set; } - public int EffectId { get; set; } - - [JsonConstructor] - public MONEffect() - { - } - - public MONEffect(SBinaryReader binaryReader) - { - BoneId = binaryReader.Read(); - EffectId = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(BoneId.GetBytes()); - buffer.AddRange(EffectId.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MON/MONFormat.cs b/src/Parsec/Shaiya/MON/MONFormat.cs deleted file mode 100644 index 4f91fe87..00000000 --- a/src/Parsec/Shaiya/MON/MONFormat.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace Parsec.Shaiya.MON; - -public enum MONFormat -{ - MO2, - MO4 -} diff --git a/src/Parsec/Shaiya/MON/MONObject.cs b/src/Parsec/Shaiya/MON/MONObject.cs deleted file mode 100644 index 916cd371..00000000 --- a/src/Parsec/Shaiya/MON/MONObject.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MON; - -public sealed class MONObject : IBinary -{ - [JsonConstructor] - public MONObject() - { - } - - public MONObject(SBinaryReader binaryReader) - { - Object3DCName = binaryReader.ReadString(); - TextureName = binaryReader.ReadString(); - } - - public string Object3DCName { get; set; } = string.Empty; - public string TextureName { get; set; } = string.Empty; - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Object3DCName.GetLengthPrefixedBytes(false)); - buffer.AddRange(TextureName.GetLengthPrefixedBytes(false)); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/MON/MONRecord.cs b/src/Parsec/Shaiya/MON/MONRecord.cs deleted file mode 100644 index 06faaf20..00000000 --- a/src/Parsec/Shaiya/MON/MONRecord.cs +++ /dev/null @@ -1,135 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.MON; - -public sealed class MONRecord : IBinary -{ - [JsonConstructor] - public MONRecord() - { - } - - public MONRecord(SBinaryReader binaryReader, MONFormat format) - { - Name = binaryReader.ReadString(); - Unknown = binaryReader.Read(); - WalkAnimation = binaryReader.ReadString(); - RunAnimation = binaryReader.ReadString(); - JumpAttack1Animation = binaryReader.ReadString(); - Attack2Animation = binaryReader.ReadString(); - Attack3Animation = binaryReader.ReadString(); - DeathAnimation = binaryReader.ReadString(); - BreathAnimation = binaryReader.ReadString(); - DamageAnimation = binaryReader.ReadString(); - IdleAnimation = binaryReader.ReadString(); - - Attack1Wav = binaryReader.ReadString(); - Attack2Wav = binaryReader.ReadString(); - Attack3Wav = binaryReader.ReadString(); - DeathWav = binaryReader.ReadString(); - - Attack1Effect = binaryReader.ReadString(); - Attack2Effect = binaryReader.ReadString(); - Attack3Effect = binaryReader.ReadString(); - DieEffect = binaryReader.ReadString(); - - if (format == MONFormat.MO4) - AttachEffect = binaryReader.ReadString(); - - var objectCount = binaryReader.Read(); - - for (int i = 0; i < objectCount; i++) - { - var obj = new MONObject(binaryReader); - Objects.Add(obj); - } - - Height = binaryReader.Read(); - - var effectCount = binaryReader.Read(); - - for (int i = 0; i < effectCount; i++) - { - var effect = new MONEffect(binaryReader); - Effects.Add(effect); - } - } - - public string Name { get; set; } = string.Empty; - public byte Unknown { get; set; } - public string WalkAnimation { get; set; } = string.Empty; - public string RunAnimation { get; set; } = string.Empty; - - /// - /// Jump or Attack1 animation. Jump for vehicles, Attack1 for mobs. - /// - public string JumpAttack1Animation { get; set; } = string.Empty; - - public string Attack2Animation { get; set; } = string.Empty; - public string Attack3Animation { get; set; } = string.Empty; - public string DeathAnimation { get; set; } = string.Empty; - public string BreathAnimation { get; set; } = string.Empty; - public string DamageAnimation { get; set; } = string.Empty; - public string IdleAnimation { get; set; } = string.Empty; - - public string Attack1Wav { get; set; } = string.Empty; - public string Attack2Wav { get; set; } = string.Empty; - public string Attack3Wav { get; set; } = string.Empty; - public string DeathWav { get; set; } = string.Empty; - - public string Attack1Effect { get; set; } = string.Empty; - public string Attack2Effect { get; set; } = string.Empty; - public string Attack3Effect { get; set; } = string.Empty; - public string DieEffect { get; set; } = string.Empty; - public string AttachEffect { get; set; } = string.Empty; - - public List Objects { get; } = new(); - - public float Height { get; set; } - - public List Effects { get; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - var outputFormat = MONFormat.MO2; - - if (options.Length > 0) - outputFormat = (MONFormat)options[0]; - - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes(false)); - buffer.Add(Unknown); - buffer.AddRange(WalkAnimation.GetLengthPrefixedBytes(false)); - buffer.AddRange(RunAnimation.GetLengthPrefixedBytes(false)); - buffer.AddRange(JumpAttack1Animation.GetLengthPrefixedBytes(false)); - - buffer.AddRange(Attack2Animation.GetLengthPrefixedBytes(false)); - buffer.AddRange(Attack3Animation.GetLengthPrefixedBytes(false)); - buffer.AddRange(DeathAnimation.GetLengthPrefixedBytes(false)); - buffer.AddRange(BreathAnimation.GetLengthPrefixedBytes(false)); - buffer.AddRange(DamageAnimation.GetLengthPrefixedBytes(false)); - buffer.AddRange(IdleAnimation.GetLengthPrefixedBytes(false)); - - buffer.AddRange(Attack1Wav.GetLengthPrefixedBytes(false)); - buffer.AddRange(Attack2Wav.GetLengthPrefixedBytes(false)); - buffer.AddRange(Attack3Wav.GetLengthPrefixedBytes(false)); - buffer.AddRange(DeathWav.GetLengthPrefixedBytes(false)); - - buffer.AddRange(Attack1Effect.GetLengthPrefixedBytes(false)); - buffer.AddRange(Attack2Effect.GetLengthPrefixedBytes(false)); - buffer.AddRange(Attack3Effect.GetLengthPrefixedBytes(false)); - buffer.AddRange(DieEffect.GetLengthPrefixedBytes(false)); - - if (outputFormat == MONFormat.MO4) - buffer.AddRange(AttachEffect.GetLengthPrefixedBytes(false)); - - buffer.AddRange(Objects.GetBytes()); - buffer.AddRange(Height.GetBytes()); - buffer.AddRange(Effects.GetBytes()); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Mani/Mani.cs b/src/Parsec/Shaiya/Mani/Mani.cs new file mode 100644 index 00000000..13e85483 --- /dev/null +++ b/src/Parsec/Shaiya/Mani/Mani.cs @@ -0,0 +1,114 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mani; + +/// +/// Represents a .mani file. Its used to define an animation for an SMOD object, that's where the extension comes +/// from, given by "Mesh Animation" +/// +public sealed class Mani : FileBase +{ + /// + /// Always 0x21 = 33 + /// + public int Version { get; set; } + + public int Unknown1 { get; set; } + + public Vector3 UnknownVec1 { get; set; } + + public float Unknown2 { get; set; } + + public float Unknown3 { get; set; } + + public float Unknown4 { get; set; } + + public int Unknown5 { get; set; } + + public int Unknown6 { get; set; } + + public Vector3 UnknownVec2 { get; set; } + + public float Unknown7 { get; set; } + + public float Unknown8 { get; set; } + + /// + /// Indicates if the object should rotate + /// + public int EnableRotation { get; set; } + + /// + /// Indicates the axis of rotation of the object, -1f or 1f values should be used + /// + public Vector3 Rotation { get; set; } + + /// + /// Animation Speed [0.0f, 1.0f] + /// + public float AnimationSpeed { get; set; } + + public short UnknownShort1 { get; set; } + + public short UnknownShort2 { get; set; } + + public Vector3 UnknownVec4 { get; set; } + + public float Unknown11 { get; set; } + + public float Unknown12 { get; set; } + + public int Unknown13 { get; set; } + + public override string Extension => "mani"; + + protected override void Read(SBinaryReader binaryReader) + { + Version = binaryReader.ReadInt32(); + Unknown1 = binaryReader.ReadInt32(); + UnknownVec1 = binaryReader.Read(); + Unknown2 = binaryReader.ReadSingle(); + Unknown3 = binaryReader.ReadSingle(); + Unknown4 = binaryReader.ReadSingle(); + Unknown5 = binaryReader.ReadInt32(); + Unknown6 = binaryReader.ReadInt32(); + UnknownVec2 = binaryReader.Read(); + Unknown7 = binaryReader.ReadSingle(); + Unknown8 = binaryReader.ReadSingle(); + EnableRotation = binaryReader.ReadInt32(); + Rotation = binaryReader.Read(); + AnimationSpeed = binaryReader.ReadSingle(); + UnknownShort1 = binaryReader.ReadInt16(); + UnknownShort2 = binaryReader.ReadInt16(); + UnknownVec4 = binaryReader.Read(); + Unknown11 = binaryReader.ReadSingle(); + Unknown12 = binaryReader.ReadSingle(); + Unknown13 = binaryReader.ReadInt32(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Version); + binaryWriter.Write(Unknown1); + binaryWriter.Write(UnknownVec1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Unknown3); + binaryWriter.Write(Unknown4); + binaryWriter.Write(Unknown5); + binaryWriter.Write(Unknown6); + binaryWriter.Write(UnknownVec2); + binaryWriter.Write(Unknown7); + binaryWriter.Write(Unknown8); + binaryWriter.Write(EnableRotation); + binaryWriter.Write(Rotation); + binaryWriter.Write(AnimationSpeed); + binaryWriter.Write(UnknownShort1); + binaryWriter.Write(UnknownShort2); + binaryWriter.Write(UnknownVec4); + binaryWriter.Write(Unknown11); + binaryWriter.Write(Unknown12); + binaryWriter.Write(Unknown13); + } +} diff --git a/src/Parsec/Shaiya/Mlt/Mlt.cs b/src/Parsec/Shaiya/Mlt/Mlt.cs new file mode 100644 index 00000000..43d8160d --- /dev/null +++ b/src/Parsec/Shaiya/Mlt/Mlt.cs @@ -0,0 +1,70 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mlt; + +public sealed class Mlt : FileBase +{ + /// + /// File Signature. Read as char[3] + /// + public string Signature { get; set; } = string.Empty; + + /// + /// List of .3DC object names + /// + public List MeshNames { get; set; } = new(); + + /// + /// List of .dds texture names + /// + public List TextureNames { get; set; } = new(); + + /// + /// List of MLT records + /// + public List Records { get; set; } = new(); + + public override string Extension => "MLT"; + + protected override void Read(SBinaryReader binaryReader) + { + Signature = binaryReader.ReadString(3); + + var meshNameCount = binaryReader.ReadInt32(); + for (var i = 0; i < meshNameCount; i++) + { + var meshName = binaryReader.ReadString(); + MeshNames.Add(meshName); + } + + int textureNameCount = binaryReader.ReadInt32(); + for (int i = 0; i < textureNameCount; i++) + { + string textureName = binaryReader.ReadString(); + TextureNames.Add(textureName); + } + + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Signature); + + binaryWriter.Write(MeshNames.Count); + foreach (var meshName in MeshNames) + { + binaryWriter.WriteLengthPrefixedString(meshName); + } + + binaryWriter.Write(TextureNames.Count); + foreach (var textureName in TextureNames) + { + binaryWriter.WriteLengthPrefixedString(textureName); + } + + binaryWriter.Write(Records.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Mlt/MltRecord.cs b/src/Parsec/Shaiya/Mlt/MltRecord.cs new file mode 100644 index 00000000..f51d6e94 --- /dev/null +++ b/src/Parsec/Shaiya/Mlt/MltRecord.cs @@ -0,0 +1,37 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mlt; + +public sealed class MltRecord : ISerializable +{ + /// + /// Index of the .3DC filename + /// + public int MeshIndex { get; set; } + + /// + /// Index of the .DDS filename + /// + public int TextureIndex { get; set; } + + /// + /// Alpha blending mode + /// + public AlphaBlendingMode AlphaBlendingMode { get; set; } + + public void Read(SBinaryReader binaryReader) + { + MeshIndex = binaryReader.ReadInt32(); + TextureIndex = binaryReader.ReadInt32(); + AlphaBlendingMode = (AlphaBlendingMode)binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(MeshIndex); + binaryWriter.Write(TextureIndex); + binaryWriter.Write((int)AlphaBlendingMode); + } +} diff --git a/src/Parsec/Shaiya/Mlx/Mlx.cs b/src/Parsec/Shaiya/Mlx/Mlx.cs new file mode 100644 index 00000000..4e717e80 --- /dev/null +++ b/src/Parsec/Shaiya/Mlx/Mlx.cs @@ -0,0 +1,48 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mlx; + +/// +/// Represents a .MLX file, which is used as an index for 3DC-DDS combinations for each class/sex combination +/// +public sealed class Mlx : FileBase +{ + public MlxFormat Format { get; set; } = MlxFormat.MLX1; + + public List Records { get; set; } = new(); + + public override string Extension => "MLX"; + + protected override void Read(SBinaryReader binaryReader) + { + var signature = binaryReader.ReadString(4); + + if (signature == "MLX2") + { + Format = MlxFormat.MLX2; + } + else + { + Format = MlxFormat.MLX1; + binaryReader.ResetOffset(); + } + + // MlxRecord instances expect the Format to be set as the ExtraOption on the serialization options + binaryReader.SerializationOptions.ExtraOption = Format; + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + if (Format == MlxFormat.MLX2) + { + binaryWriter.Write("MLX2"); + } + + // MlxRecord instances expect the Format to be set as the ExtraOption on the serialization options + binaryWriter.SerializationOptions.ExtraOption = Format; + binaryWriter.Write(Records.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Mlx/MlxFormat.cs b/src/Parsec/Shaiya/Mlx/MlxFormat.cs new file mode 100644 index 00000000..6b06c7f9 --- /dev/null +++ b/src/Parsec/Shaiya/Mlx/MlxFormat.cs @@ -0,0 +1,7 @@ +namespace Parsec.Shaiya.Mlx; + +public enum MlxFormat +{ + MLX1, + MLX2 +} diff --git a/src/Parsec/Shaiya/Mlx/MlxRecord.cs b/src/Parsec/Shaiya/Mlx/MlxRecord.cs new file mode 100644 index 00000000..b95b849b --- /dev/null +++ b/src/Parsec/Shaiya/Mlx/MlxRecord.cs @@ -0,0 +1,134 @@ +using System.Text; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mlx; + +public sealed class MlxRecord : ISerializable +{ + public int Id { get; set; } + + public string Name { get; set; } = string.Empty; + + public string UpperTextureName { get; set; } = string.Empty; + + public string UpperMeshName { get; set; } = string.Empty; + + public int UpperNumber { get; set; } = 1; + + public string LowerTextureName { get; set; } = string.Empty; + + public string LowerMeshName { get; set; } = string.Empty; + + public int LowerNumber { get; set; } = 1; + + public string BootsTextureName { get; set; } = string.Empty; + + public string BootsMeshName { get; set; } = string.Empty; + + public int BootsNumber { get; set; } = 1; + + public string HandsTextureName { get; set; } = string.Empty; + + public string HandsMeshName { get; set; } = string.Empty; + + public int HandsNumber { get; set; } = 1; + + public void Read(SBinaryReader binaryReader) + { + var format = MlxFormat.MLX1; + + if (binaryReader.SerializationOptions.ExtraOption is MlxFormat optionFormat) + { + format = optionFormat; + } + + // Define encoding based on format + var stringEncoding = format == MlxFormat.MLX2 ? Encoding.Unicode : Encoding.ASCII; + binaryReader.SerializationOptions.Encoding = stringEncoding; + + Id = binaryReader.ReadInt32(); + Name = binaryReader.ReadString(); + + UpperTextureName = binaryReader.ReadString(); + UpperMeshName = binaryReader.ReadString(); + + if (format == MlxFormat.MLX2) + { + UpperNumber = binaryReader.ReadInt32(); + } + + LowerTextureName = binaryReader.ReadString(); + LowerMeshName = binaryReader.ReadString(); + + if (format == MlxFormat.MLX2) + { + LowerNumber = binaryReader.ReadInt32(); + } + + BootsTextureName = binaryReader.ReadString(); + BootsMeshName = binaryReader.ReadString(); + + if (format == MlxFormat.MLX2) + { + BootsNumber = binaryReader.ReadInt32(); + } + + HandsTextureName = binaryReader.ReadString(); + HandsMeshName = binaryReader.ReadString(); + + if (format == MlxFormat.MLX2) + { + HandsNumber = binaryReader.ReadInt32(); + } + } + + public void Write(SBinaryWriter binaryWriter) + { + var format = MlxFormat.MLX1; + + if (binaryWriter.SerializationOptions.ExtraOption is MlxFormat optionFormat) + { + format = optionFormat; + } + + // Define encoding based on format + var stringEncoding = format == MlxFormat.MLX2 ? Encoding.Unicode : Encoding.ASCII; + binaryWriter.SerializationOptions.Encoding = stringEncoding; + + binaryWriter.Write(Id); + binaryWriter.Write(Name); + + binaryWriter.Write(UpperTextureName); + binaryWriter.Write(UpperMeshName); + + if (format == MlxFormat.MLX2) + { + binaryWriter.Write(UpperNumber); + } + + binaryWriter.Write(LowerTextureName); + binaryWriter.Write(LowerMeshName); + + if (format == MlxFormat.MLX2) + { + binaryWriter.Write(LowerNumber); + } + + binaryWriter.Write(BootsTextureName); + binaryWriter.Write(BootsMeshName); + + if (format == MlxFormat.MLX2) + { + binaryWriter.Write(BootsNumber); + } + + binaryWriter.Write(HandsTextureName); + binaryWriter.Write(HandsMeshName); + + if (format == MlxFormat.MLX2) + { + binaryWriter.Write(HandsNumber); + } + } +} diff --git a/src/Parsec/Shaiya/Mon/Mon.cs b/src/Parsec/Shaiya/Mon/Mon.cs new file mode 100644 index 00000000..50a0ec8f --- /dev/null +++ b/src/Parsec/Shaiya/Mon/Mon.cs @@ -0,0 +1,48 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mon; + +public sealed class Mon : FileBase +{ + /// + /// File signature. "MO2", "MO4". Read as char[3] + /// + public string Signature { get; set; } = string.Empty; + + public MonFormat Format { get; set; } = MonFormat.MO2; + + public List Records { get; set; } = new(); + + public override string Extension => "MON"; + + protected override void Read(SBinaryReader binaryReader) + { + Signature = binaryReader.ReadString(3); + + switch (Signature) + { + case "MO2": + default: + Format = MonFormat.MO2; + break; + case "MO4": + Format = MonFormat.MO4; + break; + } + + // Record instances expect the Format to be set as the ExtraOption on the serialization options + binaryReader.SerializationOptions.ExtraOption = Format; + Records = binaryReader.ReadList().ToList(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + // Record instances expect the Format to be set as the ExtraOption on the serialization options + binaryWriter.SerializationOptions.ExtraOption = Format; + + binaryWriter.Write(Signature); + binaryWriter.Write(Records.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Mon/MonEffect.cs b/src/Parsec/Shaiya/Mon/MonEffect.cs new file mode 100644 index 00000000..fbd16b92 --- /dev/null +++ b/src/Parsec/Shaiya/Mon/MonEffect.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mon; + +public class MonEffect : ISerializable +{ + public int BoneId { get; set; } + + public int EffectId { get; set; } + + public void Read(SBinaryReader binaryReader) + { + BoneId = binaryReader.ReadInt32(); + EffectId = binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(BoneId); + binaryWriter.Write(EffectId); + } +} diff --git a/src/Parsec/Shaiya/Mon/MonFormat.cs b/src/Parsec/Shaiya/Mon/MonFormat.cs new file mode 100644 index 00000000..dc5b946b --- /dev/null +++ b/src/Parsec/Shaiya/Mon/MonFormat.cs @@ -0,0 +1,7 @@ +namespace Parsec.Shaiya.Mon; + +public enum MonFormat +{ + MO2, + MO4 +} diff --git a/src/Parsec/Shaiya/Mon/MonObject.cs b/src/Parsec/Shaiya/Mon/MonObject.cs new file mode 100644 index 00000000..eefe645f --- /dev/null +++ b/src/Parsec/Shaiya/Mon/MonObject.cs @@ -0,0 +1,29 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mon; + +public sealed class MonObject : ISerializable +{ + /// + /// Name of the .3DC mesh file + /// + public string MeshName { get; set; } = string.Empty; + + /// + /// Name of the .dds texture file + /// + public string TextureName { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + MeshName = binaryReader.ReadString(); + TextureName = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(MeshName); + binaryWriter.Write(TextureName); + } +} diff --git a/src/Parsec/Shaiya/Mon/MonRecord.cs b/src/Parsec/Shaiya/Mon/MonRecord.cs new file mode 100644 index 00000000..c7dec0d1 --- /dev/null +++ b/src/Parsec/Shaiya/Mon/MonRecord.cs @@ -0,0 +1,139 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Mon; + +public sealed class MonRecord : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public byte Unknown { get; set; } + + public string WalkAnimation { get; set; } = string.Empty; + + public string RunAnimation { get; set; } = string.Empty; + + /// + /// Jump or Attack1 animation. Jump for vehicles, Attack1 for mobs. + /// + public string JumpAttack1Animation { get; set; } = string.Empty; + + public string Attack2Animation { get; set; } = string.Empty; + + public string Attack3Animation { get; set; } = string.Empty; + + public string DeathAnimation { get; set; } = string.Empty; + + public string BreathAnimation { get; set; } = string.Empty; + + public string DamageAnimation { get; set; } = string.Empty; + + public string IdleAnimation { get; set; } = string.Empty; + + public string Attack1Wav { get; set; } = string.Empty; + + public string Attack2Wav { get; set; } = string.Empty; + + public string Attack3Wav { get; set; } = string.Empty; + + public string DeathWav { get; set; } = string.Empty; + + public string Attack1Effect { get; set; } = string.Empty; + + public string Attack2Effect { get; set; } = string.Empty; + + public string Attack3Effect { get; set; } = string.Empty; + + public string DieEffect { get; set; } = string.Empty; + + public string AttachEffect { get; set; } = string.Empty; + + public List Objects { get; set; } = new(); + + public float Height { get; set; } + + public List Effects { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + var format = MonFormat.MO2; + + if (binaryReader.SerializationOptions.ExtraOption is MonFormat optionFormat) + { + format = optionFormat; + } + + Name = binaryReader.ReadString(); + Unknown = binaryReader.ReadByte(); + WalkAnimation = binaryReader.ReadString(); + RunAnimation = binaryReader.ReadString(); + JumpAttack1Animation = binaryReader.ReadString(); + Attack2Animation = binaryReader.ReadString(); + Attack3Animation = binaryReader.ReadString(); + DeathAnimation = binaryReader.ReadString(); + BreathAnimation = binaryReader.ReadString(); + DamageAnimation = binaryReader.ReadString(); + IdleAnimation = binaryReader.ReadString(); + + Attack1Wav = binaryReader.ReadString(); + Attack2Wav = binaryReader.ReadString(); + Attack3Wav = binaryReader.ReadString(); + DeathWav = binaryReader.ReadString(); + + Attack1Effect = binaryReader.ReadString(); + Attack2Effect = binaryReader.ReadString(); + Attack3Effect = binaryReader.ReadString(); + DieEffect = binaryReader.ReadString(); + + if (format == MonFormat.MO4) + { + AttachEffect = binaryReader.ReadString(); + } + + Objects = binaryReader.ReadList().ToList(); + Height = binaryReader.ReadSingle(); + Effects = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + var format = MonFormat.MO2; + + if (binaryWriter.SerializationOptions.ExtraOption is MonFormat optionFormat) + { + format = optionFormat; + } + + binaryWriter.Write(Name); + binaryWriter.Write(Unknown); + binaryWriter.Write(WalkAnimation); + binaryWriter.Write(RunAnimation); + binaryWriter.Write(JumpAttack1Animation); + binaryWriter.Write(Attack2Animation); + binaryWriter.Write(Attack3Animation); + binaryWriter.Write(DeathAnimation); + binaryWriter.Write(BreathAnimation); + binaryWriter.Write(DamageAnimation); + binaryWriter.Write(IdleAnimation); + + binaryWriter.Write(Attack1Wav); + binaryWriter.Write(Attack2Wav); + binaryWriter.Write(Attack3Wav); + binaryWriter.Write(DeathWav); + + binaryWriter.Write(Attack1Effect); + binaryWriter.Write(Attack2Effect); + binaryWriter.Write(Attack3Effect); + binaryWriter.Write(DieEffect); + + if (format == MonFormat.MO4) + { + binaryWriter.Write(AttachEffect); + } + + binaryWriter.Write(Objects.ToSerializable()); + binaryWriter.Write(Height); + binaryWriter.Write(Effects.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Monster/DBMonsterDataRecord.cs b/src/Parsec/Shaiya/Monster/DBMonsterDataRecord.cs index cd2fd85b..b53f0552 100644 --- a/src/Parsec/Shaiya/Monster/DBMonsterDataRecord.cs +++ b/src/Parsec/Shaiya/Monster/DBMonsterDataRecord.cs @@ -1,289 +1,315 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Monster; public sealed class DBMonsterDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long Image { get; set; } - [ShaiyaProperty] public long Level { get; set; } - [ShaiyaProperty] public long Exp { get; set; } - [ShaiyaProperty] public long Ai { get; set; } - [ShaiyaProperty] public long Money1 { get; set; } - [ShaiyaProperty] public long Money2 { get; set; } - [ShaiyaProperty] public long Item1 { get; set; } - [ShaiyaProperty] public long ItemDropRate1 { get; set; } - [ShaiyaProperty] public long Item2 { get; set; } - [ShaiyaProperty] public long ItemDropRate2 { get; set; } - [ShaiyaProperty] public long Item3 { get; set; } - [ShaiyaProperty] public long ItemDropRate3 { get; set; } - [ShaiyaProperty] public long Item4 { get; set; } - [ShaiyaProperty] public long ItemDropRate4 { get; set; } - [ShaiyaProperty] public long Item5 { get; set; } - [ShaiyaProperty] public long ItemDropRate5 { get; set; } - [ShaiyaProperty] public long Item6 { get; set; } - [ShaiyaProperty] public long ItemDropRate6 { get; set; } - [ShaiyaProperty] public long Item7 { get; set; } - [ShaiyaProperty] public long ItemDropRate7 { get; set; } - [ShaiyaProperty] public long Item8 { get; set; } - [ShaiyaProperty] public long ItemDropRate8 { get; set; } - [ShaiyaProperty] public long Item9 { get; set; } - [ShaiyaProperty] public long ItemDropRate9 { get; set; } - [ShaiyaProperty] public long QuestItem { get; set; } - [ShaiyaProperty] public long Hp { get; set; } - [ShaiyaProperty] public long Sp { get; set; } - [ShaiyaProperty] public long Mp { get; set; } - [ShaiyaProperty] public long Dex { get; set; } - [ShaiyaProperty] public long Wis { get; set; } - [ShaiyaProperty] public long Luc { get; set; } - [ShaiyaProperty] public long Day { get; set; } - [ShaiyaProperty] public long Size { get; set; } - [ShaiyaProperty] public long Attrib { get; set; } - [ShaiyaProperty] public long Defense { get; set; } - [ShaiyaProperty] public long Magic { get; set; } - [ShaiyaProperty] public long State1 { get; set; } - [ShaiyaProperty] public long State2 { get; set; } - [ShaiyaProperty] public long State3 { get; set; } - [ShaiyaProperty] public long State4 { get; set; } - [ShaiyaProperty] public long State5 { get; set; } - [ShaiyaProperty] public long State6 { get; set; } - [ShaiyaProperty] public long State7 { get; set; } - [ShaiyaProperty] public long State8 { get; set; } - [ShaiyaProperty] public long State9 { get; set; } - [ShaiyaProperty] public long State10 { get; set; } - [ShaiyaProperty] public long State11 { get; set; } - [ShaiyaProperty] public long State12 { get; set; } - [ShaiyaProperty] public long State13 { get; set; } - [ShaiyaProperty] public long State14 { get; set; } - [ShaiyaProperty] public long State15 { get; set; } - [ShaiyaProperty] public long Skill1 { get; set; } - [ShaiyaProperty] public long Skill2 { get; set; } - [ShaiyaProperty] public long Skill3 { get; set; } - [ShaiyaProperty] public long Skill4 { get; set; } - [ShaiyaProperty] public long Skill5 { get; set; } - [ShaiyaProperty] public long Skill6 { get; set; } - [ShaiyaProperty] public long NormalTime { get; set; } - [ShaiyaProperty] public long NormalStep { get; set; } - [ShaiyaProperty] public long ChaseTime { get; set; } - [ShaiyaProperty] public long ChaseStep { get; set; } - [ShaiyaProperty] public long ChaseRange { get; set; } - [ShaiyaProperty] public long AttackAni1 { get; set; } - [ShaiyaProperty] public long AttackType1 { get; set; } - [ShaiyaProperty] public long AttackTime1 { get; set; } - [ShaiyaProperty] public long AttackRange1 { get; set; } - [ShaiyaProperty] public long Attack1 { get; set; } - [ShaiyaProperty] public long AttackPlus1 { get; set; } - [ShaiyaProperty] public long AttackAttrib1 { get; set; } - [ShaiyaProperty] public long AttackSpecial1 { get; set; } - [ShaiyaProperty] public long AttackOk1 { get; set; } - [ShaiyaProperty] public long AttackAni2 { get; set; } - [ShaiyaProperty] public long AttackType2 { get; set; } - [ShaiyaProperty] public long AttackTime2 { get; set; } - [ShaiyaProperty] public long AttackRange2 { get; set; } - [ShaiyaProperty] public long Attack2 { get; set; } - [ShaiyaProperty] public long AttackPlus2 { get; set; } - [ShaiyaProperty] public long AttackAttrib2 { get; set; } - [ShaiyaProperty] public long AttackSpecial2 { get; set; } - [ShaiyaProperty] public long AttackOk2 { get; set; } - [ShaiyaProperty] public long AttackAni3 { get; set; } - [ShaiyaProperty] public long AttackType3 { get; set; } - [ShaiyaProperty] public long AttackTime3 { get; set; } - [ShaiyaProperty] public long AttackRange3 { get; set; } - [ShaiyaProperty] public long Attack3 { get; set; } - [ShaiyaProperty] public long AttackPlus3 { get; set; } - [ShaiyaProperty] public long AttackAttrib3 { get; set; } - [ShaiyaProperty] public long AttackSpecial3 { get; set; } - [ShaiyaProperty] public long AttackOk3 { get; set; } - [ShaiyaProperty] public long ColorType { get; set; } - [ShaiyaProperty] public long ColorHue { get; set; } - [ShaiyaProperty] public long ColorSaturation { get; set; } - [ShaiyaProperty] public long ColorLight { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Image = binaryReader.ReadInt64(); + Level = binaryReader.ReadInt64(); + Exp = binaryReader.ReadInt64(); + Ai = binaryReader.ReadInt64(); + Money1 = binaryReader.ReadInt64(); + Money2 = binaryReader.ReadInt64(); + Item1 = binaryReader.ReadInt64(); + ItemDropRate1 = binaryReader.ReadInt64(); + Item2 = binaryReader.ReadInt64(); + ItemDropRate2 = binaryReader.ReadInt64(); + Item3 = binaryReader.ReadInt64(); + ItemDropRate3 = binaryReader.ReadInt64(); + Item4 = binaryReader.ReadInt64(); + ItemDropRate4 = binaryReader.ReadInt64(); + Item5 = binaryReader.ReadInt64(); + ItemDropRate5 = binaryReader.ReadInt64(); + Item6 = binaryReader.ReadInt64(); + ItemDropRate6 = binaryReader.ReadInt64(); + Item7 = binaryReader.ReadInt64(); + ItemDropRate7 = binaryReader.ReadInt64(); + Item8 = binaryReader.ReadInt64(); + ItemDropRate8 = binaryReader.ReadInt64(); + Item9 = binaryReader.ReadInt64(); + ItemDropRate9 = binaryReader.ReadInt64(); + QuestItem = binaryReader.ReadInt64(); + Hp = binaryReader.ReadInt64(); + Sp = binaryReader.ReadInt64(); + Mp = binaryReader.ReadInt64(); + Dex = binaryReader.ReadInt64(); + Wis = binaryReader.ReadInt64(); + Luc = binaryReader.ReadInt64(); + Day = binaryReader.ReadInt64(); + Size = binaryReader.ReadInt64(); + Attrib = binaryReader.ReadInt64(); + Defense = binaryReader.ReadInt64(); + Magic = binaryReader.ReadInt64(); + State1 = binaryReader.ReadInt64(); + State2 = binaryReader.ReadInt64(); + State3 = binaryReader.ReadInt64(); + State4 = binaryReader.ReadInt64(); + State5 = binaryReader.ReadInt64(); + State6 = binaryReader.ReadInt64(); + State7 = binaryReader.ReadInt64(); + State8 = binaryReader.ReadInt64(); + State9 = binaryReader.ReadInt64(); + State10 = binaryReader.ReadInt64(); + State11 = binaryReader.ReadInt64(); + State12 = binaryReader.ReadInt64(); + State13 = binaryReader.ReadInt64(); + State14 = binaryReader.ReadInt64(); + State15 = binaryReader.ReadInt64(); + Skill1 = binaryReader.ReadInt64(); + Skill2 = binaryReader.ReadInt64(); + Skill3 = binaryReader.ReadInt64(); + Skill4 = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Image); + binaryWriter.Write(Level); + binaryWriter.Write(Exp); + binaryWriter.Write(Ai); + binaryWriter.Write(Money1); + binaryWriter.Write(Money2); + binaryWriter.Write(Item1); + binaryWriter.Write(ItemDropRate1); + binaryWriter.Write(Item2); + binaryWriter.Write(ItemDropRate2); + binaryWriter.Write(Item3); + binaryWriter.Write(ItemDropRate3); + binaryWriter.Write(Item4); + binaryWriter.Write(ItemDropRate4); + binaryWriter.Write(Item5); + binaryWriter.Write(ItemDropRate5); + binaryWriter.Write(Item6); + binaryWriter.Write(ItemDropRate6); + binaryWriter.Write(Item7); + binaryWriter.Write(ItemDropRate7); + binaryWriter.Write(Item8); + binaryWriter.Write(ItemDropRate8); + binaryWriter.Write(Item9); + binaryWriter.Write(ItemDropRate9); + binaryWriter.Write(QuestItem); + binaryWriter.Write(Hp); + binaryWriter.Write(Sp); + binaryWriter.Write(Mp); + binaryWriter.Write(Dex); + binaryWriter.Write(Wis); + binaryWriter.Write(Luc); + binaryWriter.Write(Day); + binaryWriter.Write(Size); + binaryWriter.Write(Attrib); + binaryWriter.Write(Defense); + binaryWriter.Write(Magic); + binaryWriter.Write(State1); + binaryWriter.Write(State2); + binaryWriter.Write(State3); + binaryWriter.Write(State4); + binaryWriter.Write(State5); + binaryWriter.Write(State6); + binaryWriter.Write(State7); + binaryWriter.Write(State8); + binaryWriter.Write(State9); + binaryWriter.Write(State10); + binaryWriter.Write(State11); + binaryWriter.Write(State12); + binaryWriter.Write(State13); + binaryWriter.Write(State14); + binaryWriter.Write(State15); + binaryWriter.Write(Skill1); + binaryWriter.Write(Skill2); + binaryWriter.Write(Skill3); + binaryWriter.Write(Skill4); + } } diff --git a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs index f3c188a3..efc0ae23 100644 --- a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs +++ b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs @@ -1,14 +1,23 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Monster; public sealed class DBMonsterTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Name { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Name = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.WriteLengthPrefixedString(Name, false); + } } diff --git a/src/Parsec/Shaiya/Monster/Monster.cs b/src/Parsec/Shaiya/Monster/Monster.cs index 83e3fa11..56bff85a 100644 --- a/src/Parsec/Shaiya/Monster/Monster.cs +++ b/src/Parsec/Shaiya/Monster/Monster.cs @@ -1,39 +1,27 @@ using System.Globalization; using System.Text; using CsvHelper; -using Newtonsoft.Json; using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.Monster; public sealed class Monster : SData.SData, ICsv { - [JsonConstructor] - public Monster() - { - } - - public Monster(List records) - { - Records = records; - } - - public List Records { get; } = new(); + public List Records { get; set; } = new(); public override string Extension => "SData"; - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new MonsterRecord(_binaryReader, Encoding); - Records.Add(record); - } + Records = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) => Records.GetBytes(); + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Records.ToSerializable()); + } /// /// Reads the Monster.SData format from a csv file @@ -51,7 +39,7 @@ public static Monster ReadFromCsv(string csvPath, Encoding? encoding = null) var records = csvReader.GetRecords().ToList(); // Create monster instance - var monster = new Monster(records) { Encoding = encoding }; + var monster = new Monster { Records = records, Encoding = encoding }; return monster; } diff --git a/src/Parsec/Shaiya/Monster/MonsterRecord.cs b/src/Parsec/Shaiya/Monster/MonsterRecord.cs index 1ea16569..f0d0897b 100644 --- a/src/Parsec/Shaiya/Monster/MonsterRecord.cs +++ b/src/Parsec/Shaiya/Monster/MonsterRecord.cs @@ -1,42 +1,10 @@ -using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Monster; -public sealed class MonsterRecord : IBinary +public sealed class MonsterRecord : ISerializable { - [JsonConstructor] - public MonsterRecord() - { - } - - public MonsterRecord(SBinaryReader binaryReader, Encoding encoding) - { - MobName = binaryReader.ReadString(encoding); - ModelId = binaryReader.Read(); - Level = binaryReader.Read(); - AI = binaryReader.Read(); - HP = binaryReader.Read(); - Day = binaryReader.Read(); - Size = binaryReader.Read(); - Element = binaryReader.Read(); - NormalTime = binaryReader.Read(); - NormalStep = binaryReader.Read(); - ChaseTime = binaryReader.Read(); - ChaseStep = binaryReader.Read(); - AttackType1 = binaryReader.Read(); - AttackElement1 = binaryReader.Read(); - AttackType2 = binaryReader.Read(); - AttackRange2 = binaryReader.Read(); - AttackType3 = binaryReader.Read(); - Unknown1 = binaryReader.Read(); - Unknown2 = binaryReader.Read(); - QuestItemId = binaryReader.Read(); - } - public string MobName { get; set; } = string.Empty; public short ModelId { get; set; } public short Level { get; set; } @@ -58,29 +26,51 @@ public MonsterRecord(SBinaryReader binaryReader, Encoding encoding) public byte Unknown2 { get; set; } public short QuestItemId { get; set; } - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) + { + MobName = binaryReader.ReadString(); + ModelId = binaryReader.ReadInt16(); + Level = binaryReader.ReadInt16(); + AI = binaryReader.ReadByte(); + HP = binaryReader.ReadInt32(); + Day = binaryReader.ReadByte(); + Size = binaryReader.ReadByte(); + Element = binaryReader.ReadByte(); + NormalTime = binaryReader.ReadInt32(); + NormalStep = binaryReader.ReadByte(); + ChaseTime = binaryReader.ReadInt32(); + ChaseStep = binaryReader.ReadByte(); + AttackType1 = binaryReader.ReadByte(); + AttackElement1 = binaryReader.ReadByte(); + AttackType2 = binaryReader.ReadByte(); + AttackRange2 = binaryReader.ReadByte(); + AttackType3 = binaryReader.ReadByte(); + Unknown1 = binaryReader.ReadByte(); + Unknown2 = binaryReader.ReadByte(); + QuestItemId = binaryReader.ReadInt16(); + } + + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(MobName.GetLengthPrefixedBytes()); - buffer.AddRange(ModelId.GetBytes()); - buffer.AddRange(Level.GetBytes()); - buffer.Add(AI); - buffer.AddRange(HP.GetBytes()); - buffer.Add(Day); - buffer.Add(Size); - buffer.Add(Element); - buffer.AddRange(NormalTime.GetBytes()); - buffer.Add(NormalStep); - buffer.AddRange(ChaseTime.GetBytes()); - buffer.Add(ChaseStep); - buffer.Add(AttackType1); - buffer.Add(AttackElement1); - buffer.Add(AttackType2); - buffer.Add(AttackRange2); - buffer.Add(AttackType3); - buffer.Add(Unknown1); - buffer.Add(Unknown2); - buffer.AddRange(QuestItemId.GetBytes()); - return buffer; + binaryWriter.Write(MobName); + binaryWriter.Write(ModelId); + binaryWriter.Write(Level); + binaryWriter.Write(AI); + binaryWriter.Write(HP); + binaryWriter.Write(Day); + binaryWriter.Write(Size); + binaryWriter.Write(Element); + binaryWriter.Write(NormalTime); + binaryWriter.Write(NormalStep); + binaryWriter.Write(ChaseTime); + binaryWriter.Write(ChaseStep); + binaryWriter.Write(AttackType1); + binaryWriter.Write(AttackElement1); + binaryWriter.Write(AttackType2); + binaryWriter.Write(AttackRange2); + binaryWriter.Write(AttackType3); + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(QuestItemId); } } diff --git a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs index 1f9bd8ea..0a0a793b 100644 --- a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs @@ -1,114 +1,117 @@ using Parsec.Common; -using Parsec.Extensions; using Parsec.Serialization; -using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public abstract class BaseNpc : IBinary +public abstract class BaseNpc { - public NpcType Type { get; set; } - public short TypeId { get; set; } + public NpcType NpcType { get; set; } + + public short NpcTypeId { get; set; } + public int Model { get; set; } + public int MoveDistance { get; set; } + public int MoveSpeed { get; set; } + public NpcFaction Faction { get; set; } + public string Name { get; set; } = string.Empty; + public string WelcomeMessage { get; set; } = string.Empty; - public List InQuestIds { get; } = new(); - public List OutQuestIds { get; } = new(); + public List InQuestIds { get; set; } = new(); + + public List OutQuestIds { get; set; } = new(); - protected void ReadNpcBaseComplete(SBinaryReader binaryReader, Episode episode) + protected void ReadNpcBaseComplete(SBinaryReader binaryReader) { ReadBaseNpcFirstSegment(binaryReader); - ReadBaseNpcSecondSegment(binaryReader, episode); + ReadBaseNpcSecondSegment(binaryReader); ReadBaseNpcThirdSegment(binaryReader); } protected void ReadBaseNpcFirstSegment(SBinaryReader binaryReader) { - Type = (NpcType)binaryReader.Read(); - TypeId = binaryReader.Read(); + NpcType = (NpcType)binaryReader.ReadByte(); + NpcTypeId = binaryReader.ReadInt16(); } - protected void WriteBaseNpcFirstSegmentBytes(List buffer) + protected void WriteBaseNpcFirstSegment(SBinaryWriter binaryWriter) { - buffer.Add((byte)Type); - buffer.AddRange(TypeId.GetBytes()); + binaryWriter.Write((byte)NpcType); + binaryWriter.Write(NpcTypeId); } - protected void ReadBaseNpcSecondSegment(SBinaryReader binaryReader, Episode episode) + protected void ReadBaseNpcSecondSegment(SBinaryReader binaryReader) { - Model = binaryReader.Read(); - MoveDistance = binaryReader.Read(); - MoveSpeed = binaryReader.Read(); - Faction = (NpcFaction)binaryReader.Read(); + Model = binaryReader.ReadInt32(); + MoveDistance = binaryReader.ReadInt32(); + MoveSpeed = binaryReader.ReadInt32(); + Faction = (NpcFaction)binaryReader.ReadInt32(); - if (episode < Episode.EP8) // In ep 8, messages are moved to separate translation files. + // In Ep8 strings are stored in separate translation files + if (binaryReader.SerializationOptions.Episode < Episode.EP8) { Name = binaryReader.ReadString(false); WelcomeMessage = binaryReader.ReadString(false); } } - protected void WriteBaseNpcSecondSegmentBytes(List buffer, Episode episode) + protected void WriteBaseNpcSecondSegment(SBinaryWriter binaryWriter) { - buffer.AddRange(Model.GetBytes()); - buffer.AddRange(MoveDistance.GetBytes()); - buffer.AddRange(MoveSpeed.GetBytes()); - buffer.AddRange(((int)Faction).GetBytes()); + binaryWriter.Write(Model); + binaryWriter.Write(MoveDistance); + binaryWriter.Write(MoveSpeed); + binaryWriter.Write((int)Faction); - if (episode < Episode.EP8) // In ep 8, messages are moved to separate translation files. + // In Ep8 strings are stored in separate translation files + if (binaryWriter.SerializationOptions.Episode < Episode.EP8) { - buffer.AddRange(Name.GetLengthPrefixedBytes(false)); - buffer.AddRange(WelcomeMessage.GetLengthPrefixedBytes(false)); + binaryWriter.WriteLengthPrefixedString(Name, false); + binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); } } protected void ReadBaseNpcThirdSegment(SBinaryReader binaryReader) { - int inQuestQuantity = binaryReader.Read(); + var inQuestQuantity = binaryReader.ReadInt32(); - for (int i = 0; i < inQuestQuantity; i++) + for (var i = 0; i < inQuestQuantity; i++) { - short questId = binaryReader.Read(); + var questId = binaryReader.ReadInt16(); InQuestIds.Add(questId); } - int outQuestQuantity = binaryReader.Read(); + var outQuestQuantity = binaryReader.ReadInt32(); - for (int i = 0; i < outQuestQuantity; i++) + for (var i = 0; i < outQuestQuantity; i++) { - short questId = binaryReader.Read(); + var questId = binaryReader.ReadInt16(); OutQuestIds.Add(questId); } } - protected void WriteBaseNpcThirdSegmentBytes(List buffer) + protected void WriteBaseNpcThirdSegment(SBinaryWriter binaryWriter) { - buffer.AddRange(InQuestIds.Count.GetBytes()); - - foreach (short inQuestId in InQuestIds) - buffer.AddRange(inQuestId.GetBytes()); - - buffer.AddRange(OutQuestIds.Count.GetBytes()); + binaryWriter.Write(InQuestIds.Count); + foreach (var inQuestId in InQuestIds) + { + binaryWriter.Write(inQuestId); + } - foreach (short outQuestId in OutQuestIds) - buffer.AddRange(outQuestId.GetBytes()); + binaryWriter.Write(OutQuestIds.Count); + foreach (var outQuestId in OutQuestIds) + { + binaryWriter.Write(outQuestId); + } } - public virtual IEnumerable GetBytes(params object[] options) + protected void WriteNpcBaseComplete(SBinaryWriter binaryWriter) { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); - WriteBaseNpcFirstSegmentBytes(buffer); - WriteBaseNpcSecondSegmentBytes(buffer, episode); - WriteBaseNpcThirdSegmentBytes(buffer); - return buffer; + WriteBaseNpcFirstSegment(binaryWriter); + WriteBaseNpcSecondSegment(binaryWriter); + WriteBaseNpcThirdSegment(binaryWriter); } } diff --git a/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs b/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs deleted file mode 100644 index 606f14a2..00000000 --- a/src/Parsec/Shaiya/NpcQuest/GateKeeper.cs +++ /dev/null @@ -1,45 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Serialization; - -namespace Parsec.Shaiya.NpcQuest; - -public class GateKeeper : BaseNpc -{ - public List GateTargets { get; } = new(); - - public GateKeeper(SBinaryReader binaryReader, Episode episode) - { - ReadBaseNpcFirstSegment(binaryReader); - ReadBaseNpcSecondSegment(binaryReader, episode); - - for (int i = 0; i < 3; i++) - { - var gateTarget = new GateTarget(binaryReader, episode); - GateTargets.Add(gateTarget); - } - - ReadBaseNpcThirdSegment(binaryReader); - } - - [JsonConstructor] - public GateKeeper() - { - } - - public override IEnumerable GetBytes(params object[] options) - { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); - WriteBaseNpcFirstSegmentBytes(buffer); - WriteBaseNpcSecondSegmentBytes(buffer, episode); - buffer.AddRange(GateTargets.Take(3).GetBytes(false, episode)); - WriteBaseNpcThirdSegmentBytes(buffer); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs b/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs new file mode 100644 index 00000000..8d355533 --- /dev/null +++ b/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs @@ -0,0 +1,35 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.NpcQuest; + +public class GateKeeperQuestTran : ISerializable +{ + public string Name { get; set; } = string.Empty; + + public string WelcomeMessage { get; set; } = string.Empty; + + public string TeleportName1 { get; set; } = string.Empty; + + public string TeleportName2 { get; set; } = string.Empty; + + public string TeleportName3 { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + WelcomeMessage = binaryReader.ReadString(); + TeleportName1 = binaryReader.ReadString(); + TeleportName2 = binaryReader.ReadString(); + TeleportName3 = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(Name, false); + binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); + binaryWriter.WriteLengthPrefixedString(TeleportName1, false); + binaryWriter.WriteLengthPrefixedString(TeleportName2, false); + binaryWriter.WriteLengthPrefixedString(TeleportName3, false); + } +} diff --git a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs index 9d3bab2f..4adf596b 100644 --- a/src/Parsec/Shaiya/NpcQuest/GateTarget.cs +++ b/src/Parsec/Shaiya/NpcQuest/GateTarget.cs @@ -1,54 +1,46 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Common; using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class GateTarget : IBinary +public class GateTarget : ISerializable { - public short MapId { get; set; } + public ushort MapId { get; set; } + public Vector3 Position { get; set; } + public string TargetName { get; set; } = string.Empty; /// /// Teleporting gold cost /// - public int Cost { get; set; } + public uint Cost { get; set; } - public GateTarget(SBinaryReader binaryReader, Episode episode) + public void Read(SBinaryReader binaryReader) { - MapId = binaryReader.Read(); - Position = new Vector3(binaryReader); + MapId = binaryReader.ReadUInt16(); + Position = binaryReader.Read(); - if (episode < Episode.EP8) // In ep 8, messages are moved to separate translation files. - TargetName = binaryReader.ReadString(false); + if (binaryReader.SerializationOptions.Episode < Episode.EP8) + { + TargetName = binaryReader.ReadString(); + } - Cost = binaryReader.Read(); + Cost = binaryReader.ReadUInt32(); } - [JsonConstructor] - public GateTarget() + public void Write(SBinaryWriter binaryWriter) { - } - - public IEnumerable GetBytes(params object[] options) - { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); - buffer.AddRange(MapId.GetBytes()); - buffer.AddRange(Position.GetBytes()); + binaryWriter.Write(MapId); + binaryWriter.Write(Position); - if (episode < Episode.EP8) // In ep 8, messages are moved to separate translation files. - buffer.AddRange(TargetName.GetLengthPrefixedBytes(false)); + if (binaryWriter.SerializationOptions.Episode < Episode.EP8) + { + binaryWriter.Write(TargetName); + } - buffer.AddRange(Cost.GetBytes()); - return buffer; + binaryWriter.Write(Cost); } } diff --git a/src/Parsec/Shaiya/NpcQuest/Merchant.cs b/src/Parsec/Shaiya/NpcQuest/Merchant.cs index 6a3abd6a..f06ed3c6 100644 --- a/src/Parsec/Shaiya/NpcQuest/Merchant.cs +++ b/src/Parsec/Shaiya/NpcQuest/Merchant.cs @@ -1,52 +1,30 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class Merchant : BaseNpc, IBinary +public class Merchant : BaseNpc, ISerializable { public MerchantType MerchantType { get; set; } - public List SaleItems { get; } = new(); + public List Items { get; set; } = new(); - public Merchant(SBinaryReader binaryReader, Episode episode) + public void Read(SBinaryReader binaryReader) { ReadBaseNpcFirstSegment(binaryReader); - MerchantType = (MerchantType)binaryReader.Read(); - ReadBaseNpcSecondSegment(binaryReader, episode); - - int saleItemCount = binaryReader.Read(); - - for (int i = 0; i < saleItemCount; i++) - { - var merchantItem = new MerchantItem(binaryReader); - SaleItems.Add(merchantItem); - } - + MerchantType = (MerchantType)binaryReader.ReadByte(); + ReadBaseNpcSecondSegment(binaryReader); + Items = binaryReader.ReadList().ToList(); ReadBaseNpcThirdSegment(binaryReader); } - [JsonConstructor] - public Merchant() - { - } - - public override IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); - WriteBaseNpcFirstSegmentBytes(buffer); - buffer.Add((byte)MerchantType); - WriteBaseNpcSecondSegmentBytes(buffer, episode); - buffer.AddRange(SaleItems.GetBytes()); - WriteBaseNpcThirdSegmentBytes(buffer); - return buffer; + WriteBaseNpcFirstSegment(binaryWriter); + binaryWriter.Write((byte)MerchantType); + WriteBaseNpcSecondSegment(binaryWriter); + binaryWriter.Write(Items.ToSerializable()); + WriteBaseNpcThirdSegment(binaryWriter); } } diff --git a/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs b/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs index 767404ed..5500e1af 100644 --- a/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs +++ b/src/Parsec/Shaiya/NpcQuest/MerchantItem.cs @@ -1,31 +1,23 @@ -using Newtonsoft.Json; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class MerchantItem : IBinary +public class MerchantItem : ISerializable { - /// - /// Item Type - /// - public byte Type { get; set; } + public byte ItemType { get; set; } - /// - /// Item TypeId - /// - public byte TypeId { get; set; } + public byte ItemTypeId { get; set; } - public MerchantItem(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); + ItemType = binaryReader.ReadByte(); + ItemTypeId = binaryReader.ReadByte(); } - [JsonConstructor] - public MerchantItem() + public void Write(SBinaryWriter binaryWriter) { + binaryWriter.Write(ItemType); + binaryWriter.Write(ItemTypeId); } - - public IEnumerable GetBytes(params object[] options) => new[] { Type, TypeId }; } diff --git a/src/Parsec/Shaiya/Common/Mode.cs b/src/Parsec/Shaiya/NpcQuest/Mode.cs similarity index 69% rename from src/Parsec/Shaiya/Common/Mode.cs rename to src/Parsec/Shaiya/NpcQuest/Mode.cs index d7c1b1e8..48eb8d56 100644 --- a/src/Parsec/Shaiya/Common/Mode.cs +++ b/src/Parsec/Shaiya/NpcQuest/Mode.cs @@ -1,4 +1,4 @@ -namespace Parsec.Shaiya.Common; +namespace Parsec.Shaiya.NpcQuest; public enum Mode : byte { diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs index 87e33abb..41f13a19 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuest.cs @@ -1,67 +1,90 @@ -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.NpcQuest; public class NpcQuest : SData.SData { - public List Merchants { get; } = new(); - public List Gatekeepers { get; } = new(); - public List Blacksmiths { get; } = new(); - public List PvpManagers { get; } = new(); - public List GamblingHouses { get; } = new(); - public List Warehouses { get; } = new(); - public List NormalNpcs { get; } = new(); - public List Guards { get; } = new(); - public List Animals { get; } = new(); - public List Apprentices { get; } = new(); - public List GuildMasters { get; } = new(); - public List DeadNpcs { get; } = new(); - public List CombatCommanders { get; } = new(); + public List Merchants { get; set; } = new(); + + public List Gatekeepers { get; set; } = new(); + + public List Blacksmiths { get; set; } = new(); + + public List PvpManagers { get; set; } = new(); + + public List GamblingHouses { get; set; } = new(); + + public List Warehouses { get; set; } = new(); + + public List NormalNpcs { get; set; } = new(); + + public List Guards { get; set; } = new(); + + public List Animals { get; set; } = new(); + + public List Apprentices { get; set; } = new(); + + public List GuildMasters { get; set; } = new(); + + public List DeadNpcs { get; set; } = new(); + + public List CombatCommanders { get; set; } = new(); + public byte[]? UnknownArray { get; set; } - public List Quests { get; } = new(); - public override void Read() + public List Quests { get; set; } = new(); + + protected override void Read(SBinaryReader binaryReader) { - ReadMerchants(); - ReadGatekeepers(); - ReadStandardNpcs(Blacksmiths); - ReadStandardNpcs(PvpManagers); - ReadStandardNpcs(GamblingHouses); - ReadStandardNpcs(Warehouses); - ReadStandardNpcs(NormalNpcs); - ReadStandardNpcs(Guards); - ReadStandardNpcs(Animals); - ReadStandardNpcs(Apprentices); - ReadStandardNpcs(GuildMasters); - ReadStandardNpcs(DeadNpcs); - ReadStandardNpcs(CombatCommanders); - ReadUnknownArray(); - ReadQuests(); + ReadMerchants(binaryReader); + ReadGatekeepers(binaryReader); + ReadStandardNpcs(binaryReader, Blacksmiths); + ReadStandardNpcs(binaryReader, PvpManagers); + ReadStandardNpcs(binaryReader, GamblingHouses); + ReadStandardNpcs(binaryReader, Warehouses); + ReadStandardNpcs(binaryReader, NormalNpcs); + ReadStandardNpcs(binaryReader, Guards); + ReadStandardNpcs(binaryReader, Animals); + ReadStandardNpcs(binaryReader, Apprentices); + ReadStandardNpcs(binaryReader, GuildMasters); + ReadStandardNpcs(binaryReader, DeadNpcs); + ReadStandardNpcs(binaryReader, CombatCommanders); + ReadUnknownArray(binaryReader); + ReadQuests(binaryReader); } - private void ReadMerchants() + private void ReadMerchants(SBinaryReader binaryReader) { - int merchantCount = _binaryReader.Read(); - for (int i = 0; i < merchantCount; i++) - Merchants.Add(new Merchant(_binaryReader, Episode)); + var merchantCount = binaryReader.ReadInt32(); + for (var i = 0; i < merchantCount; i++) + { + var merchant = binaryReader.Read(); + Merchants.Add(merchant); + } } - private void ReadGatekeepers() + private void ReadGatekeepers(SBinaryReader binaryReader) { - int gateKeeperCount = _binaryReader.Read(); - for (int i = 0; i < gateKeeperCount; i++) - Gatekeepers.Add(new GateKeeper(_binaryReader, Episode)); + var gateKeeperCount = binaryReader.ReadInt32(); + for (var i = 0; i < gateKeeperCount; i++) + { + var gateKeeper = binaryReader.Read(); + Gatekeepers.Add(gateKeeper); + } } - private void ReadStandardNpcs(ICollection npcList) + private void ReadStandardNpcs(SBinaryReader binaryReader, ICollection npcList) { - int npcCount = _binaryReader.Read(); - for (int i = 0; i < npcCount; i++) - npcList.Add(new StandardNpc(_binaryReader, Episode)); + var npcCount = binaryReader.ReadInt32(); + for (var i = 0; i < npcCount; i++) + { + var standardNpc = binaryReader.Read(); + npcList.Add(standardNpc); + } } - private void ReadUnknownArray() + private void ReadUnknownArray(SBinaryReader binaryReader) { var unknownBuffer = new List(); @@ -70,16 +93,16 @@ private void ReadUnknownArray() { for (int j = 0; j < 256; j++) { - int value1 = _binaryReader.Read(); - byte[] array1 = _binaryReader.ReadBytes(2 * value1); + int value1 = binaryReader.ReadInt32(); + byte[] array1 = binaryReader.ReadBytes(2 * value1); - unknownBuffer.AddRange(value1.GetBytes()); + unknownBuffer.AddRange(BitConverter.GetBytes(value1)); unknownBuffer.AddRange(array1); - int value2 = _binaryReader.Read(); - byte[] array2 = _binaryReader.ReadBytes(2 * value2); + int value2 = binaryReader.ReadInt32(); + byte[] array2 = binaryReader.ReadBytes(2 * value2); - unknownBuffer.AddRange(value2.GetBytes()); + unknownBuffer.AddRange(BitConverter.GetBytes(value2)); unknownBuffer.AddRange(array2); } } @@ -87,34 +110,32 @@ private void ReadUnknownArray() UnknownArray = unknownBuffer.ToArray(); } - private void ReadQuests() + private void ReadQuests(SBinaryReader binaryReader) { - int questCount = _binaryReader.Read(); - for (int i = 0; i < questCount; i++) - Quests.Add(new Quest(_binaryReader, Episode)); + var questCount = binaryReader.ReadInt32(); + for (var i = 0; i < questCount; i++) + { + var quest = binaryReader.Read(); + Quests.Add(quest); + } } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - if (episode == Episode.Unknown) - episode = Episode; - - var buffer = new List(); - buffer.AddRange(Merchants.GetBytes(true, episode)); - buffer.AddRange(Gatekeepers.GetBytes(true, episode)); - buffer.AddRange(Blacksmiths.GetBytes(true, episode)); - buffer.AddRange(PvpManagers.GetBytes(true, episode)); - buffer.AddRange(GamblingHouses.GetBytes(true, episode)); - buffer.AddRange(Warehouses.GetBytes(true, episode)); - buffer.AddRange(NormalNpcs.GetBytes(true, episode)); - buffer.AddRange(Guards.GetBytes(true, episode)); - buffer.AddRange(Animals.GetBytes(true, episode)); - buffer.AddRange(Apprentices.GetBytes(true, episode)); - buffer.AddRange(GuildMasters.GetBytes(true, episode)); - buffer.AddRange(DeadNpcs.GetBytes(true, episode)); - buffer.AddRange(CombatCommanders.GetBytes(true, episode)); - buffer.AddRange(UnknownArray); - buffer.AddRange(Quests.GetBytes(true, episode)); - return buffer; + binaryWriter.Write(Merchants.ToSerializable()); + binaryWriter.Write(Gatekeepers.ToSerializable()); + binaryWriter.Write(Blacksmiths.ToSerializable()); + binaryWriter.Write(PvpManagers.ToSerializable()); + binaryWriter.Write(GamblingHouses.ToSerializable()); + binaryWriter.Write(Warehouses.ToSerializable()); + binaryWriter.Write(NormalNpcs.ToSerializable()); + binaryWriter.Write(Guards.ToSerializable()); + binaryWriter.Write(Animals.ToSerializable()); + binaryWriter.Write(Apprentices.ToSerializable()); + binaryWriter.Write(GuildMasters.ToSerializable()); + binaryWriter.Write(DeadNpcs.ToSerializable()); + binaryWriter.Write(CombatCommanders.ToSerializable()); + binaryWriter.Write(UnknownArray); + binaryWriter.Write(Quests.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuestGateKeeper.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuestGateKeeper.cs new file mode 100644 index 00000000..37f41bd4 --- /dev/null +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuestGateKeeper.cs @@ -0,0 +1,26 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.NpcQuest; + +public class NpcQuestGateKeeper : BaseNpc, ISerializable +{ + public List GateTargets { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + ReadBaseNpcFirstSegment(binaryReader); + ReadBaseNpcSecondSegment(binaryReader); + GateTargets = binaryReader.ReadList(3).ToList(); + ReadBaseNpcThirdSegment(binaryReader); + } + + public void Write(SBinaryWriter binaryWriter) + { + WriteBaseNpcFirstSegment(binaryWriter); + WriteBaseNpcSecondSegment(binaryWriter); + binaryWriter.Write(GateTargets.Take(3).ToSerializable()); + WriteBaseNpcThirdSegment(binaryWriter); + } +} diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs index 832ad3eb..d5d67292 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs @@ -1,49 +1,23 @@ -using Newtonsoft.Json; -using Parsec.Attributes; +using Parsec.Serialization; +using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.NpcQuest +namespace Parsec.Shaiya.NpcQuest; + +public class NpcQuestTran : ISerializable { - public class NpcQuestTran - { - [ShaiyaProperty] - [LengthPrefixedString] - public string Name { get; set; } = string.Empty; + public string Name { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] - public string WelcomeMessage { get; set; } = string.Empty; + public string WelcomeMessage { get; set; } = string.Empty; - [JsonConstructor] - public NpcQuestTran() - { - } + public void Read(SBinaryReader binaryReader) + { + Name = binaryReader.ReadString(); + WelcomeMessage = binaryReader.ReadString(); } - public class GateKeeperQuestTran + public void Write(SBinaryWriter binaryWriter) { - [ShaiyaProperty] - [LengthPrefixedString] - public string Name { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString] - public string WelcomeMessage { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString] - public string TeleportName1 { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString] - public string TeleportName2 { get; set; } = string.Empty; - - [ShaiyaProperty] - [LengthPrefixedString] - public string TeleportName3 { get; set; } = string.Empty; - - [JsonConstructor] - public GateKeeperQuestTran() - { - } + binaryWriter.WriteLengthPrefixedString(Name, false); + binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); } } diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuestTrans.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuestTrans.cs index f2d9dc03..ecfa1305 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuestTrans.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuestTrans.cs @@ -1,62 +1,42 @@ -using Parsec.Attributes; +using Parsec.Serialization; namespace Parsec.Shaiya.NpcQuest; public class NpcQuestTrans : SData.SData { - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Merchants { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(GateKeeperQuestTran))] public List GateKeepers { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Blacksmiths { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List PvpManagers { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List GamblingHouses { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Warehouses { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List NormalNpcs { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Guards { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Animals { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List Apprentices { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List GuildMasters { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List DeadNpcs { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(NpcQuestTran))] public List CombatCommanders { get; set; } = new(); - [ShaiyaProperty] - [LengthPrefixedList(typeof(QuestTranslation))] public List QuestTranslations { get; set; } = new(); + + protected override void Read(SBinaryReader binaryReader) + { + } + + protected override void Write(SBinaryWriter binaryWriter) + { + } } diff --git a/src/Parsec/Shaiya/NpcQuest/Quest.cs b/src/Parsec/Shaiya/NpcQuest/Quest.cs index f0830582..9c224b55 100644 --- a/src/Parsec/Shaiya/NpcQuest/Quest.cs +++ b/src/Parsec/Shaiya/NpcQuest/Quest.cs @@ -1,78 +1,107 @@ -using Newtonsoft.Json; -using Parsec.Common; +using Parsec.Common; using Parsec.Extensions; using Parsec.Serialization; -using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class Quest : IBinary +public class Quest : ISerializable { - public short Id { get; set; } + public ushort Id { get; set; } + public string Name { get; set; } = string.Empty; + public string Summary { get; set; } = string.Empty; public ushort MinLevel { get; set; } + public ushort MaxLevel { get; set; } - public FactionByte Faction { get; set; } + + public QuestFaction Faction { get; set; } + public Mode Mode { get; set; } // Sex - 2 separate bool public bool MaleSex { get; set; } + public bool FemaleSex { get; set; } // Job x6 public byte Fighter { get; set; } + public byte Defender { get; set; } + public byte Ranger { get; set; } + public byte Archer { get; set; } + public byte Mage { get; set; } + public byte Priest { get; set; } public ushort wHG { get; set; } + public short shVG { get; set; } + public byte byCG { get; set; } + public byte byOG { get; set; } + public byte byIG { get; set; } public ushort PreviousQuestId { get; set; } + public bool RequireParty { get; set; } // Party Job x6 public byte PartyFighter { get; set; } + public byte PartyDefender { get; set; } + public byte PartyRanger { get; set; } + public byte PartyArcher { get; set; } + public byte PartyMage { get; set; } + public byte PartyPriest { get; set; } // Time values public uint MinimumTime { get; set; } + public uint Time { get; set; } + public uint TickStartTerm { get; set; } + public uint TickKeepTime { get; set; } + public uint TickReceiveCount { get; set; } public byte StartType { get; set; } + public byte StartNpcType { get; set; } + public ushort StartNpcId { get; set; } + public byte StartItemType { get; set; } + public byte StartItemId { get; set; } /// /// 3 for EP4 and EP5? /// - public List RequiredItems { get; } = new(); + public List RequiredItems { get; set; } = new(); public byte EndType { get; set; } + public byte EndNpcType { get; set; } + public short EndNpcId { get; set; } /// /// 3 for EP4 and EP5? /// - public List FarmItems { get; } = new(); + public List FarmItems { get; set; } = new(); /// /// byPCKillCount = pvp kills? @@ -103,263 +132,204 @@ public class Quest : IBinary /// /// 3 for EP5 and below, 6 results for EP6 and above /// - public List Results { get; } = new(); + public List Results { get; set; } = new(); public string InitialDescription { get; set; } = string.Empty; public string QuestWindowSummary { get; set; } = string.Empty; public string ReminderInstructions { get; set; } = string.Empty; public string AlternateResponse { get; set; } = string.Empty; - [JsonConstructor] - public Quest() + public void Read(SBinaryReader binaryReader) { - } + var episode = binaryReader.SerializationOptions.Episode; - public Quest(SBinaryReader binaryReader, Episode episode) - { - Id = binaryReader.Read(); + Id = binaryReader.ReadUInt16(); - // In ep 8, messages are moved to separate translation files. if (episode < Episode.EP8) { Name = binaryReader.ReadString(); Summary = binaryReader.ReadString(); } - MinLevel = binaryReader.Read(); - MaxLevel = binaryReader.Read(); - Faction = (FactionByte)binaryReader.Read(); - Mode = (Mode)binaryReader.Read(); + MinLevel = binaryReader.ReadUInt16(); + MaxLevel = binaryReader.ReadUInt16(); + Faction = (QuestFaction)binaryReader.ReadByte(); + Mode = (Mode)binaryReader.ReadByte(); // Sex - 2 separate bool - MaleSex = binaryReader.Read(); - FemaleSex = binaryReader.Read(); + MaleSex = binaryReader.ReadBool(); + FemaleSex = binaryReader.ReadBool(); // Job x6 - Fighter = binaryReader.Read(); - Defender = binaryReader.Read(); - Ranger = binaryReader.Read(); - Archer = binaryReader.Read(); - Mage = binaryReader.Read(); - Priest = binaryReader.Read(); - - wHG = binaryReader.Read(); - shVG = binaryReader.Read(); - byCG = binaryReader.Read(); - byOG = binaryReader.Read(); - byIG = binaryReader.Read(); - - PreviousQuestId = binaryReader.Read(); - RequireParty = binaryReader.Read(); + Fighter = binaryReader.ReadByte(); + Defender = binaryReader.ReadByte(); + Ranger = binaryReader.ReadByte(); + Archer = binaryReader.ReadByte(); + Mage = binaryReader.ReadByte(); + Priest = binaryReader.ReadByte(); + + wHG = binaryReader.ReadUInt16(); + shVG = binaryReader.ReadInt16(); + byCG = binaryReader.ReadByte(); + byOG = binaryReader.ReadByte(); + byIG = binaryReader.ReadByte(); + + PreviousQuestId = binaryReader.ReadUInt16(); + RequireParty = binaryReader.ReadBool(); // Party Job x6 - PartyFighter = binaryReader.Read(); - PartyDefender = binaryReader.Read(); - PartyRanger = binaryReader.Read(); - PartyArcher = binaryReader.Read(); - PartyMage = binaryReader.Read(); - PartyPriest = binaryReader.Read(); + PartyFighter = binaryReader.ReadByte(); + PartyDefender = binaryReader.ReadByte(); + PartyRanger = binaryReader.ReadByte(); + PartyArcher = binaryReader.ReadByte(); + PartyMage = binaryReader.ReadByte(); + PartyPriest = binaryReader.ReadByte(); // Time values - MinimumTime = binaryReader.Read(); - Time = binaryReader.Read(); - TickStartTerm = binaryReader.Read(); - TickKeepTime = binaryReader.Read(); - TickReceiveCount = binaryReader.Read(); - - StartType = binaryReader.Read(); - StartNpcType = binaryReader.Read(); - StartNpcId = binaryReader.Read(); - StartItemType = binaryReader.Read(); - StartItemId = binaryReader.Read(); - - for (int i = 0; i < 3; i++) - { - var requiredItem = new QuestItem(binaryReader); - RequiredItems.Add(requiredItem); - } + MinimumTime = binaryReader.ReadUInt32(); + Time = binaryReader.ReadUInt32(); + TickStartTerm = binaryReader.ReadUInt32(); + TickKeepTime = binaryReader.ReadUInt32(); + TickReceiveCount = binaryReader.ReadUInt32(); - EndType = binaryReader.Read(); - EndNpcType = binaryReader.Read(); - EndNpcId = binaryReader.Read(); + StartType = binaryReader.ReadByte(); + StartNpcType = binaryReader.ReadByte(); + StartNpcId = binaryReader.ReadUInt16(); + StartItemType = binaryReader.ReadByte(); + StartItemId = binaryReader.ReadByte(); - for (int i = 0; i < 3; i++) - { - var farmItem = new QuestItem(binaryReader); - FarmItems.Add(farmItem); - } + RequiredItems = binaryReader.ReadList(3).ToList(); - PvpKillCount = binaryReader.Read(); - RequiredMobId1 = binaryReader.Read(); - RequiredMobCount1 = binaryReader.Read(); - RequiredMobId2 = binaryReader.Read(); - RequiredMobCount2 = binaryReader.Read(); + EndType = binaryReader.ReadByte(); + EndNpcType = binaryReader.ReadByte(); + EndNpcId = binaryReader.ReadInt16(); - ResultType = binaryReader.Read(); - ResultUserSelect = binaryReader.Read(); + FarmItems = binaryReader.ReadList(3).ToList(); - switch (episode) + PvpKillCount = binaryReader.ReadByte(); + RequiredMobId1 = binaryReader.ReadUInt16(); + RequiredMobCount1 = binaryReader.ReadByte(); + RequiredMobId2 = binaryReader.ReadUInt16(); + RequiredMobCount2 = binaryReader.ReadByte(); + + ResultType = binaryReader.ReadByte(); + ResultUserSelect = binaryReader.ReadByte(); + + if (episode <= Episode.EP5) + { + // Episodes 4 & 5 have 3 results and completion messages are read afterwards + Results = binaryReader.ReadList(3).ToList(); + + InitialDescription = binaryReader.ReadString(false); + QuestWindowSummary = binaryReader.ReadString(false); + ReminderInstructions = binaryReader.ReadString(false); + AlternateResponse = binaryReader.ReadString(false); + + for (var i = 0; i < 3; i++) + { + Results[i].CompletionMessage = binaryReader.ReadString(false); + } + } + else { - case <= Episode.EP5: - { - // Episodes 4 & 5 have 3 results and completion messages are read afterwards - for (int i = 0; i < 3; i++) - { - var result = new QuestResult(binaryReader, episode); - Results.Add(result); - } - - InitialDescription = binaryReader.ReadString(false); - QuestWindowSummary = binaryReader.ReadString(false); - ReminderInstructions = binaryReader.ReadString(false); - AlternateResponse = binaryReader.ReadString(false); - - for (int i = 0; i < 3; i++) - { - Results[i].CompletionMessage = binaryReader.ReadString(false); - } - - break; - } - case >= Episode.EP6: - { - // Episode 6 has 6 quest results and each result value is followed by its completion message - for (int i = 0; i < 6; i++) - { - var result = new QuestResult(binaryReader, episode); - Results.Add(result); - - // Episode 8 doesn't have messages, they're part of the translation files - if (episode < Episode.EP8) - result.CompletionMessage = binaryReader.ReadString(false); - } - - // Episode 8 doesn't have messages, they're part of the translation files - if (episode < Episode.EP8) - { - InitialDescription = binaryReader.ReadString(false); - QuestWindowSummary = binaryReader.ReadString(false); - ReminderInstructions = binaryReader.ReadString(false); - AlternateResponse = binaryReader.ReadString(false); - } - - break; - } + // Episode 6 has 6 quest results and each result value is followed by its completion message + Results = binaryReader.ReadList(6).ToList(); + + if (episode < Episode.EP8) + { + InitialDescription = binaryReader.ReadString(false); + QuestWindowSummary = binaryReader.ReadString(false); + ReminderInstructions = binaryReader.ReadString(false); + AlternateResponse = binaryReader.ReadString(false); + } } } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); + var episode = binaryWriter.SerializationOptions.Episode; - buffer.AddRange(Id.GetBytes()); + binaryWriter.Write(Id); - if (episode < Episode.EP8) // In ep 8, messages are moved to separate translation files. + if (episode < Episode.EP8) { - buffer.AddRange(Name.GetLengthPrefixedBytes(false)); - buffer.AddRange(Summary.GetLengthPrefixedBytes(false)); + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.WriteLengthPrefixedString(Summary); } - buffer.AddRange(MinLevel.GetBytes()); - buffer.AddRange(MaxLevel.GetBytes()); - buffer.Add((byte)Faction); - buffer.Add((byte)Mode); - buffer.AddRange(MaleSex.GetBytes()); - buffer.AddRange(FemaleSex.GetBytes()); - buffer.Add(Fighter); - buffer.Add(Defender); - buffer.Add(Ranger); - buffer.Add(Archer); - buffer.Add(Mage); - buffer.Add(Priest); - buffer.AddRange(wHG.GetBytes()); - buffer.AddRange(shVG.GetBytes()); - buffer.Add(byCG); - buffer.Add(byOG); - buffer.Add(byIG); - - buffer.AddRange(PreviousQuestId.GetBytes()); - buffer.AddRange(RequireParty.GetBytes()); - - buffer.Add(PartyFighter); - buffer.Add(PartyDefender); - buffer.Add(PartyRanger); - buffer.Add(PartyArcher); - buffer.Add(PartyMage); - buffer.Add(PartyPriest); - - buffer.AddRange(MinimumTime.GetBytes()); - buffer.AddRange(Time.GetBytes()); - buffer.AddRange(TickStartTerm.GetBytes()); - buffer.AddRange(TickKeepTime.GetBytes()); - buffer.AddRange(TickReceiveCount.GetBytes()); - - buffer.Add(StartType); - buffer.Add(StartNpcType); - buffer.AddRange(StartNpcId.GetBytes()); - buffer.Add(StartItemType); - buffer.Add(StartItemId); - - buffer.AddRange(RequiredItems.Take(3).GetBytes(false)); - - buffer.Add(EndType); - buffer.Add(EndNpcType); - buffer.AddRange(EndNpcId.GetBytes()); - - buffer.AddRange(FarmItems.Take(3).GetBytes(false)); - - buffer.Add(PvpKillCount); - buffer.AddRange(RequiredMobId1.GetBytes()); - buffer.Add(RequiredMobCount1); - buffer.AddRange(RequiredMobId2.GetBytes()); - buffer.Add(RequiredMobCount2); - - buffer.Add(ResultType); - buffer.Add(ResultUserSelect); - - switch (episode) + binaryWriter.Write(MinLevel); + binaryWriter.Write(MaxLevel); + binaryWriter.Write((byte)Faction); + binaryWriter.Write((byte)Mode); + binaryWriter.Write(MaleSex); + binaryWriter.Write(FemaleSex); + binaryWriter.Write(Fighter); + binaryWriter.Write(Defender); + binaryWriter.Write(Ranger); + binaryWriter.Write(Archer); + binaryWriter.Write(Mage); + binaryWriter.Write(Priest); + binaryWriter.Write(wHG); + binaryWriter.Write(shVG); + binaryWriter.Write(byCG); + binaryWriter.Write(byOG); + binaryWriter.Write(byIG); + binaryWriter.Write(PreviousQuestId); + binaryWriter.Write(RequireParty); + binaryWriter.Write(PartyFighter); + binaryWriter.Write(PartyDefender); + binaryWriter.Write(PartyRanger); + binaryWriter.Write(PartyArcher); + binaryWriter.Write(PartyMage); + binaryWriter.Write(PartyPriest); + binaryWriter.Write(MinimumTime); + binaryWriter.Write(Time); + binaryWriter.Write(TickStartTerm); + binaryWriter.Write(TickKeepTime); + binaryWriter.Write(TickReceiveCount); + binaryWriter.Write(StartType); + binaryWriter.Write(StartNpcType); + binaryWriter.Write(StartNpcId); + binaryWriter.Write(StartItemType); + binaryWriter.Write(StartItemId); + binaryWriter.Write(RequiredItems.Take(3).ToSerializable()); + binaryWriter.Write(EndType); + binaryWriter.Write(EndNpcType); + binaryWriter.Write(EndNpcId); + binaryWriter.Write(FarmItems.Take(3).ToSerializable()); + binaryWriter.Write(PvpKillCount); + binaryWriter.Write(RequiredMobId1); + binaryWriter.Write(RequiredMobCount1); + binaryWriter.Write(RequiredMobId2); + binaryWriter.Write(RequiredMobCount2); + binaryWriter.Write(ResultType); + binaryWriter.Write(ResultUserSelect); + + if (episode <= Episode.EP5) { - case <= Episode.EP5: - { - buffer.AddRange(Results.Take(3).GetBytes(false)); - buffer.AddRange(InitialDescription.GetLengthPrefixedBytes(false)); - buffer.AddRange(QuestWindowSummary.GetLengthPrefixedBytes(false)); - buffer.AddRange(ReminderInstructions.GetLengthPrefixedBytes(false)); - buffer.AddRange(AlternateResponse.GetLengthPrefixedBytes(false)); - foreach (var result in Results.Take(3)) - buffer.AddRange(result.CompletionMessage.GetLengthPrefixedBytes(false)); - - break; - } - case >= Episode.EP6: - { - foreach (var result in Results.Take(6)) - { - buffer.AddRange(result.GetBytes(episode)); - - if (episode < Episode.EP8) - { - buffer.AddRange(result.CompletionMessage.GetLengthPrefixedBytes(false)); - } - } - - if (episode < Episode.EP8) - { - buffer.AddRange(InitialDescription.GetLengthPrefixedBytes(false)); - buffer.AddRange(QuestWindowSummary.GetLengthPrefixedBytes(false)); - buffer.AddRange(ReminderInstructions.GetLengthPrefixedBytes(false)); - buffer.AddRange(AlternateResponse.GetLengthPrefixedBytes(false)); - } - - break; - } - } + binaryWriter.Write(Results.Take(3).ToSerializable()); + + binaryWriter.WriteLengthPrefixedString(InitialDescription); + binaryWriter.WriteLengthPrefixedString(QuestWindowSummary); + binaryWriter.WriteLengthPrefixedString(ReminderInstructions); + binaryWriter.WriteLengthPrefixedString(AlternateResponse); - return buffer; + for (var i = 0; i < 3; i++) + { + binaryWriter.WriteLengthPrefixedString(Results[i].CompletionMessage); + } + } + else + { + binaryWriter.Write(Results.Take(6).ToSerializable()); + + if (episode < Episode.EP8) + { + binaryWriter.WriteLengthPrefixedString(InitialDescription); + binaryWriter.WriteLengthPrefixedString(QuestWindowSummary); + binaryWriter.WriteLengthPrefixedString(ReminderInstructions); + binaryWriter.WriteLengthPrefixedString(AlternateResponse); + } + } } } diff --git a/src/Parsec/Shaiya/NpcQuest/QuestFaction.cs b/src/Parsec/Shaiya/NpcQuest/QuestFaction.cs new file mode 100644 index 00000000..ad280a8b --- /dev/null +++ b/src/Parsec/Shaiya/NpcQuest/QuestFaction.cs @@ -0,0 +1,8 @@ +namespace Parsec.Shaiya.NpcQuest; + +public enum QuestFaction : byte +{ + Light, + Fury, + Any +} diff --git a/src/Parsec/Shaiya/NpcQuest/QuestItem.cs b/src/Parsec/Shaiya/NpcQuest/QuestItem.cs index ee0e567c..15506028 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestItem.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestItem.cs @@ -1,26 +1,27 @@ -using Newtonsoft.Json; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class QuestItem : IBinary +public class QuestItem : ISerializable { public byte Type { get; set; } + public byte TypeId { get; set; } + public byte Count { get; set; } - [JsonConstructor] - public QuestItem() + public void Read(SBinaryReader binaryReader) { + Type = binaryReader.ReadByte(); + TypeId = binaryReader.ReadByte(); + Count = binaryReader.ReadByte(); } - public QuestItem(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); - Count = binaryReader.Read(); + binaryWriter.Write(Type); + binaryWriter.Write(TypeId); + binaryWriter.Write(Count); } - - public IEnumerable GetBytes(params object[] options) => new[] { Type, TypeId, Count }; } diff --git a/src/Parsec/Shaiya/NpcQuest/QuestResult.cs b/src/Parsec/Shaiya/NpcQuest/QuestResult.cs index b7853501..c674efe8 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestResult.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestResult.cs @@ -1,108 +1,113 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Common; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class QuestResult : IBinary +public class QuestResult : ISerializable { public ushort NeedMobId { get; set; } + public byte NeedMobCount { get; set; } + public byte NeedItemId { get; set; } + public byte NeedItemCount { get; set; } + public uint NeedTime { get; set; } + public ushort NeedHG { get; set; } + public short NeedVG { get; set; } + public byte NeedOG { get; set; } + public uint Exp { get; set; } + public uint Money { get; set; } + public byte ItemType1 { get; set; } + public byte ItemTypeId1 { get; set; } + public byte ItemCount1 { get; set; } + public byte ItemType2 { get; set; } + public byte ItemTypeId2 { get; set; } + public byte ItemCount2 { get; set; } + public byte ItemType3 { get; set; } + public byte ItemTypeId3 { get; set; } + public byte ItemCount3 { get; set; } + public ushort NextQuestId { get; set; } public string CompletionMessage { get; set; } = string.Empty; - public QuestResult(SBinaryReader binaryReader, Episode episode) + public void Read(SBinaryReader binaryReader) { - NeedMobId = binaryReader.Read(); - NeedMobCount = binaryReader.Read(); - NeedItemId = binaryReader.Read(); - NeedItemCount = binaryReader.Read(); - NeedTime = binaryReader.Read(); - NeedHG = binaryReader.Read(); - NeedVG = binaryReader.Read(); - NeedOG = binaryReader.Read(); - Exp = binaryReader.Read(); - Money = binaryReader.Read(); - ItemType1 = binaryReader.Read(); - ItemTypeId1 = binaryReader.Read(); - - // Some extra values are read here for EP6+ - if (episode > Episode.EP5) + NeedMobId = binaryReader.ReadUInt16(); + NeedMobCount = binaryReader.ReadByte(); + NeedItemId = binaryReader.ReadByte(); + NeedItemCount = binaryReader.ReadByte(); + NeedTime = binaryReader.ReadUInt32(); + NeedHG = binaryReader.ReadUInt16(); + NeedVG = binaryReader.ReadInt16(); + NeedOG = binaryReader.ReadByte(); + Exp = binaryReader.ReadUInt32(); + Money = binaryReader.ReadUInt32(); + ItemType1 = binaryReader.ReadByte(); + ItemTypeId1 = binaryReader.ReadByte(); + + if (binaryReader.SerializationOptions.Episode > Episode.EP5) { - ItemCount1 = binaryReader.Read(); - - ItemType2 = binaryReader.Read(); - ItemTypeId2 = binaryReader.Read(); - ItemCount2 = binaryReader.Read(); - - ItemType3 = binaryReader.Read(); - ItemTypeId3 = binaryReader.Read(); - ItemCount3 = binaryReader.Read(); + ItemCount1 = binaryReader.ReadByte(); + ItemType2 = binaryReader.ReadByte(); + ItemTypeId2 = binaryReader.ReadByte(); + ItemCount2 = binaryReader.ReadByte(); + ItemType3 = binaryReader.ReadByte(); + ItemTypeId3 = binaryReader.ReadByte(); + ItemCount3 = binaryReader.ReadByte(); } - NextQuestId = binaryReader.Read(); - } + NextQuestId = binaryReader.ReadUInt16(); - [JsonConstructor] - public QuestResult() - { + if (binaryReader.SerializationOptions.Episode < Episode.EP8) + { + CompletionMessage = binaryReader.ReadString(); + } } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var episode = Episode.EP5; - - if (options.Length > 0) - episode = (Episode)options[0]; - - var buffer = new List(); - buffer.AddRange(NeedMobId.GetBytes()); - buffer.Add(NeedMobCount); - buffer.Add(NeedItemId); - buffer.Add(NeedItemCount); - buffer.AddRange(NeedTime.GetBytes()); - buffer.AddRange(NeedHG.GetBytes()); - buffer.AddRange(NeedVG.GetBytes()); - buffer.Add(NeedOG); - buffer.AddRange(Exp.GetBytes()); - buffer.AddRange(Money.GetBytes()); - buffer.Add(ItemType1); - buffer.Add(ItemTypeId1); - - if (episode > Episode.EP5) + binaryWriter.Write(NeedMobId); + binaryWriter.Write(NeedMobCount); + binaryWriter.Write(NeedItemId); + binaryWriter.Write(NeedItemCount); + binaryWriter.Write(NeedTime); + binaryWriter.Write(NeedHG); + binaryWriter.Write(NeedVG); + binaryWriter.Write(NeedOG); + binaryWriter.Write(Exp); + binaryWriter.Write(Money); + binaryWriter.Write(ItemType1); + binaryWriter.Write(ItemTypeId1); + + if (binaryWriter.SerializationOptions.Episode > Episode.EP5) { - buffer.Add(ItemCount1); - - buffer.Add(ItemType2); - buffer.Add(ItemTypeId2); - buffer.Add(ItemCount2); - - buffer.Add(ItemType3); - buffer.Add(ItemTypeId3); - buffer.Add(ItemCount3); + binaryWriter.Write(ItemCount1); + binaryWriter.Write(ItemType2); + binaryWriter.Write(ItemTypeId2); + binaryWriter.Write(ItemCount2); + binaryWriter.Write(ItemType3); + binaryWriter.Write(ItemTypeId3); + binaryWriter.Write(ItemCount3); } - buffer.AddRange(NextQuestId.GetBytes()); - return buffer; + binaryWriter.Write(NextQuestId); } } diff --git a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs index d3a56084..5bcddcdb 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs @@ -1,60 +1,63 @@ -using Newtonsoft.Json; -using Parsec.Attributes; +using Parsec.Serialization; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class QuestTranslation +public class QuestTranslation : ISerializable { - [ShaiyaProperty] - [LengthPrefixedString] public string Name { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string Summary { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage2 { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage3 { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage4 { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage5 { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string CompletionMessage6 { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string InitialDescription { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string WelcomeMessage { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string ReminderMessage { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString] public string AlternateResponse { get; set; } = string.Empty; - [JsonConstructor] - public QuestTranslation() + public void Read(SBinaryReader binaryReader) { + Name = binaryReader.ReadString(); + Summary = binaryReader.ReadString(); + CompletionMessage = binaryReader.ReadString(); + CompletionMessage2 = binaryReader.ReadString(); + CompletionMessage3 = binaryReader.ReadString(); + CompletionMessage4 = binaryReader.ReadString(); + CompletionMessage5 = binaryReader.ReadString(); + CompletionMessage6 = binaryReader.ReadString(); + InitialDescription = binaryReader.ReadString(); + WelcomeMessage = binaryReader.ReadString(); + ReminderMessage = binaryReader.ReadString(); + AlternateResponse = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.WriteLengthPrefixedString(Name, false); + binaryWriter.WriteLengthPrefixedString(Summary, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage2, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage3, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage4, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage5, false); + binaryWriter.WriteLengthPrefixedString(CompletionMessage6, false); + binaryWriter.WriteLengthPrefixedString(InitialDescription, false); + binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); + binaryWriter.WriteLengthPrefixedString(ReminderMessage, false); + binaryWriter.WriteLengthPrefixedString(AlternateResponse, false); } } diff --git a/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs b/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs index e9e8f1a8..2f5bc35e 100644 --- a/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/StandardNpc.cs @@ -1,18 +1,17 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Serialization; +using Parsec.Serialization; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.NpcQuest; -public class StandardNpc : BaseNpc +public class StandardNpc : BaseNpc, ISerializable { - public StandardNpc(SBinaryReader binaryReader, Episode episode) + public void Read(SBinaryReader binaryReader) { - ReadNpcBaseComplete(binaryReader, episode); + ReadNpcBaseComplete(binaryReader); } - [JsonConstructor] - public StandardNpc() + public void Write(SBinaryWriter binaryWriter) { + WriteNpcBaseComplete(binaryWriter); } } diff --git a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillDataRecord.cs b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillDataRecord.cs index 3132072b..b91be246 100644 --- a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillDataRecord.cs +++ b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillDataRecord.cs @@ -1,307 +1,415 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.NpcSkill; public sealed class DBNpcSkillDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long SkillLevel { get; set; } - [ShaiyaProperty] public long Image { get; set; } - [ShaiyaProperty] public long Ani { get; set; } - [ShaiyaProperty] public long Effect { get; set; } - [ShaiyaProperty] public long ToggleType { get; set; } - [ShaiyaProperty] public long Sound { get; set; } - [ShaiyaProperty] public long Level { get; set; } - [ShaiyaProperty] public long Country { get; set; } - [ShaiyaProperty] public long AttackFighter { get; set; } - [ShaiyaProperty] public long DefenseFighter { get; set; } - [ShaiyaProperty] public long PatrolRogue { get; set; } - [ShaiyaProperty] public long ShootRogue { get; set; } - [ShaiyaProperty] public long AttackMage { get; set; } - [ShaiyaProperty] public long DefenseMage { get; set; } - [ShaiyaProperty] public long Grow { get; set; } - [ShaiyaProperty] public long Point { get; set; } - [ShaiyaProperty] public long TypeShow { get; set; } - [ShaiyaProperty] public long TypeAttack { get; set; } - [ShaiyaProperty] public long TypeEffect { get; set; } - [ShaiyaProperty] public long Type { get; set; } - [ShaiyaProperty] public long NeedWeapon1 { get; set; } - [ShaiyaProperty] public long NeedWeapon2 { get; set; } - [ShaiyaProperty] public long NeedWeapon3 { get; set; } - [ShaiyaProperty] public long NeedWeapon4 { get; set; } - [ShaiyaProperty] public long NeedWeapon5 { get; set; } - [ShaiyaProperty] public long NeedWeapon6 { get; set; } - [ShaiyaProperty] public long NeedWeapon7 { get; set; } - [ShaiyaProperty] public long NeedWeapon8 { get; set; } - [ShaiyaProperty] public long NeedWeapon9 { get; set; } - [ShaiyaProperty] public long NeedWeapon10 { get; set; } - [ShaiyaProperty] public long NeedWeapon11 { get; set; } - [ShaiyaProperty] public long NeedWeapon12 { get; set; } - [ShaiyaProperty] public long NeedWeapon13 { get; set; } - [ShaiyaProperty] public long NeedWeapon14 { get; set; } - [ShaiyaProperty] public long NeedWeapon15 { get; set; } - [ShaiyaProperty] public long Shield { get; set; } - [ShaiyaProperty] public long SP { get; set; } - [ShaiyaProperty] public long MP { get; set; } - [ShaiyaProperty] public long ReadyTime { get; set; } - [ShaiyaProperty] public long ResetTime { get; set; } - [ShaiyaProperty] public long AttackRange { get; set; } - [ShaiyaProperty] public long StateType { get; set; } - [ShaiyaProperty] public long AttribType { get; set; } - [ShaiyaProperty] public long Disable { get; set; } - [ShaiyaProperty] public long PrevSkill { get; set; } - [ShaiyaProperty] public long SuccessType { get; set; } - [ShaiyaProperty] public long SuccessValue { get; set; } - [ShaiyaProperty] public long TargetType { get; set; } - [ShaiyaProperty] public long ApplyRange { get; set; } - [ShaiyaProperty] public long MultiAttack { get; set; } - [ShaiyaProperty] public long KeepTime { get; set; } - [ShaiyaProperty] public long Weapon1 { get; set; } - [ShaiyaProperty] public long Weapon2 { get; set; } - [ShaiyaProperty] public long WeaponValue { get; set; } - [ShaiyaProperty] public long Bag { get; set; } - [ShaiyaProperty] public long Arrow { get; set; } - [ShaiyaProperty] public long DamageType { get; set; } - [ShaiyaProperty] public long Damage1 { get; set; } - [ShaiyaProperty] public long Damage2 { get; set; } - [ShaiyaProperty] public long Damage3 { get; set; } - [ShaiyaProperty] public long TimeDamageType { get; set; } - [ShaiyaProperty] public long TimeDamage1 { get; set; } - [ShaiyaProperty] public long TimeDamage2 { get; set; } - [ShaiyaProperty] public long TimeDamage3 { get; set; } - [ShaiyaProperty] public long AddDamage1 { get; set; } - [ShaiyaProperty] public long AddDamage2 { get; set; } - [ShaiyaProperty] public long AddDamage3 { get; set; } - [ShaiyaProperty] public long AbilityType1 { get; set; } - [ShaiyaProperty] public long AbilityValue1 { get; set; } - [ShaiyaProperty] public long AbilityType2 { get; set; } - [ShaiyaProperty] public long AbilityValue2 { get; set; } - [ShaiyaProperty] public long AbilityType3 { get; set; } - [ShaiyaProperty] public long AbilityValue3 { get; set; } - [ShaiyaProperty] public long AbilityType4 { get; set; } - [ShaiyaProperty] public long AbilityValue4 { get; set; } - [ShaiyaProperty] public long AbilityType5 { get; set; } - [ShaiyaProperty] public long AbilityValue5 { get; set; } - [ShaiyaProperty] public long AbilityType6 { get; set; } - [ShaiyaProperty] public long AbilityValue6 { get; set; } - [ShaiyaProperty] public long AbilityType7 { get; set; } - [ShaiyaProperty] public long AbilityValue7 { get; set; } - [ShaiyaProperty] public long AbilityType8 { get; set; } - [ShaiyaProperty] public long AbilityValue8 { get; set; } - [ShaiyaProperty] public long AbilityType9 { get; set; } - [ShaiyaProperty] public long AbilityValue9 { get; set; } - [ShaiyaProperty] public long AbilityType10 { get; set; } - [ShaiyaProperty] public long AbilityValue10 { get; set; } - [ShaiyaProperty] public long Heal1 { get; set; } - [ShaiyaProperty] public long Heal2 { get; set; } - [ShaiyaProperty] public long Heal3 { get; set; } - [ShaiyaProperty] public long TimeHeal1 { get; set; } - [ShaiyaProperty] public long TimeHeal2 { get; set; } - [ShaiyaProperty] public long TimeHeal3 { get; set; } - [ShaiyaProperty] public long DefenceType { get; set; } - [ShaiyaProperty] public long DefenceValue { get; set; } - [ShaiyaProperty] public long LimitHP { get; set; } - [ShaiyaProperty] public long FixRange { get; set; } - [ShaiyaProperty] public long ChangeType { get; set; } - [ShaiyaProperty] public long ChangeLevel { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + SkillLevel = binaryReader.ReadInt64(); + Image = binaryReader.ReadInt64(); + Ani = binaryReader.ReadInt64(); + Effect = binaryReader.ReadInt64(); + ToggleType = binaryReader.ReadInt64(); + Sound = binaryReader.ReadInt64(); + Level = binaryReader.ReadInt64(); + Country = binaryReader.ReadInt64(); + AttackFighter = binaryReader.ReadInt64(); + DefenseFighter = binaryReader.ReadInt64(); + PatrolRogue = binaryReader.ReadInt64(); + ShootRogue = binaryReader.ReadInt64(); + AttackMage = binaryReader.ReadInt64(); + DefenseMage = binaryReader.ReadInt64(); + Grow = binaryReader.ReadInt64(); + Point = binaryReader.ReadInt64(); + TypeShow = binaryReader.ReadInt64(); + TypeAttack = binaryReader.ReadInt64(); + TypeEffect = binaryReader.ReadInt64(); + Type = binaryReader.ReadInt64(); + NeedWeapon1 = binaryReader.ReadInt64(); + NeedWeapon2 = binaryReader.ReadInt64(); + NeedWeapon3 = binaryReader.ReadInt64(); + NeedWeapon4 = binaryReader.ReadInt64(); + NeedWeapon5 = binaryReader.ReadInt64(); + NeedWeapon6 = binaryReader.ReadInt64(); + NeedWeapon7 = binaryReader.ReadInt64(); + NeedWeapon8 = binaryReader.ReadInt64(); + NeedWeapon9 = binaryReader.ReadInt64(); + NeedWeapon10 = binaryReader.ReadInt64(); + NeedWeapon11 = binaryReader.ReadInt64(); + NeedWeapon12 = binaryReader.ReadInt64(); + NeedWeapon13 = binaryReader.ReadInt64(); + NeedWeapon14 = binaryReader.ReadInt64(); + NeedWeapon15 = binaryReader.ReadInt64(); + Shield = binaryReader.ReadInt64(); + SP = binaryReader.ReadInt64(); + MP = binaryReader.ReadInt64(); + ReadyTime = binaryReader.ReadInt64(); + ResetTime = binaryReader.ReadInt64(); + AttackRange = binaryReader.ReadInt64(); + StateType = binaryReader.ReadInt64(); + AttribType = binaryReader.ReadInt64(); + Disable = binaryReader.ReadInt64(); + PrevSkill = binaryReader.ReadInt64(); + SuccessType = binaryReader.ReadInt64(); + SuccessValue = binaryReader.ReadInt64(); + TargetType = binaryReader.ReadInt64(); + ApplyRange = binaryReader.ReadInt64(); + MultiAttack = binaryReader.ReadInt64(); + KeepTime = binaryReader.ReadInt64(); + Weapon1 = binaryReader.ReadInt64(); + Weapon2 = binaryReader.ReadInt64(); + WeaponValue = binaryReader.ReadInt64(); + Bag = binaryReader.ReadInt64(); + Arrow = binaryReader.ReadInt64(); + DamageType = binaryReader.ReadInt64(); + Damage1 = binaryReader.ReadInt64(); + Damage2 = binaryReader.ReadInt64(); + Damage3 = binaryReader.ReadInt64(); + TimeDamageType = binaryReader.ReadInt64(); + TimeDamage1 = binaryReader.ReadInt64(); + TimeDamage2 = binaryReader.ReadInt64(); + TimeDamage3 = binaryReader.ReadInt64(); + AddDamage1 = binaryReader.ReadInt64(); + AddDamage2 = binaryReader.ReadInt64(); + AddDamage3 = binaryReader.ReadInt64(); + AbilityType1 = binaryReader.ReadInt64(); + AbilityValue1 = binaryReader.ReadInt64(); + AbilityType2 = binaryReader.ReadInt64(); + AbilityValue2 = binaryReader.ReadInt64(); + AbilityType3 = binaryReader.ReadInt64(); + AbilityValue3 = binaryReader.ReadInt64(); + AbilityType4 = binaryReader.ReadInt64(); + AbilityValue4 = binaryReader.ReadInt64(); + AbilityType5 = binaryReader.ReadInt64(); + AbilityValue5 = binaryReader.ReadInt64(); + AbilityType6 = binaryReader.ReadInt64(); + AbilityValue6 = binaryReader.ReadInt64(); + AbilityType7 = binaryReader.ReadInt64(); + AbilityValue7 = binaryReader.ReadInt64(); + AbilityType8 = binaryReader.ReadInt64(); + AbilityValue8 = binaryReader.ReadInt64(); + AbilityType9 = binaryReader.ReadInt64(); + AbilityValue9 = binaryReader.ReadInt64(); + AbilityType10 = binaryReader.ReadInt64(); + AbilityValue10 = binaryReader.ReadInt64(); + Heal1 = binaryReader.ReadInt64(); + Heal2 = binaryReader.ReadInt64(); + Heal3 = binaryReader.ReadInt64(); + TimeHeal1 = binaryReader.ReadInt64(); + TimeHeal2 = binaryReader.ReadInt64(); + TimeHeal3 = binaryReader.ReadInt64(); + DefenceType = binaryReader.ReadInt64(); + DefenceValue = binaryReader.ReadInt64(); + LimitHP = binaryReader.ReadInt64(); + FixRange = binaryReader.ReadInt64(); + ChangeType = binaryReader.ReadInt64(); + ChangeLevel = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(SkillLevel); + binaryWriter.Write(Image); + binaryWriter.Write(Ani); + binaryWriter.Write(Effect); + binaryWriter.Write(ToggleType); + binaryWriter.Write(Sound); + binaryWriter.Write(Level); + binaryWriter.Write(Country); + binaryWriter.Write(AttackFighter); + binaryWriter.Write(DefenseFighter); + binaryWriter.Write(PatrolRogue); + binaryWriter.Write(ShootRogue); + binaryWriter.Write(AttackMage); + binaryWriter.Write(DefenseMage); + binaryWriter.Write(Grow); + binaryWriter.Write(Point); + binaryWriter.Write(TypeShow); + binaryWriter.Write(TypeAttack); + binaryWriter.Write(TypeEffect); + binaryWriter.Write(Type); + binaryWriter.Write(NeedWeapon1); + binaryWriter.Write(NeedWeapon2); + binaryWriter.Write(NeedWeapon3); + binaryWriter.Write(NeedWeapon4); + binaryWriter.Write(NeedWeapon5); + binaryWriter.Write(NeedWeapon6); + binaryWriter.Write(NeedWeapon7); + binaryWriter.Write(NeedWeapon8); + binaryWriter.Write(NeedWeapon9); + binaryWriter.Write(NeedWeapon10); + binaryWriter.Write(NeedWeapon11); + binaryWriter.Write(NeedWeapon12); + binaryWriter.Write(NeedWeapon13); + binaryWriter.Write(NeedWeapon14); + binaryWriter.Write(NeedWeapon15); + binaryWriter.Write(Shield); + binaryWriter.Write(SP); + binaryWriter.Write(MP); + binaryWriter.Write(ReadyTime); + binaryWriter.Write(ResetTime); + binaryWriter.Write(AttackRange); + binaryWriter.Write(StateType); + binaryWriter.Write(AttribType); + binaryWriter.Write(Disable); + binaryWriter.Write(PrevSkill); + binaryWriter.Write(SuccessType); + binaryWriter.Write(SuccessValue); + binaryWriter.Write(TargetType); + binaryWriter.Write(ApplyRange); + binaryWriter.Write(MultiAttack); + binaryWriter.Write(KeepTime); + binaryWriter.Write(Weapon1); + binaryWriter.Write(Weapon2); + binaryWriter.Write(WeaponValue); + binaryWriter.Write(Bag); + binaryWriter.Write(Arrow); + binaryWriter.Write(DamageType); + binaryWriter.Write(Damage1); + binaryWriter.Write(Damage2); + binaryWriter.Write(Damage3); + binaryWriter.Write(TimeDamageType); + binaryWriter.Write(TimeDamage1); + binaryWriter.Write(TimeDamage2); + binaryWriter.Write(TimeDamage3); + binaryWriter.Write(AddDamage1); + binaryWriter.Write(AddDamage2); + binaryWriter.Write(AddDamage3); + binaryWriter.Write(AbilityType1); + binaryWriter.Write(AbilityValue1); + binaryWriter.Write(AbilityType2); + binaryWriter.Write(AbilityValue2); + binaryWriter.Write(AbilityType3); + binaryWriter.Write(AbilityValue3); + binaryWriter.Write(AbilityType4); + binaryWriter.Write(AbilityValue4); + binaryWriter.Write(AbilityType5); + binaryWriter.Write(AbilityValue5); + binaryWriter.Write(AbilityType6); + binaryWriter.Write(AbilityValue6); + binaryWriter.Write(AbilityType7); + binaryWriter.Write(AbilityValue7); + binaryWriter.Write(AbilityType8); + binaryWriter.Write(AbilityValue8); + binaryWriter.Write(AbilityType9); + binaryWriter.Write(AbilityValue9); + binaryWriter.Write(AbilityType10); + binaryWriter.Write(AbilityValue10); + binaryWriter.Write(Heal1); + binaryWriter.Write(Heal2); + binaryWriter.Write(Heal3); + binaryWriter.Write(TimeHeal1); + binaryWriter.Write(TimeHeal2); + binaryWriter.Write(TimeHeal3); + binaryWriter.Write(DefenceType); + binaryWriter.Write(DefenceValue); + binaryWriter.Write(LimitHP); + binaryWriter.Write(FixRange); + binaryWriter.Write(ChangeType); + binaryWriter.Write(ChangeLevel); + } } diff --git a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs index 52f31217..60768dda 100644 --- a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs +++ b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs @@ -1,21 +1,31 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.NpcSkill; public sealed class DBNpcSkillTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long SkillLevel { get; set; } - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Name { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Text { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + SkillLevel = binaryReader.ReadInt64(); + Name = binaryReader.ReadString(); + Text = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(SkillLevel); + binaryWriter.Write(Name, false); + binaryWriter.Write(Text, false); + } } diff --git a/src/Parsec/Shaiya/SData/BinarySData.cs b/src/Parsec/Shaiya/SData/BinarySData.cs index 0cb6f289..f4656902 100644 --- a/src/Parsec/Shaiya/SData/BinarySData.cs +++ b/src/Parsec/Shaiya/SData/BinarySData.cs @@ -1,10 +1,9 @@ using System.Globalization; using System.Text; using CsvHelper; -using Parsec.Attributes; using Parsec.Common; using Parsec.Extensions; -using Parsec.Shaiya.Core; +using Parsec.Serialization; namespace Parsec.Shaiya.SData; @@ -13,81 +12,50 @@ namespace Parsec.Shaiya.SData; /// /// 128-byte header unused by the game itself. It looks like a file signature + metadata /// - [ShaiyaProperty] - public byte[]? Header { get; set; } + public byte[] Header { get; set; } /// /// Field names are defined before the data. They aren't really used but knowing which each field means is nice /// - [ShaiyaProperty] public List Fields { get; set; } = new(); - [ShaiyaProperty] public List Records { get; set; } = new(); - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Header = _binaryReader.ReadBytes(128); - int fieldCount = _binaryReader.Read(); - - for (int i = 0; i < fieldCount; i++) - Fields.Add(new BinarySDataField(_binaryReader)); - - int recordCount = _binaryReader.Read(); - - for (int i = 0; i < recordCount; i++) - { - var recordType = typeof(TRecord); - var record = Activator.CreateInstance(); - - foreach (var property in recordType.GetProperties()) - { - object value = ReflectionHelper.ReadProperty(_binaryReader, typeof(TRecord), record, property); - property.SetValue(record, value); - } - - Records.Add(record); - } + Header = binaryReader.ReadBytes(128); + Fields = binaryReader.ReadList().ToList(); + Records = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Header); - buffer.AddRange(Fields.GetBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - - var recordType = typeof(TRecord); - - foreach (var record in Records) - { - foreach (var property in recordType.GetProperties()) - { - var propertyBytes = ReflectionHelper.GetPropertyBytes(recordType, record, property, Encoding, episode); - buffer.AddRange(propertyBytes); - } - } - - return buffer; + binaryWriter.Write(Header); + binaryWriter.Write(Fields.ToSerializable()); + binaryWriter.Write(Records.ToSerializable()); } - public static T ReadFromCsv(string csvPath, Encoding encoding = null) where T : BinarySData, new() + public static T ReadFromCsv(string csvPath, Encoding? encoding = null) where T : BinarySData, new() { encoding ??= Encoding.ASCII; using var reader = new StreamReader(csvPath, encoding); using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + if (csvReader.HeaderRecord == null) + { + throw new FileLoadException("Csv file doesn't have a valid header."); + } + // Read headers and records + var fields = csvReader.HeaderRecord.Select(c => (BinarySDataField)c).ToList(); var records = csvReader.GetRecords().ToList(); - var fields = csvReader.HeaderRecord?.Select(c => new BinarySDataField(c.ToLower())).ToList(); // Create the BinarySData instance with an empty header. The header is skipped entirely by the game so this isn't an issue. var binarySData = new T { Header = new byte[128], Fields = fields, Records = records, Encoding = encoding }; return binarySData; } - public void WriteCsv(string outputPath, Encoding encoding = null) + public void WriteCsv(string outputPath, Encoding? encoding = null) { encoding ??= Encoding.ASCII; using var writer = new StreamWriter(outputPath, false, encoding); diff --git a/src/Parsec/Shaiya/SData/BinarySDataField.cs b/src/Parsec/Shaiya/SData/BinarySDataField.cs index fc14578c..9893f68b 100644 --- a/src/Parsec/Shaiya/SData/BinarySDataField.cs +++ b/src/Parsec/Shaiya/SData/BinarySDataField.cs @@ -1,36 +1,26 @@ using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SData; -public sealed class BinarySDataField : IBinary +public sealed class BinarySDataField : ISerializable { - public BinarySDataField(string name) - { - Name = name; - } + public string Name { get; set; } = string.Empty; - [JsonConstructor] - public BinarySDataField() + public void Read(SBinaryReader binaryReader) { + Name = binaryReader.ReadString(Encoding.Unicode); } - public BinarySDataField(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - int length = binaryReader.Read(); - Name = binaryReader.ReadString(Encoding.Unicode, length); + binaryWriter.Write(Name, Encoding.Unicode); } - public string Name { get; set; } = string.Empty; + public static implicit operator string(BinarySDataField field) => field.Name; - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.Add((byte)Name.Length); - buffer.AddRange(Name.GetBytes(Encoding.Unicode)); - return buffer; - } + public static implicit operator BinarySDataField(string fieldName) => new BinarySDataField { Name = fieldName }; + + public override string ToString() => Name; } diff --git a/src/Parsec/Shaiya/SData/IBinarySDataRecord.cs b/src/Parsec/Shaiya/SData/IBinarySDataRecord.cs index 9f0bd315..6bc5f1bd 100644 --- a/src/Parsec/Shaiya/SData/IBinarySDataRecord.cs +++ b/src/Parsec/Shaiya/SData/IBinarySDataRecord.cs @@ -1,5 +1,7 @@ -namespace Parsec.Shaiya.SData; +using Parsec.Shaiya.Core; -public interface IBinarySDataRecord +namespace Parsec.Shaiya.SData; + +public interface IBinarySDataRecord : ISerializable { } diff --git a/src/Parsec/Shaiya/SData/SData.cs b/src/Parsec/Shaiya/SData/SData.cs index fcac6b99..053ec5a5 100644 --- a/src/Parsec/Shaiya/SData/SData.cs +++ b/src/Parsec/Shaiya/SData/SData.cs @@ -33,38 +33,43 @@ public abstract class SData : FileBase, IEncryptable public override string Extension => "SData"; /// - public void DecryptBuffer(bool validateChecksum = false) + public void DecryptBuffer(SBinaryReader binaryReader, bool validateChecksum = false) { - var fileBuffer = _binaryReader.ReadAllBytes(); + var fileBuffer = binaryReader.ReadAllBytes(); if (!IsEncrypted(fileBuffer)) { - _binaryReader.ResetOffset(); + binaryReader.ResetOffset(); return; } byte[] decryptedBuffer = Decrypt(fileBuffer, validateChecksum); - - _binaryReader = new SBinaryReader(decryptedBuffer, _binaryReader.SerializationOptions); + binaryReader = new SBinaryReader(decryptedBuffer, binaryReader.SerializationOptions); } /// public byte[] GetEncryptedBytes() { var version = Episode >= Episode.EP8 ? SDataVersion.Binary : SDataVersion.Regular; - return Encrypt(GetBytes(Episode).ToArray(), version); + var serializationOptions = new BinarySerializationOptions(Episode, Encoding); + + var memoryStream = new MemoryStream(); + var binaryWriter = new SBinaryWriter(memoryStream, serializationOptions); + Write(binaryWriter); + + byte[] encryptedBuffer = Encrypt(memoryStream.ToArray(), version); + return encryptedBuffer; } /// public void WriteEncrypted(string path) { - var version = Episode >= Episode.EP8 ? SDataVersion.Binary : SDataVersion.Regular; - byte[] encryptedBuffer = Encrypt(GetBytes(Episode).ToArray(), version); + var encryptedBuffer = GetEncryptedBytes(); FileHelper.WriteFile(path, encryptedBuffer); } /// - public void WriteDecrypted(string path) => Write(path, Episode); + public void WriteDecrypted(string path) => Write(path); /// /// Checks if the file is encrypted with the SEED algorithm diff --git a/src/Parsec/Shaiya/SMOD/CollisionObject.cs b/src/Parsec/Shaiya/SMOD/CollisionObject.cs deleted file mode 100644 index 1100fc94..00000000 --- a/src/Parsec/Shaiya/SMOD/CollisionObject.cs +++ /dev/null @@ -1,48 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.SMOD; - -/// -/// A 3d object used in SMOD files to represent an object where players should collide. -/// -public sealed class CollisionObject : IBinary -{ - /// - /// Vertices of the 3d object. - /// - public List Vertices { get; set; } = new(); - - /// - /// Triangular faces (polygons) of the 3d object. - /// - public List Faces { get; set; } = new(); - - [JsonConstructor] - public CollisionObject() - { - } - - public CollisionObject(SBinaryReader binaryReader) - { - int vertexCount = binaryReader.Read(); - for (int i = 0; i < vertexCount; i++) - Vertices.Add(new SimpleVertex(binaryReader)); - - int faceCount = binaryReader.Read(); - for (int i = 0; i < faceCount; i++) - Faces.Add(new Face(binaryReader)); - } - - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Vertices.GetBytes()); - buffer.AddRange(Faces.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/SMOD/SimpleVertex.cs b/src/Parsec/Shaiya/SMOD/SimpleVertex.cs deleted file mode 100644 index 77146eb7..00000000 --- a/src/Parsec/Shaiya/SMOD/SimpleVertex.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.SMOD; - -/// -/// Represents a vertex used in SMOD collision objects -/// -public sealed class SimpleVertex : IBinary -{ - /// - /// Coordinates of the vertex in the 3D space. - /// - public Vector3 Coordinates { get; set; } - - [JsonConstructor] - public SimpleVertex() - { - } - - public SimpleVertex(SBinaryReader binaryReader) - { - Coordinates = new Vector3(binaryReader); - } - - /// - public IEnumerable GetBytes(params object[] options) => Coordinates.GetBytes(); -} diff --git a/src/Parsec/Shaiya/SMOD/TexturedObject.cs b/src/Parsec/Shaiya/SMOD/TexturedObject.cs deleted file mode 100644 index 9ae8d2fb..00000000 --- a/src/Parsec/Shaiya/SMOD/TexturedObject.cs +++ /dev/null @@ -1,57 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.SMOD; - -/// -/// A 3d mesh with a texture -/// -public sealed class TexturedObject : IBinary -{ - /// - /// Name of the .tga texture file. Although they have the .tga extension, the client actually has .dds files, so they're very likely - /// replacing the .tga extension with .dds when searching for the texture. - /// - public string TextureName { get; set; } = string.Empty; - - /// - /// Mesh vertices - /// - public List Vertices { get; set; } = new(); - - /// - /// Mesh triangular faces - /// - public List Faces { get; set; } = new(); - - [JsonConstructor] - public TexturedObject() - { - } - - public TexturedObject(SBinaryReader binaryReader) - { - TextureName = binaryReader.ReadString(); - - int vertexCount = binaryReader.Read(); - for (int i = 0; i < vertexCount; i++) - Vertices.Add(new Vertex(binaryReader)); - - int faceCount = binaryReader.Read(); - for (int i = 0; i < faceCount; i++) - Faces.Add(new Face(binaryReader)); - } - - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(TextureName.GetLengthPrefixedBytes()); - buffer.AddRange(Vertices.GetBytes()); - buffer.AddRange(Faces.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/SMOD/Vertex.cs b/src/Parsec/Shaiya/SMOD/Vertex.cs deleted file mode 100644 index cd9f8cd3..00000000 --- a/src/Parsec/Shaiya/SMOD/Vertex.cs +++ /dev/null @@ -1,58 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.SMOD; - -/// -/// Represents a vertex used in an SMOD mesh -/// -public sealed class Vertex : IBinary -{ - /// - /// Vertex coordinates in the 3D space - /// - public Vector3 Coordinates { get; set; } - - /// - /// Vertex normal used for lighting - /// - public Vector3 Normal { get; set; } - - /// - /// SMODs don't have bones, that's why this value is always -1. - /// - public int BoneId { get; set; } = -1; - - /// - /// Texture mapping - /// - public Vector2 UV { get; set; } - - [JsonConstructor] - public Vertex() - { - } - - public Vertex(SBinaryReader binaryReader) - { - Coordinates = new Vector3(binaryReader); - Normal = new Vector3(binaryReader); - BoneId = binaryReader.Read(); - UV = new Vector2(binaryReader); - } - - /// - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Coordinates.GetBytes()); - buffer.AddRange(Normal.GetBytes()); - buffer.AddRange(BoneId.GetBytes()); - buffer.AddRange(UV.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Seff/Record.cs b/src/Parsec/Shaiya/Seff/Record.cs deleted file mode 100644 index 05b103fb..00000000 --- a/src/Parsec/Shaiya/Seff/Record.cs +++ /dev/null @@ -1,47 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Seff; - -public sealed class Record : IBinary -{ - [JsonConstructor] - public Record() - { - } - - public Record(SBinaryReader binaryReader, int format) - { - Id = binaryReader.Read(); - - int effectCount = binaryReader.Read(); - - for (int i = 0; i < effectCount; i++) - { - var effect = new SeffEffect(binaryReader, format); - Effects.Add(effect); - } - } - - public int Id { get; set; } - public List Effects { get; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - int format = 0; - - var buffer = new List(); - - if (options.Length > 0) - format = (int)options[0]; - - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Effects.Count.GetBytes()); - foreach (var effect in Effects) - buffer.AddRange(effect.GetBytes(format)); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Seff/Seff.cs b/src/Parsec/Shaiya/Seff/Seff.cs index e8a483c0..729903a2 100644 --- a/src/Parsec/Shaiya/Seff/Seff.cs +++ b/src/Parsec/Shaiya/Seff/Seff.cs @@ -1,6 +1,6 @@ using Newtonsoft.Json; -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Seff; @@ -8,45 +8,29 @@ namespace Parsec.Shaiya.Seff; public sealed class Seff : FileBase { public int Format { get; set; } - public TimeStamp TimeStamp; - public List Records { get; } = new(); + + public SeffTimeStamp TimeStamp; + + public List Records { get; set; } = new(); [JsonIgnore] public override string Extension => "seff"; - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Format = _binaryReader.Read(); - TimeStamp.Year = _binaryReader.Read(); - TimeStamp.Month = _binaryReader.Read(); - TimeStamp.Day = _binaryReader.Read(); - TimeStamp.Hour = _binaryReader.Read(); - TimeStamp.Minute = _binaryReader.Read(); - TimeStamp.Second = _binaryReader.Read(); - - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - { - var record = new Record(_binaryReader, Format); - Records.Add(record); - } + Format = binaryReader.ReadInt32(); + binaryReader.SerializationOptions.ExtraOption = Format; + + TimeStamp = binaryReader.Read(); + Records = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Format.GetBytes()); - buffer.AddRange(TimeStamp.Year.GetBytes()); - buffer.AddRange(TimeStamp.Month.GetBytes()); - buffer.AddRange(TimeStamp.Day.GetBytes()); - buffer.AddRange(TimeStamp.Hour.GetBytes()); - buffer.AddRange(TimeStamp.Minute.GetBytes()); - buffer.AddRange(TimeStamp.Second.GetBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - foreach (var effect in Records) - buffer.AddRange(effect.GetBytes(Format)); - - return buffer; + binaryWriter.SerializationOptions.ExtraOption = Format; + + binaryWriter.Write(Format); + binaryWriter.Write(TimeStamp); + binaryWriter.Write(Records.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Seff/SeffEffect.cs b/src/Parsec/Shaiya/Seff/SeffEffect.cs index eb5d8dfc..83114189 100644 --- a/src/Parsec/Shaiya/Seff/SeffEffect.cs +++ b/src/Parsec/Shaiya/Seff/SeffEffect.cs @@ -1,115 +1,139 @@ using System.Text; -using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Seff; -public sealed class SeffEffect +public sealed class SeffEffect : ISerializable { - [JsonConstructor] - public SeffEffect() - { - } - - public SeffEffect(SBinaryReader binaryReader, int format) - { - ParticleCount = binaryReader.Read(); - ParticleVelocity = binaryReader.Read(); - TextureBlendMode = binaryReader.Read(); - StartPositionMultiplier = binaryReader.Read(); - ParticleLifetime = binaryReader.Read(); - Unknown6 = binaryReader.Read(); - TextureFileName = binaryReader.ReadString(Encoding.Unicode); - Red = binaryReader.Read(); - Green = binaryReader.Read(); - Blue = binaryReader.Read(); - ParticleStartPosition = new Vector3(binaryReader); - Unknown10 = binaryReader.Read(); - ParticleStartSize = binaryReader.Read(); - IsVisible = binaryReader.Read(); - - Unknown12 = binaryReader.Read(); - - if (format > 2) - RotateWithStretchMultiplier = binaryReader.Read(); - - if (format > 3) - VelocityMultiplier = binaryReader.Read(); - - if (format > 5) - Unknown15 = binaryReader.Read(); - } - public uint ParticleCount { get; set; } + public float ParticleVelocity { get; set; } + /// /// Supported values are 0-3. 0 appears to be Normal. To-do: enumeration. /// https://en.wikipedia.org/wiki/Blend_modes /// public uint TextureBlendMode { get; set; } + /// /// Supported values are 0-9. /// public uint StartPositionMultiplier { get; set; } + /// /// Milliseconds /// public uint ParticleLifetime { get; set; } + public float Unknown6 { get; set; } + public string TextureFileName { get; set; } = string.Empty; + public byte Red { get; set; } + public byte Green { get; set; } + public byte Blue { get; set; } + public Vector3 ParticleStartPosition { get; set; } + public float Unknown10 { get; set; } + public float ParticleStartSize { get; set; } + public bool IsVisible { get; set; } + public float Unknown12 { get; set; } + public float RotateWithStretchMultiplier { get; set; } + public float VelocityMultiplier { get; set; } + public uint Unknown15 { get; set; } - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) { - int format = 0; - - if (options.Length > 0) - format = (int)options[0]; - - var buffer = new List(); - - buffer.AddRange(ParticleCount.GetBytes()); - buffer.AddRange(ParticleVelocity.GetBytes()); - buffer.AddRange(TextureBlendMode.GetBytes()); - buffer.AddRange(StartPositionMultiplier.GetBytes()); - buffer.AddRange(ParticleLifetime.GetBytes()); - buffer.AddRange(Unknown6.GetBytes()); + var format = 0; + + if (binaryReader.SerializationOptions.ExtraOption is int formatOption) + { + format = formatOption; + } + + ParticleCount = binaryReader.ReadUInt32(); + ParticleVelocity = binaryReader.ReadSingle(); + TextureBlendMode = binaryReader.ReadUInt32(); + StartPositionMultiplier = binaryReader.ReadUInt32(); + ParticleLifetime = binaryReader.ReadUInt32(); + Unknown6 = binaryReader.ReadSingle(); + TextureFileName = binaryReader.ReadString(Encoding.Unicode); + Red = binaryReader.ReadByte(); + Green = binaryReader.ReadByte(); + Blue = binaryReader.ReadByte(); + ParticleStartPosition = binaryReader.Read(); + Unknown10 = binaryReader.ReadSingle(); + ParticleStartSize = binaryReader.ReadSingle(); + IsVisible = binaryReader.ReadBool(); - buffer.AddRange(TextureFileName.GetLengthPrefixedBytes(Encoding.Unicode, false)); + Unknown12 = binaryReader.ReadSingle(); - buffer.Add(Red); - buffer.Add(Green); - buffer.Add(Blue); + if (format > 2) + { + RotateWithStretchMultiplier = binaryReader.ReadSingle(); + } - buffer.AddRange(ParticleStartPosition.GetBytes()); - buffer.AddRange(Unknown10.GetBytes()); - buffer.AddRange(ParticleStartSize.GetBytes()); + if (format > 3) + { + VelocityMultiplier = binaryReader.ReadSingle(); + } - buffer.Add(Convert.ToByte(IsVisible)); + if (format > 5) + { + Unknown15 = binaryReader.ReadUInt32(); + } + } - buffer.AddRange(Unknown12.GetBytes()); + public void Write(SBinaryWriter binaryWriter) + { + var format = 0; + + if (binaryWriter.SerializationOptions.ExtraOption is int formatOption) + { + format = formatOption; + } + + binaryWriter.Write(ParticleCount); + binaryWriter.Write(ParticleVelocity); + binaryWriter.Write(TextureBlendMode); + binaryWriter.Write(StartPositionMultiplier); + binaryWriter.Write(ParticleLifetime); + binaryWriter.Write(Unknown6); + binaryWriter.Write(TextureFileName, Encoding.Unicode, false); + binaryWriter.Write(Red); + binaryWriter.Write(Green); + binaryWriter.Write(Blue); + binaryWriter.Write(ParticleStartPosition); + binaryWriter.Write(Unknown10); + binaryWriter.Write(ParticleStartSize); + binaryWriter.Write(IsVisible); + + binaryWriter.Write(Unknown12); if (format > 2) - buffer.AddRange(RotateWithStretchMultiplier.GetBytes()); + { + binaryWriter.Write(RotateWithStretchMultiplier); + } if (format > 3) - buffer.AddRange(VelocityMultiplier.GetBytes()); + { + binaryWriter.Write(VelocityMultiplier); + } if (format > 5) - buffer.AddRange(Unknown15.GetBytes()); - - return buffer; + { + binaryWriter.Write(Unknown15); + } } } diff --git a/src/Parsec/Shaiya/Seff/SeffRecord.cs b/src/Parsec/Shaiya/Seff/SeffRecord.cs new file mode 100644 index 00000000..002b3610 --- /dev/null +++ b/src/Parsec/Shaiya/Seff/SeffRecord.cs @@ -0,0 +1,24 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Seff; + +public sealed class SeffRecord : ISerializable +{ + public int Id { get; set; } + + public List Effects { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt32(); + Effects = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Effects.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Seff/SeffTimeStamp.cs b/src/Parsec/Shaiya/Seff/SeffTimeStamp.cs new file mode 100644 index 00000000..f8bfa8f8 --- /dev/null +++ b/src/Parsec/Shaiya/Seff/SeffTimeStamp.cs @@ -0,0 +1,39 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Seff; + +public struct SeffTimeStamp : ISerializable +{ + public short Year; + + public short Month; + + public short Day; + + public short Hour; + + public short Minute; + + public short Second; + + public void Read(SBinaryReader binaryReader) + { + Year = binaryReader.ReadInt16(); + Month = binaryReader.ReadInt16(); + Day = binaryReader.ReadInt16(); + Hour = binaryReader.ReadInt16(); + Minute = binaryReader.ReadInt16(); + Second = binaryReader.ReadInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Year); + binaryWriter.Write(Month); + binaryWriter.Write(Day); + binaryWriter.Write(Hour); + binaryWriter.Write(Minute); + binaryWriter.Write(Second); + } +} diff --git a/src/Parsec/Shaiya/Seff/TimeStamp.cs b/src/Parsec/Shaiya/Seff/TimeStamp.cs deleted file mode 100644 index 58c5d06e..00000000 --- a/src/Parsec/Shaiya/Seff/TimeStamp.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace Parsec.Shaiya.Seff; - -public struct TimeStamp -{ - public short Year; - public short Month; - public short Day; - public short Hour; - public short Minute; - public short Second; -} diff --git a/src/Parsec/Shaiya/SetItem/DBSetItemDataRecord.cs b/src/Parsec/Shaiya/SetItem/DBSetItemDataRecord.cs index e57a1090..7fd3230c 100644 --- a/src/Parsec/Shaiya/SetItem/DBSetItemDataRecord.cs +++ b/src/Parsec/Shaiya/SetItem/DBSetItemDataRecord.cs @@ -1,88 +1,123 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.SetItem; public sealed class DBSetItemDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long Category1 { get; set; } - [ShaiyaProperty] public long Number1 { get; set; } - [ShaiyaProperty] public long Category2 { get; set; } - [ShaiyaProperty] public long Number2 { get; set; } - [ShaiyaProperty] public long Category3 { get; set; } - [ShaiyaProperty] public long Number3 { get; set; } - [ShaiyaProperty] public long Category4 { get; set; } - [ShaiyaProperty] public long Number4 { get; set; } - [ShaiyaProperty] public long Category5 { get; set; } - [ShaiyaProperty] public long Number5 { get; set; } - [ShaiyaProperty] public long Category6 { get; set; } - [ShaiyaProperty] public long Number6 { get; set; } - [ShaiyaProperty] public long Category7 { get; set; } - [ShaiyaProperty] public long Number7 { get; set; } - [ShaiyaProperty] public long Category8 { get; set; } - [ShaiyaProperty] public long Number8 { get; set; } - [ShaiyaProperty] public long Category9 { get; set; } - [ShaiyaProperty] public long Number9 { get; set; } - [ShaiyaProperty] public long Category10 { get; set; } - [ShaiyaProperty] public long Number10 { get; set; } - [ShaiyaProperty] public long Category11 { get; set; } - [ShaiyaProperty] public long Number11 { get; set; } - [ShaiyaProperty] public long Category12 { get; set; } - [ShaiyaProperty] public long Number12 { get; set; } - [ShaiyaProperty] public long Category13 { get; set; } - [ShaiyaProperty] public long Number13 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Category1 = binaryReader.ReadInt64(); + Number1 = binaryReader.ReadInt64(); + Category2 = binaryReader.ReadInt64(); + Number2 = binaryReader.ReadInt64(); + Category3 = binaryReader.ReadInt64(); + Number3 = binaryReader.ReadInt64(); + Category4 = binaryReader.ReadInt64(); + Number4 = binaryReader.ReadInt64(); + Category5 = binaryReader.ReadInt64(); + Number5 = binaryReader.ReadInt64(); + Category6 = binaryReader.ReadInt64(); + Number6 = binaryReader.ReadInt64(); + Category7 = binaryReader.ReadInt64(); + Number7 = binaryReader.ReadInt64(); + Category8 = binaryReader.ReadInt64(); + Number8 = binaryReader.ReadInt64(); + Category9 = binaryReader.ReadInt64(); + Number9 = binaryReader.ReadInt64(); + Category10 = binaryReader.ReadInt64(); + Number10 = binaryReader.ReadInt64(); + Category11 = binaryReader.ReadInt64(); + Number11 = binaryReader.ReadInt64(); + Category12 = binaryReader.ReadInt64(); + Number12 = binaryReader.ReadInt64(); + Category13 = binaryReader.ReadInt64(); + Number13 = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Category1); + binaryWriter.Write(Number1); + binaryWriter.Write(Category2); + binaryWriter.Write(Number2); + binaryWriter.Write(Category3); + binaryWriter.Write(Number3); + binaryWriter.Write(Category4); + binaryWriter.Write(Number4); + binaryWriter.Write(Category5); + binaryWriter.Write(Number5); + binaryWriter.Write(Category6); + binaryWriter.Write(Number6); + binaryWriter.Write(Category7); + binaryWriter.Write(Number7); + binaryWriter.Write(Category8); + binaryWriter.Write(Number8); + binaryWriter.Write(Category9); + binaryWriter.Write(Number9); + binaryWriter.Write(Category10); + binaryWriter.Write(Number10); + binaryWriter.Write(Category11); + binaryWriter.Write(Number11); + binaryWriter.Write(Category12); + binaryWriter.Write(Number12); + binaryWriter.Write(Category13); + binaryWriter.Write(Number13); + } } diff --git a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs index 69606184..22a7f160 100644 --- a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs +++ b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs @@ -1,52 +1,75 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.SetItem; public sealed class DBSetItemTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public string Name { get; set; } = string.Empty; - [ShaiyaProperty] public long SetEff1 { get; set; } - [ShaiyaProperty] public long SetEff2 { get; set; } - [ShaiyaProperty] public long SetEff3 { get; set; } - [ShaiyaProperty] public long SetEff4 { get; set; } - [ShaiyaProperty] public long SetEff5 { get; set; } - [ShaiyaProperty] public long SetEff6 { get; set; } - [ShaiyaProperty] public long SetEff7 { get; set; } - [ShaiyaProperty] public long SetEff8 { get; set; } - [ShaiyaProperty] public long SetEff9 { get; set; } - [ShaiyaProperty] public long SetEff10 { get; set; } - [ShaiyaProperty] public long SetEff11 { get; set; } - [ShaiyaProperty] public long SetEff12 { get; set; } - [ShaiyaProperty] public long SetEff13 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Name = binaryReader.ReadString(); + SetEff1 = binaryReader.ReadInt64(); + SetEff2 = binaryReader.ReadInt64(); + SetEff3 = binaryReader.ReadInt64(); + SetEff4 = binaryReader.ReadInt64(); + SetEff5 = binaryReader.ReadInt64(); + SetEff6 = binaryReader.ReadInt64(); + SetEff7 = binaryReader.ReadInt64(); + SetEff8 = binaryReader.ReadInt64(); + SetEff9 = binaryReader.ReadInt64(); + SetEff10 = binaryReader.ReadInt64(); + SetEff11 = binaryReader.ReadInt64(); + SetEff12 = binaryReader.ReadInt64(); + SetEff13 = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Name, false); + binaryWriter.Write(SetEff1); + binaryWriter.Write(SetEff2); + binaryWriter.Write(SetEff3); + binaryWriter.Write(SetEff4); + binaryWriter.Write(SetEff5); + binaryWriter.Write(SetEff6); + binaryWriter.Write(SetEff7); + binaryWriter.Write(SetEff8); + binaryWriter.Write(SetEff9); + binaryWriter.Write(SetEff10); + binaryWriter.Write(SetEff11); + binaryWriter.Write(SetEff12); + binaryWriter.Write(SetEff13); + } } diff --git a/src/Parsec/Shaiya/SetItem/SetItem.cs b/src/Parsec/Shaiya/SetItem/SetItem.cs index a8c03310..b2520a28 100644 --- a/src/Parsec/Shaiya/SetItem/SetItem.cs +++ b/src/Parsec/Shaiya/SetItem/SetItem.cs @@ -1,18 +1,19 @@ -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.SetItem; public sealed class SetItem : SData.SData { - public List Records { get; } = new(); + public List Records { get; set; } = new(); - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - Records.Add(new SetItemRecord(_binaryReader)); + Records = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) => Records.GetBytes(); + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Records.ToSerializable()); + } } diff --git a/src/Parsec/Shaiya/SetItem/SetItemItem.cs b/src/Parsec/Shaiya/SetItem/SetItemItem.cs deleted file mode 100644 index 2a51eb71..00000000 --- a/src/Parsec/Shaiya/SetItem/SetItemItem.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.SetItem; - -public sealed class SetItemItem : IBinary -{ - [JsonConstructor] - public SetItemItem() - { - } - - public SetItemItem(SBinaryReader binaryReader) - { - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); - } - - public short Type { get; set; } - public short TypeId { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Type.GetBytes()); - buffer.AddRange(TypeId.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs index 542890a0..f99a1198 100644 --- a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs +++ b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs @@ -1,49 +1,33 @@ -using Newtonsoft.Json; -using Parsec.Extensions; +using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.SetItem; -public sealed class SetItemRecord : IBinary +public sealed class SetItemRecord : ISerializable { - [JsonConstructor] - public SetItemRecord() - { - } + public ushort Index { get; set; } - public SetItemRecord(SBinaryReader binaryReader) - { - Index = binaryReader.Read(); - Name = binaryReader.ReadString(); + public string Name { get; set; } = string.Empty; - for (int i = 0; i < 13; i++) - Items.Add(new SetItemItem(binaryReader)); + public List Items { get; set; } = new(); - for (int i = 0; i < 13; i++) - { - string synergy = binaryReader.ReadString(); - Synergies.Add(synergy); - } - } + public List Synergies { get; set; } = new(); - public short Index { get; set; } - public string Name { get; set; } = string.Empty; - public List Items { get; } = new(); - public List Synergies { get; } = new(); - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) { - var buffer = new List(); - buffer.AddRange(Index.GetBytes()); - buffer.AddRange(Name.GetLengthPrefixedBytes()); - - foreach (var item in Items.Take(13)) - buffer.AddRange(item.GetBytes()); - - foreach (string synergy in Synergies.Take(13)) - buffer.AddRange(synergy.GetLengthPrefixedBytes()); + Index = binaryReader.ReadUInt16(); + Name = binaryReader.ReadString(); + Items = binaryReader.ReadList(13).ToList(); + Synergies = binaryReader.ReadList(13).ToList(); + } - return buffer; + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Index); + binaryWriter.Write(Name); + binaryWriter.Write(Items.Take(13).ToSerializable()); + binaryWriter.Write(Synergies.Take(13).ToSerializable()); } } diff --git a/src/Parsec/Shaiya/SetItem/SetItemRecordItem.cs b/src/Parsec/Shaiya/SetItem/SetItemRecordItem.cs new file mode 100644 index 00000000..51faf8ed --- /dev/null +++ b/src/Parsec/Shaiya/SetItem/SetItemRecordItem.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.SetItem; + +public sealed class SetItemRecordItem : ISerializable +{ + public ushort Type { get; set; } + + public ushort TypeId { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Type = binaryReader.ReadUInt16(); + TypeId = binaryReader.ReadUInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Type); + binaryWriter.Write(TypeId); + } +} diff --git a/src/Parsec/Shaiya/SetItem/SetItemSynergy.cs b/src/Parsec/Shaiya/SetItem/SetItemSynergy.cs new file mode 100644 index 00000000..3f1c9e72 --- /dev/null +++ b/src/Parsec/Shaiya/SetItem/SetItemSynergy.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.SetItem; + +public class SetItemSynergy : ISerializable +{ + public string Synergy { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Synergy = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Synergy); + } +} diff --git a/src/Parsec/Shaiya/Skill/DBSkillDataRecord.cs b/src/Parsec/Shaiya/Skill/DBSkillDataRecord.cs index 92aae8ca..17b96e72 100644 --- a/src/Parsec/Shaiya/Skill/DBSkillDataRecord.cs +++ b/src/Parsec/Shaiya/Skill/DBSkillDataRecord.cs @@ -1,4 +1,4 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Skill; @@ -8,617 +8,657 @@ public sealed class DBSkillDataRecord : IBinarySDataRecord /// /// Id of skill. /// - [ShaiyaProperty] public long Id { get; set; } /// /// Level of skill. /// - [ShaiyaProperty] public long SkillLevel { get; set; } /// /// Skill icon. /// - [ShaiyaProperty] public long Image { get; set; } /// /// Skill animation. /// - - [ShaiyaProperty] public long Ani { get; set; } /// /// ? /// - - [ShaiyaProperty] public long Effect { get; set; } /// /// ? /// - - [ShaiyaProperty] public long ToggleType { get; set; } /// /// Skill sound effect. /// - - [ShaiyaProperty] public long Sound { get; set; } /// /// Character required level. /// - - [ShaiyaProperty] public long Level { get; set; } /// /// Which faction and profession can use this skill. /// - - [ShaiyaProperty] public long Country { get; set; } /// /// Indicates if skill can be used by fighter. /// - - [ShaiyaProperty] public long AttackFighter { get; set; } /// /// Indicates if skill can be used by defender. /// - - [ShaiyaProperty] public long DefenseFighter { get; set; } /// /// Indicates if skill can be used by ranger. /// - - [ShaiyaProperty] public long PatrolRogue { get; set; } /// /// Indicates if skill can be used by archer. /// - - [ShaiyaProperty] public long ShootRogue { get; set; } /// /// Indicates if skill can be used by mage. /// - - [ShaiyaProperty] public long AttackMage { get; set; } /// /// Indicates if skill can be used by priest. /// - - [ShaiyaProperty] public long DefenseMage { get; set; } /// /// Skill can be used in basic/ultimate mode. /// - - [ShaiyaProperty] public long Grow { get; set; } /// /// How many skill points are needed in order to learn this skill. /// - - [ShaiyaProperty] public long Point { get; set; } /// /// Category of skill. E.g. combat or special. /// - - [ShaiyaProperty] public long TypeShow { get; set; } /// /// Passive, physical, magic or shooting attack. /// - - [ShaiyaProperty] public long TypeAttack { get; set; } /// /// Additional effect description. /// - - [ShaiyaProperty] public long TypeEffect { get; set; } /// /// Type detail describes what skill does. /// - - [ShaiyaProperty] public long Type { get; set; } /// /// Skill requires 1 Handed Sword. /// - - [ShaiyaProperty] public long NeedWeapon1 { get; set; } /// /// Skill requires 2 Handed Sword. /// - - [ShaiyaProperty] public long NeedWeapon2 { get; set; } /// /// Skill requires 1 Handed Axe. /// - - [ShaiyaProperty] public long NeedWeapon3 { get; set; } /// /// Skill requires 2 Handed Axe. /// - - [ShaiyaProperty] public long NeedWeapon4 { get; set; } /// /// Skill requires Double Sword. /// - - [ShaiyaProperty] public long NeedWeapon5 { get; set; } /// /// Skill requires Spear. /// - - [ShaiyaProperty] public long NeedWeapon6 { get; set; } /// /// Skill requires 1 Handed Blunt. /// - - [ShaiyaProperty] public long NeedWeapon7 { get; set; } /// /// Skill requires 2 Handed Blunt. /// - - [ShaiyaProperty] public long NeedWeapon8 { get; set; } /// /// Skill requires Reverse sword. /// - - [ShaiyaProperty] public long NeedWeapon9 { get; set; } /// /// Skill requires Dagger. /// - - [ShaiyaProperty] public long NeedWeapon10 { get; set; } /// /// Skill requires Javelin. /// - - [ShaiyaProperty] public long NeedWeapon11 { get; set; } /// /// Skill requires Staff. /// - - [ShaiyaProperty] public long NeedWeapon12 { get; set; } /// /// Skill requires Bow. /// - - [ShaiyaProperty] public long NeedWeapon13 { get; set; } /// /// Skill requires Crossbow. /// - - [ShaiyaProperty] public long NeedWeapon14 { get; set; } /// /// Skill requires Knuckle. /// - - [ShaiyaProperty] public long NeedWeapon15 { get; set; } /// /// Skill requires shield. /// - - [ShaiyaProperty] public long Shield { get; set; } /// /// How many stamina points requires the skill. /// - - [ShaiyaProperty] public long SP { get; set; } /// /// How many mana points requires the skill. /// - - [ShaiyaProperty] public long MP { get; set; } /// /// Cast time. /// - - [ShaiyaProperty] public long ReadyTime { get; set; } /// /// Time after which skill can be used again. /// - - [ShaiyaProperty] public long ResetTime { get; set; } /// /// How many meters are needed in order to use the skill. /// - - [ShaiyaProperty] public long AttackRange { get; set; } /// /// State type contains information about what bad influence debuff has on target. /// - - [ShaiyaProperty] public long StateType { get; set; } /// /// None or fire/wind/earth/water. /// - - [ShaiyaProperty] public long AttribType { get; set; } /// /// ? /// - - [ShaiyaProperty] public long Disable { get; set; } /// /// Skill, that must be used before the skill. /// - - [ShaiyaProperty] public long PrevSkill { get; set; } /// /// SuccessType is always 0 for passive skills and 1 for other. /// - - [ShaiyaProperty] public long SuccessType { get; set; } /// /// Success chance in %. /// - - [ShaiyaProperty] public long SuccessValue { get; set; } /// /// What target is required for the skill. /// - - [ShaiyaProperty] public long TargetType { get; set; } /// /// Skill will be applied within X meters. /// - - [ShaiyaProperty] public long ApplyRange { get; set; } /// /// Used in multiple skill attacks. /// - - [ShaiyaProperty] public long MultiAttack { get; set; } /// /// Time for example for buffs. This time shows how long the skill will be applied. /// - - [ShaiyaProperty] public long KeepTime { get; set; } /// /// Only for passive skills; Weapon type to which passive skill speed modificator can be applied. /// - - [ShaiyaProperty] public long Weapon1 { get; set; } /// /// Only for passive skills; Weapon type to which passive skill speed modificator can be applied. /// - - [ShaiyaProperty] public long Weapon2 { get; set; } /// /// Only for passive skills; passive skill speed modificator or passive attack power up. /// - - [ShaiyaProperty] public long WeaponValue { get; set; } /// /// ? /// - - [ShaiyaProperty] public long Bag { get; set; } /// /// ? /// - - [ShaiyaProperty] public long Arrow { get; set; } /// /// Damage type. /// - - [ShaiyaProperty] public long DamageType { get; set; } /// /// Const damage used, when skill makes fixed damage. /// - - [ShaiyaProperty] public long Damage1 { get; set; } /// /// Const damage used, when skill makes fixed damage. /// - - [ShaiyaProperty] public long Damage2 { get; set; } /// /// Const damage used, when skill makes fixed damage. /// - - [ShaiyaProperty] public long Damage3 { get; set; } /// /// Time damage type. /// - - [ShaiyaProperty] public long TimeDamageType { get; set; } /// /// Either fixed hp or % hp damage made over time. /// - - [ShaiyaProperty] public long TimeDamage1 { get; set; } /// /// Either fixed sp or % sp damage made over time. /// - - [ShaiyaProperty] public long TimeDamage2 { get; set; } /// /// Either fixed mp or % mp damage made over time. /// - - [ShaiyaProperty] public long TimeDamage3 { get; set; } /// /// Const skill damage, that is added to damage made of stats. /// - - [ShaiyaProperty] public long AddDamage1 { get; set; } /// /// Const skill damage, that is added to damage made of stats. /// - - [ShaiyaProperty] public long AddDamage2 { get; set; } /// /// Const skill damage, that is added to damage made of stats. /// - - [ShaiyaProperty] public long AddDamage3 { get; set; } - [ShaiyaProperty] public long AbilityType1 { get; set; } - [ShaiyaProperty] public long AbilityValue1 { get; set; } - [ShaiyaProperty] public long AbilityType2 { get; set; } - [ShaiyaProperty] public long AbilityValue2 { get; set; } - [ShaiyaProperty] public long AbilityType3 { get; set; } - [ShaiyaProperty] public long AbilityValue3 { get; set; } - [ShaiyaProperty] public long AbilityType4 { get; set; } - [ShaiyaProperty] public long AbilityValue4 { get; set; } - [ShaiyaProperty] public long AbilityType5 { get; set; } - [ShaiyaProperty] public long AbilityValue5 { get; set; } - [ShaiyaProperty] public long AbilityType6 { get; set; } - [ShaiyaProperty] public long AbilityValue6 { get; set; } - [ShaiyaProperty] public long AbilityType7 { get; set; } - [ShaiyaProperty] public long AbilityValue7 { get; set; } - [ShaiyaProperty] public long AbilityType8 { get; set; } - [ShaiyaProperty] public long AbilityValue8 { get; set; } - [ShaiyaProperty] public long AbilityType9 { get; set; } - [ShaiyaProperty] public long AbilityValue9 { get; set; } - [ShaiyaProperty] public long AbilityType10 { get; set; } - [ShaiyaProperty] public long AbilityValue10 { get; set; } /// /// How many health points can be healed. /// - - [ShaiyaProperty] public long Heal1 { get; set; } /// /// How many stamina points can be healed. /// - - [ShaiyaProperty] public long Heal2 { get; set; } /// /// How many mana points can be healed. /// - - [ShaiyaProperty] public long Heal3 { get; set; } /// /// HP healed over time. /// - - [ShaiyaProperty] public long TimeHeal1 { get; set; } /// /// SP healed over time. /// - [ShaiyaProperty] public long TimeHeal2 { get; set; } /// /// MP healed over time. /// - [ShaiyaProperty] public long TimeHeal3 { get; set; } /// /// For "Fleet Foot" it's value 2, which is block shoot attack for X %. /// For "Magic Veil" it's value 3, which is block X magic attacks. /// - [ShaiyaProperty] public long DefenceType { get; set; } /// /// When is 2, it's % of blocked shoot attacks. /// When is 3, it's block X magic attacks. /// - [ShaiyaProperty] public long DefenceValue { get; set; } /// /// % of hp, when this skill is activated. /// - [ShaiyaProperty] public long LimitHP { get; set; } /// /// How long the skill should be kept. /// - [ShaiyaProperty] public long FixRange { get; set; } /// /// ? /// - [ShaiyaProperty] public long ChangeType { get; set; } /// /// ? /// - [ShaiyaProperty] public long ChangeLevel { get; set; } /// /// ? /// - [ShaiyaProperty] public long TacticZoneBound { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + SkillLevel = binaryReader.ReadInt64(); + Image = binaryReader.ReadInt64(); + Ani = binaryReader.ReadInt64(); + Effect = binaryReader.ReadInt64(); + ToggleType = binaryReader.ReadInt64(); + Sound = binaryReader.ReadInt64(); + Level = binaryReader.ReadInt64(); + Country = binaryReader.ReadInt64(); + AttackFighter = binaryReader.ReadInt64(); + DefenseFighter = binaryReader.ReadInt64(); + PatrolRogue = binaryReader.ReadInt64(); + ShootRogue = binaryReader.ReadInt64(); + AttackMage = binaryReader.ReadInt64(); + DefenseMage = binaryReader.ReadInt64(); + Grow = binaryReader.ReadInt64(); + Point = binaryReader.ReadInt64(); + TypeShow = binaryReader.ReadInt64(); + TypeAttack = binaryReader.ReadInt64(); + TypeEffect = binaryReader.ReadInt64(); + Type = binaryReader.ReadInt64(); + NeedWeapon1 = binaryReader.ReadInt64(); + NeedWeapon2 = binaryReader.ReadInt64(); + NeedWeapon3 = binaryReader.ReadInt64(); + NeedWeapon4 = binaryReader.ReadInt64(); + NeedWeapon5 = binaryReader.ReadInt64(); + NeedWeapon6 = binaryReader.ReadInt64(); + NeedWeapon7 = binaryReader.ReadInt64(); + NeedWeapon8 = binaryReader.ReadInt64(); + NeedWeapon9 = binaryReader.ReadInt64(); + NeedWeapon10 = binaryReader.ReadInt64(); + NeedWeapon11 = binaryReader.ReadInt64(); + NeedWeapon12 = binaryReader.ReadInt64(); + NeedWeapon13 = binaryReader.ReadInt64(); + NeedWeapon14 = binaryReader.ReadInt64(); + NeedWeapon15 = binaryReader.ReadInt64(); + Shield = binaryReader.ReadInt64(); + SP = binaryReader.ReadInt64(); + MP = binaryReader.ReadInt64(); + ReadyTime = binaryReader.ReadInt64(); + ResetTime = binaryReader.ReadInt64(); + AttackRange = binaryReader.ReadInt64(); + StateType = binaryReader.ReadInt64(); + AttribType = binaryReader.ReadInt64(); + Disable = binaryReader.ReadInt64(); + PrevSkill = binaryReader.ReadInt64(); + SuccessType = binaryReader.ReadInt64(); + SuccessValue = binaryReader.ReadInt64(); + TargetType = binaryReader.ReadInt64(); + ApplyRange = binaryReader.ReadInt64(); + MultiAttack = binaryReader.ReadInt64(); + KeepTime = binaryReader.ReadInt64(); + Weapon1 = binaryReader.ReadInt64(); + Weapon2 = binaryReader.ReadInt64(); + WeaponValue = binaryReader.ReadInt64(); + Bag = binaryReader.ReadInt64(); + Arrow = binaryReader.ReadInt64(); + DamageType = binaryReader.ReadInt64(); + Damage1 = binaryReader.ReadInt64(); + Damage2 = binaryReader.ReadInt64(); + Damage3 = binaryReader.ReadInt64(); + TimeDamageType = binaryReader.ReadInt64(); + TimeDamage1 = binaryReader.ReadInt64(); + TimeDamage2 = binaryReader.ReadInt64(); + TimeDamage3 = binaryReader.ReadInt64(); + AddDamage1 = binaryReader.ReadInt64(); + AddDamage2 = binaryReader.ReadInt64(); + AddDamage3 = binaryReader.ReadInt64(); + AbilityType1 = binaryReader.ReadInt64(); + AbilityValue1 = binaryReader.ReadInt64(); + AbilityType2 = binaryReader.ReadInt64(); + AbilityValue2 = binaryReader.ReadInt64(); + AbilityType3 = binaryReader.ReadInt64(); + AbilityValue3 = binaryReader.ReadInt64(); + AbilityType4 = binaryReader.ReadInt64(); + AbilityValue4 = binaryReader.ReadInt64(); + AbilityType5 = binaryReader.ReadInt64(); + AbilityValue5 = binaryReader.ReadInt64(); + AbilityType6 = binaryReader.ReadInt64(); + AbilityValue6 = binaryReader.ReadInt64(); + AbilityType7 = binaryReader.ReadInt64(); + AbilityValue7 = binaryReader.ReadInt64(); + AbilityType8 = binaryReader.ReadInt64(); + AbilityValue8 = binaryReader.ReadInt64(); + AbilityType9 = binaryReader.ReadInt64(); + AbilityValue9 = binaryReader.ReadInt64(); + AbilityType10 = binaryReader.ReadInt64(); + AbilityValue10 = binaryReader.ReadInt64(); + Heal1 = binaryReader.ReadInt64(); + Heal2 = binaryReader.ReadInt64(); + Heal3 = binaryReader.ReadInt64(); + TimeHeal1 = binaryReader.ReadInt64(); + TimeHeal2 = binaryReader.ReadInt64(); + TimeHeal3 = binaryReader.ReadInt64(); + DefenceType = binaryReader.ReadInt64(); + DefenceValue = binaryReader.ReadInt64(); + LimitHP = binaryReader.ReadInt64(); + FixRange = binaryReader.ReadInt64(); + ChangeType = binaryReader.ReadInt64(); + ChangeLevel = binaryReader.ReadInt64(); + TacticZoneBound = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(SkillLevel); + binaryWriter.Write(Image); + binaryWriter.Write(Ani); + binaryWriter.Write(Effect); + binaryWriter.Write(ToggleType); + binaryWriter.Write(Sound); + binaryWriter.Write(Level); + binaryWriter.Write(Country); + binaryWriter.Write(AttackFighter); + binaryWriter.Write(DefenseFighter); + binaryWriter.Write(PatrolRogue); + binaryWriter.Write(ShootRogue); + binaryWriter.Write(AttackMage); + binaryWriter.Write(DefenseMage); + binaryWriter.Write(Grow); + binaryWriter.Write(Point); + binaryWriter.Write(TypeShow); + binaryWriter.Write(TypeAttack); + binaryWriter.Write(TypeEffect); + binaryWriter.Write(Type); + binaryWriter.Write(NeedWeapon1); + binaryWriter.Write(NeedWeapon2); + binaryWriter.Write(NeedWeapon3); + binaryWriter.Write(NeedWeapon4); + binaryWriter.Write(NeedWeapon5); + binaryWriter.Write(NeedWeapon6); + binaryWriter.Write(NeedWeapon7); + binaryWriter.Write(NeedWeapon8); + binaryWriter.Write(NeedWeapon9); + binaryWriter.Write(NeedWeapon10); + binaryWriter.Write(NeedWeapon11); + binaryWriter.Write(NeedWeapon12); + binaryWriter.Write(NeedWeapon13); + binaryWriter.Write(NeedWeapon14); + binaryWriter.Write(NeedWeapon15); + binaryWriter.Write(Shield); + binaryWriter.Write(SP); + binaryWriter.Write(MP); + binaryWriter.Write(ReadyTime); + binaryWriter.Write(ResetTime); + binaryWriter.Write(AttackRange); + binaryWriter.Write(StateType); + binaryWriter.Write(AttribType); + binaryWriter.Write(Disable); + binaryWriter.Write(PrevSkill); + binaryWriter.Write(SuccessType); + binaryWriter.Write(SuccessValue); + binaryWriter.Write(TargetType); + binaryWriter.Write(ApplyRange); + binaryWriter.Write(MultiAttack); + binaryWriter.Write(KeepTime); + binaryWriter.Write(Weapon1); + binaryWriter.Write(Weapon2); + binaryWriter.Write(WeaponValue); + binaryWriter.Write(Bag); + binaryWriter.Write(Arrow); + binaryWriter.Write(DamageType); + binaryWriter.Write(Damage1); + binaryWriter.Write(Damage2); + binaryWriter.Write(Damage3); + binaryWriter.Write(TimeDamageType); + binaryWriter.Write(TimeDamage1); + binaryWriter.Write(TimeDamage2); + binaryWriter.Write(TimeDamage3); + binaryWriter.Write(AddDamage1); + binaryWriter.Write(AddDamage2); + binaryWriter.Write(AddDamage3); + binaryWriter.Write(AbilityType1); + binaryWriter.Write(AbilityValue1); + binaryWriter.Write(AbilityType2); + binaryWriter.Write(AbilityValue2); + binaryWriter.Write(AbilityType3); + binaryWriter.Write(AbilityValue3); + binaryWriter.Write(AbilityType4); + binaryWriter.Write(AbilityValue4); + binaryWriter.Write(AbilityType5); + binaryWriter.Write(AbilityValue5); + binaryWriter.Write(AbilityType6); + binaryWriter.Write(AbilityValue6); + binaryWriter.Write(AbilityType7); + binaryWriter.Write(AbilityValue7); + binaryWriter.Write(AbilityType8); + binaryWriter.Write(AbilityValue8); + binaryWriter.Write(AbilityType9); + binaryWriter.Write(AbilityValue9); + binaryWriter.Write(AbilityType10); + binaryWriter.Write(AbilityValue10); + binaryWriter.Write(Heal1); + binaryWriter.Write(Heal2); + binaryWriter.Write(Heal3); + binaryWriter.Write(TimeHeal1); + binaryWriter.Write(TimeHeal2); + binaryWriter.Write(TimeHeal3); + binaryWriter.Write(DefenceType); + binaryWriter.Write(DefenceValue); + binaryWriter.Write(LimitHP); + binaryWriter.Write(FixRange); + binaryWriter.Write(ChangeType); + binaryWriter.Write(ChangeLevel); + binaryWriter.Write(TacticZoneBound); + } } diff --git a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs index d0d09b48..043f0699 100644 --- a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs +++ b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs @@ -1,21 +1,31 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.Skill; public sealed class DBSkillTextRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long SkillLevel { get; set; } - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Name { get; set; } = string.Empty; - [ShaiyaProperty] - [LengthPrefixedString(false)] public string Text { get; set; } = string.Empty; + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + SkillLevel = binaryReader.ReadInt64(); + Name = binaryReader.ReadString(); + Text = binaryReader.ReadString(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(SkillLevel); + binaryWriter.Write(Name, false); + binaryWriter.Write(Text, false); + } } diff --git a/src/Parsec/Shaiya/Skill/Skill.cs b/src/Parsec/Shaiya/Skill/Skill.cs index a903620c..d8fbb46c 100644 --- a/src/Parsec/Shaiya/Skill/Skill.cs +++ b/src/Parsec/Shaiya/Skill/Skill.cs @@ -1,86 +1,28 @@ -using System.Globalization; -using System.Text; -using CsvHelper; -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; namespace Parsec.Shaiya.Skill; -public sealed class Skill : SData.SData, ICsv +public sealed class Skill : SData.SData { - public List Records { get; set; } = new(); + public List SkillGroups { get; set; } = new(); - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - var skillCount = _binaryReader.Read(); - var recordCountPerSkill = GetRecordCountPerSkill(Episode); + var skillGroupCount = binaryReader.ReadInt32(); - for (int skillId = 0; skillId < skillCount; skillId++) + for (var skillGroupId = 0; skillGroupId < skillGroupCount; skillGroupId++) { - for (int i = 0; i < recordCountPerSkill; i++) - { - var record = new SkillRecord(_binaryReader, Episode, skillId); - Records.Add(record); - } + binaryReader.SerializationOptions.ExtraOption = skillGroupId; + var skillGroup = binaryReader.Read(); + SkillGroups.Add(skillGroup); } } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - if (episode == Episode.Unknown) - { - episode = Episode.EP5; - } - - var buffer = new List(); - - var skillCount = Records.Count / GetRecordCountPerSkill(episode); - buffer.AddRange(skillCount.GetBytes()); - - foreach (var record in Records) - { - buffer.AddRange(record.GetBytes(episode)); - } - - return buffer.ToArray(); + binaryWriter.Write(SkillGroups.ToSerializable()); } - private int GetRecordCountPerSkill(Episode episode) - { - return episode switch - { - Episode.EP5 => 9, - >= Episode.EP6 => 15, - _ => 3 - }; - } - - /// - /// Reads the Skill.SData format from a csv file - /// - /// csv file path - /// File episode - /// File encoding - /// instance - public static Skill ReadFromCsv(string csvPath, Episode episode, Encoding encoding = null) - { - encoding ??= Encoding.ASCII; - - // Read all skill definitions from csv file - using var reader = new StreamReader(csvPath, encoding); - using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); - var records = csvReader.GetRecords().ToList(); - - // Create skill instance - var skill = new Skill { Episode = episode, Records = records, Encoding = encoding }; - return skill; - } - - public void WriteCsv(string outputPath, Encoding encoding = null) - { - encoding ??= Encoding.ASCII; - using var writer = new StreamWriter(outputPath, false, encoding); - using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); - csvWriter.WriteRecords(Records); - } + // TODO: Add support for CSV serialization } diff --git a/src/Parsec/Shaiya/Skill/SkillGroup.cs b/src/Parsec/Shaiya/Skill/SkillGroup.cs new file mode 100644 index 00000000..07d29d44 --- /dev/null +++ b/src/Parsec/Shaiya/Skill/SkillGroup.cs @@ -0,0 +1,42 @@ +using Parsec.Common; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Skill; + +public class SkillGroup : ISerializable +{ + /// + /// SkillId is not part of the structure itself, instead, it's set based on the order of the skill groups. + /// + public int SkillId { get; set; } + + public List Records { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + if (binaryReader.SerializationOptions.ExtraOption is int skillId) + { + SkillId = skillId; + } + + var recordCountPerGroup = GetRecordCountPerGroup(binaryReader.SerializationOptions.Episode); + Records = binaryReader.ReadList(recordCountPerGroup).ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Records.ToSerializable()); + } + + private int GetRecordCountPerGroup(Episode episode) + { + return episode switch + { + Episode.EP5 => 9, + >= Episode.EP6 => 15, + _ => 3 + }; + } +} diff --git a/src/Parsec/Shaiya/Skill/SkillRecord.cs b/src/Parsec/Shaiya/Skill/SkillRecord.cs index a48ef142..9bd88729 100644 --- a/src/Parsec/Shaiya/Skill/SkillRecord.cs +++ b/src/Parsec/Shaiya/Skill/SkillRecord.cs @@ -1,5 +1,4 @@ using Parsec.Common; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Core; @@ -8,133 +7,8 @@ namespace Parsec.Shaiya.Skill; /// /// Class that represents a record for the Skill.SData and NpcSkill.SData formats /// -public sealed class SkillRecord : IBinary +public sealed class SkillRecord : ISerializable { - public SkillRecord() - { - } - - public SkillRecord(SBinaryReader binaryReader, Episode episode, int id) - { - Id = id; - Name = binaryReader.ReadString(); - Description = binaryReader.ReadString(); - SkillLevel = binaryReader.Read(); - Icon = binaryReader.Read(); - Animation = binaryReader.Read(); - - if (episode >= Episode.EP6) - { - Effect = binaryReader.Read(); - } - - ToggleType = binaryReader.Read(); - Sound = binaryReader.Read(); - RequiredLevel = binaryReader.Read(); - Country = binaryReader.Read(); - AttackFighter = binaryReader.Read(); - DefenseFighter = binaryReader.Read(); - PatrolRogue = binaryReader.Read(); - ShootRogue = binaryReader.Read(); - AttackMage = binaryReader.Read(); - DefenseMage = binaryReader.Read(); - Grow = binaryReader.Read(); - Point = binaryReader.Read(); - TypeShow = binaryReader.Read(); - TypeAttack = binaryReader.Read(); - TypeEffect = binaryReader.Read(); - TypeDetail = binaryReader.Read(); - NeedWeapon1 = binaryReader.Read(); - NeedWeapon2 = binaryReader.Read(); - NeedWeapon3 = binaryReader.Read(); - NeedWeapon4 = binaryReader.Read(); - NeedWeapon5 = binaryReader.Read(); - NeedWeapon6 = binaryReader.Read(); - NeedWeapon7 = binaryReader.Read(); - NeedWeapon8 = binaryReader.Read(); - NeedWeapon9 = binaryReader.Read(); - NeedWeapon10 = binaryReader.Read(); - NeedWeapon11 = binaryReader.Read(); - NeedWeapon12 = binaryReader.Read(); - NeedWeapon13 = binaryReader.Read(); - NeedWeapon14 = binaryReader.Read(); - NeedWeapon15 = binaryReader.Read(); - Shield = binaryReader.Read(); - SP = binaryReader.Read(); - MP = binaryReader.Read(); - ReadyTime = binaryReader.Read(); - ResetTime = binaryReader.Read(); - AttackRange = binaryReader.Read(); - StateType = binaryReader.Read(); - AttribType = binaryReader.Read(); - Disable = binaryReader.Read(); - PrevSkill = binaryReader.Read(); - SuccessType = binaryReader.Read(); - SuccessValue = binaryReader.Read(); - TargetType = binaryReader.Read(); - ApplyRange = binaryReader.Read(); - MultiAttack = binaryReader.Read(); - KeepTime = binaryReader.Read(); - Weapon1 = binaryReader.Read(); - Weapon2 = binaryReader.Read(); - WeaponValue = binaryReader.Read(); - Bag = binaryReader.Read(); - Arrow = binaryReader.Read(); - DamageType = binaryReader.Read(); - DamageHP = binaryReader.Read(); - DamageSP = binaryReader.Read(); - DamageMP = binaryReader.Read(); - TimeDamageType = binaryReader.Read(); - TimeDamageHP = binaryReader.Read(); - TimeDamageSP = binaryReader.Read(); - TimeDamageMP = binaryReader.Read(); - AddDamageHP = binaryReader.Read(); - AddDamageSP = binaryReader.Read(); - AddDamageMP = binaryReader.Read(); - AbilityType1 = binaryReader.Read(); - AbilityValue1 = binaryReader.Read(); - AbilityType2 = binaryReader.Read(); - AbilityValue2 = binaryReader.Read(); - AbilityType3 = binaryReader.Read(); - AbilityValue3 = binaryReader.Read(); - - if (episode >= Episode.EP6) - { - AbilityType4 = binaryReader.Read(); - AbilityValue4 = binaryReader.Read(); - AbilityType5 = binaryReader.Read(); - AbilityValue5 = binaryReader.Read(); - AbilityType6 = binaryReader.Read(); - AbilityValue6 = binaryReader.Read(); - AbilityType7 = binaryReader.Read(); - AbilityValue7 = binaryReader.Read(); - AbilityType8 = binaryReader.Read(); - AbilityValue8 = binaryReader.Read(); - AbilityType9 = binaryReader.Read(); - AbilityValue9 = binaryReader.Read(); - AbilityType10 = binaryReader.Read(); - AbilityValue10 = binaryReader.Read(); - } - - HealHP = binaryReader.Read(); - HealSP = binaryReader.Read(); - HealMP = binaryReader.Read(); - TimeHealHP = binaryReader.Read(); - TimeHealSP = binaryReader.Read(); - TimeHealMP = binaryReader.Read(); - DefenseType = binaryReader.Read(); - DefenseValue = binaryReader.Read(); - LimitHP = binaryReader.Read(); - FixRange = binaryReader.Read(); - ChangeType = binaryReader.Read(); - ChangeLevel = binaryReader.Read(); - } - - /// - /// The skill Id. It's not part of the structure itself, but it's assigned manually when reading the file. - /// - public int Id { get; set; } - /// /// The skill name /// @@ -582,127 +456,237 @@ public SkillRecord(SBinaryReader binaryReader, Episode episode, int id) /// public ushort ChangeLevel { get; set; } - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) { - var episode = Episode.EP5; + var episode = binaryReader.SerializationOptions.Episode; - if (options.Length > 0) + Name = binaryReader.ReadString(); + Description = binaryReader.ReadString(); + SkillLevel = binaryReader.ReadByte(); + Icon = binaryReader.ReadUInt16(); + Animation = binaryReader.ReadUInt16(); + + if (episode >= Episode.EP6) { - episode = (Episode)options[0]; + Effect = binaryReader.ReadByte(); } - var buffer = new List(); - buffer.AddRange(Name.GetLengthPrefixedBytes()); - buffer.AddRange(Description.GetLengthPrefixedBytes()); - buffer.Add(SkillLevel); - buffer.AddRange(Icon.GetBytes()); - buffer.AddRange(Animation.GetBytes()); + ToggleType = binaryReader.ReadByte(); + Sound = binaryReader.ReadUInt16(); + RequiredLevel = binaryReader.ReadUInt16(); + Country = binaryReader.ReadByte(); + AttackFighter = binaryReader.ReadByte(); + DefenseFighter = binaryReader.ReadByte(); + PatrolRogue = binaryReader.ReadByte(); + ShootRogue = binaryReader.ReadByte(); + AttackMage = binaryReader.ReadByte(); + DefenseMage = binaryReader.ReadByte(); + Grow = binaryReader.ReadByte(); + Point = binaryReader.ReadByte(); + TypeShow = binaryReader.ReadByte(); + TypeAttack = binaryReader.ReadByte(); + TypeEffect = binaryReader.ReadByte(); + TypeDetail = binaryReader.ReadUInt16(); + NeedWeapon1 = binaryReader.ReadByte(); + NeedWeapon2 = binaryReader.ReadByte(); + NeedWeapon3 = binaryReader.ReadByte(); + NeedWeapon4 = binaryReader.ReadByte(); + NeedWeapon5 = binaryReader.ReadByte(); + NeedWeapon6 = binaryReader.ReadByte(); + NeedWeapon7 = binaryReader.ReadByte(); + NeedWeapon8 = binaryReader.ReadByte(); + NeedWeapon9 = binaryReader.ReadByte(); + NeedWeapon10 = binaryReader.ReadByte(); + NeedWeapon11 = binaryReader.ReadByte(); + NeedWeapon12 = binaryReader.ReadByte(); + NeedWeapon13 = binaryReader.ReadByte(); + NeedWeapon14 = binaryReader.ReadByte(); + NeedWeapon15 = binaryReader.ReadByte(); + Shield = binaryReader.ReadByte(); + SP = binaryReader.ReadUInt16(); + MP = binaryReader.ReadUInt16(); + ReadyTime = binaryReader.ReadByte(); + ResetTime = binaryReader.ReadUInt16(); + AttackRange = binaryReader.ReadByte(); + StateType = binaryReader.ReadByte(); + AttribType = binaryReader.ReadByte(); + Disable = binaryReader.ReadUInt16(); + PrevSkill = binaryReader.ReadUInt16(); + SuccessType = binaryReader.ReadByte(); + SuccessValue = binaryReader.ReadByte(); + TargetType = binaryReader.ReadByte(); + ApplyRange = binaryReader.ReadByte(); + MultiAttack = binaryReader.ReadByte(); + KeepTime = binaryReader.ReadUInt16(); + Weapon1 = binaryReader.ReadByte(); + Weapon2 = binaryReader.ReadByte(); + WeaponValue = binaryReader.ReadByte(); + Bag = binaryReader.ReadByte(); + Arrow = binaryReader.ReadUInt16(); + DamageType = binaryReader.ReadByte(); + DamageHP = binaryReader.ReadUInt16(); + DamageSP = binaryReader.ReadUInt16(); + DamageMP = binaryReader.ReadUInt16(); + TimeDamageType = binaryReader.ReadByte(); + TimeDamageHP = binaryReader.ReadUInt16(); + TimeDamageSP = binaryReader.ReadUInt16(); + TimeDamageMP = binaryReader.ReadUInt16(); + AddDamageHP = binaryReader.ReadUInt16(); + AddDamageSP = binaryReader.ReadUInt16(); + AddDamageMP = binaryReader.ReadUInt16(); + AbilityType1 = binaryReader.ReadByte(); + AbilityValue1 = binaryReader.ReadUInt16(); + AbilityType2 = binaryReader.ReadByte(); + AbilityValue2 = binaryReader.ReadUInt16(); + AbilityType3 = binaryReader.ReadByte(); + AbilityValue3 = binaryReader.ReadUInt16(); + + if (episode >= Episode.EP6) + { + AbilityType4 = binaryReader.ReadByte(); + AbilityValue4 = binaryReader.ReadUInt16(); + AbilityType5 = binaryReader.ReadByte(); + AbilityValue5 = binaryReader.ReadUInt16(); + AbilityType6 = binaryReader.ReadByte(); + AbilityValue6 = binaryReader.ReadUInt16(); + AbilityType7 = binaryReader.ReadByte(); + AbilityValue7 = binaryReader.ReadUInt16(); + AbilityType8 = binaryReader.ReadByte(); + AbilityValue8 = binaryReader.ReadUInt16(); + AbilityType9 = binaryReader.ReadByte(); + AbilityValue9 = binaryReader.ReadUInt16(); + AbilityType10 = binaryReader.ReadByte(); + AbilityValue10 = binaryReader.ReadUInt16(); + } + + HealHP = binaryReader.ReadUInt16(); + HealSP = binaryReader.ReadUInt16(); + HealMP = binaryReader.ReadUInt16(); + TimeHealHP = binaryReader.ReadUInt16(); + TimeHealSP = binaryReader.ReadUInt16(); + TimeHealMP = binaryReader.ReadUInt16(); + DefenseType = binaryReader.ReadByte(); + DefenseValue = binaryReader.ReadByte(); + LimitHP = binaryReader.ReadByte(); + FixRange = binaryReader.ReadByte(); + ChangeType = binaryReader.ReadUInt16(); + ChangeLevel = binaryReader.ReadUInt16(); + } + + public void Write(SBinaryWriter binaryWriter) + { + var episode = binaryWriter.SerializationOptions.Episode; + + binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.WriteLengthPrefixedString(Description); + binaryWriter.Write(SkillLevel); + binaryWriter.Write(Icon); + binaryWriter.Write(Animation); if (episode >= Episode.EP6) { - buffer.Add(Effect); + binaryWriter.Write(Effect); } - buffer.Add(ToggleType); - buffer.AddRange(Sound.GetBytes()); - buffer.AddRange(RequiredLevel.GetBytes()); - buffer.Add(Country); - buffer.Add(AttackFighter); - buffer.Add(DefenseFighter); - buffer.Add(PatrolRogue); - buffer.Add(ShootRogue); - buffer.Add(AttackMage); - buffer.Add(DefenseMage); - buffer.Add(Grow); - buffer.Add(Point); - buffer.Add(TypeShow); - buffer.Add(TypeAttack); - buffer.Add(TypeEffect); - buffer.AddRange(TypeDetail.GetBytes()); - buffer.Add(NeedWeapon1); - buffer.Add(NeedWeapon2); - buffer.Add(NeedWeapon3); - buffer.Add(NeedWeapon4); - buffer.Add(NeedWeapon5); - buffer.Add(NeedWeapon6); - buffer.Add(NeedWeapon7); - buffer.Add(NeedWeapon8); - buffer.Add(NeedWeapon9); - buffer.Add(NeedWeapon10); - buffer.Add(NeedWeapon11); - buffer.Add(NeedWeapon12); - buffer.Add(NeedWeapon13); - buffer.Add(NeedWeapon14); - buffer.Add(NeedWeapon15); - buffer.Add(Shield); - buffer.AddRange(SP.GetBytes()); - buffer.AddRange(MP.GetBytes()); - buffer.Add(ReadyTime); - buffer.AddRange(ResetTime.GetBytes()); - buffer.Add(AttackRange); - buffer.Add(StateType); - buffer.Add(AttribType); - buffer.AddRange(Disable.GetBytes()); - buffer.AddRange(PrevSkill.GetBytes()); - buffer.Add(SuccessType); - buffer.Add(SuccessValue); - buffer.Add(TargetType); - buffer.Add(ApplyRange); - buffer.Add(MultiAttack); - buffer.AddRange(KeepTime.GetBytes()); - buffer.Add(Weapon1); - buffer.Add(Weapon2); - buffer.Add(WeaponValue); - buffer.Add(Bag); - buffer.AddRange(Arrow.GetBytes()); - buffer.Add(DamageType); - buffer.AddRange(DamageHP.GetBytes()); - buffer.AddRange(DamageSP.GetBytes()); - buffer.AddRange(DamageMP.GetBytes()); - buffer.Add(TimeDamageType); - buffer.AddRange(TimeDamageHP.GetBytes()); - buffer.AddRange(TimeDamageSP.GetBytes()); - buffer.AddRange(TimeDamageMP.GetBytes()); - buffer.AddRange(AddDamageHP.GetBytes()); - buffer.AddRange(AddDamageSP.GetBytes()); - buffer.AddRange(AddDamageMP.GetBytes()); - buffer.Add(AbilityType1); - buffer.AddRange(AbilityValue1.GetBytes()); - buffer.Add(AbilityType2); - buffer.AddRange(AbilityValue2.GetBytes()); - buffer.Add(AbilityType3); - buffer.AddRange(AbilityValue3.GetBytes()); + binaryWriter.Write(ToggleType); + binaryWriter.Write(Sound); + binaryWriter.Write(RequiredLevel); + binaryWriter.Write(Country); + binaryWriter.Write(AttackFighter); + binaryWriter.Write(DefenseFighter); + binaryWriter.Write(PatrolRogue); + binaryWriter.Write(ShootRogue); + binaryWriter.Write(AttackMage); + binaryWriter.Write(DefenseMage); + binaryWriter.Write(Grow); + binaryWriter.Write(Point); + binaryWriter.Write(TypeShow); + binaryWriter.Write(TypeAttack); + binaryWriter.Write(TypeEffect); + binaryWriter.Write(TypeDetail); + binaryWriter.Write(NeedWeapon1); + binaryWriter.Write(NeedWeapon2); + binaryWriter.Write(NeedWeapon3); + binaryWriter.Write(NeedWeapon4); + binaryWriter.Write(NeedWeapon5); + binaryWriter.Write(NeedWeapon6); + binaryWriter.Write(NeedWeapon7); + binaryWriter.Write(NeedWeapon8); + binaryWriter.Write(NeedWeapon9); + binaryWriter.Write(NeedWeapon10); + binaryWriter.Write(NeedWeapon11); + binaryWriter.Write(NeedWeapon12); + binaryWriter.Write(NeedWeapon13); + binaryWriter.Write(NeedWeapon14); + binaryWriter.Write(NeedWeapon15); + binaryWriter.Write(Shield); + binaryWriter.Write(SP); + binaryWriter.Write(MP); + binaryWriter.Write(ReadyTime); + binaryWriter.Write(ResetTime); + binaryWriter.Write(AttackRange); + binaryWriter.Write(StateType); + binaryWriter.Write(AttribType); + binaryWriter.Write(Disable); + binaryWriter.Write(PrevSkill); + binaryWriter.Write(SuccessType); + binaryWriter.Write(SuccessValue); + binaryWriter.Write(TargetType); + binaryWriter.Write(ApplyRange); + binaryWriter.Write(MultiAttack); + binaryWriter.Write(KeepTime); + binaryWriter.Write(Weapon1); + binaryWriter.Write(Weapon2); + binaryWriter.Write(WeaponValue); + binaryWriter.Write(Bag); + binaryWriter.Write(Arrow); + binaryWriter.Write(DamageType); + binaryWriter.Write(DamageHP); + binaryWriter.Write(DamageSP); + binaryWriter.Write(DamageMP); + binaryWriter.Write(TimeDamageType); + binaryWriter.Write(TimeDamageHP); + binaryWriter.Write(TimeDamageSP); + binaryWriter.Write(TimeDamageMP); + binaryWriter.Write(AddDamageHP); + binaryWriter.Write(AddDamageSP); + binaryWriter.Write(AddDamageMP); + binaryWriter.Write(AbilityType1); + binaryWriter.Write(AbilityValue1); + binaryWriter.Write(AbilityType2); + binaryWriter.Write(AbilityValue2); + binaryWriter.Write(AbilityType3); + binaryWriter.Write(AbilityValue3); if (episode >= Episode.EP6) { - buffer.Add(AbilityType4); - buffer.AddRange(AbilityValue4.GetBytes()); - buffer.Add(AbilityType5); - buffer.AddRange(AbilityValue5.GetBytes()); - buffer.Add(AbilityType6); - buffer.AddRange(AbilityValue6.GetBytes()); - buffer.Add(AbilityType7); - buffer.AddRange(AbilityValue7.GetBytes()); - buffer.Add(AbilityType8); - buffer.AddRange(AbilityValue8.GetBytes()); - buffer.Add(AbilityType9); - buffer.AddRange(AbilityValue9.GetBytes()); - buffer.Add(AbilityType10); - buffer.AddRange(AbilityValue10.GetBytes()); + binaryWriter.Write(AbilityType4); + binaryWriter.Write(AbilityValue4); + binaryWriter.Write(AbilityType5); + binaryWriter.Write(AbilityValue5); + binaryWriter.Write(AbilityType6); + binaryWriter.Write(AbilityValue6); + binaryWriter.Write(AbilityType7); + binaryWriter.Write(AbilityValue7); + binaryWriter.Write(AbilityType8); + binaryWriter.Write(AbilityValue8); + binaryWriter.Write(AbilityType9); + binaryWriter.Write(AbilityValue9); + binaryWriter.Write(AbilityType10); + binaryWriter.Write(AbilityValue10); } - buffer.AddRange(HealHP.GetBytes()); - buffer.AddRange(HealSP.GetBytes()); - buffer.AddRange(HealMP.GetBytes()); - buffer.AddRange(TimeHealHP.GetBytes()); - buffer.AddRange(TimeHealSP.GetBytes()); - buffer.AddRange(TimeHealMP.GetBytes()); - buffer.Add(DefenseType); - buffer.Add(DefenseValue); - buffer.Add(LimitHP); - buffer.Add(FixRange); - buffer.AddRange(ChangeType.GetBytes()); - buffer.AddRange(ChangeLevel.GetBytes()); - return buffer; + binaryWriter.Write(HealHP); + binaryWriter.Write(HealSP); + binaryWriter.Write(HealMP); + binaryWriter.Write(TimeHealHP); + binaryWriter.Write(TimeHealSP); + binaryWriter.Write(TimeHealMP); + binaryWriter.Write(DefenseType); + binaryWriter.Write(DefenseValue); + binaryWriter.Write(LimitHP); + binaryWriter.Write(FixRange); + binaryWriter.Write(ChangeType); + binaryWriter.Write(ChangeLevel); } } diff --git a/src/Parsec/Shaiya/SMOD/SMOD.cs b/src/Parsec/Shaiya/Smod/Smod.cs similarity index 55% rename from src/Parsec/Shaiya/SMOD/SMOD.cs rename to src/Parsec/Shaiya/Smod/Smod.cs index 631a8438..28a9f6c7 100644 --- a/src/Parsec/Shaiya/SMOD/SMOD.cs +++ b/src/Parsec/Shaiya/Smod/Smod.cs @@ -1,20 +1,21 @@ using Newtonsoft.Json; -using Parsec.Attributes; -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.SMOD; +namespace Parsec.Shaiya.Smod; /// /// Class that represents a .SMOD object which is used for buildings. /// Buildings can be made up of multiple parts, each with its individual texture. /// Collision objects are also included in this format in a separate list of texture-less objects. /// -[DefaultVersion(Episode.EP5)] -public sealed class SMOD : FileBase +public sealed class Smod : FileBase { + [JsonIgnore] + public override string Extension => "SMOD"; + /// /// The center of the SMOD object as a whole (center of all objects) /// @@ -35,7 +36,7 @@ public sealed class SMOD : FileBase /// /// List of textured objects /// - public List TexturedObjects { get; set; } = new(); + public List TexturedObjects { get; set; } = new(); /// /// Box that defines the area where collisions should take place. Collision objects that are outside this box are ignored. @@ -45,39 +46,26 @@ public sealed class SMOD : FileBase /// /// List of texture-less objects used for collisions /// - public List CollisionObjects { get; set; } = new(); + public List CollisionObjects { get; set; } = new(); /// - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Center = new Vector3(_binaryReader); - DistanceToCenter = _binaryReader.Read(); - ViewBox = new BoundingBox(_binaryReader); - - int texturedObjectCount = _binaryReader.Read(); - for (int i = 0; i < texturedObjectCount; i++) - TexturedObjects.Add(new TexturedObject(_binaryReader)); - - CollisionBox = new BoundingBox(_binaryReader); - - int collisionObjectCount = _binaryReader.Read(); - for (int i = 0; i < collisionObjectCount; i++) - CollisionObjects.Add(new CollisionObject(_binaryReader)); + Center = binaryReader.Read(); + DistanceToCenter = binaryReader.ReadSingle(); + ViewBox = binaryReader.Read(); + TexturedObjects = binaryReader.ReadList().ToList(); + CollisionBox = binaryReader.Read(); + CollisionObjects = binaryReader.ReadList().ToList(); } - /// - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Center.GetBytes()); - buffer.AddRange(DistanceToCenter.GetBytes()); - buffer.AddRange(ViewBox.GetBytes()); - buffer.AddRange(TexturedObjects.GetBytes()); - buffer.AddRange(CollisionBox.GetBytes()); - buffer.AddRange(CollisionObjects.GetBytes()); - return buffer; + binaryWriter.Write(Center); + binaryWriter.Write(DistanceToCenter); + binaryWriter.Write(ViewBox); + binaryWriter.Write(TexturedObjects.ToSerializable()); + binaryWriter.Write(CollisionBox); + binaryWriter.Write(CollisionObjects.ToSerializable()); } - - [JsonIgnore] - public override string Extension => "SMOD"; } diff --git a/src/Parsec/Shaiya/Smod/SmodCollisionMesh.cs b/src/Parsec/Shaiya/Smod/SmodCollisionMesh.cs new file mode 100644 index 00000000..fddf5eee --- /dev/null +++ b/src/Parsec/Shaiya/Smod/SmodCollisionMesh.cs @@ -0,0 +1,34 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Smod; + +/// +/// A 3d object used in SMOD files to represent an object where players should collide. +/// +public sealed class SmodCollisionMesh : ISerializable +{ + /// + /// Vertices of the 3d object. + /// + public List Vertices { get; set; } = new(); + + /// + /// Triangular faces (polygons) of the 3d object. + /// + public List Faces { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Vertices = binaryReader.ReadList().ToList(); + Faces = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Smod/SmodCollisionMeshVertex.cs b/src/Parsec/Shaiya/Smod/SmodCollisionMeshVertex.cs new file mode 100644 index 00000000..10789f92 --- /dev/null +++ b/src/Parsec/Shaiya/Smod/SmodCollisionMeshVertex.cs @@ -0,0 +1,26 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Smod; + +/// +/// Represents a vertex used in SMOD collision objects +/// +public sealed class SmodCollisionMeshVertex : ISerializable +{ + /// + /// Coordinates of the vertex in the 3D space. + /// + public Vector3 Coordinates { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + } +} diff --git a/src/Parsec/Shaiya/Smod/SmodMesh.cs b/src/Parsec/Shaiya/Smod/SmodMesh.cs new file mode 100644 index 00000000..bba0c1ea --- /dev/null +++ b/src/Parsec/Shaiya/Smod/SmodMesh.cs @@ -0,0 +1,42 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Smod; + +/// +/// A 3d mesh with a texture +/// +public sealed class SmodMesh : ISerializable +{ + /// + /// Name of the .tga texture file. Although they have the .tga extension, the client actually has .dds files, so they're very likely + /// replacing the .tga extension with .dds when searching for the texture. + /// + public string TextureName { get; set; } = string.Empty; + + /// + /// Mesh vertices + /// + public List Vertices { get; set; } = new(); + + /// + /// Mesh triangular faces + /// + public List Faces { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + TextureName = binaryReader.ReadString(); + Vertices = binaryReader.ReadList().ToList(); + Faces = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(TextureName); + binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Faces.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Smod/SmodVertex.cs b/src/Parsec/Shaiya/Smod/SmodVertex.cs new file mode 100644 index 00000000..a903d12d --- /dev/null +++ b/src/Parsec/Shaiya/Smod/SmodVertex.cs @@ -0,0 +1,47 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Smod; + +/// +/// Represents a vertex used in an SMOD mesh +/// +public sealed class SmodVertex : ISerializable +{ + /// + /// Vertex coordinates in the 3D space + /// + public Vector3 Coordinates { get; set; } + + /// + /// Vertex normal used for lighting + /// + public Vector3 Normal { get; set; } + + /// + /// SMODs don't have bones, that's why this value is always -1. + /// + public int BoneId { get; set; } = -1; + + /// + /// Texture mapping + /// + public Vector2 UV { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + Normal = binaryReader.Read(); + BoneId = binaryReader.ReadInt32(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Coordinates); + binaryWriter.Write(Normal); + binaryWriter.Write(BoneId); + binaryWriter.Write(UV); + } +} diff --git a/src/Parsec/Shaiya/Svmap/Ladder.cs b/src/Parsec/Shaiya/Svmap/Ladder.cs deleted file mode 100644 index c904e791..00000000 --- a/src/Parsec/Shaiya/Svmap/Ladder.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class Ladder : IBinary -{ - [JsonConstructor] - public Ladder() - { - } - - public Ladder(SBinaryReader binaryReader) - { - Position = new Vector3(binaryReader); - } - - public Vector3 Position { get; set; } - - public IEnumerable GetBytes(params object[] options) => Position.GetBytes(); -} diff --git a/src/Parsec/Shaiya/Svmap/Monster.cs b/src/Parsec/Shaiya/Svmap/Monster.cs deleted file mode 100644 index 1dc69410..00000000 --- a/src/Parsec/Shaiya/Svmap/Monster.cs +++ /dev/null @@ -1,31 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class Monster : IBinary -{ - [JsonConstructor] - public Monster() - { - } - - public Monster(SBinaryReader binaryReader) - { - MobId = binaryReader.Read(); - Count = binaryReader.Read(); - } - - public int MobId { get; set; } - public int Count { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(MobId.GetBytes()); - buffer.AddRange(Count.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/MonsterArea.cs b/src/Parsec/Shaiya/Svmap/MonsterArea.cs deleted file mode 100644 index b4d2737c..00000000 --- a/src/Parsec/Shaiya/Svmap/MonsterArea.cs +++ /dev/null @@ -1,43 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -/// -/// Represents an area with monsters inside -/// -public sealed class MonsterArea : IBinary -{ - [JsonConstructor] - public MonsterArea() - { - } - - public MonsterArea(SBinaryReader binaryReader) - { - Area = new BoundingBox(binaryReader); - - var monsterCount = binaryReader.Read(); - - // Read monsters - for (int i = 0; i < monsterCount; i++) - { - var monster = new Monster(binaryReader); - Monsters.Add(monster); - } - } - - public BoundingBox Area { get; set; } - public List Monsters { get; set; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Area.GetBytes()); - buffer.AddRange(Monsters.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/NamedArea.cs b/src/Parsec/Shaiya/Svmap/NamedArea.cs deleted file mode 100644 index 8f18748d..00000000 --- a/src/Parsec/Shaiya/Svmap/NamedArea.cs +++ /dev/null @@ -1,35 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class NamedArea : IBinary -{ - [JsonConstructor] - public NamedArea() - { - } - - public NamedArea(SBinaryReader binaryReader) - { - Area = new BoundingBox(binaryReader); - NameIdentifier1 = binaryReader.Read(); - NameIdentifier2 = binaryReader.Read(); - } - - public BoundingBox Area { get; set; } - public int NameIdentifier1 { get; set; } - public int NameIdentifier2 { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Area.GetBytes()); - buffer.AddRange(NameIdentifier1.GetBytes()); - buffer.AddRange(NameIdentifier2.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/Npc.cs b/src/Parsec/Shaiya/Svmap/Npc.cs deleted file mode 100644 index ccb3b87d..00000000 --- a/src/Parsec/Shaiya/Svmap/Npc.cs +++ /dev/null @@ -1,41 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class Npc : IBinary -{ - [JsonConstructor] - public Npc() - { - } - - public Npc(SBinaryReader binaryReader) - { - Type = binaryReader.Read(); - NpcId = binaryReader.Read(); - - var locationCount = binaryReader.Read(); - - for (int i = 0; i < locationCount; i++) - { - var npcLocation = new NpcLocation(binaryReader); - Locations.Add(npcLocation); - } - } - - public int Type { get; set; } - public int NpcId { get; set; } - public List Locations { get; set; } = new(); - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Type.GetBytes()); - buffer.AddRange(NpcId.GetBytes()); - buffer.AddRange(Locations.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/NpcLocation.cs b/src/Parsec/Shaiya/Svmap/NpcLocation.cs deleted file mode 100644 index b83a2808..00000000 --- a/src/Parsec/Shaiya/Svmap/NpcLocation.cs +++ /dev/null @@ -1,32 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class NpcLocation : IBinary -{ - [JsonConstructor] - public NpcLocation() - { - } - - public NpcLocation(SBinaryReader binaryReader) - { - Position = new Vector3(binaryReader); - Orientation = binaryReader.Read(); - } - - public Vector3 Position { get; set; } - public float Orientation { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(Orientation.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/Portal.cs b/src/Parsec/Shaiya/Svmap/Portal.cs deleted file mode 100644 index f832e177..00000000 --- a/src/Parsec/Shaiya/Svmap/Portal.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class Portal : IBinary -{ - [JsonConstructor] - public Portal() - { - } - - public Portal(SBinaryReader binaryReader) - { - Position = new Vector3(binaryReader); - FactionOrPortalId = binaryReader.Read(); - MinLevel = binaryReader.Read(); - MaxLevel = binaryReader.Read(); - DestinationMapId = binaryReader.Read(); - DestinationPosition = new Vector3(binaryReader); - } - - public Vector3 Position { get; set; } - public int FactionOrPortalId { get; set; } - public short MinLevel { get; set; } - public short MaxLevel { get; set; } - public int DestinationMapId { get; set; } - public Vector3 DestinationPosition { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(FactionOrPortalId.GetBytes()); - buffer.AddRange(MinLevel.GetBytes()); - buffer.AddRange(MaxLevel.GetBytes()); - buffer.AddRange(DestinationMapId.GetBytes()); - buffer.AddRange(DestinationPosition.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/Spawn.cs b/src/Parsec/Shaiya/Svmap/Spawn.cs deleted file mode 100644 index 57e36bae..00000000 --- a/src/Parsec/Shaiya/Svmap/Spawn.cs +++ /dev/null @@ -1,38 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.Svmap; - -public sealed class Spawn : IBinary -{ - [JsonConstructor] - public Spawn() - { - } - - public Spawn(SBinaryReader binaryReader) - { - Unknown1 = binaryReader.Read(); - Faction = (FactionInt)binaryReader.Read(); - Unknown2 = binaryReader.Read(); - Area = new BoundingBox(binaryReader); - } - - public int Unknown1 { get; set; } - public FactionInt Faction { get; set; } - public int Unknown2 { get; set; } - public BoundingBox Area { get; set; } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(((int)Faction).GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Area.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Svmap/Svmap.cs b/src/Parsec/Shaiya/Svmap/Svmap.cs index 0321ede9..7dac92c8 100644 --- a/src/Parsec/Shaiya/Svmap/Svmap.cs +++ b/src/Parsec/Shaiya/Svmap/Svmap.cs @@ -1,74 +1,58 @@ using Newtonsoft.Json; -using Parsec.Common; using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Svmap; public sealed class Svmap : FileBase { - [JsonConstructor] - public Svmap() - { - } - public int MapSize { get; set; } - public List MapHeight { get; private set; } = new(); + + public byte[] MapHeight { get; private set; } = Array.Empty(); + public int CellSize { get; set; } - public List Ladders { get; } = new(); - public List MonsterAreas { get; } = new(); - public List Npcs { get; } = new(); - public List Portals { get; } = new(); - public List Spawns { get; } = new(); - public List NamedAreas { get; } = new(); - [JsonIgnore] - public override string Extension => "svmap"; + public List Ladders { get; set; } = new(); - public override void Read() - { - MapSize = _binaryReader.Read(); - int mapHeightCount = MapSize * MapSize / 8; - MapHeight = _binaryReader.ReadBytes(mapHeightCount).ToList(); - CellSize = _binaryReader.Read(); + public List MonsterAreas { get; set; } = new(); - int ladderCount = _binaryReader.Read(); - for (int i = 0; i < ladderCount; i++) - Ladders.Add(new Ladder(_binaryReader)); + public List Npcs { get; set; } = new(); - int monsterAreaCount = _binaryReader.Read(); - for (int i = 0; i < monsterAreaCount; i++) - MonsterAreas.Add(new MonsterArea(_binaryReader)); + public List Portals { get; set; } = new(); - int npcCount = _binaryReader.Read(); - for (int i = 0; i < npcCount; i++) - Npcs.Add(new Npc(_binaryReader)); + public List Spawns { get; set; } = new(); - int portalCount = _binaryReader.Read(); - for (int i = 0; i < portalCount; i++) - Portals.Add(new Portal(_binaryReader)); + public List NamedAreas { get; set; } = new(); - int spawnCount = _binaryReader.Read(); - for (int i = 0; i < spawnCount; i++) - Spawns.Add(new Spawn(_binaryReader)); + [JsonIgnore] + public override string Extension => "svmap"; - int namedAreaCount = _binaryReader.Read(); - for (int i = 0; i < namedAreaCount; i++) - NamedAreas.Add(new NamedArea(_binaryReader)); + protected override void Read(SBinaryReader binaryReader) + { + MapSize = binaryReader.ReadInt32(); + var mapHeightCount = MapSize * MapSize / 8; + MapHeight = binaryReader.ReadBytes(mapHeightCount); + CellSize = binaryReader.ReadInt32(); + + Ladders = binaryReader.ReadList().ToList(); + MonsterAreas = binaryReader.ReadList().ToList(); + Npcs = binaryReader.ReadList().ToList(); + Portals = binaryReader.ReadList().ToList(); + Spawns = binaryReader.ReadList().ToList(); + NamedAreas = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(MapSize.GetBytes()); - buffer.AddRange(MapHeight); - buffer.AddRange(CellSize.GetBytes()); - buffer.AddRange(Ladders.GetBytes()); - buffer.AddRange(MonsterAreas.GetBytes()); - buffer.AddRange(Npcs.GetBytes()); - buffer.AddRange(Portals.GetBytes()); - buffer.AddRange(Spawns.GetBytes()); - buffer.AddRange(NamedAreas.GetBytes()); - return buffer; + binaryWriter.Write(MapSize); + binaryWriter.Write(MapHeight.ToArray()); + binaryWriter.Write(CellSize); + binaryWriter.Write(Ladders.ToSerializable()); + binaryWriter.Write(MonsterAreas.ToSerializable()); + binaryWriter.Write(Npcs.ToSerializable()); + binaryWriter.Write(Portals.ToSerializable()); + binaryWriter.Write(Spawns.ToSerializable()); + binaryWriter.Write(NamedAreas.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Svmap/SvmapFaction.cs b/src/Parsec/Shaiya/Svmap/SvmapFaction.cs new file mode 100644 index 00000000..fa3a54d3 --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapFaction.cs @@ -0,0 +1,8 @@ +namespace Parsec.Shaiya.Svmap; + +public enum SvmapFaction +{ + Light, + Fury, + Any +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapLadder.cs b/src/Parsec/Shaiya/Svmap/SvmapLadder.cs new file mode 100644 index 00000000..c3130bd7 --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapLadder.cs @@ -0,0 +1,20 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapLadder : ISerializable +{ + public Vector3 Position { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Position = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Position); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawn.cs b/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawn.cs new file mode 100644 index 00000000..633a5087 --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawn.cs @@ -0,0 +1,23 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapMonsterSpawn : ISerializable +{ + public uint MobId { get; set; } + + public uint Count { get; set; } + + public void Read(SBinaryReader binaryReader) + { + MobId = binaryReader.ReadUInt32(); + Count = binaryReader.ReadUInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(MobId); + binaryWriter.Write(Count); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawnArea.cs b/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawnArea.cs new file mode 100644 index 00000000..12b8ccfd --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapMonsterSpawnArea.cs @@ -0,0 +1,28 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +/// +/// Represents a 2-D area where monsters are spawned +/// +public sealed class SvmapMonsterSpawnArea : ISerializable +{ + public BoundingBox Area { get; set; } + + public List Monsters { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Area = binaryReader.Read(); + Monsters = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Area); + binaryWriter.Write(Monsters.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapNamedArea.cs b/src/Parsec/Shaiya/Svmap/SvmapNamedArea.cs new file mode 100644 index 00000000..d36da57a --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapNamedArea.cs @@ -0,0 +1,28 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapNamedArea : ISerializable +{ + public BoundingBox Area { get; set; } + + public int NameIdentifier1 { get; set; } + + public int NameIdentifier2 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Area = binaryReader.Read(); + NameIdentifier1 = binaryReader.ReadInt32(); + NameIdentifier2 = binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Area); + binaryWriter.Write(NameIdentifier1); + binaryWriter.Write(NameIdentifier2); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapNpc.cs b/src/Parsec/Shaiya/Svmap/SvmapNpc.cs new file mode 100644 index 00000000..2a42edc7 --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapNpc.cs @@ -0,0 +1,28 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapNpc : ISerializable +{ + public int Type { get; set; } + + public int NpcId { get; set; } + + public List Positions { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + Type = binaryReader.ReadInt32(); + NpcId = binaryReader.ReadInt32(); + Positions = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Type); + binaryWriter.Write(NpcId); + binaryWriter.Write(Positions.ToSerializable()); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapNpcPosition.cs b/src/Parsec/Shaiya/Svmap/SvmapNpcPosition.cs new file mode 100644 index 00000000..650cd159 --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapNpcPosition.cs @@ -0,0 +1,24 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapNpcPosition : ISerializable +{ + public Vector3 Position { get; set; } + + public float Yaw { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Position = binaryReader.Read(); + Yaw = binaryReader.ReadSingle(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Position); + binaryWriter.Write(Yaw); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapPortal.cs b/src/Parsec/Shaiya/Svmap/SvmapPortal.cs new file mode 100644 index 00000000..9920969c --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapPortal.cs @@ -0,0 +1,40 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapPortal : ISerializable +{ + public Vector3 PortalPosition { get; set; } + + public int FactionOrPortalId { get; set; } + + public ushort MinLevel { get; set; } + + public ushort MaxLevel { get; set; } + + public uint TargetMapId { get; set; } + + public Vector3 TargetMapPosition { get; set; } + + public void Read(SBinaryReader binaryReader) + { + PortalPosition = binaryReader.Read(); + FactionOrPortalId = binaryReader.ReadInt32(); + MinLevel = binaryReader.ReadUInt16(); + MaxLevel = binaryReader.ReadUInt16(); + TargetMapId = binaryReader.ReadUInt32(); + TargetMapPosition = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(PortalPosition); + binaryWriter.Write(FactionOrPortalId); + binaryWriter.Write(MinLevel); + binaryWriter.Write(MaxLevel); + binaryWriter.Write(TargetMapId); + binaryWriter.Write(TargetMapPosition); + } +} diff --git a/src/Parsec/Shaiya/Svmap/SvmapSpawnArea.cs b/src/Parsec/Shaiya/Svmap/SvmapSpawnArea.cs new file mode 100644 index 00000000..1911ff1f --- /dev/null +++ b/src/Parsec/Shaiya/Svmap/SvmapSpawnArea.cs @@ -0,0 +1,32 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Svmap; + +public sealed class SvmapSpawnArea : ISerializable +{ + public int Unknown1 { get; set; } + + public SvmapFaction Faction { get; set; } + + public int Unknown2 { get; set; } + + public BoundingBox Area { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Unknown1 = binaryReader.ReadInt32(); + Faction = (SvmapFaction)binaryReader.ReadInt32(); + Unknown2 = binaryReader.ReadInt32(); + Area = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Unknown1); + binaryWriter.Write((int)Faction); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Area); + } +} diff --git a/src/Parsec/Shaiya/TransformModel/DBTransformModelDataRecord.cs b/src/Parsec/Shaiya/TransformModel/DBTransformModelDataRecord.cs index ceda1ab2..7f813442 100644 --- a/src/Parsec/Shaiya/TransformModel/DBTransformModelDataRecord.cs +++ b/src/Parsec/Shaiya/TransformModel/DBTransformModelDataRecord.cs @@ -1,28 +1,43 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.TransformModel; public sealed class DBTransformModelDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Id { get; set; } - [ShaiyaProperty] public long Top { get; set; } - [ShaiyaProperty] public long Hand { get; set; } - [ShaiyaProperty] public long Bottom { get; set; } - [ShaiyaProperty] public long Shoe { get; set; } - [ShaiyaProperty] public long Empty { get; set; } - [ShaiyaProperty] public long Helmet { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Id = binaryReader.ReadInt64(); + Top = binaryReader.ReadInt64(); + Hand = binaryReader.ReadInt64(); + Bottom = binaryReader.ReadInt64(); + Shoe = binaryReader.ReadInt64(); + Empty = binaryReader.ReadInt64(); + Helmet = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Id); + binaryWriter.Write(Top); + binaryWriter.Write(Hand); + binaryWriter.Write(Bottom); + binaryWriter.Write(Shoe); + binaryWriter.Write(Empty); + binaryWriter.Write(Helmet); + } } diff --git a/src/Parsec/Shaiya/TransformModel/DBTransformWeaponModelDataRecord.cs b/src/Parsec/Shaiya/TransformModel/DBTransformWeaponModelDataRecord.cs index 4297cada..dc31be61 100644 --- a/src/Parsec/Shaiya/TransformModel/DBTransformWeaponModelDataRecord.cs +++ b/src/Parsec/Shaiya/TransformModel/DBTransformWeaponModelDataRecord.cs @@ -1,16 +1,27 @@ -using Parsec.Attributes; +using Parsec.Serialization; using Parsec.Shaiya.SData; namespace Parsec.Shaiya.TransformModel; public sealed class DBTransformWeaponModelDataRecord : IBinarySDataRecord { - [ShaiyaProperty] public long Type { get; set; } - [ShaiyaProperty] public long Weapon { get; set; } - [ShaiyaProperty] public long Weapon1 { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Type = binaryReader.ReadInt64(); + Weapon = binaryReader.ReadInt64(); + Weapon1 = binaryReader.ReadInt64(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Type); + binaryWriter.Write(Weapon); + binaryWriter.Write(Weapon1); + } } diff --git a/src/Parsec/Shaiya/VAni/VAni.cs b/src/Parsec/Shaiya/VAni/VAni.cs deleted file mode 100644 index f51a757d..00000000 --- a/src/Parsec/Shaiya/VAni/VAni.cs +++ /dev/null @@ -1,79 +0,0 @@ -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.VAni; - -public sealed class VAni : FileBase -{ - /// - /// Coordinates of the center of the 3d object - /// - public Vector3 Center { get; set; } - - /// - /// The distance between the vertices of the and the of the VAni object. Used for game calculations. - /// - public float DistanceToCenter { get; set; } - - /// - /// Rectangular bounding box - /// - public BoundingBox BoundingBox { get; set; } - - /// - /// Amount of frames - /// - public int FrameCount { get; set; } - - /// - /// Castor's notes: "__int32 features; // bitmask of rendering options?" - /// - public int Unknown1 { get; set; } - - public List Objects { get; } = new(); - - public BoundingBox BoundingBox2 { get; set; } - - /// - /// Always 00? - /// - public int Unknown2 { get; set; } - - public override string Extension => "VANI"; - - public override void Read() - { - Center = new Vector3(_binaryReader); - DistanceToCenter = _binaryReader.Read(); - BoundingBox = new BoundingBox(_binaryReader); - int objectCount = _binaryReader.Read(); - FrameCount = _binaryReader.Read(); - Unknown1 = _binaryReader.Read(); - - for (int i = 0; i < objectCount; i++) - Objects.Add(new VAniObject(_binaryReader, FrameCount)); - - BoundingBox2 = new BoundingBox(_binaryReader); - Unknown2 = _binaryReader.Read(); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Center.GetBytes()); - buffer.AddRange(DistanceToCenter.GetBytes()); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Objects.Count.GetBytes()); - buffer.AddRange(FrameCount.GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); - - foreach (var obj in Objects) - buffer.AddRange(obj.GetBytes(FrameCount)); - - buffer.AddRange(BoundingBox2.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - return buffer; - } -} diff --git a/src/Parsec/Shaiya/VAni/VAniObject.cs b/src/Parsec/Shaiya/VAni/VAniObject.cs deleted file mode 100644 index db645cb5..00000000 --- a/src/Parsec/Shaiya/VAni/VAniObject.cs +++ /dev/null @@ -1,80 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; - -namespace Parsec.Shaiya.VAni; - -/// -/// Represents a .VANI file (Vertex ANImation) -/// -public sealed class VAniObject : IBinary -{ - /// - /// Texture name of the .dds file - /// - public string TextureName { get; set; } = string.Empty; - - /// - /// List of the 3d object's faces (polygons - triangles) - /// - public List Faces { get; } = new(); - - /// - /// List of the 3d object's vertices - /// - public List Vertices { get; } = new(); - - [JsonConstructor] - public VAniObject() - { - } - - public VAniObject(SBinaryReader binaryReader, int frameCount) - { - TextureName = binaryReader.ReadString(); - - int faceCount = binaryReader.Read(); - for (int i = 0; i < faceCount; i++) - Faces.Add(new Face(binaryReader)); - - int vertexCount = binaryReader.Read(); - for (int i = 0; i < vertexCount; i++) - { - var vertex = new VaniVertex(); - Vertices.Add(vertex); - } - - for (int frame = 0; frame < frameCount; frame++) - { - foreach (var vertex in Vertices) - { - var vertexFrame = new VaniVertexFrame(binaryReader); - vertex.Frames.Add(vertexFrame); - } - } - } - - public IEnumerable GetBytes(params object[] options) - { - int frameCount = 0; - if (options[0] is int frameCountOption) - frameCount = frameCountOption; - - var buffer = new List(); - buffer.AddRange(TextureName.GetLengthPrefixedBytes()); - buffer.AddRange(Faces.GetBytes()); - buffer.AddRange(Vertices.Count.GetBytes()); - - for (int frame = 0; frame < frameCount; frame++) - { - foreach (var vertex in Vertices) - { - buffer.AddRange(vertex.Frames[frame].GetBytes()); - } - } - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/VAni/Vani.cs b/src/Parsec/Shaiya/VAni/Vani.cs new file mode 100644 index 00000000..2ae645cb --- /dev/null +++ b/src/Parsec/Shaiya/VAni/Vani.cs @@ -0,0 +1,87 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Vani; + +public sealed class Vani : FileBase +{ + /// + /// Coordinates of the center of the 3d object + /// + public Vector3 Center { get; set; } + + /// + /// The distance between the vertices of the and the of the VAni object. Used for game calculations. + /// + public float DistanceToCenter { get; set; } + + /// + /// Rectangular bounding box + /// + public BoundingBox BoundingBox { get; set; } + + /// + /// Amount of frames + /// + public int FrameCount { get; set; } + + /// + /// ? + /// + public int Unknown1 { get; set; } + + public List Meshes { get; set; } = new(); + + public BoundingBox BoundingBox2 { get; set; } + + /// + /// Always 00? + /// + public int Unknown2 { get; set; } + + public override string Extension => "VANI"; + + protected override void Read(SBinaryReader binaryReader) + { + Center = binaryReader.Read(); + DistanceToCenter = binaryReader.ReadSingle(); + BoundingBox = binaryReader.Read(); + var meshCount = binaryReader.ReadInt32(); + FrameCount = binaryReader.ReadInt32(); + Unknown1 = binaryReader.ReadInt32(); + + // VaniMesh instances expect the FrameCount to be set as the ExtraOption on the serialization options + binaryReader.SerializationOptions.ExtraOption = FrameCount; + + for (var i = 0; i < meshCount; i++) + { + var mesh = binaryReader.Read(); + Meshes.Add(mesh); + } + + BoundingBox2 = binaryReader.Read(); + Unknown2 = binaryReader.ReadInt32(); + } + + protected override void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Center); + binaryWriter.Write(DistanceToCenter); + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Meshes.Count); + binaryWriter.Write(FrameCount); + binaryWriter.Write(Unknown1); + + // VaniMesh instances expect the FrameCount to be set as the ExtraOption on the serialization options + binaryWriter.SerializationOptions.ExtraOption = FrameCount; + + foreach (var mesh in Meshes) + { + binaryWriter.Write(mesh); + } + + binaryWriter.Write(BoundingBox2); + binaryWriter.Write(Unknown2); + } +} diff --git a/src/Parsec/Shaiya/VAni/VaniMesh.cs b/src/Parsec/Shaiya/VAni/VaniMesh.cs new file mode 100644 index 00000000..5bb851a3 --- /dev/null +++ b/src/Parsec/Shaiya/VAni/VaniMesh.cs @@ -0,0 +1,72 @@ +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Vani; + +/// +/// Represents a .VANI file (Vertex ANImation) +/// +public sealed class VaniMesh : ISerializable +{ + /// + /// Texture name of the .dds file + /// + public string TextureName { get; set; } = string.Empty; + + /// + /// List of the 3d object's faces (polygons - triangles) + /// + public List Faces { get; set; } = new(); + + /// + /// List of the 3d object's vertices + /// + public List Vertices { get; set; } = new(); + + public void Read(SBinaryReader binaryReader) + { + var frameCount = 0; + + if (binaryReader.SerializationOptions.ExtraOption is int frameCountOption) + { + frameCount = frameCountOption; + } + + TextureName = binaryReader.ReadString(); + Faces = binaryReader.ReadList().ToList(); + Vertices = binaryReader.ReadList().ToList(); + + for (var frame = 0; frame < frameCount; frame++) + { + foreach (var vertex in Vertices) + { + var vertexFrame = binaryReader.Read(); + vertex.Frames.Add(vertexFrame); + } + } + } + + public void Write(SBinaryWriter binaryWriter) + { + var frameCount = 0; + + if (binaryWriter.SerializationOptions.ExtraOption is int frameCountOption) + { + frameCount = frameCountOption; + } + + binaryWriter.Write(TextureName); + binaryWriter.Write(Faces.ToSerializable()); + binaryWriter.Write(Vertices.ToSerializable()); + + for (var frame = 0; frame < frameCount; frame++) + { + foreach (var vertex in Vertices) + { + binaryWriter.Write(vertex.Frames[frame]); + } + } + } +} diff --git a/src/Parsec/Shaiya/VAni/VaniVertex.cs b/src/Parsec/Shaiya/VAni/VaniVertex.cs index 53be9f9d..5379175e 100644 --- a/src/Parsec/Shaiya/VAni/VaniVertex.cs +++ b/src/Parsec/Shaiya/VAni/VaniVertex.cs @@ -1,16 +1,20 @@ -using Parsec.Shaiya.Core; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.VAni; +namespace Parsec.Shaiya.Vani; -public sealed class VaniVertex : IBinary +public sealed class VaniVertex : ISerializable { - public List Frames { get; } = new(); + public List Frames { get; set; } = new(); - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) { - var buffer = new List(); - foreach (var frame in Frames) - buffer.AddRange(frame.GetBytes()); - return buffer; + Frames = binaryReader.ReadList().ToList(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Frames.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs b/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs index f087d79b..80d8e134 100644 --- a/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs +++ b/src/Parsec/Shaiya/VAni/VaniVertexFrame.cs @@ -1,26 +1,11 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.VAni; +namespace Parsec.Shaiya.Vani; -public sealed class VaniVertexFrame : IBinary +public sealed class VaniVertexFrame : ISerializable { - [JsonConstructor] - public VaniVertexFrame() - { - } - - public VaniVertexFrame(SBinaryReader binaryReader) - { - Coordinates = new Vector3(binaryReader); - Normal = new Vector3(binaryReader); - BoneId = binaryReader.Read(); - UV = new Vector2(binaryReader); - } - /// /// The vertex coordinates in the 3d space /// @@ -41,13 +26,19 @@ public VaniVertexFrame(SBinaryReader binaryReader) /// public Vector2 UV { get; set; } - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) + { + Coordinates = binaryReader.Read(); + Normal = binaryReader.Read(); + BoneId = binaryReader.ReadInt32(); + UV = binaryReader.Read(); + } + + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Coordinates.GetBytes()); - buffer.AddRange(Normal.GetBytes()); - buffer.AddRange(BoneId.GetBytes()); - buffer.AddRange(UV.GetBytes()); - return buffer; + binaryWriter.Write(Coordinates); + binaryWriter.Write(Normal); + binaryWriter.Write(BoneId); + binaryWriter.Write(UV); } } diff --git a/src/Parsec/Shaiya/Wld/WLD.cs b/src/Parsec/Shaiya/Wld/WLD.cs deleted file mode 100644 index 250ac828..00000000 --- a/src/Parsec/Shaiya/Wld/WLD.cs +++ /dev/null @@ -1,363 +0,0 @@ -using Newtonsoft.Json; -using Parsec.Common; -using Parsec.Extensions; -using Parsec.Shaiya.Common; -using Parsec.Shaiya.Core; -using Parsec.Shaiya.Wld; - -namespace Parsec.Shaiya.WLD; - -public sealed class WLD : FileBase -{ - public WldType Type { get; set; } = WldType.FLD; - - #region FLD Only fields - - /// - /// Map Size, must be a power of 2 (1024 or 2048) - /// - public int MapSize { get; set; } - - /// - /// Map used for Y coordinate calculation based on X and Z - /// - public byte[] Heightmap { get; set; } - - /// - /// Map used for texture usage based on X and Z - /// - public byte[] TextureMap { get; set; } - - public List Textures { get; set; } = new(); - - #endregion - - /// - /// Fixed length string, length = 256. "inner layout", ".wtr" (water) for a field, ".dg" for a dungeon - /// - public String256 InnerLayout { get; set; } = string.Empty; - - /// - /// Files from Entity/Building - /// - public List BuildingNames { get; set; } = new(); - - public List BuildingCoordinates { get; set; } = new(); - - /// - /// Files from Entity/Shape - /// - public List ShapeNames { get; set; } = new(); - - public List ShapeCoordinates { get; set; } = new(); - - /// - /// Files from Entity/Tree - /// - public List TreeNames { get; set; } = new(); - - public List TreeCoordinates { get; set; } = new(); - - /// - /// Files from Entity/Grass - /// - public List GrassNames { get; set; } = new(); - - public List GrassCoordinates { get; set; } = new(); - - /// - /// Files from Entity/VAni - /// - public List VAniNames1 { get; set; } = new(); - - public List VAniCoordinates1 { get; set; } = new(); - - /// - /// Files from Entity/VAni - /// - public List VAniNames2 { get; set; } = new(); - - public List VAniCoordinates2 { get; set; } = new(); - - /// - /// Files from World/dungeon - /// - public List DungeonNames { get; set; } = new(); - - public List DungeonCoordinates { get; set; } = new(); - - /// - /// Files from Entity/MAni - /// - public List MAniNames { get; set; } = new(); - - public List MAniCoordinates { get; set; } = new(); - - public String256 EffectName { get; set; } = string.Empty; - - /// - /// Files from Effect/ - /// - public List Effects { get; set; } = new(); - - public int Unknown1 { get; set; } - - public int Unknown2 { get; set; } - - public int Unknown3 { get; set; } - - /// - /// Files from Entity/Object - /// - public List ObjectNames { get; set; } = new(); - - public List ObjectCoordinates { get; set; } = new(); - - /// - /// Files from Sound/Music - /// - public List MusicNames { get; set; } = new(); - - public List MusicZones { get; set; } = new(); - - /// - /// Files from Sound/Music - /// - public List SoundEffectNames { get; set; } = new(); - - public List Zones { get; set; } = new(); - - public List SoundEffects { get; set; } = new(); - - public List UnknownBoundingBoxes { get; set; } = new(); - - public List Portals { get; set; } = new(); - - public List Spawns { get; set; } = new(); - - public List NamedAreas { get; set; } = new(); - - public List Npcs { get; set; } = new(); - - #region FLD Only fields - - public String256 SkyName { get; set; } = string.Empty; - - public String256 CloudsName1 { get; set; } = string.Empty; - - public String256 CloudsName2 { get; set; } = string.Empty; - - #endregion - - public Vector3 Point1 { get; set; } - - public Vector3 Point2 { get; set; } - - public Vector3 Point3 { get; set; } - - public float Unknown5 { get; set; } - - public float Unknown6 { get; set; } - - // This structure is incomplete, there's a bunch of unknown fields missing - - [JsonIgnore] - public override string Extension => "wld"; - - public override void Read() - { - string typeStr = _binaryReader.ReadString(4).Trim('\0'); - - if (typeStr == "DUN") - Type = WldType.DUN; - - - // FLD only fields - if (Type == WldType.FLD) - { - MapSize = _binaryReader.Read(); - - int mappingSize = (int)Math.Pow(MapSize / 2f + 1, 2); - Heightmap = _binaryReader.ReadBytes(mappingSize * 2); - TextureMap = _binaryReader.ReadBytes(mappingSize); - - int textureCount = _binaryReader.Read(); - for (int i = 0; i < textureCount; i++) - Textures.Add(new WldTexture(_binaryReader)); - } - - InnerLayout = new String256(_binaryReader); - - ReadNamesAndCoordinates(BuildingNames, BuildingCoordinates); - ReadNamesAndCoordinates(ShapeNames, ShapeCoordinates); - ReadNamesAndCoordinates(TreeNames, TreeCoordinates); - ReadNamesAndCoordinates(GrassNames, GrassCoordinates); - ReadNamesAndCoordinates(VAniNames1, VAniCoordinates1); - ReadNamesAndCoordinates(VAniNames2, VAniCoordinates2); - ReadNamesAndCoordinates(DungeonNames, DungeonCoordinates); - ReadNames(MAniNames); - - int maniCoordinatesCount = _binaryReader.Read(); - for (int i = 0; i < maniCoordinatesCount; i++) - MAniCoordinates.Add(new WldManiCoordinate(_binaryReader)); - - EffectName = new String256(_binaryReader); - - int effectCount = _binaryReader.Read(); - for (int i = 0; i < effectCount; i++) - Effects.Add(new WldEffect(_binaryReader)); - - Unknown1 = _binaryReader.Read(); - Unknown2 = _binaryReader.Read(); - Unknown3 = _binaryReader.Read(); - - ReadNamesAndCoordinates(ObjectNames, ObjectCoordinates); - ReadNames(MusicNames); - - int musicZoneCount = _binaryReader.Read(); - for (int i = 0; i < musicZoneCount; i++) - MusicZones.Add(new WldMusicZone(_binaryReader)); - - ReadNames(SoundEffectNames); - - int zoneCount = _binaryReader.Read(); - for (int i = 0; i < zoneCount; i++) - Zones.Add(new WldZone(_binaryReader)); - - int backgroundMusicSpotCount = _binaryReader.Read(); - for (int i = 0; i < backgroundMusicSpotCount; i++) - SoundEffects.Add(new WldSoundEffect(_binaryReader)); - - int unknownBoundingBoxesCount = _binaryReader.Read(); - for (int i = 0; i < unknownBoundingBoxesCount; i++) - UnknownBoundingBoxes.Add(new WldUnknownBox(_binaryReader)); - - int portalCount = _binaryReader.Read(); - for (int i = 0; i < portalCount; i++) - Portals.Add(new WldPortal(_binaryReader)); - - int spawnCount = _binaryReader.Read(); - for (int i = 0; i < spawnCount; i++) - Spawns.Add(new WldSpawn(_binaryReader)); - - int namedAreaCount = _binaryReader.Read(); - for (int i = 0; i < namedAreaCount; i++) - NamedAreas.Add(new WldNamedArea(_binaryReader)); - - // NOTE: npcCount is the real npc count + the patrol coordinates count - int npcCount = _binaryReader.Read(); - - while (npcCount > 0) - { - var npc = new WldNpc(_binaryReader); - Npcs.Add(npc); - npcCount -= npc.PatrolCoordinates.Count; - npcCount--; - } - - if (Type == WldType.FLD) - { - SkyName = new String256(_binaryReader); - CloudsName1 = new String256(_binaryReader); - CloudsName2 = new String256(_binaryReader); - } - - Point1 = new Vector3(_binaryReader); - Point2 = new Vector3(_binaryReader); - Point3 = new Vector3(_binaryReader); - - Unknown5 = _binaryReader.Read(); - Unknown6 = _binaryReader.Read(); - } - - private void ReadNames(ICollection namesList) - { - int namesCount = _binaryReader.Read(); - for (int i = 0; i < namesCount; i++) - namesList.Add(new String256(_binaryReader)); - } - - private void ReadNamesAndCoordinates(ICollection namesList, ICollection coordinatesList) - { - ReadNames(namesList); - - int coordinatesCount = _binaryReader.Read(); - for (int i = 0; i < coordinatesCount; i++) - coordinatesList.Add(new WldCoordinate(_binaryReader)); - } - - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) - { - var buffer = new List(); - buffer.AddRange(Type == WldType.FLD ? "FLD".GetBytes(true) : "DUN".GetBytes(true)); - - // FLD only fields - if (Type == WldType.FLD) - { - buffer.AddRange(MapSize.GetBytes()); - buffer.AddRange(Heightmap); - buffer.AddRange(TextureMap); - buffer.AddRange(Textures.GetBytes()); - } - - buffer.AddRange(InnerLayout.GetBytes()); - - buffer.AddRange(BuildingNames.GetBytes()); - buffer.AddRange(BuildingCoordinates.GetBytes()); - buffer.AddRange(ShapeNames.GetBytes()); - buffer.AddRange(ShapeCoordinates.GetBytes()); - buffer.AddRange(TreeNames.GetBytes()); - buffer.AddRange(TreeCoordinates.GetBytes()); - buffer.AddRange(GrassNames.GetBytes()); - buffer.AddRange(GrassCoordinates.GetBytes()); - buffer.AddRange(VAniNames1.GetBytes()); - buffer.AddRange(VAniCoordinates1.GetBytes()); - buffer.AddRange(VAniNames2.GetBytes()); - buffer.AddRange(VAniCoordinates2.GetBytes()); - buffer.AddRange(DungeonNames.GetBytes()); - buffer.AddRange(DungeonCoordinates.GetBytes()); - buffer.AddRange(MAniNames.GetBytes()); - buffer.AddRange(MAniCoordinates.GetBytes()); - buffer.AddRange(EffectName.GetBytes()); - buffer.AddRange(Effects.GetBytes()); - - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Unknown3.GetBytes()); - - buffer.AddRange(ObjectNames.GetBytes()); - buffer.AddRange(ObjectCoordinates.GetBytes()); - buffer.AddRange(MusicNames.GetBytes()); - - buffer.AddRange(MusicZones.GetBytes()); - buffer.AddRange(SoundEffectNames.GetBytes()); - buffer.AddRange(Zones.GetBytes()); - buffer.AddRange(SoundEffects.GetBytes()); - buffer.AddRange(UnknownBoundingBoxes.GetBytes()); - buffer.AddRange(Portals.GetBytes()); - buffer.AddRange(Spawns.GetBytes()); - buffer.AddRange(NamedAreas.GetBytes()); - - int npcCount = Npcs.Count + Npcs.Sum(npc => npc.PatrolCoordinates.Count); - buffer.AddRange(npcCount.GetBytes()); - - foreach (var npc in Npcs) - buffer.AddRange(npc.GetBytes()); - - if (Type == WldType.FLD) - { - buffer.AddRange(SkyName.GetBytes()); - buffer.AddRange(CloudsName1.GetBytes()); - buffer.AddRange(CloudsName2.GetBytes()); - } - - buffer.AddRange(Point1.GetBytes()); - buffer.AddRange(Point2.GetBytes()); - buffer.AddRange(Point3.GetBytes()); - - buffer.AddRange(Unknown5.GetBytes()); - buffer.AddRange(Unknown6.GetBytes()); - - return buffer; - } -} diff --git a/src/Parsec/Shaiya/Wld/Wld.cs b/src/Parsec/Shaiya/Wld/Wld.cs new file mode 100644 index 00000000..7126863a --- /dev/null +++ b/src/Parsec/Shaiya/Wld/Wld.cs @@ -0,0 +1,341 @@ +using Newtonsoft.Json; +using Parsec.Extensions; +using Parsec.Serialization; +using Parsec.Shaiya.Common; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Wld; + +public sealed class Wld : FileBase +{ + public WldType Type { get; set; } = WldType.FLD; + + #region FLD Only fields + + /// + /// Map Size, must be a power of 2 (1024 or 2048) + /// + public int MapSize { get; set; } + + /// + /// Map used for Y coordinate calculation based on X and Z + /// + public byte[] Heightmap { get; set; } + + /// + /// Map used for texture usage based on X and Z + /// + public byte[] TextureMap { get; set; } + + public List Textures { get; set; } = new(); + + #endregion + + /// + /// Fixed length string, length = 256. "inner layout", ".wtr" (water) for a field, ".dg" for a dungeon + /// + public String256 InnerLayout { get; set; } = string.Empty; + + /// + /// Files from Entity/Building + /// + public List BuildingNames { get; set; } = new(); + + public List BuildingCoordinates { get; set; } = new(); + + /// + /// Files from Entity/Shape + /// + public List ShapeNames { get; set; } = new(); + + public List ShapeCoordinates { get; set; } = new(); + + /// + /// Files from Entity/Tree + /// + public List TreeNames { get; set; } = new(); + + public List TreeCoordinates { get; set; } = new(); + + /// + /// Files from Entity/Grass + /// + public List GrassNames { get; set; } = new(); + + public List GrassCoordinates { get; set; } = new(); + + /// + /// Files from Entity/VAni + /// + public List VAniNames1 { get; set; } = new(); + + public List VAniCoordinates1 { get; set; } = new(); + + /// + /// Files from Entity/VAni + /// + public List VAniNames2 { get; set; } = new(); + + public List VAniCoordinates2 { get; set; } = new(); + + /// + /// Files from World/dungeon + /// + public List DungeonNames { get; set; } = new(); + + public List DungeonCoordinates { get; set; } = new(); + + /// + /// Files from Entity/MAni + /// + public List MAniNames { get; set; } = new(); + + public List MAniCoordinates { get; set; } = new(); + + public String256 EffectName { get; set; } = string.Empty; + + /// + /// Files from Effect/ + /// + public List Effects { get; set; } = new(); + + public int Unknown1 { get; set; } + + public int Unknown2 { get; set; } + + public int Unknown3 { get; set; } + + /// + /// Files from Entity/Object + /// + public List ObjectNames { get; set; } = new(); + + public List ObjectCoordinates { get; set; } = new(); + + /// + /// Files from Sound/Music + /// + public List MusicNames { get; set; } = new(); + + public List MusicZones { get; set; } = new(); + + /// + /// Files from Sound/Music + /// + public List SoundEffectNames { get; set; } = new(); + + public List Zones { get; set; } = new(); + + public List SoundEffects { get; set; } = new(); + + public List UnknownBoundingBoxes { get; set; } = new(); + + public List Portals { get; set; } = new(); + + public List Spawns { get; set; } = new(); + + public List NamedAreas { get; set; } = new(); + + public List Npcs { get; set; } = new(); + + #region FLD Only fields + + public String256 SkyName { get; set; } = string.Empty; + + public String256 CloudsName1 { get; set; } = string.Empty; + + public String256 CloudsName2 { get; set; } = string.Empty; + + #endregion + + public Vector3 Point1 { get; set; } + + public Vector3 Point2 { get; set; } + + public Vector3 Point3 { get; set; } + + public float Unknown5 { get; set; } + + public float Unknown6 { get; set; } + + // This structure is incomplete, there's a bunch of unknown fields missing + + [JsonIgnore] + public override string Extension => "wld"; + + protected override void Read(SBinaryReader binaryReader) + { + var typeStr = binaryReader.ReadString(4).Trim('\0'); + + if (typeStr == "DUN") + { + Type = WldType.DUN; + } + + // FLD only fields + if (Type == WldType.FLD) + { + MapSize = binaryReader.ReadInt32(); + + var mappingSize = (int)Math.Pow(MapSize / 2f + 1, 2); + Heightmap = binaryReader.ReadBytes(mappingSize * 2); + TextureMap = binaryReader.ReadBytes(mappingSize); + Textures = binaryReader.ReadList().ToList(); + } + + InnerLayout = binaryReader.Read(); + + ReadNamesAndCoordinates(binaryReader, BuildingNames, BuildingCoordinates); + ReadNamesAndCoordinates(binaryReader, ShapeNames, ShapeCoordinates); + ReadNamesAndCoordinates(binaryReader, TreeNames, TreeCoordinates); + ReadNamesAndCoordinates(binaryReader, GrassNames, GrassCoordinates); + ReadNamesAndCoordinates(binaryReader, VAniNames1, VAniCoordinates1); + ReadNamesAndCoordinates(binaryReader, VAniNames2, VAniCoordinates2); + ReadNamesAndCoordinates(binaryReader, DungeonNames, DungeonCoordinates); + ReadNames(binaryReader, MAniNames); + + MAniCoordinates = binaryReader.ReadList().ToList(); + EffectName = binaryReader.Read(); + Effects = binaryReader.ReadList().ToList(); + + Unknown1 = binaryReader.ReadInt32(); + Unknown2 = binaryReader.ReadInt32(); + Unknown3 = binaryReader.ReadInt32(); + + ReadNamesAndCoordinates(binaryReader, ObjectNames, ObjectCoordinates); + ReadNames(binaryReader, MusicNames); + + MusicZones = binaryReader.ReadList().ToList(); + + ReadNames(binaryReader, SoundEffectNames); + + Zones = binaryReader.ReadList().ToList(); + SoundEffects = binaryReader.ReadList().ToList(); + UnknownBoundingBoxes = binaryReader.ReadList().ToList(); + Portals = binaryReader.ReadList().ToList(); + Spawns = binaryReader.ReadList().ToList(); + NamedAreas = binaryReader.ReadList().ToList(); + + // NOTE: npcCount is the real npc count + the patrol coordinates count + int npcCount = binaryReader.ReadInt32(); + + while (npcCount > 0) + { + var npc = binaryReader.Read(); + Npcs.Add(npc); + npcCount -= npc.PatrolCoordinates.Count; + npcCount--; + } + + if (Type == WldType.FLD) + { + SkyName = binaryReader.Read(); + CloudsName1 = binaryReader.Read(); + CloudsName2 = binaryReader.Read(); + } + + Point1 = binaryReader.Read(); + Point2 = binaryReader.Read(); + Point3 = binaryReader.Read(); + + Unknown5 = binaryReader.ReadSingle(); + Unknown6 = binaryReader.ReadSingle(); + } + + private void ReadNames(SBinaryReader binaryReader, ICollection namesList) + { + var namesCount = binaryReader.ReadInt32(); + for (var i = 0; i < namesCount; i++) + { + var str256 = binaryReader.Read(); + namesList.Add(str256); + } + } + + private void ReadNamesAndCoordinates(SBinaryReader binaryReader, ICollection namesList, + ICollection coordinatesList) + { + ReadNames(binaryReader, namesList); + + var coordinatesCount = binaryReader.ReadInt32(); + for (var i = 0; i < coordinatesCount; i++) + { + var coordinate = binaryReader.Read(); + coordinatesList.Add(coordinate); + } + } + + protected override void Write(SBinaryWriter binaryWriter) + { + var typeStr = Type == WldType.FLD ? "FLD" : "DUN"; + binaryWriter.Write(typeStr, false); + + // FLD only fields + if (Type == WldType.FLD) + { + binaryWriter.Write(MapSize); + binaryWriter.Write(Heightmap); + binaryWriter.Write(TextureMap); + binaryWriter.Write(Textures.ToSerializable()); + } + + binaryWriter.Write(InnerLayout); + + binaryWriter.Write(BuildingNames.ToSerializable()); + binaryWriter.Write(BuildingCoordinates.ToSerializable()); + binaryWriter.Write(ShapeNames.ToSerializable()); + binaryWriter.Write(ShapeCoordinates.ToSerializable()); + binaryWriter.Write(TreeNames.ToSerializable()); + binaryWriter.Write(TreeCoordinates.ToSerializable()); + binaryWriter.Write(GrassNames.ToSerializable()); + binaryWriter.Write(GrassCoordinates.ToSerializable()); + binaryWriter.Write(VAniNames1.ToSerializable()); + binaryWriter.Write(VAniCoordinates1.ToSerializable()); + binaryWriter.Write(VAniNames2.ToSerializable()); + binaryWriter.Write(VAniCoordinates2.ToSerializable()); + binaryWriter.Write(DungeonNames.ToSerializable()); + binaryWriter.Write(DungeonCoordinates.ToSerializable()); + binaryWriter.Write(MAniNames.ToSerializable()); + binaryWriter.Write(MAniCoordinates.ToSerializable()); + binaryWriter.Write(EffectName); + binaryWriter.Write(Effects.ToSerializable()); + + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Unknown3); + + binaryWriter.Write(ObjectNames.ToSerializable()); + binaryWriter.Write(ObjectCoordinates.ToSerializable()); + binaryWriter.Write(MusicNames.ToSerializable()); + binaryWriter.Write(MusicZones.ToSerializable()); + binaryWriter.Write(SoundEffectNames.ToSerializable()); + binaryWriter.Write(Zones.ToSerializable()); + binaryWriter.Write(SoundEffects.ToSerializable()); + binaryWriter.Write(UnknownBoundingBoxes.ToSerializable()); + binaryWriter.Write(Portals.ToSerializable()); + binaryWriter.Write(Spawns.ToSerializable()); + binaryWriter.Write(NamedAreas.ToSerializable()); + + var npcCount = Npcs.Count + Npcs.Sum(npc => npc.PatrolCoordinates.Count); + binaryWriter.Write(npcCount); + + foreach (var npc in Npcs) + { + binaryWriter.Write(npc); + } + + if (Type == WldType.FLD) + { + binaryWriter.Write(SkyName); + binaryWriter.Write(CloudsName1); + binaryWriter.Write(CloudsName2); + } + + binaryWriter.Write(Point1); + binaryWriter.Write(Point2); + binaryWriter.Write(Point3); + + binaryWriter.Write(Unknown5); + binaryWriter.Write(Unknown6); + } +} diff --git a/src/Parsec/Shaiya/Wld/WldCoordinate.cs b/src/Parsec/Shaiya/Wld/WldCoordinate.cs index e2a937fc..685347c8 100644 --- a/src/Parsec/Shaiya/Wld/WldCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldCoordinate.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// Coordinates to place a 3D model in the world /// -public sealed class WldCoordinate : IBinary +public sealed class WldCoordinate : ISerializable { /// /// Id of a 3D Model @@ -31,26 +29,20 @@ public sealed class WldCoordinate : IBinary /// public Vector3 RotationUp { get; set; } - [JsonConstructor] - public WldCoordinate() - { - } - public WldCoordinate(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - Id = binaryReader.Read(); - Position = new Vector3(binaryReader); - RotationForward = new Vector3(binaryReader); - RotationUp = new Vector3(binaryReader); + Id = binaryReader.ReadInt32(); + Position = binaryReader.Read(); + RotationForward = binaryReader.Read(); + RotationUp = binaryReader.Read(); } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(RotationForward.GetBytes()); - buffer.AddRange(RotationUp.GetBytes()); - return buffer; + binaryWriter.Write(Id); + binaryWriter.Write(Position); + binaryWriter.Write(RotationForward); + binaryWriter.Write(RotationUp); } } diff --git a/src/Parsec/Shaiya/Wld/WldEffect.cs b/src/Parsec/Shaiya/Wld/WldEffect.cs index 2270e3b7..d718973e 100644 --- a/src/Parsec/Shaiya/Wld/WldEffect.cs +++ b/src/Parsec/Shaiya/Wld/WldEffect.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// Represents an effect in the world /// -public sealed class WldEffect : IBinary +public sealed class WldEffect : ISerializable { /// /// Effect's position @@ -31,26 +29,19 @@ public sealed class WldEffect : IBinary /// public int EffectId { get; set; } - [JsonConstructor] - public WldEffect() + public void Read(SBinaryReader binaryReader) { + Position = binaryReader.Read(); + RotationForward = binaryReader.Read(); + RotationUp = binaryReader.Read(); + EffectId = binaryReader.ReadInt32(); } - public WldEffect(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Position = new Vector3(binaryReader); - RotationForward = new Vector3(binaryReader); - RotationUp = new Vector3(binaryReader); - EffectId = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(RotationForward.GetBytes()); - buffer.AddRange(RotationUp.GetBytes()); - buffer.AddRange(EffectId.GetBytes()); - return buffer; + binaryWriter.Write(Position); + binaryWriter.Write(RotationForward); + binaryWriter.Write(RotationUp); + binaryWriter.Write(EffectId); } } diff --git a/src/Parsec/Shaiya/Wld/WldFaction.cs b/src/Parsec/Shaiya/Wld/WldFaction.cs new file mode 100644 index 00000000..cfcc0b72 --- /dev/null +++ b/src/Parsec/Shaiya/Wld/WldFaction.cs @@ -0,0 +1,8 @@ +namespace Parsec.Shaiya.Wld; + +public enum WldFaction +{ + Light, + Fury, + Any +} diff --git a/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs b/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs index 2e5cc0ae..15a9d27e 100644 --- a/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldManiCoordinate.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// Coordinates to place a 3D object in the field. Used by 'MANI' entities only. /// -public sealed class WldManiCoordinate : IBinary +public sealed class WldManiCoordinate : ISerializable { /// /// Id of the building that should be animated using this MAni file @@ -36,28 +34,21 @@ public sealed class WldManiCoordinate : IBinary /// public Vector3 RotationUp { get; set; } - [JsonConstructor] - public WldManiCoordinate() + public void Read(SBinaryReader binaryReader) { + WorldBuildingId = binaryReader.ReadInt32(); + Id = binaryReader.ReadInt32(); + Position = binaryReader.Read(); + RotationForward = binaryReader.Read(); + RotationUp = binaryReader.Read(); } - public WldManiCoordinate(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - WorldBuildingId = binaryReader.Read(); - Id = binaryReader.Read(); - Position = new Vector3(binaryReader); - RotationForward = new Vector3(binaryReader); - RotationUp = new Vector3(binaryReader); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(WorldBuildingId.GetBytes()); - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Position.GetBytes()); - buffer.AddRange(RotationForward.GetBytes()); - buffer.AddRange(RotationUp.GetBytes()); - return buffer; + binaryWriter.Write(WorldBuildingId); + binaryWriter.Write(Id); + binaryWriter.Write(Position); + binaryWriter.Write(RotationForward); + binaryWriter.Write(RotationUp); } } diff --git a/src/Parsec/Shaiya/Wld/WldMusicZone.cs b/src/Parsec/Shaiya/Wld/WldMusicZone.cs index b5b6112d..20a2efb2 100644 --- a/src/Parsec/Shaiya/Wld/WldMusicZone.cs +++ b/src/Parsec/Shaiya/Wld/WldMusicZone.cs @@ -1,15 +1,14 @@ using Newtonsoft.Json; -using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// A rectangular area of the world in which music is played /// -public sealed class WldMusicZone : IBinary +public sealed class WldMusicZone : ISerializable { /// /// The rectangular area of the music zone @@ -36,21 +35,19 @@ public WldMusicZone() { } - public WldMusicZone(SBinaryReader binaryReader) + public void Read(SBinaryReader binaryReader) { - BoundingBox = new BoundingBox(binaryReader); - Radius = binaryReader.Read(); - Id = binaryReader.Read(); - Unknown = binaryReader.Read(); + BoundingBox = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); + Id = binaryReader.ReadInt32(); + Unknown = binaryReader.ReadInt32(); } - public IEnumerable GetBytes(params object[] options) + public void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Unknown.GetBytes()); - return buffer; + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Radius); + binaryWriter.Write(Id); + binaryWriter.Write(Unknown); } } diff --git a/src/Parsec/Shaiya/Wld/WldNamedArea.cs b/src/Parsec/Shaiya/Wld/WldNamedArea.cs index 45a43156..6331e40c 100644 --- a/src/Parsec/Shaiya/Wld/WldNamedArea.cs +++ b/src/Parsec/Shaiya/Wld/WldNamedArea.cs @@ -1,12 +1,10 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; -public enum NamedAreaMode +public enum WldNamedAreaMode { WorldIndexTxt = 0, BmpFile = 2 @@ -15,7 +13,7 @@ public enum NamedAreaMode /// /// Represents a NamedArea in the world /// -public sealed class WldNamedArea : IBinary +public sealed class WldNamedArea : ISerializable { /// /// The BoundingBox where this Named Area applies @@ -42,37 +40,30 @@ public sealed class WldNamedArea : IBinary /// /// Defines the mode for /// - public NamedAreaMode Mode { get; set; } + public WldNamedAreaMode Mode { get; set; } /// /// Almost always 0 /// public int Unknown { get; set; } - [JsonConstructor] - public WldNamedArea() + public void Read(SBinaryReader binaryReader) { + BoundingBox = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); + Text1 = binaryReader.Read(); + Text2 = binaryReader.Read(); + Mode = (WldNamedAreaMode)binaryReader.ReadInt32(); + Unknown = binaryReader.ReadInt32(); } - public WldNamedArea(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - BoundingBox = new BoundingBox(binaryReader); - Radius = binaryReader.Read(); - Text1 = new String256(binaryReader); - Text2 = new String256(binaryReader); - Mode = (NamedAreaMode)binaryReader.Read(); - Unknown = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - buffer.AddRange(Text1.GetBytes()); - buffer.AddRange(Text2.GetBytes()); - buffer.AddRange(((int)Mode).GetBytes()); - buffer.AddRange(Unknown.GetBytes()); - return buffer; + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Radius); + binaryWriter.Write(Text1); + binaryWriter.Write(Text2); + binaryWriter.Write((int)Mode); + binaryWriter.Write(Unknown); } } diff --git a/src/Parsec/Shaiya/Wld/WldNpc.cs b/src/Parsec/Shaiya/Wld/WldNpc.cs index 7a35d649..d7ef5c8c 100644 --- a/src/Parsec/Shaiya/Wld/WldNpc.cs +++ b/src/Parsec/Shaiya/Wld/WldNpc.cs @@ -1,12 +1,11 @@ -using Newtonsoft.Json; -using Parsec.Extensions; +using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; -public sealed class WldNpc : IBinary +public sealed class WldNpc : ISerializable { public int Type { get; set; } @@ -18,31 +17,21 @@ public sealed class WldNpc : IBinary public List PatrolCoordinates { get; set; } = new(); - [JsonConstructor] - public WldNpc() + public void Read(SBinaryReader binaryReader) { + Type = binaryReader.ReadInt32(); + TypeId = binaryReader.ReadInt32(); + Coordinates = binaryReader.Read(); + Orientation = binaryReader.ReadSingle(); + PatrolCoordinates = binaryReader.ReadList().ToList(); } - public WldNpc(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Type = binaryReader.Read(); - TypeId = binaryReader.Read(); - Coordinates = new Vector3(binaryReader); - Orientation = binaryReader.Read(); - - int patrolCoordinatesCount = binaryReader.Read(); - for (int i = 0; i < patrolCoordinatesCount; i++) - PatrolCoordinates.Add(new WldNpcPatrolCoordinate(binaryReader)); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Type.GetBytes()); - buffer.AddRange(TypeId.GetBytes()); - buffer.AddRange(Coordinates.GetBytes()); - buffer.AddRange(Orientation.GetBytes()); - buffer.AddRange(PatrolCoordinates.GetBytes()); - return buffer; + binaryWriter.Write(Type); + binaryWriter.Write(TypeId); + binaryWriter.Write(Coordinates); + binaryWriter.Write(Orientation); + binaryWriter.Write(PatrolCoordinates.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs b/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs index 36984eb9..67ce002f 100644 --- a/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs +++ b/src/Parsec/Shaiya/Wld/WldNpcPatrolCoordinate.cs @@ -1,23 +1,20 @@ -using Newtonsoft.Json; using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; -public sealed class WldNpcPatrolCoordinate : IBinary +public sealed class WldNpcPatrolCoordinate : ISerializable { public Vector3 Position { get; set; } - [JsonConstructor] - public WldNpcPatrolCoordinate() + public void Read(SBinaryReader binaryReader) { + Position = binaryReader.Read(); } - public WldNpcPatrolCoordinate(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Position = new Vector3(binaryReader); + binaryWriter.Write(Position); } - - public IEnumerable GetBytes(params object[] options) => Position.GetBytes(); } diff --git a/src/Parsec/Shaiya/Wld/WldPortal.cs b/src/Parsec/Shaiya/Wld/WldPortal.cs index 85e36349..db83475b 100644 --- a/src/Parsec/Shaiya/Wld/WldPortal.cs +++ b/src/Parsec/Shaiya/Wld/WldPortal.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// Represents a Portal in the world /// -public sealed class WldPortal : IBinary +public sealed class WldPortal : ISerializable { /// /// The area of the portal @@ -37,9 +35,9 @@ public sealed class WldPortal : IBinary public byte MapId { get; set; } /// - /// The faction which can use the portal + /// The faction which can use the portal (unsigned short) /// - public FactionShort Faction { get; set; } + public WldFaction Faction { get; set; } /// /// Almost always 0L @@ -51,34 +49,27 @@ public sealed class WldPortal : IBinary /// public Vector3 DestinationPosition { get; set; } - [JsonConstructor] - public WldPortal() + public void Read(SBinaryReader binaryReader) { + BoundingBox = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); + Text1 = binaryReader.Read(); + Text2 = binaryReader.Read(); + MapId = binaryReader.ReadByte(); + Faction = (WldFaction)binaryReader.ReadInt16(); + Unknown = binaryReader.ReadByte(); + DestinationPosition = binaryReader.Read(); } - public WldPortal(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - BoundingBox = new BoundingBox(binaryReader); - Radius = binaryReader.Read(); - Text1 = new String256(binaryReader); - Text2 = new String256(binaryReader); - MapId = binaryReader.Read(); - Faction = (FactionShort)binaryReader.Read(); - Unknown = binaryReader.Read(); - DestinationPosition = new Vector3(binaryReader); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - buffer.AddRange(Text1.GetBytes()); - buffer.AddRange(Text2.GetBytes()); - buffer.Add(MapId); - buffer.AddRange(((short)Faction).GetBytes()); - buffer.Add(Unknown); - buffer.AddRange(DestinationPosition.GetBytes()); - return buffer; + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Radius); + binaryWriter.Write(Text1); + binaryWriter.Write(Text2); + binaryWriter.Write(MapId); + binaryWriter.Write((short)Faction); + binaryWriter.Write(Unknown); + binaryWriter.Write(DestinationPosition); } } diff --git a/src/Parsec/Shaiya/Wld/WldSoundEffect.cs b/src/Parsec/Shaiya/Wld/WldSoundEffect.cs index c5e228f2..affd6e2a 100644 --- a/src/Parsec/Shaiya/Wld/WldSoundEffect.cs +++ b/src/Parsec/Shaiya/Wld/WldSoundEffect.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// A circular area of the world in which music is played /// -public sealed class WldSoundEffect : IBinary +public sealed class WldSoundEffect : ISerializable { /// /// Id of the wav file (from the linked name list of files) @@ -26,24 +24,17 @@ public sealed class WldSoundEffect : IBinary /// public float Radius { get; set; } - [JsonConstructor] - public WldSoundEffect() + public void Read(SBinaryReader binaryReader) { + Id = binaryReader.ReadInt32(); + Center = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); } - public WldSoundEffect(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Id = binaryReader.Read(); - Center = new Vector3(binaryReader); - Radius = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Id.GetBytes()); - buffer.AddRange(Center.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - return buffer; + binaryWriter.Write(Id); + binaryWriter.Write(Center); + binaryWriter.Write(Radius); } } diff --git a/src/Parsec/Shaiya/Wld/WldSpawn.cs b/src/Parsec/Shaiya/Wld/WldSpawn.cs index 5a7d4c43..3cc8a49b 100644 --- a/src/Parsec/Shaiya/Wld/WldSpawn.cs +++ b/src/Parsec/Shaiya/Wld/WldSpawn.cs @@ -1,15 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; /// /// Represents a spawn area in the world /// -public sealed class WldSpawn : IBinary +public sealed class WldSpawn : ISerializable { /// /// Almost always 1 @@ -29,35 +27,28 @@ public sealed class WldSpawn : IBinary /// /// Faction which uses this spawn area /// - public FactionInt Faction { get; set; } + public WldFaction Faction { get; set; } /// /// Almost always 0 /// public int Unknown3 { get; set; } - [JsonConstructor] - public WldSpawn() + public void Read(SBinaryReader binaryReader) { + Unknown1 = binaryReader.ReadInt32(); + BoundingBox = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); + Faction = (WldFaction)binaryReader.ReadInt32(); + Unknown3 = binaryReader.ReadInt32(); } - public WldSpawn(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - Unknown1 = binaryReader.Read(); - BoundingBox = new BoundingBox(binaryReader); - Radius = binaryReader.Read(); - Faction = (FactionInt)binaryReader.Read(); - Unknown3 = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - buffer.AddRange(((int)Faction).GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); - return buffer; + binaryWriter.Write(Unknown1); + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Radius); + binaryWriter.Write((int)Faction); + binaryWriter.Write(Unknown3); } } diff --git a/src/Parsec/Shaiya/Wld/WldTexture.cs b/src/Parsec/Shaiya/Wld/WldTexture.cs index 8e397754..59c70edf 100644 --- a/src/Parsec/Shaiya/Wld/WldTexture.cs +++ b/src/Parsec/Shaiya/Wld/WldTexture.cs @@ -1,12 +1,10 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; -public sealed class WldTexture : IBinary +public sealed class WldTexture : ISerializable { /// /// .tga texture file @@ -23,24 +21,17 @@ public sealed class WldTexture : IBinary /// public String256 WalkSound { get; set; } = string.Empty; - [JsonConstructor] - public WldTexture() + public void Read(SBinaryReader binaryReader) { + TextureName = binaryReader.Read(); + TileSize = binaryReader.ReadSingle(); + WalkSound = binaryReader.Read(); } - public WldTexture(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - TextureName = new String256(binaryReader); - TileSize = binaryReader.Read(); - WalkSound = new String256(binaryReader); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(TextureName.GetBytes()); - buffer.AddRange(TileSize.GetBytes()); - buffer.AddRange(WalkSound.GetBytes()); - return buffer; + binaryWriter.Write(TextureName); + binaryWriter.Write(TileSize); + binaryWriter.Write(WalkSound); } } diff --git a/src/Parsec/Shaiya/Wld/WldUnknownBox.cs b/src/Parsec/Shaiya/Wld/WldUnknownBox.cs index 2cfd86c6..1958899f 100644 --- a/src/Parsec/Shaiya/Wld/WldUnknownBox.cs +++ b/src/Parsec/Shaiya/Wld/WldUnknownBox.cs @@ -1,12 +1,10 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Wld; -public class WldUnknownBox : IBinary +public class WldUnknownBox : ISerializable { public BoundingBox BoundingBox { get; set; } @@ -15,22 +13,15 @@ public class WldUnknownBox : IBinary /// public float Radius { get; set; } - [JsonConstructor] - public WldUnknownBox() + public void Read(SBinaryReader binaryReader) { + BoundingBox = binaryReader.Read(); + Radius = binaryReader.ReadSingle(); } - public WldUnknownBox(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - BoundingBox = new BoundingBox(binaryReader); - Radius = binaryReader.Read(); - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(BoundingBox.GetBytes()); - buffer.AddRange(Radius.GetBytes()); - return buffer; + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Radius); } } diff --git a/src/Parsec/Shaiya/Wld/WldZone.cs b/src/Parsec/Shaiya/Wld/WldZone.cs index bebb8fae..56882c37 100644 --- a/src/Parsec/Shaiya/Wld/WldZone.cs +++ b/src/Parsec/Shaiya/Wld/WldZone.cs @@ -1,44 +1,25 @@ -using Newtonsoft.Json; -using Parsec.Extensions; +using Parsec.Extensions; using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; -namespace Parsec.Shaiya.WLD; +namespace Parsec.Shaiya.Wld; -public sealed class WldZone : IBinary +public sealed class WldZone : ISerializable { public BoundingBox BoundingBox { get; set; } - public List Identifiers { get; set; } = new(); + public List Identifiers { get; set; } = new(); - [JsonConstructor] - public WldZone() + public void Read(SBinaryReader binaryReader) { + BoundingBox = binaryReader.Read(); + Identifiers = binaryReader.ReadList().ToList(); } - public WldZone(SBinaryReader binaryReader) + public void Write(SBinaryWriter binaryWriter) { - BoundingBox = new BoundingBox(binaryReader); - - int identifierCount = binaryReader.Read(); - - for (int i = 0; i < identifierCount; i++) - { - int identifier = binaryReader.Read(); - Identifiers.Add(identifier); - } - } - - public IEnumerable GetBytes(params object[] options) - { - var buffer = new List(); - buffer.AddRange(BoundingBox.GetBytes()); - - buffer.AddRange(Identifiers.Count.GetBytes()); - foreach (int identifier in Identifiers) - buffer.AddRange(identifier.GetBytes()); - - return buffer; + binaryWriter.Write(BoundingBox); + binaryWriter.Write(Identifiers.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Wld/WldZoneIdentifier.cs b/src/Parsec/Shaiya/Wld/WldZoneIdentifier.cs new file mode 100644 index 00000000..4d4c7dba --- /dev/null +++ b/src/Parsec/Shaiya/Wld/WldZoneIdentifier.cs @@ -0,0 +1,19 @@ +using Parsec.Serialization; +using Parsec.Shaiya.Core; + +namespace Parsec.Shaiya.Wld; + +public class WldZoneIdentifier : ISerializable +{ + public int Idenfitier { get; set; } + + public void Read(SBinaryReader binaryReader) + { + Idenfitier = binaryReader.ReadInt32(); + } + + public void Write(SBinaryWriter binaryWriter) + { + binaryWriter.Write(Idenfitier); + } +} diff --git a/src/Parsec/Shaiya/Wtr/Wtr.cs b/src/Parsec/Shaiya/Wtr/Wtr.cs index 9c412781..4cd8d04e 100644 --- a/src/Parsec/Shaiya/Wtr/Wtr.cs +++ b/src/Parsec/Shaiya/Wtr/Wtr.cs @@ -1,5 +1,5 @@ -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; @@ -14,28 +14,23 @@ public sealed class Wtr : FileBase /// /// List of texture file names with a fixed lenght of 256 /// - public List Textures { get; } = new(); + public List Textures { get; set; } = new(); public override string Extension => "wtr"; - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Unknown1 = _binaryReader.Read(); - Unknown2 = _binaryReader.Read(); - Unknown3 = _binaryReader.Read(); - - int textureCount = _binaryReader.Read(); - for (int i = 0; i < textureCount; i++) - Textures.Add(new String256(_binaryReader)); + Unknown1 = binaryReader.ReadSingle(); + Unknown2 = binaryReader.ReadUInt32(); + Unknown3 = binaryReader.ReadInt32(); + Textures = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Unknown2.GetBytes()); - buffer.AddRange(Unknown3.GetBytes()); - buffer.AddRange(Textures.GetBytes()); - return buffer; + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + binaryWriter.Write(Unknown3); + binaryWriter.Write(Textures.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Zon/Zon.cs b/src/Parsec/Shaiya/Zon/Zon.cs index 8937fa0c..c51241d6 100644 --- a/src/Parsec/Shaiya/Zon/Zon.cs +++ b/src/Parsec/Shaiya/Zon/Zon.cs @@ -1,5 +1,5 @@ -using Parsec.Common; -using Parsec.Extensions; +using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Zon; @@ -7,28 +7,26 @@ namespace Parsec.Shaiya.Zon; public sealed class Zon : FileBase { public int Format { get; set; } - public List Records { get; } = new(); + + public List Records { get; set; } = new(); public override string Extension => "zon"; - public override void Read() + protected override void Read(SBinaryReader binaryReader) { - Format = _binaryReader.Read(); + Format = binaryReader.ReadInt32(); - int recordCount = _binaryReader.Read(); - for (int i = 0; i < recordCount; i++) - Records.Add(new ZonRecord(Format, _binaryReader)); + // Format is used as the ExtraOption on ZonRecord serialization + binaryReader.SerializationOptions.ExtraOption = Format; + Records = binaryReader.ReadList().ToList(); } - public override IEnumerable GetBytes(Episode episode = Episode.Unknown) + protected override void Write(SBinaryWriter binaryWriter) { - var buffer = new List(); - buffer.AddRange(Format.GetBytes()); - - buffer.AddRange(Records.Count.GetBytes()); - foreach (var record in Records) - buffer.AddRange(record.GetBytes(Format)); + binaryWriter.Write(Format); - return buffer; + // Format is used as the ExtraOption on ZonRecord serialization + binaryWriter.SerializationOptions.ExtraOption = Format; + binaryWriter.Write(Records.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Zon/ZonRecord.cs b/src/Parsec/Shaiya/Zon/ZonRecord.cs index 6aead73f..4533b085 100644 --- a/src/Parsec/Shaiya/Zon/ZonRecord.cs +++ b/src/Parsec/Shaiya/Zon/ZonRecord.cs @@ -1,42 +1,13 @@ -using Newtonsoft.Json; -using Parsec.Extensions; -using Parsec.Serialization; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Zon; -public sealed class ZonRecord : IBinary +public sealed class ZonRecord : ISerializable { - public ZonRecord(int format, SBinaryReader binaryReader) - { - Index = binaryReader.Read(); - P1 = binaryReader.Read(); - - if (format > 2) - P2 = binaryReader.Read(); - - Coordinates1 = new Vector3(binaryReader); - Coordinates2 = new Vector3(binaryReader); - - if (format > 2) - { - Coordinates3 = new Vector3(binaryReader); - Coordinates4 = new Vector3(binaryReader); - Unknown1 = binaryReader.Read(); - Unknown2 = binaryReader.Read(); - } - - MapId = binaryReader.Read(); - Description = binaryReader.ReadString(false); - } - - [JsonConstructor] - public ZonRecord() - { - } - public byte Index { get; set; } + public byte P1 { get; set; } /// @@ -45,6 +16,7 @@ public ZonRecord() public byte P2 { get; set; } public Vector3 Coordinates1 { get; set; } + public Vector3 Coordinates2 { get; set; } /// @@ -67,41 +39,71 @@ public ZonRecord() /// public float Unknown2 { get; set; } - public short MapId { get; set; } + public ushort MapId { get; set; } + public string Description { get; set; } = string.Empty; - /// - /// Expects format (int) as an option - /// - public IEnumerable GetBytes(params object[] options) + public void Read(SBinaryReader binaryReader) { - var buffer = new List(); - var format = 0; - if (options.Length > 0) - format = (int)options[0]; + if (binaryReader.SerializationOptions.ExtraOption is int optionFormat) + { + format = optionFormat; + } + + Index = binaryReader.ReadByte(); + P1 = binaryReader.ReadByte(); + + if (format > 2) + { + P2 = binaryReader.ReadByte(); + } - buffer.Add(Index); - buffer.Add(P1); + Coordinates1 = binaryReader.Read(); + Coordinates2 = binaryReader.Read(); if (format > 2) - buffer.Add(P2); + { + Coordinates3 = binaryReader.Read(); + Coordinates4 = binaryReader.Read(); + Unknown1 = binaryReader.ReadSingle(); + Unknown2 = binaryReader.ReadSingle(); + } + + MapId = binaryReader.ReadUInt16(); + Description = binaryReader.ReadString(); + } - buffer.AddRange(Coordinates1.GetBytes()); - buffer.AddRange(Coordinates2.GetBytes()); + public void Write(SBinaryWriter binaryWriter) + { + var format = 0; + + if (binaryWriter.SerializationOptions.ExtraOption is int optionFormat) + { + format = optionFormat; + } + + binaryWriter.Write(Index); + binaryWriter.Write(P1); if (format > 2) { - buffer.AddRange(Coordinates3.GetBytes()); - buffer.AddRange(Coordinates4.GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); - buffer.AddRange(Unknown1.GetBytes()); + binaryWriter.Write(P2); } - buffer.AddRange(MapId.GetBytes()); - buffer.AddRange(Description.GetLengthPrefixedBytes(false)); + binaryWriter.Write(Coordinates1); + binaryWriter.Write(Coordinates2); + + if (format > 2) + { + binaryWriter.Write(Coordinates3); + binaryWriter.Write(Coordinates4); + binaryWriter.Write(Unknown1); + binaryWriter.Write(Unknown2); + } - return buffer; + binaryWriter.Write(MapId); + binaryWriter.Write(Description); } } diff --git a/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs b/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs index 9d23b166..efb8fa0c 100644 --- a/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs +++ b/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs @@ -8,7 +8,7 @@ public class _3DCTests public void _3DCReadWriteEP5Test() { const string filePath = "Shaiya/3DC/Mob_Fox_01.3DC"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(32, obj.Bones.Count); @@ -19,7 +19,7 @@ public void _3DCReadWriteEP5Test() // Export to json const string jsonPath = "Shaiya/3DC/Mob_Fox_01.3DC.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Bones.Count, objFromJson.Bones.Count); @@ -32,7 +32,7 @@ public void _3DCReadWriteEP5Test() const string newObjPath = "Shaiya/3DC/Mob_Fox_01.new.3DC"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Bones.Count, newObj.Bones.Count); @@ -47,7 +47,7 @@ public void _3DCReadWriteEP5Test() public void _3DCReadWriteEP6Test() { const string filePath = "Shaiya/3DC/pet_maddog.3DC"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(48, obj.Bones.Count); @@ -58,7 +58,7 @@ public void _3DCReadWriteEP6Test() // Export to json const string jsonPath = "Shaiya/3DC/pet_maddog.3DC.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Bones.Count, objFromJson.Bones.Count); @@ -71,7 +71,7 @@ public void _3DCReadWriteEP6Test() const string newObjPath = "Shaiya/3DC/pet_maddog.new.3DC"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Bones.Count, newObj.Bones.Count); @@ -101,16 +101,16 @@ public void _3DCMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DC/{fileName}.json"; string newObjPath = $"Shaiya/3DC/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs b/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs index 1a5f7dd8..64acc74f 100644 --- a/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs +++ b/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs @@ -6,7 +6,7 @@ public class _3DETests public void _3DEReadWriteTest() { const string filePath = "Shaiya/3DE/waterfall04.3DE"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(126, obj.Vertices.Count); @@ -17,7 +17,7 @@ public void _3DEReadWriteTest() // Export to json const string jsonPath = "Shaiya/3DE/waterfall04.3DE.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Vertices.Count, objFromJson.Vertices.Count); @@ -31,7 +31,7 @@ public void _3DEReadWriteTest() const string newObjPath = "Shaiya/3DE/waterfall04.new.3DE"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Vertices.Count, newObj.Vertices.Count); @@ -59,15 +59,15 @@ public void _3DEMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DE/{fileName}.json"; string newObjPath = $"Shaiya/3DE/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs b/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs index 37ede5b1..cfdf2192 100644 --- a/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs +++ b/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs @@ -8,7 +8,7 @@ public class _3DOTests public void _3DOReadWriteTest() { const string filePath = "Shaiya/3DO/F_34_a002.3DO"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(1087, obj.Vertices.Count); @@ -18,7 +18,7 @@ public void _3DOReadWriteTest() // Export to json const string jsonPath = "Shaiya/3DO/F_34_a002.3DO.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Vertices.Count, objFromJson.Vertices.Count); @@ -30,7 +30,7 @@ public void _3DOReadWriteTest() const string newObjPath = "Shaiya/3DO/F_34_a002.new.3DO"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Vertices.Count, newObj.Vertices.Count); @@ -56,15 +56,15 @@ public void _3DOMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DO/{fileName}.json"; string newObjPath = $"Shaiya/3DO/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = Reader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs b/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs index a03c06f8..f046ba78 100644 --- a/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs +++ b/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs @@ -17,15 +17,15 @@ public void AltMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/ALT/{fileName}.json"; string newObjPath = $"Shaiya/ALT/new_{fileName}"; - var alt = Reader.ReadFromFile(filePath); + var alt = Reader.ReadFromFile(filePath); alt.WriteJson(jsonPath); - var altFromJson = Reader.ReadFromJsonFile(jsonPath); + var altFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(alt.GetBytes(), altFromJson.GetBytes()); altFromJson.Write(newObjPath); - var newAlt = Reader.ReadFromFile(newObjPath); + var newAlt = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(alt.GetBytes(), newAlt.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Data/DataTests.cs b/tests/Parsec.Tests/Shaiya/Data/DataTests.cs index bc1a32d9..fe110c23 100644 --- a/tests/Parsec.Tests/Shaiya/Data/DataTests.cs +++ b/tests/Parsec.Tests/Shaiya/Data/DataTests.cs @@ -9,17 +9,6 @@ namespace Parsec.Tests.Shaiya.Data; public class DataTests { - [Fact] - [Description("Tests opening and reading the data file")] - public void DataReadingTest() - { - var dataFromSah = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah"); - var dataFromSaf = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.saf"); - - Assert.Equal(dataFromSah.FileIndex.Count, dataFromSaf.FileIndex.Count); - Assert.Equal(dataFromSah.DirectoryIndex.Count, dataFromSaf.DirectoryIndex.Count); - } - [Fact] [Description("Tests building both data.sah and data.saf from a directory")] public void DataBuildingTest() @@ -36,7 +25,7 @@ public void DataBuildingTest() [Description("Tests extracting a data file fully")] public void DataExtractionTest() { - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah", "Shaiya/Data/sample.saf"); data.ExtractAll("Shaiya/Data/extracted"); foreach (var file in data.FileIndex.Values) @@ -47,7 +36,7 @@ public void DataExtractionTest() [Description("Tests extracting a single folder from a data file")] public void DataFolderExtractionTest() { - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah", "Shaiya/Data/sample.saf"); const string extractionDirectory = "Shaiya/Data/single_folder_extraction"; var folder1 = data.RootDirectory.Directories.FirstOrDefault(); @@ -74,7 +63,7 @@ public void DataFolderExtractionTest() [Description("Tests extracting a single file from a data file")] public void DataFileExtractionTest() { - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/sample.sah", "Shaiya/Data/sample.saf"); const string extractionDirectory = "Shaiya/Data/single_file_extraction"; var file1 = data.FileIndex.Values.FirstOrDefault(); @@ -95,12 +84,12 @@ public void DataFileExtractionTest() public void DataPatchingTest() { // Load data - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/target.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/target.sah", "Shaiya/Data/sample.saf"); var initialFiles = data.FileIndex.Keys.ToList(); // Load patches - var patch = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch.sah"); - var patch2 = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch2.sah"); + var patch = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch.sah", "Shaiya/Data/sample.saf"); + var patch2 = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch2.sah", "Shaiya/Data/sample.saf"); var patchFiles = patch.FileIndex.Keys.Concat(patch2.FileIndex.Keys).ToList(); @@ -129,7 +118,7 @@ public void DataPatchingTest() [Description("Tests deleting files from a delete.lst list")] public void DataDeleteListTest() { - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/delete.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/delete.sah", "Shaiya/Data/sample.saf"); var lstPath = "Shaiya/Data/delete.lst"; data.RemoveFilesFromLst(lstPath); diff --git a/tests/Parsec.Tests/Shaiya/Data/SafTests.cs b/tests/Parsec.Tests/Shaiya/Data/SafTests.cs index 01c4fc45..7b736b91 100644 --- a/tests/Parsec.Tests/Shaiya/Data/SafTests.cs +++ b/tests/Parsec.Tests/Shaiya/Data/SafTests.cs @@ -10,7 +10,7 @@ public class SafTests [InlineData(1000, 3000)] public void SafClearingTest(long offset, int length) { - var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/clearme.sah"); + var data = new Parsec.Shaiya.Data.Data("Shaiya/Data/clearme.sah", "Shaiya/Data/clearme.saf"); var nullData = new byte[length]; data.Saf.ClearBytes(offset, length); diff --git a/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs b/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs index 1f2abf91..48540169 100644 --- a/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs +++ b/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs @@ -6,7 +6,7 @@ public class EftTests public void EftReadWriteTest() { const string filePath = "Shaiya/EFT/Monster.EFT"; - var eft = Reader.ReadFromFile(filePath); + var eft = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Empty(eft.Objects); @@ -17,7 +17,7 @@ public void EftReadWriteTest() // Export to json const string jsonPath = "Shaiya/EFT/Monster.EFT.json"; eft.WriteJson(jsonPath); - var eftFromJson = Reader.ReadFromJsonFile(jsonPath); + var eftFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(eft.Objects.Count, eftFromJson.Objects.Count); @@ -28,7 +28,7 @@ public void EftReadWriteTest() const string newEftPath = "Shaiya/EFT/Monster.new.EFT"; eftFromJson.Write(newEftPath); - var newEft = Reader.ReadFromFile(newEftPath); + var newEft = Reader.ReadFromFile(newEftPath); // Check fields Assert.Equal(eft.Objects.Count, newEft.Objects.Count); @@ -60,19 +60,19 @@ public void EftMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/EFT/{fileName}.json"; string newObjPath = $"Shaiya/EFT/new_{fileName}"; - var eft = Reader.ReadFromFile(filePath); + var eft = Reader.ReadFromFile(filePath); eft.Write(outputPath); eft.WriteJson(jsonPath); - var outputEft = Reader.ReadFromFile(outputPath); - var eftFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputEft = Reader.ReadFromFile(outputPath); + var eftFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(eft.GetBytes(), outputEft.GetBytes()); // Assert.Equal(eft.GetBytes(), eftFromJson.GetBytes()); eftFromJson.Write(newObjPath); - var newEft = Reader.ReadFromFile(newObjPath); + var newEft = Reader.ReadFromFile(newObjPath); // Since EFTs use different encodings on texts, the EFT -> JSON -> EFT conversion will modify the strings, // so a checksum can't be done here, that's why only list lengths will be compared diff --git a/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs b/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs index 1e988bd6..54095885 100644 --- a/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs +++ b/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs @@ -16,15 +16,15 @@ public void ItmMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/ITM/{fileName}.json"; string newObjPath = $"Shaiya/ITM/new_{fileName}"; - var itm = Reader.ReadFromFile(filePath); + var itm = Reader.ReadFromFile(filePath); itm.WriteJson(jsonPath); - var itmFromJson = Reader.ReadFromJsonFile(jsonPath); + var itmFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(itm.GetBytes(), itmFromJson.GetBytes()); itmFromJson.Write(newObjPath); - var newItm = Reader.ReadFromFile(newObjPath); + var newItm = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(itm.GetBytes(), newItm.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs b/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs index 20e40009..2b5f1c0f 100644 --- a/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs +++ b/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs @@ -1,43 +1,43 @@ -using Parsec.Common; - -namespace Parsec.Tests.Shaiya.Item; - -public class ItemTests -{ - [Fact] - public void ItemEp5CsvTest() - { - const string filePath = "Shaiya/Item/ItemEp5.SData"; - const string csvPath = "Shaiya/Item/ItemEp5.SData.csv"; - - var item = Reader.ReadFromFile(filePath, Episode.EP5); - item.WriteCsv(csvPath); - var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP5); - Assert.Equal(item.GetBytes(Episode.EP5), itemFromCsv.GetBytes(Episode.EP5)); - } - - [Fact] - public void ItemEp6CsvTest() - { - const string filePath = "Shaiya/Item/ItemEp6.SData"; - const string csvPath = "Shaiya/Item/ItemEp6.SData.csv"; - - var item = Reader.ReadFromFile(filePath, Episode.EP6); - item.WriteCsv(csvPath); - var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6); - Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); - } - - [Fact] - public void ItemEp6Csv_EncodingTest() - { - const string filePath = "Shaiya/Item/ItemEp6_1251.SData"; - const string csvPath = "Shaiya/Item/ItemEp6_1252.SData.csv"; - - var encoding = TestEncodings.Encoding1251; - var item = Reader.ReadFromFile(filePath, Episode.EP6, encoding); - item.WriteCsv(csvPath, encoding); - var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6, encoding); - Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); - } -} +// using Parsec.Common; +// +// namespace Parsec.Tests.Shaiya.Item; +// +// public class ItemTests +// { +// [Fact] +// public void ItemEp5CsvTest() +// { +// const string filePath = "Shaiya/Item/ItemEp5.SData"; +// const string csvPath = "Shaiya/Item/ItemEp5.SData.csv"; +// +// var item = Reader.ReadFromFile(filePath, Episode.EP5); +// item.WriteCsv(csvPath); +// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP5); +// Assert.Equal(item.GetBytes(Episode.EP5), itemFromCsv.GetBytes(Episode.EP5)); +// } +// +// [Fact] +// public void ItemEp6CsvTest() +// { +// const string filePath = "Shaiya/Item/ItemEp6.SData"; +// const string csvPath = "Shaiya/Item/ItemEp6.SData.csv"; +// +// var item = Reader.ReadFromFile(filePath, Episode.EP6); +// item.WriteCsv(csvPath); +// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6); +// Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); +// } +// +// [Fact] +// public void ItemEp6Csv_EncodingTest() +// { +// const string filePath = "Shaiya/Item/ItemEp6_1251.SData"; +// const string csvPath = "Shaiya/Item/ItemEp6_1252.SData.csv"; +// +// var encoding = TestEncodings.Encoding1251; +// var item = Reader.ReadFromFile(filePath, Episode.EP6, encoding); +// item.WriteCsv(csvPath, encoding); +// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6, encoding); +// Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); +// } +// } diff --git a/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs b/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs index 0995ba21..9c957e11 100644 --- a/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs +++ b/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs @@ -20,15 +20,15 @@ public void MAniMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MAni/{fileName}.json"; string newObjPath = $"Shaiya/MAni/new_{fileName}"; - var mani = Reader.ReadFromFile(filePath); + var mani = Reader.ReadFromFile(filePath); mani.WriteJson(jsonPath); - var maniFromJson = Reader.ReadFromJsonFile(jsonPath); + var maniFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mani.GetBytes(), maniFromJson.GetBytes()); maniFromJson.Write(newObjPath); - var newMani = Reader.ReadFromFile(newObjPath); + var newMani = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mani.GetBytes(), newMani.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs b/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs index f7e9a0c5..3e179685 100644 --- a/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs +++ b/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs @@ -23,19 +23,19 @@ public void MltMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MLT/{fileName}.json"; string newObjPath = $"Shaiya/MLT/new_{fileName}"; - var mlt = Reader.ReadFromFile(filePath); + var mlt = Reader.ReadFromFile(filePath); mlt.Write(outputPath); mlt.WriteJson(jsonPath); - var outputMlt = Reader.ReadFromFile(outputPath); - var mltFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMlt = Reader.ReadFromFile(outputPath); + var mltFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mlt.GetBytes(), outputMlt.GetBytes()); Assert.Equal(mlt.GetBytes(), mltFromJson.GetBytes()); mltFromJson.Write(newObjPath); - var newMlt = Reader.ReadFromFile(newObjPath); + var newMlt = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mlt.GetBytes(), newMlt.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs b/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs index 18333f1f..79199147 100644 --- a/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs +++ b/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs @@ -26,19 +26,19 @@ public void MlxMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MLX/{fileName}.json"; string newObjPath = $"Shaiya/MLX/new_{fileName}"; - var mlx = Reader.ReadFromFile(filePath); + var mlx = Reader.ReadFromFile(filePath); mlx.Write(outputPath); mlx.WriteJson(jsonPath); - var outputMlx = Reader.ReadFromFile(outputPath); - var mlxFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMlx = Reader.ReadFromFile(outputPath); + var mlxFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mlx.GetBytes(), outputMlx.GetBytes()); Assert.Equal(mlx.GetBytes(), mlxFromJson.GetBytes()); mlxFromJson.Write(newObjPath); - var newMlx = Reader.ReadFromFile(newObjPath); + var newMlx = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mlx.GetBytes(), newMlx.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MON/MonTests.cs b/tests/Parsec.Tests/Shaiya/MON/MonTests.cs index 84e01cb3..6a8fda74 100644 --- a/tests/Parsec.Tests/Shaiya/MON/MonTests.cs +++ b/tests/Parsec.Tests/Shaiya/MON/MonTests.cs @@ -17,20 +17,20 @@ public void MonMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MON/{fileName}.json"; string newObjPath = $"Shaiya/MON/new_{fileName}"; - var mon = Reader.ReadFromFile(filePath); + var mon = Reader.ReadFromFile(filePath); mon.Write(outputPath); mon.WriteJson(jsonPath); - var outputMon = Reader.ReadFromFile(outputPath); - var monFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMon = Reader.ReadFromFile(outputPath); + var monFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mon.GetBytes(), outputMon.GetBytes()); Assert.Equal(mon.GetBytes(), monFromJson.GetBytes()); monFromJson.Write(newObjPath); - var newMon = Reader.ReadFromFile(newObjPath); + var newMon = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mon.GetBytes(), newMon.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/NpcQuest/NpcQuestTests.cs b/tests/Parsec.Tests/Shaiya/NpcQuest/NpcQuestTests.cs index 0a132610..38ffb2ef 100644 --- a/tests/Parsec.Tests/Shaiya/NpcQuest/NpcQuestTests.cs +++ b/tests/Parsec.Tests/Shaiya/NpcQuest/NpcQuestTests.cs @@ -1,61 +1,61 @@ -using System.Linq; -using Parsec.Common; - -namespace Parsec.Tests.Shaiya.NpcQuest; - -public class NpcQuestTests -{ - [Fact] - public void NpcQuestEp5Test() - { - const string filePath = "Shaiya/NpcQuest/NpcQuestEp5.SData"; - const string outputPath = "Shaiya/NpcQuest/NpcQuestEp5.output.SData"; - const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp5.SData.json"; - var npcQuest = Reader.ReadFromFile(filePath, Episode.EP5); - npcQuest.Write(outputPath, Episode.EP5); - npcQuest.WriteJson(jsonPath); - - var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP5); - var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); - - var expected = npcQuest.GetBytes().ToList(); - Assert.Equal(expected, outputNpcQuest.GetBytes()); - Assert.Equal(expected, jsonNpcQuest.GetBytes()); - } - - [Fact] - public void NpcQuestEp6Test() - { - const string filePath = "Shaiya/NpcQuest/NpcQuestEp6.SData"; - const string outputPath = "Shaiya/NpcQuest/NpcQuestEp6.output.SData"; - const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp6.SData.json"; - var npcQuest = Reader.ReadFromFile(filePath, Episode.EP6); - npcQuest.Write(outputPath, Episode.EP6); - npcQuest.WriteJson(jsonPath); - - var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP6); - var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); - - var expected = npcQuest.GetBytes().ToList(); - Assert.Equal(expected, outputNpcQuest.GetBytes()); - Assert.Equal(expected, jsonNpcQuest.GetBytes()); - } - - [Fact] - public void NpcQuestEp8Test() - { - const string filePath = "Shaiya/NpcQuest/NpcQuestEp8.SData"; - const string outputPath = "Shaiya/NpcQuest/NpcQuestEp8.output.SData"; - const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp8.SData.json"; - var npcQuest = Reader.ReadFromFile(filePath, Episode.EP8); - npcQuest.Write(outputPath, Episode.EP8); - npcQuest.WriteJson(jsonPath); - - var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP8); - var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); - - var expected = npcQuest.GetBytes().ToList(); - Assert.Equal(expected, outputNpcQuest.GetBytes()); - Assert.Equal(expected, jsonNpcQuest.GetBytes()); - } -} +// using System.Linq; +// using Parsec.Common; +// +// namespace Parsec.Tests.Shaiya.NpcQuest; +// +// public class NpcQuestTests +// { +// [Fact] +// public void NpcQuestEp5Test() +// { +// const string filePath = "Shaiya/NpcQuest/NpcQuestEp5.SData"; +// const string outputPath = "Shaiya/NpcQuest/NpcQuestEp5.output.SData"; +// const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp5.SData.json"; +// var npcQuest = Reader.ReadFromFile(filePath, Episode.EP5); +// npcQuest.Write(outputPath, Episode.EP5); +// npcQuest.WriteJson(jsonPath); +// +// var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP5); +// var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); +// +// var expected = npcQuest.GetBytes().ToList(); +// Assert.Equal(expected, outputNpcQuest.GetBytes()); +// Assert.Equal(expected, jsonNpcQuest.GetBytes()); +// } +// +// [Fact] +// public void NpcQuestEp6Test() +// { +// const string filePath = "Shaiya/NpcQuest/NpcQuestEp6.SData"; +// const string outputPath = "Shaiya/NpcQuest/NpcQuestEp6.output.SData"; +// const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp6.SData.json"; +// var npcQuest = Reader.ReadFromFile(filePath, Episode.EP6); +// npcQuest.Write(outputPath, Episode.EP6); +// npcQuest.WriteJson(jsonPath); +// +// var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP6); +// var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); +// +// var expected = npcQuest.GetBytes().ToList(); +// Assert.Equal(expected, outputNpcQuest.GetBytes()); +// Assert.Equal(expected, jsonNpcQuest.GetBytes()); +// } +// +// [Fact] +// public void NpcQuestEp8Test() +// { +// const string filePath = "Shaiya/NpcQuest/NpcQuestEp8.SData"; +// const string outputPath = "Shaiya/NpcQuest/NpcQuestEp8.output.SData"; +// const string jsonPath = "Shaiya/NpcQuest/NpcQuestEp8.SData.json"; +// var npcQuest = Reader.ReadFromFile(filePath, Episode.EP8); +// npcQuest.Write(outputPath, Episode.EP8); +// npcQuest.WriteJson(jsonPath); +// +// var outputNpcQuest = Reader.ReadFromFile(outputPath, Episode.EP8); +// var jsonNpcQuest = Reader.ReadFromJsonFile(jsonPath); +// +// var expected = npcQuest.GetBytes().ToList(); +// Assert.Equal(expected, outputNpcQuest.GetBytes()); +// Assert.Equal(expected, jsonNpcQuest.GetBytes()); +// } +// } diff --git a/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs b/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs index 35161a98..5b7d13c1 100644 --- a/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs +++ b/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs @@ -1,81 +1,81 @@ -using System.Linq; -using Parsec.Common; -using Parsec.Shaiya.NpcSkill; - -namespace Parsec.Tests.Shaiya.NpcSkill; - -public class NpcSkillTests -{ - [Theory] - [InlineData("NpcSkillEp5", Episode.EP5)] - [InlineData("NpcSkillEp6", Episode.EP6)] - public void NpcSkillTest(string fileName, Episode episode) - { - string filePath = $"Shaiya/NpcSkill/{fileName}.SData"; - string outputPath = $"Shaiya/NpcSkill/output_{fileName}.SData"; - string jsonPath = $"Shaiya/NpcSkill/{fileName}.SData.json"; - string csvPath = $"Shaiya/NpcSkill/{fileName}.SData.csv"; - - var npcSkill = Reader.ReadFromFile(filePath, episode); - npcSkill.Write(outputPath, episode); - npcSkill.WriteJson(jsonPath); - npcSkill.WriteCsv(csvPath); - - var outputSkill = Reader.ReadFromFile(outputPath, episode); - var jsonSkill = Reader.ReadFromJsonFile(jsonPath); - var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); - - var expected = npcSkill.GetBytes().ToList(); - Assert.Equal(expected, outputSkill.GetBytes()); - Assert.Equal(expected, jsonSkill.GetBytes()); - Assert.Equal(expected, csvSkill.GetBytes()); - } - - [Fact] - public void DbSkillTest() - { - const string filePath = "Shaiya/NpcSkill/DBNpcSkillData.SData"; - const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillData.SData"; - const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.json"; - const string csvPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.csv"; - - var npcSkill = Reader.ReadFromFile(filePath); - npcSkill.Write(outputPath); - npcSkill.WriteJson(jsonPath); - npcSkill.WriteCsv(csvPath); - - var outputNpcSkill = Reader.ReadFromFile(outputPath); - var jsonNpcSkill = Reader.ReadFromJsonFile(jsonPath); - var csvNpcSkill = DBNpcSkillData.ReadFromCsv(csvPath); - - var expected = npcSkill.GetBytes().ToList(); - Assert.Equal(expected, outputNpcSkill.GetBytes()); - Assert.Equal(expected, jsonNpcSkill.GetBytes()); - // For the csv check, skip the 128-byte header, which gets lost in the process - Assert.Equal(expected.Skip(128), csvNpcSkill.GetBytes().Skip(128)); - } - - [Fact] - public void DbSkillTextTest() - { - const string filePath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData"; - const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillText_USA.SData"; - const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.json"; - const string csvPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.csv"; - - var npcSkillText = Reader.ReadFromFile(filePath); - npcSkillText.Write(outputPath); - npcSkillText.WriteJson(jsonPath); - npcSkillText.WriteCsv(csvPath); - - var outputNpcSkillText = Reader.ReadFromFile(outputPath); - var jsonNpcSkillText = Reader.ReadFromJsonFile(jsonPath); - var csvNpcSkillText = DBNpcSkillText.ReadFromCsv(csvPath); - - var expected = npcSkillText.GetBytes().ToList(); - Assert.Equal(expected, outputNpcSkillText.GetBytes()); - Assert.Equal(expected, jsonNpcSkillText.GetBytes()); - // For the csv check, skip the 128-byte header, which gets lost in the process - Assert.Equal(expected.Skip(128), csvNpcSkillText.GetBytes().Skip(128)); - } -} +// using System.Linq; +// using Parsec.Common; +// using Parsec.Shaiya.NpcSkill; +// +// namespace Parsec.Tests.Shaiya.NpcSkill; +// +// public class NpcSkillTests +// { +// [Theory] +// [InlineData("NpcSkillEp5", Episode.EP5)] +// [InlineData("NpcSkillEp6", Episode.EP6)] +// public void NpcSkillTest(string fileName, Episode episode) +// { +// string filePath = $"Shaiya/NpcSkill/{fileName}.SData"; +// string outputPath = $"Shaiya/NpcSkill/output_{fileName}.SData"; +// string jsonPath = $"Shaiya/NpcSkill/{fileName}.SData.json"; +// string csvPath = $"Shaiya/NpcSkill/{fileName}.SData.csv"; +// +// var npcSkill = Reader.ReadFromFile(filePath, episode); +// npcSkill.Write(outputPath, episode); +// npcSkill.WriteJson(jsonPath); +// npcSkill.WriteCsv(csvPath); +// +// var outputSkill = Reader.ReadFromFile(outputPath, episode); +// var jsonSkill = Reader.ReadFromJsonFile(jsonPath); +// var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); +// +// var expected = npcSkill.GetBytes().ToList(); +// Assert.Equal(expected, outputSkill.GetBytes()); +// Assert.Equal(expected, jsonSkill.GetBytes()); +// Assert.Equal(expected, csvSkill.GetBytes()); +// } +// +// [Fact] +// public void DbSkillTest() +// { +// const string filePath = "Shaiya/NpcSkill/DBNpcSkillData.SData"; +// const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillData.SData"; +// const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.json"; +// const string csvPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.csv"; +// +// var npcSkill = Reader.ReadFromFile(filePath); +// npcSkill.Write(outputPath); +// npcSkill.WriteJson(jsonPath); +// npcSkill.WriteCsv(csvPath); +// +// var outputNpcSkill = Reader.ReadFromFile(outputPath); +// var jsonNpcSkill = Reader.ReadFromJsonFile(jsonPath); +// var csvNpcSkill = DBNpcSkillData.ReadFromCsv(csvPath); +// +// var expected = npcSkill.GetBytes().ToList(); +// Assert.Equal(expected, outputNpcSkill.GetBytes()); +// Assert.Equal(expected, jsonNpcSkill.GetBytes()); +// // For the csv check, skip the 128-byte header, which gets lost in the process +// Assert.Equal(expected.Skip(128), csvNpcSkill.GetBytes().Skip(128)); +// } +// +// [Fact] +// public void DbSkillTextTest() +// { +// const string filePath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData"; +// const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillText_USA.SData"; +// const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.json"; +// const string csvPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.csv"; +// +// var npcSkillText = Reader.ReadFromFile(filePath); +// npcSkillText.Write(outputPath); +// npcSkillText.WriteJson(jsonPath); +// npcSkillText.WriteCsv(csvPath); +// +// var outputNpcSkillText = Reader.ReadFromFile(outputPath); +// var jsonNpcSkillText = Reader.ReadFromJsonFile(jsonPath); +// var csvNpcSkillText = DBNpcSkillText.ReadFromCsv(csvPath); +// +// var expected = npcSkillText.GetBytes().ToList(); +// Assert.Equal(expected, outputNpcSkillText.GetBytes()); +// Assert.Equal(expected, jsonNpcSkillText.GetBytes()); +// // For the csv check, skip the 128-byte header, which gets lost in the process +// Assert.Equal(expected.Skip(128), csvNpcSkillText.GetBytes().Skip(128)); +// } +// } diff --git a/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs b/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs index b0cf31a7..50ed3141 100644 --- a/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs +++ b/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs @@ -6,7 +6,7 @@ public class SmodTests public void SmodReadWriteTest() { const string filePath = "Shaiya/SMOD/a2_Elf_House_01.SMOD"; - var smod = Reader.ReadFromFile(filePath); + var smod = Reader.ReadFromFile(filePath); // Check original EFT values Assert.Single(smod.CollisionObjects); @@ -15,7 +15,7 @@ public void SmodReadWriteTest() // Export to json const string jsonPath = "Shaiya/SMOD/a2_Elf_House_01.SMOD.json"; smod.WriteJson(jsonPath); - var smodFromJson = Reader.ReadFromJsonFile(jsonPath); + var smodFromJson = Reader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(smod.CollisionObjects.Count, smodFromJson.CollisionObjects.Count); @@ -27,7 +27,7 @@ public void SmodReadWriteTest() const string newObjPath = "Shaiya/SMOD/a2_Elf_House_01.new.SMOD"; smodFromJson.Write(newObjPath); - var newSmod = Reader.ReadFromFile(newObjPath); + var newSmod = Reader.ReadFromFile(newObjPath); // Check fields Assert.Equal(smod.CollisionObjects.Count, newSmod.CollisionObjects.Count); @@ -54,15 +54,15 @@ public void SmodMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/SMOD/{fileName}.json"; string newObjPath = $"Shaiya/SMOD/new_{fileName}"; - var smod = Reader.ReadFromFile(filePath); + var smod = Reader.ReadFromFile(filePath); smod.WriteJson(jsonPath); - var smodFromJson = Reader.ReadFromJsonFile(jsonPath); + var smodFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(smod.GetBytes(), smodFromJson.GetBytes()); smodFromJson.Write(newObjPath); - var newSmod = Reader.ReadFromFile(newObjPath); + var newSmod = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(smod.GetBytes(), newSmod.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs b/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs index 5dd1561f..fb1cb055 100644 --- a/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs +++ b/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs @@ -1,81 +1,81 @@ -using System.Linq; -using Parsec.Common; -using Parsec.Shaiya.Skill; - -namespace Parsec.Tests.Shaiya.Skill; - -public class SkillTests -{ - [Theory] - [InlineData("SkillEp5", Episode.EP5)] - [InlineData("SkillEp6", Episode.EP6)] - public void SkillTest(string fileName, Episode episode) - { - string filePath = $"Shaiya/Skill/{fileName}.SData"; - string outputPath = $"Shaiya/Skill/output_{fileName}.SData"; - string jsonPath = $"Shaiya/Skill/{fileName}.SData.json"; - string csvPath = $"Shaiya/Skill/{fileName}.SData.csv"; - - var skill = Reader.ReadFromFile(filePath, episode); - skill.Write(outputPath, episode); - skill.WriteJson(jsonPath); - skill.WriteCsv(csvPath); - - var outputSkill = Reader.ReadFromFile(outputPath, episode); - var jsonSkill = Reader.ReadFromJsonFile(jsonPath); - var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); - - var expected = skill.GetBytes().ToList(); - Assert.Equal(expected, outputSkill.GetBytes()); - Assert.Equal(expected, jsonSkill.GetBytes()); - Assert.Equal(expected, csvSkill.GetBytes()); - } - - [Fact] - public void DbSkillTest() - { - const string filePath = "Shaiya/Skill/DBSkillData.SData"; - const string outputPath = "Shaiya/Skill/output_DBSkillData.SData"; - const string jsonPath = "Shaiya/Skill/DBSkillData.SData.json"; - const string csvPath = "Shaiya/Skill/DBSkillData.SData.csv"; - - var dbSkill = Reader.ReadFromFile(filePath); - dbSkill.Write(outputPath); - dbSkill.WriteJson(jsonPath); - dbSkill.WriteCsv(csvPath); - - var outputDbSkill = Reader.ReadFromFile(outputPath); - var jsonDbSkill = Reader.ReadFromJsonFile(jsonPath); - var csvSkill = DBSkillData.ReadFromCsv(csvPath); - - var expected = dbSkill.GetBytes().ToList(); - Assert.Equal(expected, outputDbSkill.GetBytes()); - Assert.Equal(expected, jsonDbSkill.GetBytes()); - // For the csv check, skip the 128-byte header, which gets lost in the process - Assert.Equal(expected.Skip(128), csvSkill.GetBytes().Skip(128)); - } - - [Fact] - public void DbSkillTextTest() - { - const string filePath = "Shaiya/Skill/DBSkillText_USA.SData"; - const string outputPath = "Shaiya/Skill/output_DBSkillText_USA.SData"; - const string jsonPath = "Shaiya/Skill/DBSkillText_USA.SData.json"; - const string csvPath = "Shaiya/Skill/DBSkillText_USA.SData.csv"; - - var skillText = Reader.ReadFromFile(filePath); - skillText.Write(outputPath); - skillText.WriteJson(jsonPath); - skillText.WriteCsv(csvPath); - - var outputSkillText = Reader.ReadFromFile(outputPath); - var jsonSkillText = Reader.ReadFromJsonFile(jsonPath); - var csvSkillText = DBSkillText.ReadFromCsv(csvPath); - - var expected = skillText.GetBytes().ToList(); - Assert.Equal(expected, outputSkillText.GetBytes()); - Assert.Equal(expected, jsonSkillText.GetBytes()); - // For the csv check, skip the 128-byte header, which gets lost in the process - Assert.Equal(expected.Skip(128), csvSkillText.GetBytes().Skip(128)); - } -} +// using System.Linq; +// using Parsec.Common; +// using Parsec.Shaiya.Skill; +// +// namespace Parsec.Tests.Shaiya.Skill; +// +// public class SkillTests +// { +// [Theory] +// [InlineData("SkillEp5", Episode.EP5)] +// [InlineData("SkillEp6", Episode.EP6)] +// public void SkillTest(string fileName, Episode episode) +// { +// string filePath = $"Shaiya/Skill/{fileName}.SData"; +// string outputPath = $"Shaiya/Skill/output_{fileName}.SData"; +// string jsonPath = $"Shaiya/Skill/{fileName}.SData.json"; +// string csvPath = $"Shaiya/Skill/{fileName}.SData.csv"; +// +// var skill = Reader.ReadFromFile(filePath, episode); +// skill.Write(outputPath, episode); +// skill.WriteJson(jsonPath); +// skill.WriteCsv(csvPath); +// +// var outputSkill = Reader.ReadFromFile(outputPath, episode); +// var jsonSkill = Reader.ReadFromJsonFile(jsonPath); +// var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); +// +// var expected = skill.GetBytes().ToList(); +// Assert.Equal(expected, outputSkill.GetBytes()); +// Assert.Equal(expected, jsonSkill.GetBytes()); +// Assert.Equal(expected, csvSkill.GetBytes()); +// } +// +// [Fact] +// public void DbSkillTest() +// { +// const string filePath = "Shaiya/Skill/DBSkillData.SData"; +// const string outputPath = "Shaiya/Skill/output_DBSkillData.SData"; +// const string jsonPath = "Shaiya/Skill/DBSkillData.SData.json"; +// const string csvPath = "Shaiya/Skill/DBSkillData.SData.csv"; +// +// var dbSkill = Reader.ReadFromFile(filePath); +// dbSkill.Write(outputPath); +// dbSkill.WriteJson(jsonPath); +// dbSkill.WriteCsv(csvPath); +// +// var outputDbSkill = Reader.ReadFromFile(outputPath); +// var jsonDbSkill = Reader.ReadFromJsonFile(jsonPath); +// var csvSkill = DBSkillData.ReadFromCsv(csvPath); +// +// var expected = dbSkill.GetBytes().ToList(); +// Assert.Equal(expected, outputDbSkill.GetBytes()); +// Assert.Equal(expected, jsonDbSkill.GetBytes()); +// // For the csv check, skip the 128-byte header, which gets lost in the process +// Assert.Equal(expected.Skip(128), csvSkill.GetBytes().Skip(128)); +// } +// +// [Fact] +// public void DbSkillTextTest() +// { +// const string filePath = "Shaiya/Skill/DBSkillText_USA.SData"; +// const string outputPath = "Shaiya/Skill/output_DBSkillText_USA.SData"; +// const string jsonPath = "Shaiya/Skill/DBSkillText_USA.SData.json"; +// const string csvPath = "Shaiya/Skill/DBSkillText_USA.SData.csv"; +// +// var skillText = Reader.ReadFromFile(filePath); +// skillText.Write(outputPath); +// skillText.WriteJson(jsonPath); +// skillText.WriteCsv(csvPath); +// +// var outputSkillText = Reader.ReadFromFile(outputPath); +// var jsonSkillText = Reader.ReadFromJsonFile(jsonPath); +// var csvSkillText = DBSkillText.ReadFromCsv(csvPath); +// +// var expected = skillText.GetBytes().ToList(); +// Assert.Equal(expected, outputSkillText.GetBytes()); +// Assert.Equal(expected, jsonSkillText.GetBytes()); +// // For the csv check, skip the 128-byte header, which gets lost in the process +// Assert.Equal(expected.Skip(128), csvSkillText.GetBytes().Skip(128)); +// } +// } diff --git a/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs b/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs index 8d05e053..e64e697d 100644 --- a/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs +++ b/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs @@ -18,15 +18,15 @@ public void VaniMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/VAni/{fileName}.json"; string newObjPath = $"Shaiya/VAni/new_{fileName}"; - var vani = Reader.ReadFromFile(filePath); + var vani = Reader.ReadFromFile(filePath); vani.WriteJson(jsonPath); - var vaniFromJson = Reader.ReadFromJsonFile(jsonPath); + var vaniFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(vani.GetBytes(), vaniFromJson.GetBytes()); vaniFromJson.Write(newObjPath); - var newVani = Reader.ReadFromFile(newObjPath); + var newVani = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(vani.GetBytes(), newVani.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs index 7237ebe2..909c56ed 100644 --- a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs +++ b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs @@ -16,19 +16,19 @@ public void WldMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/WLD/{fileName}.json"; string newObjPath = $"Shaiya/WLD/new_{fileName}"; - var wld = Reader.ReadFromFile(filePath); + var wld = Reader.ReadFromFile(filePath); wld.Write(outputPath); wld.WriteJson(jsonPath); - var outputWld = Reader.ReadFromFile(outputPath); - var wldFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputWld = Reader.ReadFromFile(outputPath); + var wldFromJson = Reader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(wld.GetBytes(), outputWld.GetBytes()); Assert.Equal(wld.GetBytes(), wldFromJson.GetBytes()); wldFromJson.Write(newObjPath); - var newZon = Reader.ReadFromFile(newObjPath); + var newZon = Reader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(wld.GetBytes(), newZon.GetBytes()); From 0f3b6a4660c46aff82e3e29792ebd6285ba3f2e0 Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 16:16:22 -0300 Subject: [PATCH 07/18] general refactor bug fix --- samples/Data/Program.cs | 3 +- samples/Files/Program.cs | 29 +--- samples/SData/Program.cs | 5 +- src/Parsec/Cryptography/SeedHeader.cs | 6 +- src/Parsec/{Reader.cs => ParsecReader.cs} | 2 +- src/Parsec/Serialization/SBinaryReader.cs | 11 +- src/Parsec/Serialization/SBinaryWriter.cs | 20 +-- src/Parsec/Shaiya/3de/_3de.cs | 2 +- src/Parsec/Shaiya/3do/_3do.cs | 2 +- src/Parsec/Shaiya/Alt/Alt.cs | 2 +- src/Parsec/Shaiya/Alt/AltAnimation.cs | 2 +- src/Parsec/Shaiya/Ani/Ani.cs | 2 +- src/Parsec/Shaiya/Cash/CashProduct.cs | 8 +- .../Shaiya/Cash/DBItemSellTextRecord.cs | 4 +- src/Parsec/Shaiya/Common/String256.cs | 2 +- src/Parsec/Shaiya/Core/FileBase.cs | 54 +++--- src/Parsec/Shaiya/Data/Data.cs | 2 +- src/Parsec/Shaiya/Data/SDirectory.cs | 4 +- src/Parsec/Shaiya/EFT/Eft.cs | 8 +- src/Parsec/Shaiya/EFT/EftEffect.cs | 17 +- src/Parsec/Shaiya/EFT/EftEffectMesh.cs | 2 +- src/Parsec/Shaiya/EFT/EftEffectSequence.cs | 2 +- src/Parsec/Shaiya/GuildHouse/GuildHouse.cs | 4 +- src/Parsec/Shaiya/Item/DBItemTextRecord.cs | 4 +- src/Parsec/Shaiya/Item/Item.cs | 108 ++++++------ .../{ItemGroupRecord.cs => ItemDefinition.cs} | 33 ++-- src/Parsec/Shaiya/Item/ItemGroup.cs | 8 +- src/Parsec/Shaiya/Itm/Itm.cs | 2 +- .../Shaiya/KillStatus/KillStatusRecord.cs | 2 +- src/Parsec/Shaiya/Mlt/Mlt.cs | 12 +- src/Parsec/Shaiya/Mlx/Mlx.cs | 8 +- src/Parsec/Shaiya/Mon/Mon.cs | 2 +- .../Shaiya/Monster/DBMonsterTextRecord.cs | 2 +- src/Parsec/Shaiya/Monster/MonsterRecord.cs | 19 ++ src/Parsec/Shaiya/NpcQuest/BaseNpc.cs | 4 +- .../Shaiya/NpcQuest/GateKeeperQuestTran.cs | 10 +- src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs | 4 +- src/Parsec/Shaiya/NpcQuest/Quest.cs | 22 +-- .../Shaiya/NpcQuest/QuestTranslation.cs | 24 +-- .../Shaiya/NpcSkill/DBNpcSkillTextRecord.cs | 4 +- src/Parsec/Shaiya/SData/BinarySData.cs | 19 +- src/Parsec/Shaiya/SData/BinarySDataField.cs | 7 +- src/Parsec/Shaiya/SData/SData.cs | 52 +++--- src/Parsec/Shaiya/Seff/SeffEffect.cs | 2 +- src/Parsec/Shaiya/SetItem/SetItemRecord.cs | 4 +- src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs | 4 +- src/Parsec/Shaiya/Skill/Skill.cs | 40 ++++- .../{SkillRecord.cs => SkillDefinition.cs} | 16 +- src/Parsec/Shaiya/Skill/SkillGroup.cs | 17 +- src/Parsec/Shaiya/Svmap/Svmap.cs | 2 +- src/Parsec/Shaiya/Svmap/SvmapNpc.cs | 6 +- src/Parsec/Shaiya/VAni/Vani.cs | 16 +- src/Parsec/Shaiya/VAni/VaniMesh.cs | 11 +- src/Parsec/Shaiya/VAni/VaniVertex.cs | 18 +- src/Parsec/Shaiya/Wld/Wld.cs | 24 +-- src/Parsec/Shaiya/Wtr/Wtr.cs | 2 + tests/Parsec.Tests/FileHash.cs | 5 + tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs | 18 +- tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs | 12 +- tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs | 12 +- tests/Parsec.Tests/Shaiya/ALT/AltTests.cs | 6 +- tests/Parsec.Tests/Shaiya/ANI/AniTests.cs | 6 +- tests/Parsec.Tests/Shaiya/Cash/CashTests.cs | 4 +- tests/Parsec.Tests/Shaiya/Data/DataTests.cs | 4 +- tests/Parsec.Tests/Shaiya/Data/SahTests.cs | 9 +- tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs | 22 +-- .../Shaiya/GuildHouse/GuildHouseTests.cs | 6 +- tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs | 6 +- tests/Parsec.Tests/Shaiya/Item/ItemTests.cs | 87 +++++----- .../Shaiya/KillStatus/KillStatusTests.cs | 6 +- tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs | 6 +- tests/Parsec.Tests/Shaiya/MLT/MltTests.cs | 8 +- tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs | 8 +- tests/Parsec.Tests/Shaiya/MON/MonTests.cs | 8 +- .../Shaiya/Monster/MonsterTests.cs | 4 +- .../Shaiya/SData/BinarySDataTests.cs | 2 +- tests/Parsec.Tests/Shaiya/SData/SDataTests.cs | 20 ++- tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs | 12 +- tests/Parsec.Tests/Shaiya/Seff/SeffTests.cs | 8 +- .../Shaiya/SetItem/SetItemTests.cs | 8 +- tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs | 162 +++++++++--------- tests/Parsec.Tests/Shaiya/Svmap/SvmapTests.cs | 14 +- tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs | 6 +- tests/Parsec.Tests/Shaiya/WLD/WldTests.cs | 8 +- tests/Parsec.Tests/Shaiya/Wtr/WtrTests.cs | 6 +- tests/Parsec.Tests/Shaiya/Zon/ZonTests.cs | 8 +- 86 files changed, 622 insertions(+), 570 deletions(-) rename src/Parsec/{Reader.cs => ParsecReader.cs} (99%) rename src/Parsec/Shaiya/Item/{ItemGroupRecord.cs => ItemDefinition.cs} (95%) rename src/Parsec/Shaiya/Skill/{SkillRecord.cs => SkillDefinition.cs} (97%) diff --git a/samples/Data/Program.cs b/samples/Data/Program.cs index e96c1735..3c47392d 100644 --- a/samples/Data/Program.cs +++ b/samples/Data/Program.cs @@ -1,5 +1,4 @@ using System; -using Parsec; using Parsec.Shaiya.Data; using Parsec.Shaiya.Svmap; @@ -21,7 +20,7 @@ private static void Main(string[] args) data.Extract(file, "extracted"); // Read and parse the file's content directly from the saf file - Svmap svmap = Reader.ReadFromBuffer(file.Name, data.GetFileBuffer(file)); + Svmap svmap = Parsec.ParsecReader.ReadFromBuffer(file.Name, data.GetFileBuffer(file)); Console.WriteLine($"File: {svmap.FileName}"); Console.WriteLine($"MapSize: {svmap.MapSize}"); diff --git a/samples/Files/Program.cs b/samples/Files/Program.cs index 92cb6cd8..b6be05dc 100644 --- a/samples/Files/Program.cs +++ b/samples/Files/Program.cs @@ -1,6 +1,6 @@ -using System; -using Parsec; -using Parsec.Shaiya.Svmap; +using Parsec; +using Parsec.Shaiya.SData; +using Parsec.Shaiya.Skill; namespace Sample.Files; @@ -8,27 +8,12 @@ internal static class Program { private static void Main(string[] args) { - // This sample shows how you can convert a shaiya file format (in this case svmap) into json to be able to - // edit its properties as plain text, and then, convert it back to its original format + SData.DecryptFile("/home/matias/Desktop/DBSkillData.SData", "/home/matias/Desktop/DBSkillData.dec.SData"); - // Step 1: Read a svmap from a file - Svmap svmap = Reader.ReadFromFile("2.svmap"); + var skillData = ParsecReader.ReadFromFile("/home/matias/Desktop/DBSkillData.dec.SData"); - // You can go through and modify its properties here too - foreach (SvmapNpc npc in svmap.Npcs) - { - Console.WriteLine($"NpcId: {npc.NpcId}, Type: {npc.Type}"); - } + skillData.Write("/home/matias/Desktop/DBSkillData.dec.new.SData"); - // Step 2: Export svmap as JSON - svmap.WriteJson("2.svmap.json"); - - // Step 3: Modify the json file in any text editor - - // Step 4: Read svmap from the modified JSON file - Svmap svmapFromJson = Reader.ReadFromJsonFile("2.svmap.json"); - - // Step 5: Write the edited instance as .svmap - svmapFromJson.Write("2.edited.svmap"); + var newSkillData = ParsecReader.ReadFromFile("/home/matias/Desktop/DBSkillData.dec.new.SData"); } } diff --git a/samples/SData/Program.cs b/samples/SData/Program.cs index 01e71f0e..d5880800 100644 --- a/samples/SData/Program.cs +++ b/samples/SData/Program.cs @@ -1,5 +1,4 @@ -using Parsec; -using Parsec.Common; +using Parsec.Common; using Parsec.Shaiya.Item; namespace Sample.SData; @@ -12,7 +11,7 @@ private static void Main(string[] args) Parsec.Shaiya.SData.SData.DecryptFile("ItemEP6.SData", "ItemEP6.Decrypted.SData"); // Read SData from file - Item item = Reader.ReadFromFile("ItemEP6.SData", Episode.EP6); + Item item = Parsec.ParsecReader.ReadFromFile("ItemEP6.SData", Episode.EP6); // or.. export it as csv item.WriteCsv("Item.csv"); diff --git a/src/Parsec/Cryptography/SeedHeader.cs b/src/Parsec/Cryptography/SeedHeader.cs index f7a4b860..79da4e88 100644 --- a/src/Parsec/Cryptography/SeedHeader.cs +++ b/src/Parsec/Cryptography/SeedHeader.cs @@ -18,7 +18,7 @@ public SeedHeader(byte[] data) { Signature = Encoding.ASCII.GetString(data.SubArray(0, 40)); - int currentOffset = 40; + var currentOffset = 40; Checksum = BitConverter.ToUInt32(data, currentOffset); currentOffset += 4; @@ -33,7 +33,7 @@ public SeedHeader(byte[] data) currentOffset += 4; // Depending on the header type, the padding is 12 or 16 bytes (based on the existence of the 4 empty bytes) - int paddingLength = currentOffset == 48 ? 16 : 12; + var paddingLength = currentOffset == 48 ? 16 : 12; Padding = data.SubArray(currentOffset, paddingLength); } @@ -63,7 +63,7 @@ public IEnumerable GetBytes(SDataVersion version) buffer.AddRange(BitConverter.GetBytes(Checksum)); buffer.AddRange(BitConverter.GetBytes(RealSize)); - buffer.AddRange(Padding); + buffer.AddRange(version == SDataVersion.Binary ? new byte[12] : new byte[16]); return buffer; } } diff --git a/src/Parsec/Reader.cs b/src/Parsec/ParsecReader.cs similarity index 99% rename from src/Parsec/Reader.cs rename to src/Parsec/ParsecReader.cs index 2340c43a..5e172fd1 100644 --- a/src/Parsec/Reader.cs +++ b/src/Parsec/ParsecReader.cs @@ -10,7 +10,7 @@ namespace Parsec; -public static class Reader +public static class ParsecReader { /// /// Reads a shaiya file format from a file diff --git a/src/Parsec/Serialization/SBinaryReader.cs b/src/Parsec/Serialization/SBinaryReader.cs index a39c1471..66ed0d25 100644 --- a/src/Parsec/Serialization/SBinaryReader.cs +++ b/src/Parsec/Serialization/SBinaryReader.cs @@ -8,9 +8,11 @@ namespace Parsec.Serialization; /// public sealed class SBinaryReader : IDisposable { - private readonly BinaryReader _binaryReader; + private BinaryReader _binaryReader; public readonly BinarySerializationOptions SerializationOptions; + public long StreamLength => _binaryReader.BaseStream.Length; + public SBinaryReader(Stream stream, BinarySerializationOptions serializationOptions) { _binaryReader = new BinaryReader(stream); @@ -39,6 +41,13 @@ public SBinaryReader(byte[] buffer, BinarySerializationOptions serializationOpti SerializationOptions = serializationOptions; } + public void ResetBuffer(byte[] buffer) + { + _binaryReader.Dispose(); + var memoryStream = new MemoryStream(buffer); + _binaryReader = new BinaryReader(memoryStream); + } + public long Length => _binaryReader.BaseStream.Length; /// diff --git a/src/Parsec/Serialization/SBinaryWriter.cs b/src/Parsec/Serialization/SBinaryWriter.cs index 4e636e46..b6383038 100644 --- a/src/Parsec/Serialization/SBinaryWriter.cs +++ b/src/Parsec/Serialization/SBinaryWriter.cs @@ -89,26 +89,20 @@ public void Write(byte[] bytes) _binaryWriter.Write(bytes); } - public void WriteLengthPrefixedString(string str, bool includeStringTerminator = true) + public void Write(string str, bool isLengthPrefixed = true, bool includeStringTerminator = true) { - WriteLengthPrefixedString(str, SerializationOptions.Encoding, includeStringTerminator); + Write(str, SerializationOptions.Encoding, isLengthPrefixed, includeStringTerminator); } - public void WriteLengthPrefixedString(string str, Encoding encoding, bool includeStringTerminator = true) + public void Write(string str, Encoding encoding, bool isLengthPrefixed = true, bool includeStringTerminator = true) { var finalStr = includeStringTerminator ? str + '\0' : str; - Write(finalStr.Length); - Write(encoding.GetBytes(finalStr)); - } - public void Write(string str, bool includeStringTerminator = true) - { - Write(str, SerializationOptions.Encoding, includeStringTerminator); - } + if (isLengthPrefixed) + { + Write(finalStr.Length); + } - public void Write(string str, Encoding encoding, bool includeStringTerminator = true) - { - var finalStr = includeStringTerminator ? str + '\0' : str; Write(encoding.GetBytes(finalStr)); } diff --git a/src/Parsec/Shaiya/3de/_3de.cs b/src/Parsec/Shaiya/3de/_3de.cs index 31efdfb4..b7677977 100644 --- a/src/Parsec/Shaiya/3de/_3de.cs +++ b/src/Parsec/Shaiya/3de/_3de.cs @@ -59,7 +59,7 @@ protected override void Write(SBinaryWriter binaryWriter) // Frame instances expect the vertex count to be set as the ExtraOption on the serialization options binaryWriter.SerializationOptions.ExtraOption = Vertices.Count; - binaryWriter.WriteLengthPrefixedString(Texture); + binaryWriter.Write(Texture); binaryWriter.Write(Vertices.ToSerializable()); binaryWriter.Write(Faces.ToSerializable()); binaryWriter.Write(MaxKeyframe); diff --git a/src/Parsec/Shaiya/3do/_3do.cs b/src/Parsec/Shaiya/3do/_3do.cs index ddaa34e2..92a9d618 100644 --- a/src/Parsec/Shaiya/3do/_3do.cs +++ b/src/Parsec/Shaiya/3do/_3do.cs @@ -29,7 +29,7 @@ protected override void Read(SBinaryReader binaryReader) protected override void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(TextureName, false); + binaryWriter.Write(TextureName, includeStringTerminator: false); binaryWriter.Write(Vertices.ToSerializable()); binaryWriter.Write(Faces.ToSerializable()); } diff --git a/src/Parsec/Shaiya/Alt/Alt.cs b/src/Parsec/Shaiya/Alt/Alt.cs index 1d2ff64a..dd6a70ff 100644 --- a/src/Parsec/Shaiya/Alt/Alt.cs +++ b/src/Parsec/Shaiya/Alt/Alt.cs @@ -24,7 +24,7 @@ protected override void Read(SBinaryReader binaryReader) protected override void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(Signature, false); + binaryWriter.Write(Signature, isLengthPrefixed: false, includeStringTerminator: false); binaryWriter.Write(Animations.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Alt/AltAnimation.cs b/src/Parsec/Shaiya/Alt/AltAnimation.cs index 90bc872f..1a1dac80 100644 --- a/src/Parsec/Shaiya/Alt/AltAnimation.cs +++ b/src/Parsec/Shaiya/Alt/AltAnimation.cs @@ -50,7 +50,7 @@ public void Write(SBinaryWriter binaryWriter) return; } - binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Name); binaryWriter.Write(Mode); binaryWriter.Write(Unknown); binaryWriter.Write(Float1); diff --git a/src/Parsec/Shaiya/Ani/Ani.cs b/src/Parsec/Shaiya/Ani/Ani.cs index 8c108575..685e828c 100644 --- a/src/Parsec/Shaiya/Ani/Ani.cs +++ b/src/Parsec/Shaiya/Ani/Ani.cs @@ -55,7 +55,7 @@ protected override void Write(SBinaryWriter binaryWriter) { if (binaryWriter.SerializationOptions.Episode >= Episode.EP6) { - binaryWriter.Write("ANI_V2"); + binaryWriter.Write("ANI_V2", isLengthPrefixed: false, includeStringTerminator: false); } binaryWriter.Write(StartKeyframe); diff --git a/src/Parsec/Shaiya/Cash/CashProduct.cs b/src/Parsec/Shaiya/Cash/CashProduct.cs index ee9a8571..fb3a83ab 100644 --- a/src/Parsec/Shaiya/Cash/CashProduct.cs +++ b/src/Parsec/Shaiya/Cash/CashProduct.cs @@ -45,9 +45,9 @@ public void Write(SBinaryWriter binaryWriter) binaryWriter.Write(Bag); binaryWriter.Write(Unknown); binaryWriter.Write(Cost); - binaryWriter.Write(Items.Take(24).ToSerializable(), false); - binaryWriter.Write(ProductName + "\0\0", false); - binaryWriter.Write(ProductCode + "\0\0", false); - binaryWriter.Write(Description + "\0\0", false); + binaryWriter.Write(Items.Take(24).ToSerializable(), lengthPrefixed: false); + binaryWriter.Write(ProductName + "\0\0", includeStringTerminator: false); + binaryWriter.Write(ProductCode + "\0\0", includeStringTerminator: false); + binaryWriter.Write(Description + "\0\0", includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs b/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs index 86560fc9..c04630e9 100644 --- a/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs +++ b/src/Parsec/Shaiya/Cash/DBItemSellTextRecord.cs @@ -21,7 +21,7 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Id); - binaryWriter.WriteLengthPrefixedString(ProductName, includeStringTerminator: false); - binaryWriter.WriteLengthPrefixedString(Text, includeStringTerminator: false); + binaryWriter.Write(ProductName, includeStringTerminator: false); + binaryWriter.Write(Text, includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/Common/String256.cs b/src/Parsec/Shaiya/Common/String256.cs index 16a0dab1..1ac276d0 100644 --- a/src/Parsec/Shaiya/Common/String256.cs +++ b/src/Parsec/Shaiya/Common/String256.cs @@ -30,7 +30,7 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { var value = Value.PadRight(256, PaddingChar); - binaryWriter.Write(value); + binaryWriter.Write(value, isLengthPrefixed: false, includeStringTerminator: false); } public override string ToString() => Value; diff --git a/src/Parsec/Shaiya/Core/FileBase.cs b/src/Parsec/Shaiya/Core/FileBase.cs index c821a95f..132693bd 100644 --- a/src/Parsec/Shaiya/Core/FileBase.cs +++ b/src/Parsec/Shaiya/Core/FileBase.cs @@ -72,8 +72,10 @@ public void Write(string path) Write(binaryWriter); } - public void Write(string path, Episode episode, Encoding encoding) + public void Write(string path, Episode episode, Encoding? encoding = null) { + encoding ??= Encoding.ASCII; + var serializationOptions = new BinarySerializationOptions(episode, encoding); using var binaryWriter = new SBinaryWriter(path, serializationOptions); Write(binaryWriter); @@ -89,15 +91,14 @@ public void Write(string path, Episode episode, Encoding encoding) internal static T ReadFromFile(string path, BinarySerializationOptions serializationOptions) where T : FileBase, new() { var instance = new T { Path = path, Episode = serializationOptions.Episode, Encoding = serializationOptions.Encoding }; - var binaryReader = new SBinaryReader(path, serializationOptions); + using var binaryReader = new SBinaryReader(path, serializationOptions); - // TODO: - // if (instance is IEncryptable encryptableInstance) - // encryptableInstance.DecryptBuffer(); + if (instance is IEncryptable encryptableInstance) + { + encryptableInstance.DecryptBuffer(binaryReader); + } instance.Read(binaryReader); - binaryReader.Dispose(); - return instance; } @@ -118,15 +119,14 @@ internal static FileBase ReadFromFile(string path, Type type, BinarySerializatio instance.Episode = serializationOptions.Episode; instance.Encoding = serializationOptions.Encoding; - var binaryReader = new SBinaryReader(path, serializationOptions); + using var binaryReader = new SBinaryReader(path, serializationOptions); - // TODO: - // if (instance is IEncryptable encryptableInstance) - // encryptableInstance.DecryptBuffer(); + if (instance is IEncryptable encryptableInstance) + { + encryptableInstance.DecryptBuffer(binaryReader); + } instance.Read(binaryReader); - binaryReader.Dispose(); - return instance; } @@ -141,15 +141,14 @@ internal static FileBase ReadFromFile(string path, Type type, BinarySerializatio internal static T ReadFromBuffer(string name, byte[] buffer, BinarySerializationOptions serializationOptions) where T : FileBase, new() { var instance = new T { Path = name, Episode = serializationOptions.Episode, Encoding = serializationOptions.Encoding }; - var binaryReader = new SBinaryReader(buffer, serializationOptions); + using var binaryReader = new SBinaryReader(buffer, serializationOptions); - // TODO: - // if (instance is IEncryptable encryptableInstance) - // encryptableInstance.DecryptBuffer(); + if (instance is IEncryptable encryptableInstance) + { + encryptableInstance.DecryptBuffer(binaryReader); + } instance.Read(binaryReader); - binaryReader.Dispose(); - return instance; } @@ -171,15 +170,14 @@ internal static FileBase ReadFromBuffer(string name, byte[] buffer, Type type, B instance.Episode = serializationOptions.Episode; instance.Encoding = serializationOptions.Encoding; - var binaryReader = new SBinaryReader(buffer, serializationOptions); + using var binaryReader = new SBinaryReader(buffer, serializationOptions); - // TODO: - // if (instance is IEncryptable encryptableInstance) - // encryptableInstance.DecryptBuffer(); + if (instance is IEncryptable encryptableInstance) + { + encryptableInstance.DecryptBuffer(binaryReader); + } instance.Read(binaryReader); - binaryReader.Dispose(); - return instance; } @@ -217,6 +215,12 @@ public IEnumerable GetBytes() return GetBytes(serializationOptions); } + public IEnumerable GetBytes(Episode episode, Encoding? encoding = null) + { + var serializationOptions = new BinarySerializationOptions(episode, encoding); + return GetBytes(serializationOptions); + } + public IEnumerable GetBytes(BinarySerializationOptions serializationOptions) { using var memoryStream = new MemoryStream(); diff --git a/src/Parsec/Shaiya/Data/Data.cs b/src/Parsec/Shaiya/Data/Data.cs index 1b6db2a9..e44e67dd 100644 --- a/src/Parsec/Shaiya/Data/Data.cs +++ b/src/Parsec/Shaiya/Data/Data.cs @@ -22,7 +22,7 @@ public Data(string sahPath, string safPath) throw new FileNotFoundException($"data.saf file not found at {safPath}"); } - Sah = Reader.ReadFromFile(sahPath); + Sah = ParsecReader.ReadFromFile(sahPath); Saf = new Saf(safPath); } diff --git a/src/Parsec/Shaiya/Data/SDirectory.cs b/src/Parsec/Shaiya/Data/SDirectory.cs index 586ec4d3..e5387bca 100644 --- a/src/Parsec/Shaiya/Data/SDirectory.cs +++ b/src/Parsec/Shaiya/Data/SDirectory.cs @@ -123,7 +123,9 @@ public void Write(SBinaryWriter binaryWriter) public void AddFile(SFile file) { if (HasFile(file.Name)) - throw new Exception($"File {file.Name} already exists in folder {Name}"); + { + return; + } Files.Add(file); } diff --git a/src/Parsec/Shaiya/EFT/Eft.cs b/src/Parsec/Shaiya/EFT/Eft.cs index baae098b..9f030fe6 100644 --- a/src/Parsec/Shaiya/EFT/Eft.cs +++ b/src/Parsec/Shaiya/EFT/Eft.cs @@ -10,7 +10,7 @@ public sealed class Eft : FileBase [JsonIgnore] public EftFormat Format { get; set; } - public List Objects { get; set; } = new(); + public List Meshes { get; set; } = new(); public List Textures { get; set; } = new(); @@ -36,7 +36,7 @@ protected override void Read(SBinaryReader binaryReader) // Effect instances expect the Format to be set as the ExtraOption property on the serialization settings binaryReader.SerializationOptions.ExtraOption = Format; - Objects = binaryReader.ReadList().ToList(); + Meshes = binaryReader.ReadList().ToList(); Textures = binaryReader.ReadList().ToList(); Effects = binaryReader.ReadList().ToList(); EffectSequences = binaryReader.ReadList().ToList(); @@ -55,8 +55,8 @@ protected override void Write(SBinaryWriter binaryWriter) // Effect instances expect the Format to be set as the ExtraOption property on the serialization settings binaryWriter.SerializationOptions.ExtraOption = Format; - binaryWriter.Write(signature); - binaryWriter.Write(Objects.ToSerializable()); + binaryWriter.Write(signature, isLengthPrefixed: false, includeStringTerminator: false); + binaryWriter.Write(Meshes.ToSerializable()); binaryWriter.Write(Textures.ToSerializable()); binaryWriter.Write(Effects.ToSerializable()); binaryWriter.Write(EffectSequences.ToSerializable()); diff --git a/src/Parsec/Shaiya/EFT/EftEffect.cs b/src/Parsec/Shaiya/EFT/EftEffect.cs index fdcab489..8b6c7298 100644 --- a/src/Parsec/Shaiya/EFT/EftEffect.cs +++ b/src/Parsec/Shaiya/EFT/EftEffect.cs @@ -126,6 +126,7 @@ public void Read(SBinaryReader binaryReader) Unknown8 = binaryReader.ReadInt32(); MeshIndex = binaryReader.ReadInt32(); Unknown10 = binaryReader.ReadInt32(); + Unknown11 = binaryReader.ReadSingle(); Unknown12 = binaryReader.ReadSingle(); Unknown13 = binaryReader.ReadSingle(); @@ -173,7 +174,14 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name); + var format = EftFormat.EFT; + + if (binaryWriter.SerializationOptions.ExtraOption is EftFormat formatOption) + { + format = formatOption; + } + + binaryWriter.Write(Name); binaryWriter.Write(Unknown1); binaryWriter.Write(Unknown2); binaryWriter.Write(Unknown3); @@ -211,8 +219,11 @@ public void Write(SBinaryWriter binaryWriter) binaryWriter.Write(Unknown25); binaryWriter.Write(Unknown26); - binaryWriter.Write(Unknown27); - binaryWriter.Write(Unknown28); + if (format == EftFormat.EF3) + { + binaryWriter.Write(Unknown27); + binaryWriter.Write(Unknown28); + } binaryWriter.Write(Rotations.ToSerializable()); binaryWriter.Write(OpacityFrames.ToSerializable()); diff --git a/src/Parsec/Shaiya/EFT/EftEffectMesh.cs b/src/Parsec/Shaiya/EFT/EftEffectMesh.cs index 1350845f..452aaf84 100644 --- a/src/Parsec/Shaiya/EFT/EftEffectMesh.cs +++ b/src/Parsec/Shaiya/EFT/EftEffectMesh.cs @@ -14,6 +14,6 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Name); } } diff --git a/src/Parsec/Shaiya/EFT/EftEffectSequence.cs b/src/Parsec/Shaiya/EFT/EftEffectSequence.cs index 4e0c50dc..e34f61ca 100644 --- a/src/Parsec/Shaiya/EFT/EftEffectSequence.cs +++ b/src/Parsec/Shaiya/EFT/EftEffectSequence.cs @@ -18,7 +18,7 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name); + binaryWriter.Write(Name); binaryWriter.Write(Records.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs b/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs index 7a04ebdb..bddd915e 100644 --- a/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs +++ b/src/Parsec/Shaiya/GuildHouse/GuildHouse.cs @@ -36,7 +36,7 @@ protected override void Write(SBinaryWriter binaryWriter) binaryWriter.Write(Unknown); binaryWriter.Write(HousePrice); binaryWriter.Write(ServicePrice); - binaryWriter.Write(NpcInfoList.ToSerializable()); - binaryWriter.Write(Npcs.ToSerializable()); + binaryWriter.Write(NpcInfoList.ToSerializable(), lengthPrefixed: false); + binaryWriter.Write(Npcs.ToSerializable(), lengthPrefixed: false); } } diff --git a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs index d9a309dd..e0b16c92 100644 --- a/src/Parsec/Shaiya/Item/DBItemTextRecord.cs +++ b/src/Parsec/Shaiya/Item/DBItemTextRecord.cs @@ -25,7 +25,7 @@ public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(ItemType); binaryWriter.Write(ItemTypeId); - binaryWriter.WriteLengthPrefixedString(ItemName, false); - binaryWriter.WriteLengthPrefixedString(Text, false); + binaryWriter.Write(ItemName, includeStringTerminator: false); + binaryWriter.Write(Text, includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/Item/Item.cs b/src/Parsec/Shaiya/Item/Item.cs index 2565ac47..b6eeabce 100644 --- a/src/Parsec/Shaiya/Item/Item.cs +++ b/src/Parsec/Shaiya/Item/Item.cs @@ -1,9 +1,13 @@ -using Parsec.Extensions; +using System.Globalization; +using System.Text; +using CsvHelper; +using Parsec.Common; +using Parsec.Extensions; using Parsec.Serialization; namespace Parsec.Shaiya.Item; -public sealed class Item : SData.SData +public sealed class Item : SData.SData, ICsv { public List ItemGroups { get; set; } = new(); @@ -17,56 +21,52 @@ protected override void Write(SBinaryWriter binaryWriter) binaryWriter.Write(ItemGroups.ToSerializable()); } - // TODO: Add csv support - // /// - // /// Reads the Item.SData format from a csv file - // /// - // /// csv file path - // /// The Item.SData format - // /// Item.SData encoding - // /// instance - // public static Item ReadFromCsv(string csvPath, Episode episode, Encoding? encoding = null) - // { - // encoding ??= Encoding.ASCII; - // - // // Create Item.SData instance - // var item = new Item { Episode = episode, Encoding = encoding }; - // - // // Read item definitions from csv - // using var reader = new StreamReader(csvPath, encoding); - // using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); - // var itemDefinitions = csvReader.GetRecords().ToList(); - // - // // Get max type from items - // item.MaxItemType = itemDefinitions.Max(x => x.Type); - // - // // Add all items to item index - // var itemIndex = itemDefinitions.ToDictionary(itemDef => (itemDef.Type, itemDef.TypeId)); - // item.ItemIndex = itemIndex; - // - // // Create item types - // for (int i = 1; i <= item.MaxItemType; i++) - // { - // // Get items for this type - // var items = item.ItemIndex.Values.Where(x => x.Type == i).ToList(); - // - // int maxTypeId = items.Count == 0 ? 0 : items.Max(x => x.TypeId); - // - // var type = new ItemType(i, maxTypeId, items); - // item.ItemTypes.Add(type); - // } - // - // return item; - // } - // - // /// - // public void WriteCsv(string outputPath, Encoding? encoding = null) - // { - // encoding ??= Encoding; - // - // var items = ItemIndex.Values.ToList().ToList(); - // using var writer = new StreamWriter(outputPath, false, encoding); - // using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); - // csvWriter.WriteRecords(items); - // } + /// + /// Reads the Item.SData format from a csv file + /// + /// csv file path + /// The Item.SData format + /// Item.SData encoding + /// instance + public static Item ReadFromCsv(string csvPath, Episode episode, Encoding? encoding = null) + { + encoding ??= Encoding.ASCII; + + // Read item definitions from csv + using var reader = new StreamReader(csvPath, encoding); + using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + var csvItemRecords = csvReader.GetRecords().ToList(); + + var groups = csvItemRecords.GroupBy(x => x.ItemType).ToList(); + var item = new Item { Episode = episode, Encoding = encoding }; + + var maxGroupId = groups.Max(x => x.Key); + + for (int i = 1; i <= maxGroupId; i++) + { + var itemGroup = new ItemGroup(); + item.ItemGroups.Add(itemGroup); + + var group = groups.FirstOrDefault(x => x.Key == i); + + if (group != null) + { + itemGroup.ItemDefinitions = group.ToList(); + } + } + + return item; + } + + public void WriteCsv(string outputPath, Encoding? encoding = null) + { + encoding ??= Encoding.ASCII; + using var writer = new StreamWriter(outputPath, false, encoding); + using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); + + foreach (var itemGroup in ItemGroups) + { + csvWriter.WriteRecords(itemGroup.ItemDefinitions); + } + } } diff --git a/src/Parsec/Shaiya/Item/ItemGroupRecord.cs b/src/Parsec/Shaiya/Item/ItemDefinition.cs similarity index 95% rename from src/Parsec/Shaiya/Item/ItemGroupRecord.cs rename to src/Parsec/Shaiya/Item/ItemDefinition.cs index ae83913f..9858d8e3 100644 --- a/src/Parsec/Shaiya/Item/ItemGroupRecord.cs +++ b/src/Parsec/Shaiya/Item/ItemDefinition.cs @@ -1,31 +1,24 @@ -using Parsec.Common; +using CsvHelper.Configuration.Attributes; +using Parsec.Common; using Parsec.Serialization; using Parsec.Shaiya.Core; namespace Parsec.Shaiya.Item; -public sealed class ItemGroupRecord : ISerializable +public sealed class ItemDefinition : ISerializable { - /// - /// Order: 2. Changed because of CSV. - /// - public byte ItemType { get; set; } - - /// - /// Order: 3. Changed because of CSV. - /// - public byte ItemTypeId { get; set; } - - /// - /// Order: 0. Changed because of CSV. - /// + [Index(2)] public string Name { get; set; } = string.Empty; - /// - /// Order: 1. Changed because of CSV. - /// + [Index(3)] public string Description { get; set; } = string.Empty; + [Index(0)] + public byte ItemType { get; set; } + + [Index(1)] + public byte ItemTypeId { get; set; } + public byte Model { get; set; } public byte Icon { get; set; } @@ -271,8 +264,8 @@ public void Write(SBinaryWriter binaryWriter) { var episode = binaryWriter.SerializationOptions.Episode; - binaryWriter.WriteLengthPrefixedString(Name); - binaryWriter.WriteLengthPrefixedString(Description); + binaryWriter.Write(Name); + binaryWriter.Write(Description); binaryWriter.Write(ItemType); binaryWriter.Write(ItemTypeId); binaryWriter.Write(Model); diff --git a/src/Parsec/Shaiya/Item/ItemGroup.cs b/src/Parsec/Shaiya/Item/ItemGroup.cs index 37d0dd57..e3947ae1 100644 --- a/src/Parsec/Shaiya/Item/ItemGroup.cs +++ b/src/Parsec/Shaiya/Item/ItemGroup.cs @@ -6,19 +6,15 @@ namespace Parsec.Shaiya.Item; public sealed class ItemGroup : ISerializable { - public int MaxTypeId { get; set; } - - public List ItemDefinitions { get; set; } = new(); + public List ItemDefinitions { get; set; } = new(); public void Read(SBinaryReader binaryReader) { - MaxTypeId = binaryReader.ReadInt32(); - ItemDefinitions = binaryReader.ReadList(MaxTypeId).ToList(); + ItemDefinitions = binaryReader.ReadList().ToList(); } public void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(MaxTypeId); binaryWriter.Write(ItemDefinitions.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Itm/Itm.cs b/src/Parsec/Shaiya/Itm/Itm.cs index aaba422d..6b4f965a 100644 --- a/src/Parsec/Shaiya/Itm/Itm.cs +++ b/src/Parsec/Shaiya/Itm/Itm.cs @@ -76,7 +76,7 @@ protected override void Write(SBinaryWriter binaryWriter) _ => "ITM" }; - binaryWriter.Write(signature); + binaryWriter.Write(signature, isLengthPrefixed: false, includeStringTerminator: false); binaryWriter.Write(MeshNames.Count); foreach (var meshName in MeshNames) diff --git a/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs b/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs index f9d1e2d8..7b891636 100644 --- a/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs +++ b/src/Parsec/Shaiya/KillStatus/KillStatusRecord.cs @@ -39,6 +39,6 @@ public void Write(SBinaryWriter binaryWriter) binaryWriter.Write((byte)Faction); binaryWriter.Write(BlessValue); binaryWriter.Write(Index); - binaryWriter.Write(Bonuses.ToSerializable()); + binaryWriter.Write(Bonuses.Take(6).ToSerializable(), lengthPrefixed: false); } } diff --git a/src/Parsec/Shaiya/Mlt/Mlt.cs b/src/Parsec/Shaiya/Mlt/Mlt.cs index 43d8160d..c51543fa 100644 --- a/src/Parsec/Shaiya/Mlt/Mlt.cs +++ b/src/Parsec/Shaiya/Mlt/Mlt.cs @@ -39,10 +39,10 @@ protected override void Read(SBinaryReader binaryReader) MeshNames.Add(meshName); } - int textureNameCount = binaryReader.ReadInt32(); - for (int i = 0; i < textureNameCount; i++) + var textureNameCount = binaryReader.ReadInt32(); + for (var i = 0; i < textureNameCount; i++) { - string textureName = binaryReader.ReadString(); + var textureName = binaryReader.ReadString(); TextureNames.Add(textureName); } @@ -51,18 +51,18 @@ protected override void Read(SBinaryReader binaryReader) protected override void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(Signature); + binaryWriter.Write(Signature, isLengthPrefixed: false, includeStringTerminator: false); binaryWriter.Write(MeshNames.Count); foreach (var meshName in MeshNames) { - binaryWriter.WriteLengthPrefixedString(meshName); + binaryWriter.Write(meshName); } binaryWriter.Write(TextureNames.Count); foreach (var textureName in TextureNames) { - binaryWriter.WriteLengthPrefixedString(textureName); + binaryWriter.Write(textureName); } binaryWriter.Write(Records.ToSerializable()); diff --git a/src/Parsec/Shaiya/Mlx/Mlx.cs b/src/Parsec/Shaiya/Mlx/Mlx.cs index 4e717e80..462e05c1 100644 --- a/src/Parsec/Shaiya/Mlx/Mlx.cs +++ b/src/Parsec/Shaiya/Mlx/Mlx.cs @@ -17,6 +17,12 @@ public sealed class Mlx : FileBase protected override void Read(SBinaryReader binaryReader) { + // Some MLX files are empty + if (binaryReader.StreamLength == 0) + { + return; + } + var signature = binaryReader.ReadString(4); if (signature == "MLX2") @@ -38,7 +44,7 @@ protected override void Write(SBinaryWriter binaryWriter) { if (Format == MlxFormat.MLX2) { - binaryWriter.Write("MLX2"); + binaryWriter.Write("MLX2", isLengthPrefixed: false, includeStringTerminator: false); } // MlxRecord instances expect the Format to be set as the ExtraOption on the serialization options diff --git a/src/Parsec/Shaiya/Mon/Mon.cs b/src/Parsec/Shaiya/Mon/Mon.cs index 50a0ec8f..d9c0bb3c 100644 --- a/src/Parsec/Shaiya/Mon/Mon.cs +++ b/src/Parsec/Shaiya/Mon/Mon.cs @@ -42,7 +42,7 @@ protected override void Write(SBinaryWriter binaryWriter) // Record instances expect the Format to be set as the ExtraOption on the serialization options binaryWriter.SerializationOptions.ExtraOption = Format; - binaryWriter.Write(Signature); + binaryWriter.Write(Signature, isLengthPrefixed: false, includeStringTerminator: false); binaryWriter.Write(Records.ToSerializable()); } } diff --git a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs index efc0ae23..886d707c 100644 --- a/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs +++ b/src/Parsec/Shaiya/Monster/DBMonsterTextRecord.cs @@ -18,6 +18,6 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Id); - binaryWriter.WriteLengthPrefixedString(Name, false); + binaryWriter.Write(Name, includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/Monster/MonsterRecord.cs b/src/Parsec/Shaiya/Monster/MonsterRecord.cs index f0d0897b..6972a444 100644 --- a/src/Parsec/Shaiya/Monster/MonsterRecord.cs +++ b/src/Parsec/Shaiya/Monster/MonsterRecord.cs @@ -6,24 +6,43 @@ namespace Parsec.Shaiya.Monster; public sealed class MonsterRecord : ISerializable { public string MobName { get; set; } = string.Empty; + public short ModelId { get; set; } + public short Level { get; set; } + public byte AI { get; set; } + public int HP { get; set; } + public byte Day { get; set; } + public byte Size { get; set; } + public byte Element { get; set; } + public int NormalTime { get; set; } + public byte NormalStep { get; set; } + public int ChaseTime { get; set; } + public byte ChaseStep { get; set; } + public byte AttackType1 { get; set; } + public byte AttackElement1 { get; set; } + public byte AttackType2 { get; set; } + public byte AttackRange2 { get; set; } + public byte AttackType3 { get; set; } + public byte Unknown1 { get; set; } + public byte Unknown2 { get; set; } + public short QuestItemId { get; set; } public void Read(SBinaryReader binaryReader) diff --git a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs index 0a0a793b..b2570ca1 100644 --- a/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs +++ b/src/Parsec/Shaiya/NpcQuest/BaseNpc.cs @@ -69,8 +69,8 @@ protected void WriteBaseNpcSecondSegment(SBinaryWriter binaryWriter) // In Ep8 strings are stored in separate translation files if (binaryWriter.SerializationOptions.Episode < Episode.EP8) { - binaryWriter.WriteLengthPrefixedString(Name, false); - binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); + binaryWriter.Write(Name, false); + binaryWriter.Write(WelcomeMessage, false); } } diff --git a/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs b/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs index 8d355533..e328ea0c 100644 --- a/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs +++ b/src/Parsec/Shaiya/NpcQuest/GateKeeperQuestTran.cs @@ -26,10 +26,10 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name, false); - binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); - binaryWriter.WriteLengthPrefixedString(TeleportName1, false); - binaryWriter.WriteLengthPrefixedString(TeleportName2, false); - binaryWriter.WriteLengthPrefixedString(TeleportName3, false); + binaryWriter.Write(Name, false); + binaryWriter.Write(WelcomeMessage, false); + binaryWriter.Write(TeleportName1, false); + binaryWriter.Write(TeleportName2, false); + binaryWriter.Write(TeleportName3, false); } } diff --git a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs index d5d67292..b69b7208 100644 --- a/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs +++ b/src/Parsec/Shaiya/NpcQuest/NpcQuestTran.cs @@ -17,7 +17,7 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name, false); - binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); + binaryWriter.Write(Name, false); + binaryWriter.Write(WelcomeMessage, false); } } diff --git a/src/Parsec/Shaiya/NpcQuest/Quest.cs b/src/Parsec/Shaiya/NpcQuest/Quest.cs index 9c224b55..1298412c 100644 --- a/src/Parsec/Shaiya/NpcQuest/Quest.cs +++ b/src/Parsec/Shaiya/NpcQuest/Quest.cs @@ -253,8 +253,8 @@ public void Write(SBinaryWriter binaryWriter) if (episode < Episode.EP8) { - binaryWriter.WriteLengthPrefixedString(Name); - binaryWriter.WriteLengthPrefixedString(Summary); + binaryWriter.Write(Name); + binaryWriter.Write(Summary); } binaryWriter.Write(MinLevel); @@ -309,14 +309,14 @@ public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Results.Take(3).ToSerializable()); - binaryWriter.WriteLengthPrefixedString(InitialDescription); - binaryWriter.WriteLengthPrefixedString(QuestWindowSummary); - binaryWriter.WriteLengthPrefixedString(ReminderInstructions); - binaryWriter.WriteLengthPrefixedString(AlternateResponse); + binaryWriter.Write(InitialDescription); + binaryWriter.Write(QuestWindowSummary); + binaryWriter.Write(ReminderInstructions); + binaryWriter.Write(AlternateResponse); for (var i = 0; i < 3; i++) { - binaryWriter.WriteLengthPrefixedString(Results[i].CompletionMessage); + binaryWriter.Write(Results[i].CompletionMessage); } } else @@ -325,10 +325,10 @@ public void Write(SBinaryWriter binaryWriter) if (episode < Episode.EP8) { - binaryWriter.WriteLengthPrefixedString(InitialDescription); - binaryWriter.WriteLengthPrefixedString(QuestWindowSummary); - binaryWriter.WriteLengthPrefixedString(ReminderInstructions); - binaryWriter.WriteLengthPrefixedString(AlternateResponse); + binaryWriter.Write(InitialDescription); + binaryWriter.Write(QuestWindowSummary); + binaryWriter.Write(ReminderInstructions); + binaryWriter.Write(AlternateResponse); } } } diff --git a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs index 5bcddcdb..0467da63 100644 --- a/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs +++ b/src/Parsec/Shaiya/NpcQuest/QuestTranslation.cs @@ -47,17 +47,17 @@ public void Read(SBinaryReader binaryReader) public void Write(SBinaryWriter binaryWriter) { - binaryWriter.WriteLengthPrefixedString(Name, false); - binaryWriter.WriteLengthPrefixedString(Summary, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage2, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage3, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage4, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage5, false); - binaryWriter.WriteLengthPrefixedString(CompletionMessage6, false); - binaryWriter.WriteLengthPrefixedString(InitialDescription, false); - binaryWriter.WriteLengthPrefixedString(WelcomeMessage, false); - binaryWriter.WriteLengthPrefixedString(ReminderMessage, false); - binaryWriter.WriteLengthPrefixedString(AlternateResponse, false); + binaryWriter.Write(Name, false); + binaryWriter.Write(Summary, false); + binaryWriter.Write(CompletionMessage, false); + binaryWriter.Write(CompletionMessage2, false); + binaryWriter.Write(CompletionMessage3, false); + binaryWriter.Write(CompletionMessage4, false); + binaryWriter.Write(CompletionMessage5, false); + binaryWriter.Write(CompletionMessage6, false); + binaryWriter.Write(InitialDescription, false); + binaryWriter.Write(WelcomeMessage, false); + binaryWriter.Write(ReminderMessage, false); + binaryWriter.Write(AlternateResponse, false); } } diff --git a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs index 60768dda..470438cc 100644 --- a/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs +++ b/src/Parsec/Shaiya/NpcSkill/DBNpcSkillTextRecord.cs @@ -25,7 +25,7 @@ public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Id); binaryWriter.Write(SkillLevel); - binaryWriter.Write(Name, false); - binaryWriter.Write(Text, false); + binaryWriter.Write(Name, includeStringTerminator: false); + binaryWriter.Write(Text, includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/SData/BinarySData.cs b/src/Parsec/Shaiya/SData/BinarySData.cs index f4656902..a45f927a 100644 --- a/src/Parsec/Shaiya/SData/BinarySData.cs +++ b/src/Parsec/Shaiya/SData/BinarySData.cs @@ -12,7 +12,7 @@ namespace Parsec.Shaiya.SData; /// /// 128-byte header unused by the game itself. It looks like a file signature + metadata /// - public byte[] Header { get; set; } + public byte[] Header { get; set; } = new byte[128]; /// /// Field names are defined before the data. They aren't really used but knowing which each field means is nice @@ -30,6 +30,11 @@ protected override void Read(SBinaryReader binaryReader) protected override void Write(SBinaryWriter binaryWriter) { + if (Header is not { Length: 128 }) + { + Header = new byte[128]; + } + binaryWriter.Write(Header); binaryWriter.Write(Fields.ToSerializable()); binaryWriter.Write(Records.ToSerializable()); @@ -41,17 +46,17 @@ protected override void Write(SBinaryWriter binaryWriter) using var reader = new StreamReader(csvPath, encoding); using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + // Read records + var records = csvReader.GetRecords().ToList(); + if (csvReader.HeaderRecord == null) { throw new FileLoadException("Csv file doesn't have a valid header."); } - // Read headers and records - var fields = csvReader.HeaderRecord.Select(c => (BinarySDataField)c).ToList(); - var records = csvReader.GetRecords().ToList(); - - // Create the BinarySData instance with an empty header. The header is skipped entirely by the game so this isn't an issue. - var binarySData = new T { Header = new byte[128], Fields = fields, Records = records, Encoding = encoding }; + // Read headers + var fields = csvReader.HeaderRecord.Select(column => (BinarySDataField)column.ToLower()).ToList(); + var binarySData = new T { Fields = fields, Records = records, Encoding = encoding }; return binarySData; } diff --git a/src/Parsec/Shaiya/SData/BinarySDataField.cs b/src/Parsec/Shaiya/SData/BinarySDataField.cs index 9893f68b..93ff2134 100644 --- a/src/Parsec/Shaiya/SData/BinarySDataField.cs +++ b/src/Parsec/Shaiya/SData/BinarySDataField.cs @@ -10,12 +10,15 @@ public sealed class BinarySDataField : ISerializable public void Read(SBinaryReader binaryReader) { - Name = binaryReader.ReadString(Encoding.Unicode); + var length = binaryReader.ReadByte(); + Name = binaryReader.ReadString(Encoding.Unicode, length); } public void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(Name, Encoding.Unicode); + var length = (byte)Name.Length; + binaryWriter.Write(length); + binaryWriter.Write(Name, Encoding.Unicode, isLengthPrefixed: false, includeStringTerminator: false); } public static implicit operator string(BinarySDataField field) => field.Name; diff --git a/src/Parsec/Shaiya/SData/SData.cs b/src/Parsec/Shaiya/SData/SData.cs index 053ec5a5..b3738f20 100644 --- a/src/Parsec/Shaiya/SData/SData.cs +++ b/src/Parsec/Shaiya/SData/SData.cs @@ -43,21 +43,21 @@ public void DecryptBuffer(SBinaryReader binaryReader, bool validateChecksum = fa return; } - byte[] decryptedBuffer = Decrypt(fileBuffer, validateChecksum); - binaryReader = new SBinaryReader(decryptedBuffer, binaryReader.SerializationOptions); + var decryptedBuffer = Decrypt(fileBuffer, validateChecksum); + binaryReader.ResetBuffer(decryptedBuffer); } /// public byte[] GetEncryptedBytes() { - var version = Episode >= Episode.EP8 ? SDataVersion.Binary : SDataVersion.Regular; + var version = Episode == Episode.EP8 ? SDataVersion.Binary : SDataVersion.Regular; var serializationOptions = new BinarySerializationOptions(Episode, Encoding); var memoryStream = new MemoryStream(); var binaryWriter = new SBinaryWriter(memoryStream, serializationOptions); Write(binaryWriter); - byte[] encryptedBuffer = Encrypt(memoryStream.ToArray(), version); + var encryptedBuffer = Encrypt(memoryStream.ToArray(), version); return encryptedBuffer; } @@ -79,7 +79,7 @@ public static bool IsEncrypted(byte[] data) if (data.Length < SEED_SIGNATURE.Length) return false; - string sDataHeader = Encoding.ASCII.GetString(data.SubArray(0, SEED_SIGNATURE.Length)); + var sDataHeader = Encoding.ASCII.GetString(data.SubArray(0, SEED_SIGNATURE.Length)); return sDataHeader == SEED_SIGNATURE; } @@ -94,24 +94,24 @@ public static byte[] Encrypt(byte[] decryptedData, SDataVersion version = SDataV if (IsEncrypted(decryptedData)) return decryptedData; - byte[] padding = version == SDataVersion.Regular ? new byte[16] : new byte[12]; + var padding = version == SDataVersion.Regular ? new byte[16] : new byte[12]; var header = new SeedHeader(SEED_SIGNATURE, 0, (uint)decryptedData.Length, padding); - uint alignmentSize = header.RealSize; + var alignmentSize = header.RealSize; if (alignmentSize % CHUNK_SIZE != 0) alignmentSize = header.RealSize + (CHUNK_SIZE - header.RealSize % CHUNK_SIZE); // Create data array including the extra alignment bytes - byte[] data = new byte[alignmentSize]; + var data = new byte[alignmentSize]; Array.Copy(decryptedData, data, decryptedData.Length); // Calculate and set checksum - uint checksum = uint.MaxValue; + var checksum = uint.MaxValue; - for (int i = 0; i < header.RealSize; i++) + for (var i = 0; i < header.RealSize; i++) { - uint index = (checksum & 0xFF) ^ decryptedData[i]; - uint key = Seed.ByteArrayToUInt32(SeedConstants.ChecksumTable, index * 4); + var index = (checksum & 0xFF) ^ decryptedData[i]; + var key = Seed.ByteArrayToUInt32(SeedConstants.ChecksumTable, index * 4); Seed.EndiannessSwap(ref key); checksum >>= 8; checksum ^= key; @@ -126,12 +126,12 @@ public static byte[] Encrypt(byte[] decryptedData, SDataVersion version = SDataV // Encrypt data in chunks for (int i = 0; i < alignmentSize / CHUNK_SIZE; ++i) { - byte[] chunk = data.AsSpan().Slice(i * CHUNK_SIZE, CHUNK_SIZE).ToArray(); - Seed.EncryptChunk(chunk, out byte[] encryptedChunk); + var chunk = data.AsSpan().Slice(i * CHUNK_SIZE, CHUNK_SIZE).ToArray(); + Seed.EncryptChunk(chunk, out var encryptedChunk); buffer.AddRange(encryptedChunk); } - byte[] encryptedData = buffer.ToArray(); + var encryptedData = buffer.ToArray(); return encryptedData; } @@ -154,22 +154,22 @@ public static byte[] Decrypt(byte[] encryptedBuffer, bool validateChecksum = fal var data = new List(); // Decrypt data in chunks - for (int i = 0; i < encryptedData.Length / CHUNK_SIZE; ++i) + for (var i = 0; i < encryptedData.Length / CHUNK_SIZE; ++i) { var chunk = encryptedData.Slice(i * CHUNK_SIZE, CHUNK_SIZE); - Seed.DecryptChunk(chunk.ToArray(), out byte[] decryptedChunk); + Seed.DecryptChunk(chunk.ToArray(), out var decryptedChunk); data.AddRange(decryptedChunk); } if (validateChecksum) { - uint checksum = uint.MaxValue; + var checksum = uint.MaxValue; // Checksum is calculated with the whole file's data except for the header (not with the real size) - for (int i = 0; i < header.RealSize; i++) + for (var i = 0; i < header.RealSize; i++) { - uint index = (checksum & 0xFF) ^ data[i]; - uint key = Seed.ByteArrayToUInt32(SeedConstants.ChecksumTable, index * 4); + var index = (checksum & 0xFF) ^ data[i]; + var key = Seed.ByteArrayToUInt32(SeedConstants.ChecksumTable, index * 4); Seed.EndiannessSwap(ref key); checksum >>= 8; checksum ^= key; @@ -182,22 +182,22 @@ public static byte[] Decrypt(byte[] encryptedBuffer, bool validateChecksum = fal throw new FormatException("Invalid SEED checksum."); } - byte[] decryptedData = new byte[header.RealSize]; + var decryptedData = new byte[header.RealSize]; Array.Copy(data.ToArray(), decryptedData, header.RealSize); return decryptedData; } public static void EncryptFile(string inputFilePath, string outputFilePath, SDataVersion sDataVersion = SDataVersion.Regular) { - byte[] fileData = FileHelper.ReadBytes(inputFilePath); - byte[] encryptedData = Encrypt(fileData, sDataVersion); + var fileData = FileHelper.ReadBytes(inputFilePath); + var encryptedData = Encrypt(fileData, sDataVersion); FileHelper.WriteFile(outputFilePath, encryptedData); } public static void DecryptFile(string inputFilePath, string outputFilePath, bool validateChecksum = false) { - byte[] fileData = FileHelper.ReadBytes(inputFilePath); - byte[] decryptedData = Decrypt(fileData, validateChecksum); + var fileData = FileHelper.ReadBytes(inputFilePath); + var decryptedData = Decrypt(fileData, validateChecksum); FileHelper.WriteFile(outputFilePath, decryptedData); } } diff --git a/src/Parsec/Shaiya/Seff/SeffEffect.cs b/src/Parsec/Shaiya/Seff/SeffEffect.cs index 83114189..64184507 100644 --- a/src/Parsec/Shaiya/Seff/SeffEffect.cs +++ b/src/Parsec/Shaiya/Seff/SeffEffect.cs @@ -110,7 +110,7 @@ public void Write(SBinaryWriter binaryWriter) binaryWriter.Write(StartPositionMultiplier); binaryWriter.Write(ParticleLifetime); binaryWriter.Write(Unknown6); - binaryWriter.Write(TextureFileName, Encoding.Unicode, false); + binaryWriter.Write(TextureFileName, Encoding.Unicode, isLengthPrefixed: true, includeStringTerminator: false); binaryWriter.Write(Red); binaryWriter.Write(Green); binaryWriter.Write(Blue); diff --git a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs index f99a1198..93fb1b92 100644 --- a/src/Parsec/Shaiya/SetItem/SetItemRecord.cs +++ b/src/Parsec/Shaiya/SetItem/SetItemRecord.cs @@ -27,7 +27,7 @@ public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Index); binaryWriter.Write(Name); - binaryWriter.Write(Items.Take(13).ToSerializable()); - binaryWriter.Write(Synergies.Take(13).ToSerializable()); + binaryWriter.Write(Items.Take(13).ToSerializable(), lengthPrefixed: false); + binaryWriter.Write(Synergies.Take(13).ToSerializable(), lengthPrefixed: false); } } diff --git a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs index 043f0699..1e35b1c7 100644 --- a/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs +++ b/src/Parsec/Shaiya/Skill/DBSkillTextRecord.cs @@ -25,7 +25,7 @@ public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Id); binaryWriter.Write(SkillLevel); - binaryWriter.Write(Name, false); - binaryWriter.Write(Text, false); + binaryWriter.Write(Name, includeStringTerminator: false); + binaryWriter.Write(Text, includeStringTerminator: false); } } diff --git a/src/Parsec/Shaiya/Skill/Skill.cs b/src/Parsec/Shaiya/Skill/Skill.cs index d8fbb46c..645a117d 100644 --- a/src/Parsec/Shaiya/Skill/Skill.cs +++ b/src/Parsec/Shaiya/Skill/Skill.cs @@ -1,9 +1,13 @@ -using Parsec.Extensions; +using System.Globalization; +using System.Text; +using CsvHelper; +using Parsec.Common; +using Parsec.Extensions; using Parsec.Serialization; namespace Parsec.Shaiya.Skill; -public sealed class Skill : SData.SData +public sealed class Skill : SData.SData, ICsv { public List SkillGroups { get; set; } = new(); @@ -24,5 +28,35 @@ protected override void Write(SBinaryWriter binaryWriter) binaryWriter.Write(SkillGroups.ToSerializable()); } - // TODO: Add support for CSV serialization + public static Skill ReadFromCsv(string csvFilePath, Episode episode = Episode.EP5, Encoding? encoding = null) + { + encoding ??= Encoding.ASCII; + + using var reader = new StreamReader(csvFilePath, encoding); + using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture); + var skillRecords = csvReader.GetRecords().ToList(); + + var groupedSkillRecords = skillRecords.GroupBy(x => x.SkillId); + var skill = new Skill { Episode = episode, Encoding = encoding }; + + foreach (var groupedSkills in groupedSkillRecords) + { + var skillGroup = new SkillGroup { SkillDefinitions = groupedSkills.ToList() }; + skill.SkillGroups.Add(skillGroup); + } + + return skill; + } + + public void WriteCsv(string outputPath, Encoding? encoding = null) + { + encoding ??= Encoding.ASCII; + using var writer = new StreamWriter(outputPath, false, encoding); + using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture); + + foreach (var skillGroup in SkillGroups) + { + csvWriter.WriteRecords(skillGroup.SkillDefinitions); + } + } } diff --git a/src/Parsec/Shaiya/Skill/SkillRecord.cs b/src/Parsec/Shaiya/Skill/SkillDefinition.cs similarity index 97% rename from src/Parsec/Shaiya/Skill/SkillRecord.cs rename to src/Parsec/Shaiya/Skill/SkillDefinition.cs index 9bd88729..a9d9b057 100644 --- a/src/Parsec/Shaiya/Skill/SkillRecord.cs +++ b/src/Parsec/Shaiya/Skill/SkillDefinition.cs @@ -7,8 +7,13 @@ namespace Parsec.Shaiya.Skill; /// /// Class that represents a record for the Skill.SData and NpcSkill.SData formats /// -public sealed class SkillRecord : ISerializable +public sealed class SkillDefinition : ISerializable { + /// + /// SkillId is not part of the structure itself, instead, it's set based on the order of the skill groups. + /// + public int SkillId { get; set; } + /// /// The skill name /// @@ -458,6 +463,11 @@ public sealed class SkillRecord : ISerializable public void Read(SBinaryReader binaryReader) { + if (binaryReader.SerializationOptions.ExtraOption is int skillId) + { + SkillId = skillId; + } + var episode = binaryReader.SerializationOptions.Episode; Name = binaryReader.ReadString(); @@ -577,8 +587,8 @@ public void Write(SBinaryWriter binaryWriter) { var episode = binaryWriter.SerializationOptions.Episode; - binaryWriter.WriteLengthPrefixedString(Name); - binaryWriter.WriteLengthPrefixedString(Description); + binaryWriter.Write(Name); + binaryWriter.Write(Description); binaryWriter.Write(SkillLevel); binaryWriter.Write(Icon); binaryWriter.Write(Animation); diff --git a/src/Parsec/Shaiya/Skill/SkillGroup.cs b/src/Parsec/Shaiya/Skill/SkillGroup.cs index 07d29d44..53322a42 100644 --- a/src/Parsec/Shaiya/Skill/SkillGroup.cs +++ b/src/Parsec/Shaiya/Skill/SkillGroup.cs @@ -7,27 +7,18 @@ namespace Parsec.Shaiya.Skill; public class SkillGroup : ISerializable { - /// - /// SkillId is not part of the structure itself, instead, it's set based on the order of the skill groups. - /// - public int SkillId { get; set; } - - public List Records { get; set; } = new(); + public List SkillDefinitions { get; set; } = new(); public void Read(SBinaryReader binaryReader) { - if (binaryReader.SerializationOptions.ExtraOption is int skillId) - { - SkillId = skillId; - } - var recordCountPerGroup = GetRecordCountPerGroup(binaryReader.SerializationOptions.Episode); - Records = binaryReader.ReadList(recordCountPerGroup).ToList(); + SkillDefinitions = binaryReader.ReadList(recordCountPerGroup).ToList(); } public void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(Records.ToSerializable()); + var recordCount = GetRecordCountPerGroup(binaryWriter.SerializationOptions.Episode); + binaryWriter.Write(SkillDefinitions.Take(recordCount).ToSerializable(), lengthPrefixed: false); } private int GetRecordCountPerGroup(Episode episode) diff --git a/src/Parsec/Shaiya/Svmap/Svmap.cs b/src/Parsec/Shaiya/Svmap/Svmap.cs index 7dac92c8..cdd89d92 100644 --- a/src/Parsec/Shaiya/Svmap/Svmap.cs +++ b/src/Parsec/Shaiya/Svmap/Svmap.cs @@ -9,7 +9,7 @@ public sealed class Svmap : FileBase { public int MapSize { get; set; } - public byte[] MapHeight { get; private set; } = Array.Empty(); + public byte[] MapHeight { get; set; } = Array.Empty(); public int CellSize { get; set; } diff --git a/src/Parsec/Shaiya/Svmap/SvmapNpc.cs b/src/Parsec/Shaiya/Svmap/SvmapNpc.cs index 2a42edc7..bbb5bc87 100644 --- a/src/Parsec/Shaiya/Svmap/SvmapNpc.cs +++ b/src/Parsec/Shaiya/Svmap/SvmapNpc.cs @@ -6,7 +6,7 @@ namespace Parsec.Shaiya.Svmap; public sealed class SvmapNpc : ISerializable { - public int Type { get; set; } + public int NpcType { get; set; } public int NpcId { get; set; } @@ -14,14 +14,14 @@ public sealed class SvmapNpc : ISerializable public void Read(SBinaryReader binaryReader) { - Type = binaryReader.ReadInt32(); + NpcType = binaryReader.ReadInt32(); NpcId = binaryReader.ReadInt32(); Positions = binaryReader.ReadList().ToList(); } public void Write(SBinaryWriter binaryWriter) { - binaryWriter.Write(Type); + binaryWriter.Write(NpcType); binaryWriter.Write(NpcId); binaryWriter.Write(Positions.ToSerializable()); } diff --git a/src/Parsec/Shaiya/VAni/Vani.cs b/src/Parsec/Shaiya/VAni/Vani.cs index 2ae645cb..a5e74889 100644 --- a/src/Parsec/Shaiya/VAni/Vani.cs +++ b/src/Parsec/Shaiya/VAni/Vani.cs @@ -1,4 +1,5 @@ -using Parsec.Serialization; +using Parsec.Extensions; +using Parsec.Serialization; using Parsec.Shaiya.Common; using Parsec.Shaiya.Core; @@ -54,12 +55,7 @@ protected override void Read(SBinaryReader binaryReader) // VaniMesh instances expect the FrameCount to be set as the ExtraOption on the serialization options binaryReader.SerializationOptions.ExtraOption = FrameCount; - for (var i = 0; i < meshCount; i++) - { - var mesh = binaryReader.Read(); - Meshes.Add(mesh); - } - + Meshes = binaryReader.ReadList(meshCount).ToList(); BoundingBox2 = binaryReader.Read(); Unknown2 = binaryReader.ReadInt32(); } @@ -76,11 +72,7 @@ protected override void Write(SBinaryWriter binaryWriter) // VaniMesh instances expect the FrameCount to be set as the ExtraOption on the serialization options binaryWriter.SerializationOptions.ExtraOption = FrameCount; - foreach (var mesh in Meshes) - { - binaryWriter.Write(mesh); - } - + binaryWriter.Write(Meshes.ToSerializable(), lengthPrefixed: false); binaryWriter.Write(BoundingBox2); binaryWriter.Write(Unknown2); } diff --git a/src/Parsec/Shaiya/VAni/VaniMesh.cs b/src/Parsec/Shaiya/VAni/VaniMesh.cs index 5bb851a3..0f9c7fc5 100644 --- a/src/Parsec/Shaiya/VAni/VaniMesh.cs +++ b/src/Parsec/Shaiya/VAni/VaniMesh.cs @@ -36,7 +36,14 @@ public void Read(SBinaryReader binaryReader) TextureName = binaryReader.ReadString(); Faces = binaryReader.ReadList().ToList(); - Vertices = binaryReader.ReadList().ToList(); + + // Initialize empty vertices + var vertexCount = binaryReader.ReadInt32(); + for (var i = 0; i < vertexCount; i++) + { + var vertex = new VaniVertex(); + Vertices.Add(vertex); + } for (var frame = 0; frame < frameCount; frame++) { @@ -59,7 +66,7 @@ public void Write(SBinaryWriter binaryWriter) binaryWriter.Write(TextureName); binaryWriter.Write(Faces.ToSerializable()); - binaryWriter.Write(Vertices.ToSerializable()); + binaryWriter.Write(Vertices.Count); for (var frame = 0; frame < frameCount; frame++) { diff --git a/src/Parsec/Shaiya/VAni/VaniVertex.cs b/src/Parsec/Shaiya/VAni/VaniVertex.cs index 5379175e..481fb2b9 100644 --- a/src/Parsec/Shaiya/VAni/VaniVertex.cs +++ b/src/Parsec/Shaiya/VAni/VaniVertex.cs @@ -1,20 +1,6 @@ -using Parsec.Extensions; -using Parsec.Serialization; -using Parsec.Shaiya.Core; +namespace Parsec.Shaiya.Vani; -namespace Parsec.Shaiya.Vani; - -public sealed class VaniVertex : ISerializable +public sealed class VaniVertex { public List Frames { get; set; } = new(); - - public void Read(SBinaryReader binaryReader) - { - Frames = binaryReader.ReadList().ToList(); - } - - public void Write(SBinaryWriter binaryWriter) - { - binaryWriter.Write(Frames.ToSerializable()); - } } diff --git a/src/Parsec/Shaiya/Wld/Wld.cs b/src/Parsec/Shaiya/Wld/Wld.cs index 7126863a..ccae37c9 100644 --- a/src/Parsec/Shaiya/Wld/Wld.cs +++ b/src/Parsec/Shaiya/Wld/Wld.cs @@ -8,14 +8,14 @@ namespace Parsec.Shaiya.Wld; public sealed class Wld : FileBase { - public WldType Type { get; set; } = WldType.FLD; + public WldType WldType { get; set; } = WldType.FLD; #region FLD Only fields /// /// Map Size, must be a power of 2 (1024 or 2048) /// - public int MapSize { get; set; } + public uint MapSize { get; set; } /// /// Map used for Y coordinate calculation based on X and Z @@ -165,17 +165,17 @@ public sealed class Wld : FileBase protected override void Read(SBinaryReader binaryReader) { - var typeStr = binaryReader.ReadString(4).Trim('\0'); + var typeStr = binaryReader.ReadString(4); if (typeStr == "DUN") { - Type = WldType.DUN; + WldType = WldType.DUN; } // FLD only fields - if (Type == WldType.FLD) + if (WldType == WldType.FLD) { - MapSize = binaryReader.ReadInt32(); + MapSize = binaryReader.ReadUInt32(); var mappingSize = (int)Math.Pow(MapSize / 2f + 1, 2); Heightmap = binaryReader.ReadBytes(mappingSize * 2); @@ -217,7 +217,7 @@ protected override void Read(SBinaryReader binaryReader) NamedAreas = binaryReader.ReadList().ToList(); // NOTE: npcCount is the real npc count + the patrol coordinates count - int npcCount = binaryReader.ReadInt32(); + var npcCount = binaryReader.ReadInt32(); while (npcCount > 0) { @@ -227,7 +227,7 @@ protected override void Read(SBinaryReader binaryReader) npcCount--; } - if (Type == WldType.FLD) + if (WldType == WldType.FLD) { SkyName = binaryReader.Read(); CloudsName1 = binaryReader.Read(); @@ -267,11 +267,11 @@ private void ReadNamesAndCoordinates(SBinaryReader binaryReader, ICollection diff --git a/tests/Parsec.Tests/FileHash.cs b/tests/Parsec.Tests/FileHash.cs index 24b8a732..62136684 100644 --- a/tests/Parsec.Tests/FileHash.cs +++ b/tests/Parsec.Tests/FileHash.cs @@ -11,4 +11,9 @@ public static byte[] Checksum(string filePath) using var stream = File.OpenRead(filePath); return md5.ComputeHash(stream); } + + public static byte[] Checksum(byte[] buffer) + { + return MD5.HashData(buffer); + } } diff --git a/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs b/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs index efb8fa0c..3b55aff0 100644 --- a/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs +++ b/tests/Parsec.Tests/Shaiya/3DC/_3DCTests.cs @@ -8,7 +8,7 @@ public class _3DCTests public void _3DCReadWriteEP5Test() { const string filePath = "Shaiya/3DC/Mob_Fox_01.3DC"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(32, obj.Bones.Count); @@ -19,7 +19,7 @@ public void _3DCReadWriteEP5Test() // Export to json const string jsonPath = "Shaiya/3DC/Mob_Fox_01.3DC.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Bones.Count, objFromJson.Bones.Count); @@ -32,7 +32,7 @@ public void _3DCReadWriteEP5Test() const string newObjPath = "Shaiya/3DC/Mob_Fox_01.new.3DC"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Bones.Count, newObj.Bones.Count); @@ -47,7 +47,7 @@ public void _3DCReadWriteEP5Test() public void _3DCReadWriteEP6Test() { const string filePath = "Shaiya/3DC/pet_maddog.3DC"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(48, obj.Bones.Count); @@ -58,7 +58,7 @@ public void _3DCReadWriteEP6Test() // Export to json const string jsonPath = "Shaiya/3DC/pet_maddog.3DC.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Bones.Count, objFromJson.Bones.Count); @@ -71,7 +71,7 @@ public void _3DCReadWriteEP6Test() const string newObjPath = "Shaiya/3DC/pet_maddog.new.3DC"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Bones.Count, newObj.Bones.Count); @@ -101,16 +101,16 @@ public void _3DCMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DC/{fileName}.json"; string newObjPath = $"Shaiya/3DC/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs b/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs index 64acc74f..df77ccd5 100644 --- a/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs +++ b/tests/Parsec.Tests/Shaiya/3DE/_3DETests.cs @@ -6,7 +6,7 @@ public class _3DETests public void _3DEReadWriteTest() { const string filePath = "Shaiya/3DE/waterfall04.3DE"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(126, obj.Vertices.Count); @@ -17,7 +17,7 @@ public void _3DEReadWriteTest() // Export to json const string jsonPath = "Shaiya/3DE/waterfall04.3DE.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Vertices.Count, objFromJson.Vertices.Count); @@ -31,7 +31,7 @@ public void _3DEReadWriteTest() const string newObjPath = "Shaiya/3DE/waterfall04.new.3DE"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Vertices.Count, newObj.Vertices.Count); @@ -59,15 +59,15 @@ public void _3DEMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DE/{fileName}.json"; string newObjPath = $"Shaiya/3DE/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs b/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs index cfdf2192..ac290b76 100644 --- a/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs +++ b/tests/Parsec.Tests/Shaiya/3DO/_3DOTests.cs @@ -8,7 +8,7 @@ public class _3DOTests public void _3DOReadWriteTest() { const string filePath = "Shaiya/3DO/F_34_a002.3DO"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); // Check original EFT values Assert.Equal(1087, obj.Vertices.Count); @@ -18,7 +18,7 @@ public void _3DOReadWriteTest() // Export to json const string jsonPath = "Shaiya/3DO/F_34_a002.3DO.json"; obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(obj.Vertices.Count, objFromJson.Vertices.Count); @@ -30,7 +30,7 @@ public void _3DOReadWriteTest() const string newObjPath = "Shaiya/3DO/F_34_a002.new.3DO"; objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check fields Assert.Equal(obj.Vertices.Count, newObj.Vertices.Count); @@ -56,15 +56,15 @@ public void _3DOMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/3DO/{fileName}.json"; string newObjPath = $"Shaiya/3DO/new_{fileName}"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); obj.WriteJson(jsonPath); - var objFromJson = Reader.ReadFromJsonFile(jsonPath); + var objFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(obj.GetBytes(), objFromJson.GetBytes()); objFromJson.Write(newObjPath); - var newObj = Reader.ReadFromFile(newObjPath); + var newObj = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(obj.GetBytes(), newObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs b/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs index f046ba78..cd392826 100644 --- a/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs +++ b/tests/Parsec.Tests/Shaiya/ALT/AltTests.cs @@ -17,15 +17,15 @@ public void AltMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/ALT/{fileName}.json"; string newObjPath = $"Shaiya/ALT/new_{fileName}"; - var alt = Reader.ReadFromFile(filePath); + var alt = ParsecReader.ReadFromFile(filePath); alt.WriteJson(jsonPath); - var altFromJson = Reader.ReadFromJsonFile(jsonPath); + var altFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(alt.GetBytes(), altFromJson.GetBytes()); altFromJson.Write(newObjPath); - var newAlt = Reader.ReadFromFile(newObjPath); + var newAlt = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(alt.GetBytes(), newAlt.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/ANI/AniTests.cs b/tests/Parsec.Tests/Shaiya/ANI/AniTests.cs index e958ca41..57dd4452 100644 --- a/tests/Parsec.Tests/Shaiya/ANI/AniTests.cs +++ b/tests/Parsec.Tests/Shaiya/ANI/AniTests.cs @@ -26,15 +26,15 @@ public void AniMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/ANI/{fileName}.json"; string newObjPath = $"Shaiya/ANI/new_{fileName}"; - var ani = Reader.ReadFromFile(filePath); + var ani = ParsecReader.ReadFromFile(filePath); ani.WriteJson(jsonPath); - var aniFromJson = Reader.ReadFromJsonFile(jsonPath); + var aniFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(ani.GetBytes(), aniFromJson.GetBytes()); aniFromJson.Write(newObjPath); - var newANi = Reader.ReadFromFile(newObjPath); + var newANi = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(ani.GetBytes(), newANi.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs b/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs index 7fa01bfc..f28985fa 100644 --- a/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs +++ b/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs @@ -8,9 +8,9 @@ public void CashTest() const string filePath = "Shaiya/Cash/Cash.SData"; const string outputPath = "Shaiya/Cash/Cash_new.SData"; - var cash = Reader.ReadFromFile(filePath); + var cash = ParsecReader.ReadFromFile(filePath); cash.Write(outputPath); - var newCash = Reader.ReadFromFile(outputPath); + var newCash = ParsecReader.ReadFromFile(outputPath); Assert.Equal(cash.GetBytes(), newCash.GetBytes()); Assert.Equal(FileHash.Checksum(filePath), FileHash.Checksum(outputPath)); } diff --git a/tests/Parsec.Tests/Shaiya/Data/DataTests.cs b/tests/Parsec.Tests/Shaiya/Data/DataTests.cs index fe110c23..9e15a417 100644 --- a/tests/Parsec.Tests/Shaiya/Data/DataTests.cs +++ b/tests/Parsec.Tests/Shaiya/Data/DataTests.cs @@ -88,8 +88,8 @@ public void DataPatchingTest() var initialFiles = data.FileIndex.Keys.ToList(); // Load patches - var patch = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch.sah", "Shaiya/Data/sample.saf"); - var patch2 = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch2.sah", "Shaiya/Data/sample.saf"); + var patch = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch.sah", "Shaiya/Data/patch.saf"); + var patch2 = new Parsec.Shaiya.Data.Data("Shaiya/Data/patch2.sah", "Shaiya/Data/patch2.saf"); var patchFiles = patch.FileIndex.Keys.Concat(patch2.FileIndex.Keys).ToList(); diff --git a/tests/Parsec.Tests/Shaiya/Data/SahTests.cs b/tests/Parsec.Tests/Shaiya/Data/SahTests.cs index dfce7e59..68b83245 100644 --- a/tests/Parsec.Tests/Shaiya/Data/SahTests.cs +++ b/tests/Parsec.Tests/Shaiya/Data/SahTests.cs @@ -1,5 +1,4 @@ -using System; -using System.ComponentModel; +using System.ComponentModel; using Parsec.Shaiya.Data; namespace Parsec.Tests.Shaiya; @@ -13,7 +12,7 @@ public class SahTests [InlineData(@"new_folder\sub1\sub2\sub3", "new_file.fl")] public void SahFileExistenceTest(string folderName, string fileName) { - var sah = Reader.ReadFromFile("Shaiya/Data/sample.sah"); + var sah = ParsecReader.ReadFromFile("Shaiya/Data/sample.sah"); Assert.Equal("sah", sah.Extension); // Add folder to sah @@ -31,10 +30,6 @@ public void SahFileExistenceTest(string folderName, string fileName) var newSubfolder = sah.AddFolder($"{folderName}/sub"); Assert.True(newFolder.HasSubfolder("sub")); - - // Try to re-add file and folder - Assert.Throws(() => newFolder.AddFile(newFile1)); - Assert.Throws(() => newFolder.AddDirectory(newSubfolder)); } // [Fact] diff --git a/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs b/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs index 48540169..e2e64415 100644 --- a/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs +++ b/tests/Parsec.Tests/Shaiya/EFT/EFTTests.cs @@ -6,10 +6,10 @@ public class EftTests public void EftReadWriteTest() { const string filePath = "Shaiya/EFT/Monster.EFT"; - var eft = Reader.ReadFromFile(filePath); + var eft = ParsecReader.ReadFromFile(filePath); // Check original EFT values - Assert.Empty(eft.Objects); + Assert.Empty(eft.Meshes); Assert.Equal(111, eft.Textures.Count); Assert.Equal(294, eft.Effects.Count); Assert.Empty(eft.EffectSequences); @@ -17,10 +17,10 @@ public void EftReadWriteTest() // Export to json const string jsonPath = "Shaiya/EFT/Monster.EFT.json"; eft.WriteJson(jsonPath); - var eftFromJson = Reader.ReadFromJsonFile(jsonPath); + var eftFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields - Assert.Equal(eft.Objects.Count, eftFromJson.Objects.Count); + Assert.Equal(eft.Meshes.Count, eftFromJson.Meshes.Count); Assert.Equal(eft.Textures.Count, eftFromJson.Textures.Count); Assert.Equal(eft.Effects.Count, eftFromJson.Effects.Count); Assert.Equal(eft.EffectSequences.Count, eftFromJson.EffectSequences.Count); @@ -28,10 +28,10 @@ public void EftReadWriteTest() const string newEftPath = "Shaiya/EFT/Monster.new.EFT"; eftFromJson.Write(newEftPath); - var newEft = Reader.ReadFromFile(newEftPath); + var newEft = ParsecReader.ReadFromFile(newEftPath); // Check fields - Assert.Equal(eft.Objects.Count, newEft.Objects.Count); + Assert.Equal(eft.Meshes.Count, newEft.Meshes.Count); Assert.Equal(eft.Textures.Count, newEft.Textures.Count); Assert.Equal(eft.Effects.Count, newEft.Effects.Count); Assert.Equal(eft.EffectSequences.Count, newEft.EffectSequences.Count); @@ -60,23 +60,23 @@ public void EftMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/EFT/{fileName}.json"; string newObjPath = $"Shaiya/EFT/new_{fileName}"; - var eft = Reader.ReadFromFile(filePath); + var eft = ParsecReader.ReadFromFile(filePath); eft.Write(outputPath); eft.WriteJson(jsonPath); - var outputEft = Reader.ReadFromFile(outputPath); - var eftFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputEft = ParsecReader.ReadFromFile(outputPath); + var eftFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(eft.GetBytes(), outputEft.GetBytes()); // Assert.Equal(eft.GetBytes(), eftFromJson.GetBytes()); eftFromJson.Write(newObjPath); - var newEft = Reader.ReadFromFile(newObjPath); + var newEft = ParsecReader.ReadFromFile(newObjPath); // Since EFTs use different encodings on texts, the EFT -> JSON -> EFT conversion will modify the strings, // so a checksum can't be done here, that's why only list lengths will be compared - Assert.Equal(eft.Objects.Count, newEft.Objects.Count); + Assert.Equal(eft.Meshes.Count, newEft.Meshes.Count); Assert.Equal(eft.Textures.Count, newEft.Textures.Count); Assert.Equal(eft.Effects.Count, newEft.Effects.Count); Assert.Equal(eft.EffectSequences.Count, newEft.EffectSequences.Count); diff --git a/tests/Parsec.Tests/Shaiya/GuildHouse/GuildHouseTests.cs b/tests/Parsec.Tests/Shaiya/GuildHouse/GuildHouseTests.cs index 86285190..a26623fe 100644 --- a/tests/Parsec.Tests/Shaiya/GuildHouse/GuildHouseTests.cs +++ b/tests/Parsec.Tests/Shaiya/GuildHouse/GuildHouseTests.cs @@ -10,12 +10,12 @@ public void GuildHouseTest() const string filePath = "Shaiya/GuildHouse/GuildHouse.SData"; const string outputPath = "Shaiya/GuildHouse/GuildHouse.output.SData"; const string jsonPath = "Shaiya/GuildHouse/GuildHouse.SData.json"; - var guildHouse = Reader.ReadFromFile(filePath); + var guildHouse = ParsecReader.ReadFromFile(filePath); guildHouse.Write(outputPath); guildHouse.WriteJson(jsonPath); - var outputGuildHouse = Reader.ReadFromFile(outputPath); - var jsonGuildHouse = Reader.ReadFromJsonFile(jsonPath); + var outputGuildHouse = ParsecReader.ReadFromFile(outputPath); + var jsonGuildHouse = ParsecReader.ReadFromJsonFile(jsonPath); var expected = guildHouse.GetBytes().ToList(); Assert.Equal(expected, outputGuildHouse.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs b/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs index 54095885..5d1faf8c 100644 --- a/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs +++ b/tests/Parsec.Tests/Shaiya/ITM/ItmTests.cs @@ -16,15 +16,15 @@ public void ItmMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/ITM/{fileName}.json"; string newObjPath = $"Shaiya/ITM/new_{fileName}"; - var itm = Reader.ReadFromFile(filePath); + var itm = ParsecReader.ReadFromFile(filePath); itm.WriteJson(jsonPath); - var itmFromJson = Reader.ReadFromJsonFile(jsonPath); + var itmFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(itm.GetBytes(), itmFromJson.GetBytes()); itmFromJson.Write(newObjPath); - var newItm = Reader.ReadFromFile(newObjPath); + var newItm = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(itm.GetBytes(), newItm.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs b/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs index 2b5f1c0f..4cb76e84 100644 --- a/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs +++ b/tests/Parsec.Tests/Shaiya/Item/ItemTests.cs @@ -1,43 +1,44 @@ -// using Parsec.Common; -// -// namespace Parsec.Tests.Shaiya.Item; -// -// public class ItemTests -// { -// [Fact] -// public void ItemEp5CsvTest() -// { -// const string filePath = "Shaiya/Item/ItemEp5.SData"; -// const string csvPath = "Shaiya/Item/ItemEp5.SData.csv"; -// -// var item = Reader.ReadFromFile(filePath, Episode.EP5); -// item.WriteCsv(csvPath); -// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP5); -// Assert.Equal(item.GetBytes(Episode.EP5), itemFromCsv.GetBytes(Episode.EP5)); -// } -// -// [Fact] -// public void ItemEp6CsvTest() -// { -// const string filePath = "Shaiya/Item/ItemEp6.SData"; -// const string csvPath = "Shaiya/Item/ItemEp6.SData.csv"; -// -// var item = Reader.ReadFromFile(filePath, Episode.EP6); -// item.WriteCsv(csvPath); -// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6); -// Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); -// } -// -// [Fact] -// public void ItemEp6Csv_EncodingTest() -// { -// const string filePath = "Shaiya/Item/ItemEp6_1251.SData"; -// const string csvPath = "Shaiya/Item/ItemEp6_1252.SData.csv"; -// -// var encoding = TestEncodings.Encoding1251; -// var item = Reader.ReadFromFile(filePath, Episode.EP6, encoding); -// item.WriteCsv(csvPath, encoding); -// var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6, encoding); -// Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); -// } -// } +using Parsec.Common; + +namespace Parsec.Tests.Shaiya.Item; + +public class ItemTests +{ + [Fact] + public void ItemEp5CsvTest() + { + const string filePath = "Shaiya/Item/ItemEp5.SData"; + const string csvPath = "Shaiya/Item/ItemEp5.SData.csv"; + + var item = ParsecReader.ReadFromFile(filePath); + item.WriteCsv(csvPath); + var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP5); + + Assert.Equal(item.GetBytes(), itemFromCsv.GetBytes()); + } + + [Fact] + public void ItemEp6CsvTest() + { + const string filePath = "Shaiya/Item/ItemEp6.SData"; + const string csvPath = "Shaiya/Item/ItemEp6.SData.csv"; + + var item = ParsecReader.ReadFromFile(filePath, Episode.EP6); + item.WriteCsv(csvPath); + var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6); + Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); + } + + [Fact] + public void ItemEp6Csv_EncodingTest() + { + const string filePath = "Shaiya/Item/ItemEp6_1251.SData"; + const string csvPath = "Shaiya/Item/ItemEp6_1252.SData.csv"; + + var encoding = TestEncodings.Encoding1251; + var item = ParsecReader.ReadFromFile(filePath, Episode.EP6, encoding); + item.WriteCsv(csvPath, encoding); + var itemFromCsv = Parsec.Shaiya.Item.Item.ReadFromCsv(csvPath, Episode.EP6, encoding); + Assert.Equal(item.GetBytes(Episode.EP6), itemFromCsv.GetBytes(Episode.EP6)); + } +} diff --git a/tests/Parsec.Tests/Shaiya/KillStatus/KillStatusTests.cs b/tests/Parsec.Tests/Shaiya/KillStatus/KillStatusTests.cs index 5e055e29..a542e6dd 100644 --- a/tests/Parsec.Tests/Shaiya/KillStatus/KillStatusTests.cs +++ b/tests/Parsec.Tests/Shaiya/KillStatus/KillStatusTests.cs @@ -10,12 +10,12 @@ public void KillStatusTest() const string filePath = "Shaiya/KillStatus/KillStatus.SData"; const string outputPath = "Shaiya/KillStatus/KillStatus.output.SData"; const string jsonPath = "Shaiya/KillStatus/KillStatus.SData.json"; - var obj = Reader.ReadFromFile(filePath); + var obj = ParsecReader.ReadFromFile(filePath); obj.Write(outputPath); obj.WriteJson(jsonPath); - var outputObj = Reader.ReadFromFile(outputPath); - var jsonObj = Reader.ReadFromJsonFile(jsonPath); + var outputObj = ParsecReader.ReadFromFile(outputPath); + var jsonObj = ParsecReader.ReadFromJsonFile(jsonPath); var expected = obj.GetBytes().ToList(); Assert.Equal(expected, outputObj.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs b/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs index 9c957e11..8d734df3 100644 --- a/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs +++ b/tests/Parsec.Tests/Shaiya/MAni/MAniTests.cs @@ -20,15 +20,15 @@ public void MAniMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MAni/{fileName}.json"; string newObjPath = $"Shaiya/MAni/new_{fileName}"; - var mani = Reader.ReadFromFile(filePath); + var mani = ParsecReader.ReadFromFile(filePath); mani.WriteJson(jsonPath); - var maniFromJson = Reader.ReadFromJsonFile(jsonPath); + var maniFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mani.GetBytes(), maniFromJson.GetBytes()); maniFromJson.Write(newObjPath); - var newMani = Reader.ReadFromFile(newObjPath); + var newMani = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mani.GetBytes(), newMani.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs b/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs index 3e179685..03abc503 100644 --- a/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs +++ b/tests/Parsec.Tests/Shaiya/MLT/MltTests.cs @@ -23,19 +23,19 @@ public void MltMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MLT/{fileName}.json"; string newObjPath = $"Shaiya/MLT/new_{fileName}"; - var mlt = Reader.ReadFromFile(filePath); + var mlt = ParsecReader.ReadFromFile(filePath); mlt.Write(outputPath); mlt.WriteJson(jsonPath); - var outputMlt = Reader.ReadFromFile(outputPath); - var mltFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMlt = ParsecReader.ReadFromFile(outputPath); + var mltFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mlt.GetBytes(), outputMlt.GetBytes()); Assert.Equal(mlt.GetBytes(), mltFromJson.GetBytes()); mltFromJson.Write(newObjPath); - var newMlt = Reader.ReadFromFile(newObjPath); + var newMlt = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mlt.GetBytes(), newMlt.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs b/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs index 79199147..52b15c34 100644 --- a/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs +++ b/tests/Parsec.Tests/Shaiya/MLX/MlxTests.cs @@ -26,19 +26,19 @@ public void MlxMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MLX/{fileName}.json"; string newObjPath = $"Shaiya/MLX/new_{fileName}"; - var mlx = Reader.ReadFromFile(filePath); + var mlx = ParsecReader.ReadFromFile(filePath); mlx.Write(outputPath); mlx.WriteJson(jsonPath); - var outputMlx = Reader.ReadFromFile(outputPath); - var mlxFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMlx = ParsecReader.ReadFromFile(outputPath); + var mlxFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mlx.GetBytes(), outputMlx.GetBytes()); Assert.Equal(mlx.GetBytes(), mlxFromJson.GetBytes()); mlxFromJson.Write(newObjPath); - var newMlx = Reader.ReadFromFile(newObjPath); + var newMlx = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mlx.GetBytes(), newMlx.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/MON/MonTests.cs b/tests/Parsec.Tests/Shaiya/MON/MonTests.cs index 6a8fda74..ad08e556 100644 --- a/tests/Parsec.Tests/Shaiya/MON/MonTests.cs +++ b/tests/Parsec.Tests/Shaiya/MON/MonTests.cs @@ -17,20 +17,20 @@ public void MonMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/MON/{fileName}.json"; string newObjPath = $"Shaiya/MON/new_{fileName}"; - var mon = Reader.ReadFromFile(filePath); + var mon = ParsecReader.ReadFromFile(filePath); mon.Write(outputPath); mon.WriteJson(jsonPath); - var outputMon = Reader.ReadFromFile(outputPath); - var monFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputMon = ParsecReader.ReadFromFile(outputPath); + var monFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(mon.GetBytes(), outputMon.GetBytes()); Assert.Equal(mon.GetBytes(), monFromJson.GetBytes()); monFromJson.Write(newObjPath); - var newMon = Reader.ReadFromFile(newObjPath); + var newMon = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(mon.GetBytes(), newMon.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs b/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs index 1c5afe69..f652c5ab 100644 --- a/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs +++ b/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs @@ -8,7 +8,7 @@ public void MonsterCsvTest() const string filePath = "Shaiya/Monster/Monster.SData"; const string csvPath = "Shaiya/Monster/Monster.SData.csv"; - var monster = Reader.ReadFromFile(filePath); + var monster = ParsecReader.ReadFromFile(filePath); monster.WriteCsv(csvPath); var monsterFromCsv = Parsec.Shaiya.Monster.Monster.ReadFromCsv(csvPath); Assert.Equal(monster.GetBytes(), monsterFromCsv.GetBytes()); @@ -22,7 +22,7 @@ public void MonsterCsv_EncodingTest() var encoding = TestEncodings.Encoding1252; - var monster = Reader.ReadFromFile(filePath, encoding: encoding); + var monster = ParsecReader.ReadFromFile(filePath, encoding: encoding); monster.WriteCsv(csvPath, encoding); var monsterFromCsv = Parsec.Shaiya.Monster.Monster.ReadFromCsv(csvPath, encoding); Assert.Equal(monster.GetBytes(), monsterFromCsv.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/SData/BinarySDataTests.cs b/tests/Parsec.Tests/Shaiya/SData/BinarySDataTests.cs index 7f3bc813..0c581b01 100644 --- a/tests/Parsec.Tests/Shaiya/SData/BinarySDataTests.cs +++ b/tests/Parsec.Tests/Shaiya/SData/BinarySDataTests.cs @@ -14,7 +14,7 @@ public void BinarySDataCsvTest() const string csvDecryptedOutputPath = "Shaiya/SData/DBItemData.csv.dec.SData"; const string csvEncryptedOutputPath = "Shaiya/SData/DBItemData.csv.enc.SData"; - var itemData = Reader.ReadFromFile(filePath); + var itemData = ParsecReader.ReadFromFile(filePath); // Clear header so that only the field names and data are checked itemData.Header = new byte[128]; itemData.WriteCsv(csvPath); diff --git a/tests/Parsec.Tests/Shaiya/SData/SDataTests.cs b/tests/Parsec.Tests/Shaiya/SData/SDataTests.cs index d2b7d639..a637305d 100644 --- a/tests/Parsec.Tests/Shaiya/SData/SDataTests.cs +++ b/tests/Parsec.Tests/Shaiya/SData/SDataTests.cs @@ -26,6 +26,9 @@ public void SDataBufferEncryptionTest() Assert.True(Parsec.Shaiya.SData.SData.IsEncrypted(encryptedFileBuffer)); Assert.False(Parsec.Shaiya.SData.SData.IsEncrypted(decryptedBuffer)); + + Assert.Equal(FileHash.Checksum(decryptedBuffer), FileHash.Checksum(decryptedFileBuffer)); + Assert.Equal(FileHash.Checksum(encryptedFileBuffer), FileHash.Checksum(encryptedFileBuffer)); } [Fact] @@ -33,20 +36,21 @@ public void SDataBufferEncryptionTest() public void SDataFileEncryptionTest() { // Encrypt file - const string encryptedOutputPath = "Shaiya/SData/ItemEp6.encrypted.SData"; - Parsec.Shaiya.SData.SData.EncryptFile(DecryptedSDataFilePath, encryptedOutputPath); + const string outputEncryptedFilePath = "Shaiya/SData/ItemEp6.encrypted.SData"; + Parsec.Shaiya.SData.SData.EncryptFile(DecryptedSDataFilePath, outputEncryptedFilePath); - var encryptedBuffer = File.ReadAllBytes(encryptedOutputPath); + var encryptedBuffer = File.ReadAllBytes(outputEncryptedFilePath); Assert.True(Parsec.Shaiya.SData.SData.IsEncrypted(encryptedBuffer)); // Decrypt file - const string decryptedOutputPath = "Shaiya/SData/ItemEp6.decrypted.SData"; - Parsec.Shaiya.SData.SData.DecryptFile(EncryptedSDataFilePath, decryptedOutputPath); + const string outputDecryptedFilePath = "Shaiya/SData/ItemEp6.decrypted.SData"; + Parsec.Shaiya.SData.SData.DecryptFile(EncryptedSDataFilePath, outputDecryptedFilePath); - var decryptedBuffer = File.ReadAllBytes(decryptedOutputPath); + var decryptedBuffer = File.ReadAllBytes(outputDecryptedFilePath); Assert.False(Parsec.Shaiya.SData.SData.IsEncrypted(decryptedBuffer)); - Assert.Equal(FileHash.Checksum(EncryptedSDataFilePath), FileHash.Checksum(encryptedOutputPath)); + Assert.Equal(FileHash.Checksum(DecryptedSDataFilePath), FileHash.Checksum(outputDecryptedFilePath)); + Assert.Equal(FileHash.Checksum(EncryptedSDataFilePath), FileHash.Checksum(outputEncryptedFilePath)); } [Fact] @@ -56,7 +60,7 @@ public void SDataDecryptionTest() const string encryptedOutputPath = "Shaiya/SData/ItemEp6.encrypted.SData"; const string decryptedOutputPath = "Shaiya/SData/ItemEp6.decrypted.SData"; - var item = Reader.ReadFromFile(EncryptedSDataFilePath, Episode.EP6); + var item = ParsecReader.ReadFromFile(EncryptedSDataFilePath, Episode.EP6); item.WriteEncrypted(encryptedOutputPath); item.WriteDecrypted(decryptedOutputPath); diff --git a/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs b/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs index 50ed3141..98f25e52 100644 --- a/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs +++ b/tests/Parsec.Tests/Shaiya/SMOD/SmodTests.cs @@ -6,7 +6,7 @@ public class SmodTests public void SmodReadWriteTest() { const string filePath = "Shaiya/SMOD/a2_Elf_House_01.SMOD"; - var smod = Reader.ReadFromFile(filePath); + var smod = ParsecReader.ReadFromFile(filePath); // Check original EFT values Assert.Single(smod.CollisionObjects); @@ -15,7 +15,7 @@ public void SmodReadWriteTest() // Export to json const string jsonPath = "Shaiya/SMOD/a2_Elf_House_01.SMOD.json"; smod.WriteJson(jsonPath); - var smodFromJson = Reader.ReadFromJsonFile(jsonPath); + var smodFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check fields Assert.Equal(smod.CollisionObjects.Count, smodFromJson.CollisionObjects.Count); @@ -27,7 +27,7 @@ public void SmodReadWriteTest() const string newObjPath = "Shaiya/SMOD/a2_Elf_House_01.new.SMOD"; smodFromJson.Write(newObjPath); - var newSmod = Reader.ReadFromFile(newObjPath); + var newSmod = ParsecReader.ReadFromFile(newObjPath); // Check fields Assert.Equal(smod.CollisionObjects.Count, newSmod.CollisionObjects.Count); @@ -54,15 +54,15 @@ public void SmodMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/SMOD/{fileName}.json"; string newObjPath = $"Shaiya/SMOD/new_{fileName}"; - var smod = Reader.ReadFromFile(filePath); + var smod = ParsecReader.ReadFromFile(filePath); smod.WriteJson(jsonPath); - var smodFromJson = Reader.ReadFromJsonFile(jsonPath); + var smodFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(smod.GetBytes(), smodFromJson.GetBytes()); smodFromJson.Write(newObjPath); - var newSmod = Reader.ReadFromFile(newObjPath); + var newSmod = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(smod.GetBytes(), newSmod.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Seff/SeffTests.cs b/tests/Parsec.Tests/Shaiya/Seff/SeffTests.cs index 21ebc6ae..94b21ef9 100644 --- a/tests/Parsec.Tests/Shaiya/Seff/SeffTests.cs +++ b/tests/Parsec.Tests/Shaiya/Seff/SeffTests.cs @@ -15,19 +15,19 @@ public void SeffMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/Seff/{fileName}.json"; string newFilePath = $"Shaiya/Seff/new_{fileName}"; - var seff = Reader.ReadFromFile(filePath); + var seff = ParsecReader.ReadFromFile(filePath); seff.Write(outputPath); seff.WriteJson(jsonPath); - var outputSeff = Reader.ReadFromFile(outputPath); - var seffFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputSeff = ParsecReader.ReadFromFile(outputPath); + var seffFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(seff.GetBytes(), outputSeff.GetBytes()); Assert.Equal(seff.GetBytes(), seffFromJson.GetBytes()); seffFromJson.Write(newFilePath); - var newSeff = Reader.ReadFromFile(newFilePath); + var newSeff = ParsecReader.ReadFromFile(newFilePath); // Check bytes Assert.Equal(seff.GetBytes(), newSeff.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/SetItem/SetItemTests.cs b/tests/Parsec.Tests/Shaiya/SetItem/SetItemTests.cs index db0b228f..22b06547 100644 --- a/tests/Parsec.Tests/Shaiya/SetItem/SetItemTests.cs +++ b/tests/Parsec.Tests/Shaiya/SetItem/SetItemTests.cs @@ -11,19 +11,19 @@ public void SetItemReadWriteTest() const string newFilePath = "Shaiya/SetItem/new_SetItem.SData"; Parsec.Shaiya.SData.SData.DecryptFile(filePath, filePath); - var setItem = Reader.ReadFromFile(filePath); + var setItem = ParsecReader.ReadFromFile(filePath); setItem.Write(outputPath); setItem.WriteJson(jsonPath); - var outputSetItem = Reader.ReadFromFile(outputPath); - var setItemFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputSetItem = ParsecReader.ReadFromFile(outputPath); + var setItemFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(setItem.GetBytes(), outputSetItem.GetBytes()); Assert.Equal(setItem.GetBytes(), setItemFromJson.GetBytes()); setItemFromJson.Write(newFilePath); - var newSeff = Reader.ReadFromFile(newFilePath); + var newSeff = ParsecReader.ReadFromFile(newFilePath); // Check bytes Assert.Equal(setItem.GetBytes(), newSeff.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs b/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs index fb1cb055..59f8ec93 100644 --- a/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs +++ b/tests/Parsec.Tests/Shaiya/Skill/SkillTests.cs @@ -1,81 +1,81 @@ -// using System.Linq; -// using Parsec.Common; -// using Parsec.Shaiya.Skill; -// -// namespace Parsec.Tests.Shaiya.Skill; -// -// public class SkillTests -// { -// [Theory] -// [InlineData("SkillEp5", Episode.EP5)] -// [InlineData("SkillEp6", Episode.EP6)] -// public void SkillTest(string fileName, Episode episode) -// { -// string filePath = $"Shaiya/Skill/{fileName}.SData"; -// string outputPath = $"Shaiya/Skill/output_{fileName}.SData"; -// string jsonPath = $"Shaiya/Skill/{fileName}.SData.json"; -// string csvPath = $"Shaiya/Skill/{fileName}.SData.csv"; -// -// var skill = Reader.ReadFromFile(filePath, episode); -// skill.Write(outputPath, episode); -// skill.WriteJson(jsonPath); -// skill.WriteCsv(csvPath); -// -// var outputSkill = Reader.ReadFromFile(outputPath, episode); -// var jsonSkill = Reader.ReadFromJsonFile(jsonPath); -// var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); -// -// var expected = skill.GetBytes().ToList(); -// Assert.Equal(expected, outputSkill.GetBytes()); -// Assert.Equal(expected, jsonSkill.GetBytes()); -// Assert.Equal(expected, csvSkill.GetBytes()); -// } -// -// [Fact] -// public void DbSkillTest() -// { -// const string filePath = "Shaiya/Skill/DBSkillData.SData"; -// const string outputPath = "Shaiya/Skill/output_DBSkillData.SData"; -// const string jsonPath = "Shaiya/Skill/DBSkillData.SData.json"; -// const string csvPath = "Shaiya/Skill/DBSkillData.SData.csv"; -// -// var dbSkill = Reader.ReadFromFile(filePath); -// dbSkill.Write(outputPath); -// dbSkill.WriteJson(jsonPath); -// dbSkill.WriteCsv(csvPath); -// -// var outputDbSkill = Reader.ReadFromFile(outputPath); -// var jsonDbSkill = Reader.ReadFromJsonFile(jsonPath); -// var csvSkill = DBSkillData.ReadFromCsv(csvPath); -// -// var expected = dbSkill.GetBytes().ToList(); -// Assert.Equal(expected, outputDbSkill.GetBytes()); -// Assert.Equal(expected, jsonDbSkill.GetBytes()); -// // For the csv check, skip the 128-byte header, which gets lost in the process -// Assert.Equal(expected.Skip(128), csvSkill.GetBytes().Skip(128)); -// } -// -// [Fact] -// public void DbSkillTextTest() -// { -// const string filePath = "Shaiya/Skill/DBSkillText_USA.SData"; -// const string outputPath = "Shaiya/Skill/output_DBSkillText_USA.SData"; -// const string jsonPath = "Shaiya/Skill/DBSkillText_USA.SData.json"; -// const string csvPath = "Shaiya/Skill/DBSkillText_USA.SData.csv"; -// -// var skillText = Reader.ReadFromFile(filePath); -// skillText.Write(outputPath); -// skillText.WriteJson(jsonPath); -// skillText.WriteCsv(csvPath); -// -// var outputSkillText = Reader.ReadFromFile(outputPath); -// var jsonSkillText = Reader.ReadFromJsonFile(jsonPath); -// var csvSkillText = DBSkillText.ReadFromCsv(csvPath); -// -// var expected = skillText.GetBytes().ToList(); -// Assert.Equal(expected, outputSkillText.GetBytes()); -// Assert.Equal(expected, jsonSkillText.GetBytes()); -// // For the csv check, skip the 128-byte header, which gets lost in the process -// Assert.Equal(expected.Skip(128), csvSkillText.GetBytes().Skip(128)); -// } -// } +using System.Linq; +using Parsec.Common; +using Parsec.Shaiya.Skill; + +namespace Parsec.Tests.Shaiya.Skill; + +public class SkillTests +{ + [Theory] + [InlineData("SkillEp5", Episode.EP5)] + [InlineData("SkillEp6", Episode.EP6)] + public void SkillTest(string fileName, Episode episode) + { + var filePath = $"Shaiya/Skill/{fileName}.SData"; + var outputPath = $"Shaiya/Skill/output_{fileName}.SData"; + var jsonPath = $"Shaiya/Skill/{fileName}.SData.json"; + var csvPath = $"Shaiya/Skill/{fileName}.SData.csv"; + + var skill = ParsecReader.ReadFromFile(filePath, episode); + skill.Write(outputPath, episode); + skill.WriteJson(jsonPath); + skill.WriteCsv(csvPath); + + var outputSkill = ParsecReader.ReadFromFile(outputPath, episode); + var jsonSkill = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); + + var expected = skill.GetBytes().ToList(); + Assert.Equal(expected, outputSkill.GetBytes()); + Assert.Equal(expected, jsonSkill.GetBytes()); + Assert.Equal(expected, csvSkill.GetBytes()); + } + + [Fact] + public void DbSkillTest() + { + const string filePath = "Shaiya/Skill/DBSkillData.SData"; + const string outputPath = "Shaiya/Skill/output_DBSkillData.SData"; + const string jsonPath = "Shaiya/Skill/DBSkillData.SData.json"; + const string csvPath = "Shaiya/Skill/DBSkillData.SData.csv"; + + var dbSkill = ParsecReader.ReadFromFile(filePath); + dbSkill.Write(outputPath); + dbSkill.WriteJson(jsonPath); + dbSkill.WriteCsv(csvPath); + + var outputDbSkill = ParsecReader.ReadFromFile(outputPath); + var jsonDbSkill = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSkill = DBSkillData.ReadFromCsv(csvPath); + + var expected = dbSkill.GetBytes().ToList(); + Assert.Equal(expected, outputDbSkill.GetBytes()); + Assert.Equal(expected, jsonDbSkill.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvSkill.GetBytes().Skip(128)); + } + + [Fact] + public void DbSkillTextTest() + { + const string filePath = "Shaiya/Skill/DBSkillText_USA.SData"; + const string outputPath = "Shaiya/Skill/output_DBSkillText_USA.SData"; + const string jsonPath = "Shaiya/Skill/DBSkillText_USA.SData.json"; + const string csvPath = "Shaiya/Skill/DBSkillText_USA.SData.csv"; + + var skillText = ParsecReader.ReadFromFile(filePath); + skillText.Write(outputPath); + skillText.WriteJson(jsonPath); + skillText.WriteCsv(csvPath); + + var outputSkillText = ParsecReader.ReadFromFile(outputPath); + var jsonSkillText = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSkillText = DBSkillText.ReadFromCsv(csvPath); + + var expected = skillText.GetBytes().ToList(); + Assert.Equal(expected, outputSkillText.GetBytes()); + Assert.Equal(expected, jsonSkillText.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvSkillText.GetBytes().Skip(128)); + } +} diff --git a/tests/Parsec.Tests/Shaiya/Svmap/SvmapTests.cs b/tests/Parsec.Tests/Shaiya/Svmap/SvmapTests.cs index 3398e41b..6c5a2a9a 100644 --- a/tests/Parsec.Tests/Shaiya/Svmap/SvmapTests.cs +++ b/tests/Parsec.Tests/Shaiya/Svmap/SvmapTests.cs @@ -19,17 +19,17 @@ public void SmodMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/Svmap/{fileName}.json"; string newObjPath = $"Shaiya/Svmap/new_{fileName}"; - var smod = Reader.ReadFromFile(filePath); - smod.WriteJson(jsonPath); - var smodFromJson = Reader.ReadFromJsonFile(jsonPath); + var svmap = ParsecReader.ReadFromFile(filePath); + svmap.WriteJson(jsonPath); + var svmapFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes - Assert.Equal(smod.GetBytes(), smodFromJson.GetBytes()); + Assert.Equal(svmap.GetBytes(), svmapFromJson.GetBytes()); - smodFromJson.Write(newObjPath); - var newSmod = Reader.ReadFromFile(newObjPath); + svmapFromJson.Write(newObjPath); + var newSmod = ParsecReader.ReadFromFile(newObjPath); // Check bytes - Assert.Equal(smod.GetBytes(), newSmod.GetBytes()); + Assert.Equal(svmap.GetBytes(), newSmod.GetBytes()); } } diff --git a/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs b/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs index e64e697d..f81b4931 100644 --- a/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs +++ b/tests/Parsec.Tests/Shaiya/VAni/VAniTests.cs @@ -18,15 +18,15 @@ public void VaniMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/VAni/{fileName}.json"; string newObjPath = $"Shaiya/VAni/new_{fileName}"; - var vani = Reader.ReadFromFile(filePath); + var vani = ParsecReader.ReadFromFile(filePath); vani.WriteJson(jsonPath); - var vaniFromJson = Reader.ReadFromJsonFile(jsonPath); + var vaniFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(vani.GetBytes(), vaniFromJson.GetBytes()); vaniFromJson.Write(newObjPath); - var newVani = Reader.ReadFromFile(newObjPath); + var newVani = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(vani.GetBytes(), newVani.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs index 909c56ed..aec949ce 100644 --- a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs +++ b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs @@ -16,19 +16,19 @@ public void WldMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/WLD/{fileName}.json"; string newObjPath = $"Shaiya/WLD/new_{fileName}"; - var wld = Reader.ReadFromFile(filePath); + var wld = ParsecReader.ReadFromFile(filePath); wld.Write(outputPath); wld.WriteJson(jsonPath); - var outputWld = Reader.ReadFromFile(outputPath); - var wldFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputWld = ParsecReader.ReadFromFile(outputPath); + var wldFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(wld.GetBytes(), outputWld.GetBytes()); Assert.Equal(wld.GetBytes(), wldFromJson.GetBytes()); wldFromJson.Write(newObjPath); - var newZon = Reader.ReadFromFile(newObjPath); + var newZon = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(wld.GetBytes(), newZon.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Wtr/WtrTests.cs b/tests/Parsec.Tests/Shaiya/Wtr/WtrTests.cs index 9fb8e655..fa4689bf 100644 --- a/tests/Parsec.Tests/Shaiya/Wtr/WtrTests.cs +++ b/tests/Parsec.Tests/Shaiya/Wtr/WtrTests.cs @@ -15,15 +15,15 @@ public void WtrMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/Wtr/{fileName}.json"; string newObjPath = $"Shaiya/Wtr/new_{fileName}"; - var wtr = Reader.ReadFromFile(filePath); + var wtr = ParsecReader.ReadFromFile(filePath); wtr.WriteJson(jsonPath); - var wtrFromJson = Reader.ReadFromJsonFile(jsonPath); + var wtrFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(wtr.GetBytes(), wtrFromJson.GetBytes()); wtrFromJson.Write(newObjPath); - var newWtr = Reader.ReadFromFile(newObjPath); + var newWtr = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(wtr.GetBytes(), newWtr.GetBytes()); diff --git a/tests/Parsec.Tests/Shaiya/Zon/ZonTests.cs b/tests/Parsec.Tests/Shaiya/Zon/ZonTests.cs index 7b7846c6..5c0c47b7 100644 --- a/tests/Parsec.Tests/Shaiya/Zon/ZonTests.cs +++ b/tests/Parsec.Tests/Shaiya/Zon/ZonTests.cs @@ -11,7 +11,7 @@ public void ZonMultipleReadWriteTest(string fileName) string jsonPath = $"Shaiya/Zon/{fileName}.json"; string newObjPath = $"Shaiya/Zon/new_{fileName}"; - var zon = Reader.ReadFromFile(filePath); + var zon = ParsecReader.ReadFromFile(filePath); // Since record descriptions use different encodings for the Description string, the Zon -> JSON -> Zon conversion // will always modify the Description @@ -21,15 +21,15 @@ public void ZonMultipleReadWriteTest(string fileName) zon.Write(outputPath); zon.WriteJson(jsonPath); - var outputZon = Reader.ReadFromFile(outputPath); - var zonFromJson = Reader.ReadFromJsonFile(jsonPath); + var outputZon = ParsecReader.ReadFromFile(outputPath); + var zonFromJson = ParsecReader.ReadFromJsonFile(jsonPath); // Check bytes Assert.Equal(zon.GetBytes(), outputZon.GetBytes()); Assert.Equal(zon.GetBytes(), zonFromJson.GetBytes()); zonFromJson.Write(newObjPath); - var newZon = Reader.ReadFromFile(newObjPath); + var newZon = ParsecReader.ReadFromFile(newObjPath); // Check bytes Assert.Equal(zon.GetBytes(), newZon.GetBytes()); From 41f7046e7934367ad3fb3f82fa20a6893c23814d Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 16:18:06 -0300 Subject: [PATCH 08/18] fix Data sample --- samples/Data/Program.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/Data/Program.cs b/samples/Data/Program.cs index 3c47392d..9ef2992a 100644 --- a/samples/Data/Program.cs +++ b/samples/Data/Program.cs @@ -11,7 +11,7 @@ private static void Main(string[] args) #region Read Data // Read data from .sah and .saf files - Parsec.Shaiya.Data.Data data = new("data.sah"); + Parsec.Shaiya.Data.Data data = new("data.sah", "data.saf"); // Find the file you want to extract with it's full relative path // Keep in mind that in Episode 8, the relative path for this same case would be "data/world/2.svmap From 06a77c030c582b0bdd1111df2b252da5c6f773c3 Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 16:27:56 -0300 Subject: [PATCH 09/18] test(TransformModel): add tests --- samples/Data/Program.cs | 1 - tests/Parsec.Tests/Parsec.Tests.csproj | 6 + .../Shaiya/NpcSkill/NpcSkillTests.cs | 162 +++++++++--------- .../TransformModel/DBTransformModelData.SData | Bin 0 -> 259 bytes .../DBTransformWeaponModelData.SData | Bin 0 -> 581 bytes .../TransformModel/TransformModelTests.cs | 55 ++++++ tests/Parsec.Tests/Shaiya/WLD/WldTests.cs | 4 +- 7 files changed, 144 insertions(+), 84 deletions(-) create mode 100644 tests/Parsec.Tests/Shaiya/TransformModel/DBTransformModelData.SData create mode 100644 tests/Parsec.Tests/Shaiya/TransformModel/DBTransformWeaponModelData.SData create mode 100644 tests/Parsec.Tests/Shaiya/TransformModel/TransformModelTests.cs diff --git a/samples/Data/Program.cs b/samples/Data/Program.cs index 9ef2992a..2d243f4a 100644 --- a/samples/Data/Program.cs +++ b/samples/Data/Program.cs @@ -14,7 +14,6 @@ private static void Main(string[] args) Parsec.Shaiya.Data.Data data = new("data.sah", "data.saf"); // Find the file you want to extract with it's full relative path - // Keep in mind that in Episode 8, the relative path for this same case would be "data/world/2.svmap var file = data.GetFile("world/2.svmap"); // Extract the selected file data.Extract(file, "extracted"); diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index 00bdf214..0a4fd61b 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -713,5 +713,11 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs b/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs index 5b7d13c1..d898dc45 100644 --- a/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs +++ b/tests/Parsec.Tests/Shaiya/NpcSkill/NpcSkillTests.cs @@ -1,81 +1,81 @@ -// using System.Linq; -// using Parsec.Common; -// using Parsec.Shaiya.NpcSkill; -// -// namespace Parsec.Tests.Shaiya.NpcSkill; -// -// public class NpcSkillTests -// { -// [Theory] -// [InlineData("NpcSkillEp5", Episode.EP5)] -// [InlineData("NpcSkillEp6", Episode.EP6)] -// public void NpcSkillTest(string fileName, Episode episode) -// { -// string filePath = $"Shaiya/NpcSkill/{fileName}.SData"; -// string outputPath = $"Shaiya/NpcSkill/output_{fileName}.SData"; -// string jsonPath = $"Shaiya/NpcSkill/{fileName}.SData.json"; -// string csvPath = $"Shaiya/NpcSkill/{fileName}.SData.csv"; -// -// var npcSkill = Reader.ReadFromFile(filePath, episode); -// npcSkill.Write(outputPath, episode); -// npcSkill.WriteJson(jsonPath); -// npcSkill.WriteCsv(csvPath); -// -// var outputSkill = Reader.ReadFromFile(outputPath, episode); -// var jsonSkill = Reader.ReadFromJsonFile(jsonPath); -// var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); -// -// var expected = npcSkill.GetBytes().ToList(); -// Assert.Equal(expected, outputSkill.GetBytes()); -// Assert.Equal(expected, jsonSkill.GetBytes()); -// Assert.Equal(expected, csvSkill.GetBytes()); -// } -// -// [Fact] -// public void DbSkillTest() -// { -// const string filePath = "Shaiya/NpcSkill/DBNpcSkillData.SData"; -// const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillData.SData"; -// const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.json"; -// const string csvPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.csv"; -// -// var npcSkill = Reader.ReadFromFile(filePath); -// npcSkill.Write(outputPath); -// npcSkill.WriteJson(jsonPath); -// npcSkill.WriteCsv(csvPath); -// -// var outputNpcSkill = Reader.ReadFromFile(outputPath); -// var jsonNpcSkill = Reader.ReadFromJsonFile(jsonPath); -// var csvNpcSkill = DBNpcSkillData.ReadFromCsv(csvPath); -// -// var expected = npcSkill.GetBytes().ToList(); -// Assert.Equal(expected, outputNpcSkill.GetBytes()); -// Assert.Equal(expected, jsonNpcSkill.GetBytes()); -// // For the csv check, skip the 128-byte header, which gets lost in the process -// Assert.Equal(expected.Skip(128), csvNpcSkill.GetBytes().Skip(128)); -// } -// -// [Fact] -// public void DbSkillTextTest() -// { -// const string filePath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData"; -// const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillText_USA.SData"; -// const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.json"; -// const string csvPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.csv"; -// -// var npcSkillText = Reader.ReadFromFile(filePath); -// npcSkillText.Write(outputPath); -// npcSkillText.WriteJson(jsonPath); -// npcSkillText.WriteCsv(csvPath); -// -// var outputNpcSkillText = Reader.ReadFromFile(outputPath); -// var jsonNpcSkillText = Reader.ReadFromJsonFile(jsonPath); -// var csvNpcSkillText = DBNpcSkillText.ReadFromCsv(csvPath); -// -// var expected = npcSkillText.GetBytes().ToList(); -// Assert.Equal(expected, outputNpcSkillText.GetBytes()); -// Assert.Equal(expected, jsonNpcSkillText.GetBytes()); -// // For the csv check, skip the 128-byte header, which gets lost in the process -// Assert.Equal(expected.Skip(128), csvNpcSkillText.GetBytes().Skip(128)); -// } -// } +using System.Linq; +using Parsec.Common; +using Parsec.Shaiya.NpcSkill; + +namespace Parsec.Tests.Shaiya.NpcSkill; + +public class NpcSkillTests +{ + [Theory] + [InlineData("NpcSkillEp5", Episode.EP5)] + [InlineData("NpcSkillEp6", Episode.EP6)] + public void NpcSkillTest(string fileName, Episode episode) + { + string filePath = $"Shaiya/NpcSkill/{fileName}.SData"; + string outputPath = $"Shaiya/NpcSkill/output_{fileName}.SData"; + string jsonPath = $"Shaiya/NpcSkill/{fileName}.SData.json"; + string csvPath = $"Shaiya/NpcSkill/{fileName}.SData.csv"; + + var npcSkill = ParsecReader.ReadFromFile(filePath, episode); + npcSkill.Write(outputPath, episode); + npcSkill.WriteJson(jsonPath); + npcSkill.WriteCsv(csvPath); + + var outputSkill = ParsecReader.ReadFromFile(outputPath, episode); + var jsonSkill = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSkill = Parsec.Shaiya.Skill.Skill.ReadFromCsv(csvPath, episode); + + var expected = npcSkill.GetBytes().ToList(); + Assert.Equal(expected, outputSkill.GetBytes()); + Assert.Equal(expected, jsonSkill.GetBytes()); + Assert.Equal(expected, csvSkill.GetBytes()); + } + + [Fact] + public void DbNpcSkillTest() + { + const string filePath = "Shaiya/NpcSkill/DBNpcSkillData.SData"; + const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillData.SData"; + const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.json"; + const string csvPath = "Shaiya/NpcSkill/DBNpcSkillData.SData.csv"; + + var npcSkill = ParsecReader.ReadFromFile(filePath); + npcSkill.Write(outputPath); + npcSkill.WriteJson(jsonPath); + npcSkill.WriteCsv(csvPath); + + var outputNpcSkill = ParsecReader.ReadFromFile(outputPath); + var jsonNpcSkill = ParsecReader.ReadFromJsonFile(jsonPath); + var csvNpcSkill = DBNpcSkillData.ReadFromCsv(csvPath); + + var expected = npcSkill.GetBytes().ToList(); + Assert.Equal(expected, outputNpcSkill.GetBytes()); + Assert.Equal(expected, jsonNpcSkill.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvNpcSkill.GetBytes().Skip(128)); + } + + [Fact] + public void DbNpcSkillTextTest() + { + const string filePath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData"; + const string outputPath = "Shaiya/NpcSkill/output_DBNpcSkillText_USA.SData"; + const string jsonPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.json"; + const string csvPath = "Shaiya/NpcSkill/DBNpcSkillText_USA.SData.csv"; + + var npcSkillText = ParsecReader.ReadFromFile(filePath); + npcSkillText.Write(outputPath); + npcSkillText.WriteJson(jsonPath); + npcSkillText.WriteCsv(csvPath); + + var outputNpcSkillText = ParsecReader.ReadFromFile(outputPath); + var jsonNpcSkillText = ParsecReader.ReadFromJsonFile(jsonPath); + var csvNpcSkillText = DBNpcSkillText.ReadFromCsv(csvPath); + + var expected = npcSkillText.GetBytes().ToList(); + Assert.Equal(expected, outputNpcSkillText.GetBytes()); + Assert.Equal(expected, jsonNpcSkillText.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvNpcSkillText.GetBytes().Skip(128)); + } +} diff --git a/tests/Parsec.Tests/Shaiya/TransformModel/DBTransformModelData.SData b/tests/Parsec.Tests/Shaiya/TransformModel/DBTransformModelData.SData new file mode 100644 index 0000000000000000000000000000000000000000..d0de57d95bc697945213b412bc9df6168915a38c GIT binary patch literal 259 zcmZQ%fPf#rzB56Y3@pFDGjRa%g|723AqHk3>&`27!n!sfPA(j zAio3%^BHm(Sc(}kfQ(cI)>I&`04Q3?z?K2z=K#5>KrYB#Ft_Od*&v_|q2MGs-wY}P E0Ee$3n*aa+ literal 0 HcmV?d00001 diff --git a/tests/Parsec.Tests/Shaiya/TransformModel/DBTransformWeaponModelData.SData b/tests/Parsec.Tests/Shaiya/TransformModel/DBTransformWeaponModelData.SData new file mode 100644 index 0000000000000000000000000000000000000000..0bf14c9d7630fde747c5baf9b37208edc6127296 GIT binary patch literal 581 zcmZQ%fPe!(uP{NG3}=As3qbtgZyPsEj2Xzd^U#bD#s|@iKpkwz0zkHbyo%Hks96d? zK1kmT7F$M(n->^PWXLhj0kZjkVp2dX50z&rVW?y%U`S(filePath); + transformModel.Write(outputPath); + transformModel.WriteJson(jsonPath); + transformModel.WriteCsv(csvPath); + + var outputTransformModel = ParsecReader.ReadFromFile(outputPath); + var jsonTransformModel = ParsecReader.ReadFromJsonFile(jsonPath); + var csvTransformModel = DBTransformModelData.ReadFromCsv(csvPath); + + var expected = transformModel.GetBytes().ToList(); + Assert.Equal(expected, outputTransformModel.GetBytes()); + Assert.Equal(expected, jsonTransformModel.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvTransformModel.GetBytes().Skip(128)); + } + + [Fact] + public void DbTransformWeaponModelTest() + { + const string filePath = "Shaiya/TransformModel/DBTransformWeaponModelData.SData"; + const string outputPath = "Shaiya/Skill/output_DBTransformWeaponModelData.SData"; + const string jsonPath = "Shaiya/Skill/DBTransformWeaponModelData.SData.json"; + const string csvPath = "Shaiya/Skill/DBTransformWeaponModelData.SData.csv"; + + var transformModel = ParsecReader.ReadFromFile(filePath); + transformModel.Write(outputPath); + transformModel.WriteJson(jsonPath); + transformModel.WriteCsv(csvPath); + + var outputTransformModel = ParsecReader.ReadFromFile(outputPath); + var jsonTransformModel = ParsecReader.ReadFromJsonFile(jsonPath); + var csvTransformModel = DBTransformWeaponModelData.ReadFromCsv(csvPath); + + var expected = transformModel.GetBytes().ToList(); + Assert.Equal(expected, outputTransformModel.GetBytes()); + Assert.Equal(expected, jsonTransformModel.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvTransformModel.GetBytes().Skip(128)); + } +} diff --git a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs index aec949ce..6c133432 100644 --- a/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs +++ b/tests/Parsec.Tests/Shaiya/WLD/WldTests.cs @@ -28,9 +28,9 @@ public void WldMultipleReadWriteTest(string fileName) Assert.Equal(wld.GetBytes(), wldFromJson.GetBytes()); wldFromJson.Write(newObjPath); - var newZon = ParsecReader.ReadFromFile(newObjPath); + var newWld = ParsecReader.ReadFromFile(newObjPath); // Check bytes - Assert.Equal(wld.GetBytes(), newZon.GetBytes()); + Assert.Equal(wld.GetBytes(), newWld.GetBytes()); } } From 152f1edc2d07a0d6b867e72a757db110b68dc747 Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 16:32:38 -0300 Subject: [PATCH 10/18] test(Monster): add tests --- tests/Parsec.Tests/Parsec.Tests.csproj | 6 ++ .../Shaiya/Monster/DBMonsterData.SData | Bin 0 -> 3767824 bytes .../Shaiya/Monster/DBMonsterText_USA.SData | Bin 0 -> 118910 bytes .../Shaiya/Monster/MonsterTests.cs | 54 +++++++++++++++++- 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 tests/Parsec.Tests/Shaiya/Monster/DBMonsterData.SData create mode 100644 tests/Parsec.Tests/Shaiya/Monster/DBMonsterText_USA.SData diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index 0a4fd61b..13dbe0b0 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -719,5 +719,11 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/Monster/DBMonsterData.SData b/tests/Parsec.Tests/Shaiya/Monster/DBMonsterData.SData new file mode 100644 index 0000000000000000000000000000000000000000..462587d55ba64e817342d9c3c9d37316439a03e6 GIT binary patch literal 3767824 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%0A%UzspIIWtlm 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ℑY90<=^1bBpXrubypWg5wR|X9d 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

rr%QttEWr46CjBy!nHL7s~O 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

<4FHb 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 literal 0 HcmV?d00001 diff --git a/tests/Parsec.Tests/Shaiya/Monster/DBMonsterText_USA.SData b/tests/Parsec.Tests/Shaiya/Monster/DBMonsterText_USA.SData new file mode 100644 index 0000000000000000000000000000000000000000..65a2190b2df9e3b1c254299be91f60f4c88ed821 GIT binary patch literal 118910 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

< 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 Z8R<-h=FO_kW`>U!kJ};|ZTbY+`+qAWDCqzI literal 0 HcmV?d00001 diff --git a/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs b/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs index f652c5ab..194dcbee 100644 --- a/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs +++ b/tests/Parsec.Tests/Shaiya/Monster/MonsterTests.cs @@ -1,4 +1,8 @@ -namespace Parsec.Tests.Shaiya.Monster; +using System.Linq; +using Parsec.Shaiya.Monster; +using Parsec.Shaiya.Monster; + +namespace Parsec.Tests.Shaiya.Monster; public class MonsterTests { @@ -27,4 +31,52 @@ public void MonsterCsv_EncodingTest() var monsterFromCsv = Parsec.Shaiya.Monster.Monster.ReadFromCsv(csvPath, encoding); Assert.Equal(monster.GetBytes(), monsterFromCsv.GetBytes()); } + + [Fact] + public void DbMonsterTest() + { + const string filePath = "Shaiya/Monster/DBMonsterData.SData"; + const string outputPath = "Shaiya/Monster/output_DBMonsterData.SData"; + const string jsonPath = "Shaiya/Monster/DBMonsterData.SData.json"; + const string csvPath = "Shaiya/Monster/DBMonsterData.SData.csv"; + + var dbMonster = ParsecReader.ReadFromFile(filePath); + dbMonster.Write(outputPath); + dbMonster.WriteJson(jsonPath); + dbMonster.WriteCsv(csvPath); + + var outputDbMonster = ParsecReader.ReadFromFile(outputPath); + var jsonDbMonster = ParsecReader.ReadFromJsonFile(jsonPath); + var csvMonster = DBMonsterData.ReadFromCsv(csvPath); + + var expected = dbMonster.GetBytes().ToList(); + Assert.Equal(expected, outputDbMonster.GetBytes()); + Assert.Equal(expected, jsonDbMonster.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvMonster.GetBytes().Skip(128)); + } + + [Fact] + public void DbMonsterTextTest() + { + const string filePath = "Shaiya/Monster/DBMonsterText_USA.SData"; + const string outputPath = "Shaiya/Monster/output_DBMonsterText_USA.SData"; + const string jsonPath = "Shaiya/Monster/DBMonsterText_USA.SData.json"; + const string csvPath = "Shaiya/Monster/DBMonsterText_USA.SData.csv"; + + var monsterText = ParsecReader.ReadFromFile(filePath); + monsterText.Write(outputPath); + monsterText.WriteJson(jsonPath); + monsterText.WriteCsv(csvPath); + + var outputMonsterText = ParsecReader.ReadFromFile(outputPath); + var jsonMonsterText = ParsecReader.ReadFromJsonFile(jsonPath); + var csvMonsterText = DBMonsterText.ReadFromCsv(csvPath); + + var expected = monsterText.GetBytes().ToList(); + Assert.Equal(expected, outputMonsterText.GetBytes()); + Assert.Equal(expected, jsonMonsterText.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvMonsterText.GetBytes().Skip(128)); + } } From 4bc206c04210858a1dbf6ef76d4e4fbdb2bc883b Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 16:39:39 -0300 Subject: [PATCH 11/18] feat(DBSetItem): fix text read/write --- .../Shaiya/SetItem/DBSetItemTextRecord.cs | 80 +++++++++--------- tests/Parsec.Tests/Parsec.Tests.csproj | 6 ++ .../Shaiya/SetItem/DBSetItemData.SData | Bin 0 -> 26519 bytes .../Shaiya/SetItem/DBSetItemText_USA.SData | Bin 0 -> 22775 bytes .../Shaiya/SetItem/SetItemTests.cs | 53 +++++++++++- 5 files changed, 98 insertions(+), 41 deletions(-) create mode 100644 tests/Parsec.Tests/Shaiya/SetItem/DBSetItemData.SData create mode 100644 tests/Parsec.Tests/Shaiya/SetItem/DBSetItemText_USA.SData diff --git a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs index 22a7f160..b16837a7 100644 --- a/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs +++ b/src/Parsec/Shaiya/SetItem/DBSetItemTextRecord.cs @@ -9,67 +9,67 @@ public sealed class DBSetItemTextRecord : IBinarySDataRecord public string Name { get; set; } = string.Empty; - public long SetEff1 { get; set; } + public string SetEff1 { get; set; } = string.Empty; - public long SetEff2 { get; set; } + public string SetEff2 { get; set; } = string.Empty; - public long SetEff3 { get; set; } + public string SetEff3 { get; set; } = string.Empty; - public long SetEff4 { get; set; } + public string SetEff4 { get; set; } = string.Empty; - public long SetEff5 { get; set; } + public string SetEff5 { get; set; } = string.Empty; - public long SetEff6 { get; set; } + public string SetEff6 { get; set; } = string.Empty; - public long SetEff7 { get; set; } + public string SetEff7 { get; set; } = string.Empty; - public long SetEff8 { get; set; } + public string SetEff8 { get; set; } = string.Empty; - public long SetEff9 { get; set; } + public string SetEff9 { get; set; } = string.Empty; - public long SetEff10 { get; set; } + public string SetEff10 { get; set; } = string.Empty; - public long SetEff11 { get; set; } + public string SetEff11 { get; set; } = string.Empty; - public long SetEff12 { get; set; } + public string SetEff12 { get; set; } = string.Empty; - public long SetEff13 { get; set; } + public string SetEff13 { get; set; } = string.Empty; public void Read(SBinaryReader binaryReader) { Id = binaryReader.ReadInt64(); Name = binaryReader.ReadString(); - SetEff1 = binaryReader.ReadInt64(); - SetEff2 = binaryReader.ReadInt64(); - SetEff3 = binaryReader.ReadInt64(); - SetEff4 = binaryReader.ReadInt64(); - SetEff5 = binaryReader.ReadInt64(); - SetEff6 = binaryReader.ReadInt64(); - SetEff7 = binaryReader.ReadInt64(); - SetEff8 = binaryReader.ReadInt64(); - SetEff9 = binaryReader.ReadInt64(); - SetEff10 = binaryReader.ReadInt64(); - SetEff11 = binaryReader.ReadInt64(); - SetEff12 = binaryReader.ReadInt64(); - SetEff13 = binaryReader.ReadInt64(); + SetEff1 = binaryReader.ReadString(); + SetEff2 = binaryReader.ReadString(); + SetEff3 = binaryReader.ReadString(); + SetEff4 = binaryReader.ReadString(); + SetEff5 = binaryReader.ReadString(); + SetEff6 = binaryReader.ReadString(); + SetEff7 = binaryReader.ReadString(); + SetEff8 = binaryReader.ReadString(); + SetEff9 = binaryReader.ReadString(); + SetEff10 = binaryReader.ReadString(); + SetEff11 = binaryReader.ReadString(); + SetEff12 = binaryReader.ReadString(); + SetEff13 = binaryReader.ReadString(); } public void Write(SBinaryWriter binaryWriter) { binaryWriter.Write(Id); - binaryWriter.Write(Name, false); - binaryWriter.Write(SetEff1); - binaryWriter.Write(SetEff2); - binaryWriter.Write(SetEff3); - binaryWriter.Write(SetEff4); - binaryWriter.Write(SetEff5); - binaryWriter.Write(SetEff6); - binaryWriter.Write(SetEff7); - binaryWriter.Write(SetEff8); - binaryWriter.Write(SetEff9); - binaryWriter.Write(SetEff10); - binaryWriter.Write(SetEff11); - binaryWriter.Write(SetEff12); - binaryWriter.Write(SetEff13); + binaryWriter.Write(Name, includeStringTerminator: false); + binaryWriter.Write(SetEff1, includeStringTerminator: false); + binaryWriter.Write(SetEff2, includeStringTerminator: false); + binaryWriter.Write(SetEff3, includeStringTerminator: false); + binaryWriter.Write(SetEff4, includeStringTerminator: false); + binaryWriter.Write(SetEff5, includeStringTerminator: false); + binaryWriter.Write(SetEff6, includeStringTerminator: false); + binaryWriter.Write(SetEff7, includeStringTerminator: false); + binaryWriter.Write(SetEff8, includeStringTerminator: false); + binaryWriter.Write(SetEff9, includeStringTerminator: false); + binaryWriter.Write(SetEff10, includeStringTerminator: false); + binaryWriter.Write(SetEff11, includeStringTerminator: false); + binaryWriter.Write(SetEff12, includeStringTerminator: false); + binaryWriter.Write(SetEff13, includeStringTerminator: false); } } diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index 13dbe0b0..c37a1a3c 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -725,5 +725,11 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/SetItem/DBSetItemData.SData b/tests/Parsec.Tests/Shaiya/SetItem/DBSetItemData.SData new file mode 100644 index 0000000000000000000000000000000000000000..b3f4602748ae5d71fed71e241e6554d97f411600 GIT binary patch literal 26519 zcmdVgZI@Mb8OQN0VjzJDDOhwfpeCsm%)rbLqyr;j%1smsX2l)Lx?-`W3joqhJ1+lKX@>(~Fb z>7mI#f4g~k*guKC`TP0d7yrEb%GNuUhyULG`^omD<2z@zuhp#m_s2>8k=NJrYyV!H z{Cn+qw@v=r{Ezd)V?W<@<@#j%`|s_%@`nlUoowIq+VJvl=S#!Y;qBp-;nm@-;o9)C z;n1+<&EcKljp4<~#%mLtshFRxn4hg!n66lutvEbgad@`k$aKY#*^0&KipANArRj>L z*^1@qisjjgqtg{fhi$XJv4g|b>EGGG8&w_Zs}9|$YQC?UzfsjfU$rp2o69{3!_Kw; zO@5wS55um+lZkgH9!tC@@$tm5g-vOQ*Xb~?)iAH)VO}fYv4z{y&|ISHwJ+>?eKzcR z-5(z7_1c{N9!y*tLu)_S^}M>i`QKw|?Vnh_b@^afxFcug;re0TJmj%_%W-&?3FX8e zN#xOc%JY!N@-4^V9V`o5a%NsVZ%v+uJeF^%bNzy4L0`P?Oec6-n1?);Z>e)VgJnUV zJU*IE@b)kdc`V;jXI%!%g5Nif9q9z$73Lw2pEB#%xxY%2jd6Q84r0Z-%@8?mkH&>-hX)X@pGx;A&=!->a6QvS@3?O z--pr(J`m<1kL6qHtm|M|@V?69^XUXX9Ofa9tI>%KFi~gbb=oZ^N`2#Ep^s) zuq?P=;PHiYg1;E%A&=!->a6QvS#bZr<4frT9}M%5$MP+8)^)HfxDVoSD4pQ>Fb{bw z-%@8?2g`!{A|4Cr1RoCbkjL^Zb=GyTEV#epaU`AK#V`+fEZ#u_ zdB|h=mOAS?SQh4TW*$d7{&JXyJeF^%v#x_>VPDS7>sZIf!#w1%d`q2m9V`p($9a7v zo#4m9Jmj%_OPzHcEDP?>c|4v@@Jg76JeF^%n@g+?K4h7cgJr?zDITZO34SWfLmtbw)LGZT zvfy(ekFTZ^{B)RyJeF_We!;Tfb0Uvty8h0DdB|h=mOAS?SQdQV<#jfl;B#Rf@>ss5 z&bkhk1)qO;oKGkCYhfPpSiYssx(=2FpW}I4NGJH~VIJ~WzNOB(4weO<>v?=5o#2aM z9`aberOvtzmIcozcs!d<@N;1v@>ss5&bkhk1|9I{0yf81!3-iL&UY-Z?n(MqUFU$+`!b9m>1@SdEsKM!E;Vt z<_Is$3-iLfaJ84`weFA1GxtZ>eFpaajJ-eOYA?@kd2LTayf81!3-iL&UdPh_FY}BS z=7o7-Ubx!Jb7@|4X^0o*g?V9Kcqsnye4Uqh#tZYpyf80ZtTlMv&dWUGg?V9Km=~`0 zT1f-u{Ow_L9zUJ!_)N#8m>1@StG%8{1H8;LUYHl=g?Zs>FZ0^#Y;zj2KC$bH?T621KV0pl zA6|ELUYHl=g&hZ1d!0)Iyzc9~FfYst^TO3$zAxsrzw^SpFfYstS9|&1o7bbA7v_a| zVP3e}%lF{C7CSG@3-iLfaJ853^UZnl>~b2z<~%m%u{n>cy?npV%RJ+Sd0}3d7q0fY zm3??`Ihwd9@mS)4#IZd0OgkSMTnApqQ_0J7ZeB|tdZckB{Jjh>&$W4-NV~jz zUp6j_*>1c}c&I&>pRZ<3rnh*#^YXnBFV~OP^7QVbC4U#hYbBlXIvM6=j*M0) zjrsc~Ui#+c`te#EyHNV`_fEXbKVB=Tgw?fH&h=-B5|_4YRpv3ZEiL%fpXZZy1^1Mo5royUCR zg?V9K*#71rHV?6Rh;P+Ae5>;^51q$+b%TD=P}=SVP2RQw!e9T%|m>?`#s*Od3de!G7p{i zX!5);FU$+u|3cTdc_?ol;#)Njf1LAr4)9*sa{zoG+i`HT;q7$B>z83(m=_+cP#Sxu z^ZHfig?Ztzd;O&I`gP}pdEv2p{j~G4&i>!m;k%vJv5wvMc>TG5;Jq#N*mEqrH~If{ F_!m?)uaf`( literal 0 HcmV?d00001 diff --git a/tests/Parsec.Tests/Shaiya/SetItem/DBSetItemText_USA.SData b/tests/Parsec.Tests/Shaiya/SetItem/DBSetItemText_USA.SData new file mode 100644 index 0000000000000000000000000000000000000000..873995d4b029f7e917347d1148ddf5c34abde790 GIT binary patch literal 22775 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 + dbSetItem.Write(outputPath); + dbSetItem.WriteJson(jsonPath); + dbSetItem.WriteCsv(csvPath); + + var outputDbSetItem = ParsecReader.ReadFromFile(outputPath); + var jsonDbSetItem = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSetItem = DBSetItemData.ReadFromCsv(csvPath); + + var expected = dbSetItem.GetBytes().ToList(); + Assert.Equal(expected, outputDbSetItem.GetBytes()); + Assert.Equal(expected, jsonDbSetItem.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvSetItem.GetBytes().Skip(128)); + } + + [Fact] + public void DbSetItemTextTest() + { + const string filePath = "Shaiya/SetItem/DBSetItemText_USA.SData"; + const string outputPath = "Shaiya/SetItem/output_DBSetItemText_USA.SData"; + const string jsonPath = "Shaiya/SetItem/DBSetItemText_USA.SData.json"; + const string csvPath = "Shaiya/SetItem/DBSetItemText_USA.SData.csv"; + + var setItemText = ParsecReader.ReadFromFile(filePath); + setItemText.Write(outputPath); + setItemText.WriteJson(jsonPath); + setItemText.WriteCsv(csvPath); + + var outputSetItemText = ParsecReader.ReadFromFile(outputPath); + var jsonSetItemText = ParsecReader.ReadFromJsonFile(jsonPath); + var csvSetItemText = DBSetItemText.ReadFromCsv(csvPath); + + var expected = setItemText.GetBytes().ToList(); + Assert.Equal(expected, outputSetItemText.GetBytes()); + Assert.Equal(expected, jsonSetItemText.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvSetItemText.GetBytes().Skip(128)); + } } From 27a686580a9e81a94147ab1a4c714ead316012d8 Mon Sep 17 00:00:00 2001 From: matias Date: Sun, 8 Oct 2023 17:02:03 -0300 Subject: [PATCH 12/18] test(ItemSell): add test --- tests/Parsec.Tests/Parsec.Tests.csproj | 3 ++ tests/Parsec.Tests/Shaiya/Cash/CashTests.cs | 29 +++++++++++++++++- .../Shaiya/Cash/DBItemSellData.SData | Bin 0 -> 91479 bytes 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 tests/Parsec.Tests/Shaiya/Cash/DBItemSellData.SData diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index c37a1a3c..06f2b28c 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -731,5 +731,8 @@ PreserveNewest + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs b/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs index f28985fa..aa082e3d 100644 --- a/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs +++ b/tests/Parsec.Tests/Shaiya/Cash/CashTests.cs @@ -1,4 +1,7 @@ -namespace Parsec.Tests.Shaiya.Cash; +using System.Linq; +using Parsec.Shaiya.Cash; + +namespace Parsec.Tests.Shaiya.Cash; public class CashTests { @@ -14,4 +17,28 @@ public void CashTest() Assert.Equal(cash.GetBytes(), newCash.GetBytes()); Assert.Equal(FileHash.Checksum(filePath), FileHash.Checksum(outputPath)); } + + [Fact] + public void DbItemSellTest() + { + const string filePath = "Shaiya/Cash/DBItemSellData.SData"; + const string outputPath = "Shaiya/Cash/output_DBItemSellData.SData"; + const string jsonPath = "Shaiya/Cash/DBItemSellData.SData.json"; + const string csvPath = "Shaiya/Cash/DBItemSellData.SData.csv"; + + var dbItemSell = ParsecReader.ReadFromFile(filePath); + dbItemSell.Write(outputPath); + dbItemSell.WriteJson(jsonPath); + dbItemSell.WriteCsv(csvPath); + + var outputDbItemSell = ParsecReader.ReadFromFile(outputPath); + var jsonDbItemSell = ParsecReader.ReadFromJsonFile(jsonPath); + var csvItemSell = DBItemSellData.ReadFromCsv(csvPath); + + var expected = dbItemSell.GetBytes().ToList(); + Assert.Equal(expected, outputDbItemSell.GetBytes()); + Assert.Equal(expected, jsonDbItemSell.GetBytes()); + // For the csv check, skip the 128-byte header, which gets lost in the process + Assert.Equal(expected.Skip(128), csvItemSell.GetBytes().Skip(128)); + } } diff --git a/tests/Parsec.Tests/Shaiya/Cash/DBItemSellData.SData b/tests/Parsec.Tests/Shaiya/Cash/DBItemSellData.SData new file mode 100644 index 0000000000000000000000000000000000000000..c683c16e4bd6cf54e4182ff31dfe043a2cbc70f3 GIT binary patch literal 91479 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 Date: Sun, 8 Oct 2023 17:04:17 -0300 Subject: [PATCH 13/18] test(ItemData): add test --- tests/Parsec.Tests/Parsec.Tests.csproj | 6 ++ .../Parsec.Tests/Shaiya/Item/DBItemData.SData | Bin 0 -> 15760784 bytes .../Shaiya/Item/DBItemText_USA.SData | Bin 0 -> 2484075 bytes tests/Parsec.Tests/Shaiya/Item/ItemTests.cs | 52 +++++++++++++++++- 4 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 tests/Parsec.Tests/Shaiya/Item/DBItemData.SData create mode 100644 tests/Parsec.Tests/Shaiya/Item/DBItemText_USA.SData diff --git a/tests/Parsec.Tests/Parsec.Tests.csproj b/tests/Parsec.Tests/Parsec.Tests.csproj index 06f2b28c..cfe60ada 100644 --- a/tests/Parsec.Tests/Parsec.Tests.csproj +++ b/tests/Parsec.Tests/Parsec.Tests.csproj @@ -734,5 +734,11 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + diff --git a/tests/Parsec.Tests/Shaiya/Item/DBItemData.SData b/tests/Parsec.Tests/Shaiya/Item/DBItemData.SData new file mode 100644 index 0000000000000000000000000000000000000000..6d9a85d16af1668c8ccd1e21997faa75aa6b73a4 GIT binary patch literal 15760784 zcmeF)c{Ek;8!-F~4V0-+q)4MEgbJDGC}k!yQD$Wbnddn&X2_TdC6OsZkug-J%w#5I zmZ{$7{pVfp?|RlcXIcC7U7gzf)wS;J-skN7+1I}B>+FGpgM(8{R7^rtj7Rj$x%1rO zT#{nEB460mT_On zAM7%X|8@Me{NlYX%)v$RgS0C?jdR+L_T1z91)}53ITaC( zZ`ef*w$46v_sw%Rd{XeVizfHAR@P%vLYCr{_eAyTEfOD(x4A6ut~UF`x!UO-`D>y2 z)lkM)_IPTxV&fIcA<|LJoRFHqYl^b#19OJ-dU^IN)Wkw~uhm3Zl5)sc zQ(7JTEFh#E(KaBR`p~nQdc!zM#ir!#gM!P%x1SE3pO&cVi6}7pxVN;0>A~X@qBEBb zT$v?z^q=r9)O|kj=zzuEhDa(am#mJ7wnRm=zj@VKcJFG8TkDs%-b0UD&PbHfgc4-Rc6Khs z_zOAu3R>mq6g1DvKD3UJ?i1{ho_n@L&^EBx(|vKrd6_Pe6Ir(H2X@{oR3UA7!{;hj zT;7wxS1_5cI-5}>X1~T6`F1EP@&MbuUu?fFWCpJ`-PxOb*zH!Vs$9N#@^{m@lvlAc zwwtBXpXsqVwcP@hN|`IH#<~5k9=< zcX5-g-Mu;YU>)P zn`X?|Bg0dK(hr7?rdPbs-e`08jEOh$t@CiZ&3IDz2jQB$8rkci?p`$k*#Ls`n&~o4 zL}@1%X6&O^UWoc_vAIK|sCivpd}ZC2bJp4Y^Ke?JcjNwPw#lj6YW`6X{%O*b%ld4L zaVok@6}H;*2i!j8eGVrI$(0N_U@o6uN&Vw?mq>25vSsmk?)8}hy6GuFW9|9#G?oFL ziBevpQT7+@a_f{hc3Zv7-6^ABo+DzEAML?^plO>R|ECbL_-U&6Fk&O2bDeXVvUPV( zwC8>#JY;E?ne{Q`)zNaeJd8J+@2XPuRJ!_3-P)?z>gHcZ$pZi0zD@o76zjo(!@?%b zWL-nu8`7|G$W7cT#NmRlr8Ktsto{?%ftydGz!V5OdtOHj9mpW2R% zxr!Tbd0fYf&gQ$f@txey(nY{jdDJ)jo-~id-e9Yi

E5x3HAJhdv*9!@PdwY5Wq~ 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%0A`mm4ZvvCrdArdx-yFVWG@%=Q4`fPfFV3 zJ1=w#d}pZ!_8iONNw{aJ$V`FC3*-aZxaI}sJ5*j!^)BRv=hogp;#AJH6RBdMBWa!F z_|D6m(QNtoc@>ctx3e70o9QKR%?q6WxaI}ccTsskt?xo!7?m8>oX@%&>yxo zdiU?VXk3rWrDK}gcdxI>#Uk`e5UzQF^B>o|5cKZi z@rC`1YX47s+0Z){B^yu>U_akjU~HU#$_wNJ&VP9QsPToMcmG>nWQCmX6X)rAF_rCj zPwq&{aBZ9X#YPdK!uj7ZS3Wmo>SY^{X@^FHF{560+x~x`)aOi{)XPX-aGJmG1-t8L*WOtPdi`El2!(N z+TP1MhVQ(14Jm%pvT%s2FKl#}Y+84jeCu72j^9_0Y!gpa4ZpIZY^m$JsQLwtA1W`< zAGS8+Wu@s|73G#xPP=DyN-<|!q$Q54q4EOtEwo|(qw)gd87eOXy}NjQ4(l(Li?M->M5Yj4DwNgsO3;wOslyl4y4f7)CwLtf>$KX-UK`2{L3kPkTj zam@?VyQsXN)^{N)aFBckiDp1+BGd!IrLw@^2 z=x)Ot?veS-w6juHOI_bZ)i01gR9>JzY;DNPO4GX;$3!{}y_M+RhAs$r80jjb@&ffO zv|<0F@&e--DlY`RyLf#L>n{!hflw2?kO&iS=PYGwb zBPuVD4>Jc&&tn}ezSMgq}6nX~o1oaQ5`mTvwQe@bCO!e~*?tTSf&l20+B-Tbuw29Qd z^D#T+zO5Ph$F+St(6^YO?M^i@hd!N-oS@&n?1}A>bhma=8Gp!~>o8Zv_w^A&VL7i& z*Lr&a{q|!0RFN@MUf}pb8;%buFEE~=@`9>&Aul(lHW|B#DLAjy)wAsS9Z!evygY7f zjPm9GxyhV^MvTSELJilvKs|$NUSPgM0B4tFM0?cV$GExz;e zoqF!VOXqJ1ZIpwo0g{cgsJuWv;QYrmFHrBI@`765g}kh9HLSIj-B~86%r@vssGJMDN;of^9!jnt>|7xiE1@ec=3-pJr4S88< zdRJj~j@$D)2X)H~`SGs{;pKzcF7V{ULYTE{^Ob#g5F&` zzOa8$Z5Uq)`)7w8Q)2c{4qUNoCKEe~$_wNJ&VP9QsQHMXcmG>n*K-v=z4lj|n!GC2`BJ%u^2$=zcWnzvDf|zm9&zE)+*efT)&qHh`Ulo`A&<^{ zEN{f544Q~4**s2}Hh;SQmBW|9E?~~3zP#(@*!m9WAKKQfY?b-;G1r4$$G(`Rdy@V7 z(Bb@X_ZQ=_ju8(=?{F5w?Mlb7yAypT7J3Ji+_-YU4%FC~o}& zlLg!Ne1TqkPqYpacxgScKkiUMFFnQdG27SGkQbQ$RvRzvu>(Vr1KfISvX;G~KS$^Z zye#Gg@&MxxY+vd5DBh{4Imd4H%wul}&kT8QMFKB>=Ot4!y6emf)!mU_Th`JBn z*>{Kc^r`5;--k9~eYALe4(l((Z-RwHyA^$2WEFHWXpf35cU~l9zghMhmgckmHY>}T z+}%OoW%2kz{!wkn%jJX--8~Pot*8z=3!F&$^mV!Oa^R(enxl=pAmx^C?h3I~KM1`1 zx4g{l>zm6^D?h&w!DITRjFM@&^P*cNCqkooKd{myZM@KwI*-81f6Gh3!x@gjz&`G5 zH<|o^ZTUt26-nn1C zB&PiVmq=s1@@nS=)>mM?Znf8Ui3~-1E54*`>ogVS6gX)1hrr9?`U~V`wbysgMfX*O zbaoqTiWI-h9Qb{Jz{_G@V7!L$2ez;D`b(b_Rr>X@`scn)&U-S5cKZ`}`8zMGy}oP3 zET6=(dBM~9og&L9Ps{1m&I_TwyI6liy=&-v_maCQv*&w#)j)ps&I-7mMqMAl^)8Ix zg!=B{@qzsV?SH*KD!;S+Y%j@y%J|zIoK4ED zZ5UtNL;A3pw*kV+<76?cmFLf^fX6&ldAjQmI*7h6>s{`zub8t)OY_a zFMF!bvdT4wMWtH@-r7tS(t1O!(qiocecQ*bVkraK?J?LspN9Dr?yrUMGGOkh4q2M; zt2MWpPm(T3c*Az+5ANTE?*}wXQ-r(UbMKUSo7A@6 zu{zejCR6cAQ03XUe3BwliI#vr_`ZMl=@C+W1qSyH$sjVnb@#Pit#)4S^oH7GAGCkq z-_A2Ip*m*_dC`gSaV|My&moY)E>$=r-CXTEl zWBFaeS$Rb+_`W`JwCoqs%f8hRd-i7mclgoD<<1MN?-F=ftgkS|KWy8fzUOf^crL{y ze@2XQXnUvs=99~v7g*mV@bcgCQa4#f-6yZwcP_1hxaED+x#i9atnU(d`EPmYO4F3N z@t9vpeovjIM@D>C?Py5b=C~>I8oobNo745rLcM@#|1PY@!tsRhaHZFG3oZOMgdUGO zKmUHFzC%@P0N?eCk7M=hpCQG_3lgsN`XlA(tDTqssjqkEvu+CpSG@?Y!W+ zzPr+RxfC*`o1OKD@kRfe>=MC3{^iaKT(80P7oon3+x0cnYojKayg#~>)$|zHo3A=6 zPcL^~2=(26yT5Kj?1e9}~3u_8UUl=!jTzYD+b4fof= zdWDFW^OjrHO!`I2W+&y7CtQTY2zw2f5hdsiu=}WFk>?3jZ?aH+_tVuLf(8WSK7QL7{;indSYC?ZY1X2j21<Bf!;5`FsB&Wr!` zq>$T<{!AI<+J3tAs;?n0{TjEsy-ID|b*9E!oexsxtTtZ8#%JpGacFx!h`v-+*=%S| z;N|bUL>_!SJAR@tTY&l0sWpX%{^xt)D?Pr%hH37r_P*yZ$l+dgSh2^Qz{_G@VElmb z2ez+tUcP7U^4%q>CYBgErn;e8)}O%3-+A$B)-5U8@PDtN$~oRmTI-Ou+IaabIJYpE zEE7|fRU&f0?p)_;=jCwI3&yu(>yB92XLX<0@xci4fXQCz@r8ztt9|UE83}3QRC>hK zjyPQNf~kM8{eB&$`tEXDAAOkk>?HWf7jdJDazow|4H&M&!+ z&r-{s7fkhC0xwJZJm8VFbBs}lwWy2ouh)`Zr@t?EUNF^n3A`*VFT8yvhl3`L-#$Vs z_TsI6{lVqV3#R%mftRJ_Xoz{14jVi8a|G%I zO#62U_1(qwT?t!{kUI-um)b~5<9`}CN8!7EnI7n|-TlcfZh*_3U5I>b`fBF|)>lyL zyDNGK7#QY+JyQpcI#ib9|-m*u5Gw~ zx0Nhm<6T{)_XX5#uX+O7G;tkYFkL^kyb$WU|8{@f`E>i){ZDmm6O~x&b^fIDE_YrC z_1%BV3&WvDWE1E7XBiy5YQ@)lKDyj_A=G#OEid%l!NJ_liZTnta$L$87wVKw-Rqq< z8T#`6n87zv?fZ?`?%&0fe_*@jt1u`1MrAr;+f3ic0DczO4)ZnKzYCAQzW%2-gT=lZ zkF2wIk!aKw+BDo`r<*GtQ&Qe~net+mDm)(7wlAM}=~eGZ&Hcu0p@s%3X3lABQ5)kz z6=#F@1%%ibG2?rE_q#l4f6%wqcf-Q_?LY8Sr{B*^rlu!G{vobL;Ez9O%#9cSl?V-+3A0x=D5OQ1a)*7wU5MQSga_qr<`r>c?~Uh$#w0{MXRANDsY zFYx~qQF%fAzbwd$V#LlFo%XU5Cq7&DJ*8vv#CKk5HuCAUOL%pWtgB0Mlo1~fZE=Wx zdYSmkwfAOsw>aK^hV6a^$O9%Dl^5tAl^5s_TO0DS()2F>yOgwsQaQCPw2UsI7v5>0 z@&ffOv|<0F@&e--DlY`RySUyA>$_LqUiDAZc-NIjRqRI-=hA>{UZ9@AH7_vVq4Gk| zyMO0pVu#Vo6KhL3MY1ojev4W7j>-$<1I~Y3^Fq+Oi^muCFRBgWi_`W`>o3!u-gipa z$VZEvg9nut$OoMN@cL2n5kc?%x4dj+jZLH1xy?uZb@TgYI>JI`>bZOSwfuGlyp`UW z@WHVj+xjllD{%fpUR>0Q6l}L#(K}Atb=@&C=)3bs6tne%E884Z=i0ZXPCtbHV0{=?Wfbt$`gB?M#yjx$p*=clJ1{H|n#cKO_XnQc zk0p<;|0$7?M?98A(-f8ZPUJ8=9@^d+QsasbkI!CqPvHFRy0nzx zyKe8xGf$b%(*=jne8%_qLjCEjvjzY0CxfyX&E$V7%5cpK)HASuQF(#>mm4ob^7I-( zihC=3VnpXow2AJ=cV2wHE;Q%fb{SQ8lO|Dngoq#4ykOG1sJy^@N8kmw`WLQ`xU@wL zG#pwt=y$8tN;1V4dU*=^kbX_rbmtjeykFPto7m>2>K_9qZbqF`AUCXF>{XQ3&do=}Yb5E@vOOw!5+7(eY}@kZR(J-_`HJ?}_MN zUdJP{ZVuD$qtK9nA``5gz-AViOP_We7pX|Ls0?%9&D#?FjT1Y0Xi}u(f@mS;m z55DV{k0XBbMJzr78~AshD*8}&F7mbJC^ zc>Z$JFNUw=T82UcE{=Z*i~U&MtPSr6-{K1;X{v6tvKbRw*ILsa8lJJNUKex4A;sOH zmrkWc-(S!~ReDdBarAoZBExrHiu6D08|pW1x4vPM_ShxUv7X1+ zN2X;w$l9owSL9gwBUD~6(Jdos&1sj^5X!$>z5K=9f`9<``-^*d3WEhY*lx2c_qUde57Nb z%04(qe(Ddlyukj4;|<$&>)jm!g8H?##ta=I_j*!_`us>)Ywa#t_qm^Dn?7!kElwGY z-sJS)o!^N~5iW@y4;$OH;qOCRhcV?_hi2NG+$mkEJ2w82@cS?Dcxd}E%ex;eTi0HC zbBKg~#^JZv??ZbuPZ^AzPagUaCQz^g-+7r|L;Q0jVL{!!$%?hr^+p7)dBLP#PqQ@N%DlL{?%Fn67Kf^Ddvy;pM-r>~UN?P7jcq=H`3Dm(XMhe^NGJ+VDss6e`par+j1GUw>M|FwRpxqF||E+fL;)$^Mn*@Uyw z!CV>B3-6f=^8MyROnASz<9mFmJ4hjQJbx?Mo{F{$#(j@OXWsW_i?WGtb=OiD%6LiU zg}Oe1;|+O0jW5vOa*Ho3O}{W^^c#}}0s=zqEKveNX6 zgYSaDUX7}x$QYIR+foLOxaI{@K0@V%pkHvSSKxex&!_W33ZlOA(Em6{qR%XCMsf}A zf5A2%!TbZ~KfE6J{0N>8ZKz+Mf5QG3-0}l?>DnK%?Ev=>#l510?ts@(wIb4C zWoh$~i_)Inq3SEM@doGLU9qYbwOijEQm8!CMg4-}E=$nE3RL}qi5I9}VElpk4CK+5f`Hf9q1$Ursk4(&uFtXLO^n=Dk3C^A2kL zMX{w|?0NjlUAv7;GIM2*|J*mI+Z5?TRFd)Da$YCz`u}|27tSZRUkcmr_rmWpxIBn- zQG7NytTNq7{W<#T5q#(6Mf~etRk0IupM3WPI!U{F;F=exFW~r~@&f%YH(q4PGdS)$ z)l2OrHeAmfdF~{>^P(&n74M&!w~k~oXuFzADGRQ7!IY0sd4c+czzc5m4Ad_dr_5Q2 zV~bL%8d7F7WlTRSKCDX(S#PND^NC`XMR{5LQtKDO{uk`V7wSV8uW@ZdUJQ7%Sy;>L zL;3=2E*)Hx*M$0gDR{k@?hk%n3RS=0`ukF~HmpfBRMR8{)Q=4mv|d}m`-3*rFZ1@| zR6K0&ba*OfYXUn%@&0*0K2x~Zk)Mg8A%-l5`d05UaLo(U7qEX(d4c{3ykHlv;CMhA z#uv}aic!8d_XO`1p1IK+k%kep}wz1_#W9}-e7zY3TScX+Llp}-T6U# z%~m&7T=N3+1sq>gUZDTw#>-0k9@(|hUu$*>vb}#f$}PhyLCXd1!Raotf!>`tJAh1n=MQ_!GOoNm0oB^xU2st7x}} zI0)PC1?dNy74Prf`h}jg-~>ryVJh^G$-eQxfUNll_dTil5mUMxWucY!{as!|slqk9 z{fRwFFK(iNA;a2ger^ zFG?mJ{oZ83kt{t)UE>O49q@c;$KGfVyW_QxrN1Cgdx@$}6aK!5TvBA%d`$K85AJ>i zVb2oV-6YmVOtgvAzVk6V<-V;M9*=8#rSsyx`?11%i%?(s_WFRatOv=P?{oX++OGa>o<6!8|BM$~{A*qu&c5c5cNk4RCreIj_b%xV9B%?IOPi0} z>gW`eB-ef*Ya@63`ZU4lT*XhX{ne%>uS#{kRPLd?f^9y6-{Zg(UsRrVMOwFz7B;xP zs#fHmbA#~&+A!WheMFnquo!4Vi$9wo)^2cF3fi{dUaQ`lR{|MW9 zzE8+gi!;$Yq;1Xrx5eW@zYMnVX@6LidVgL(PVJ87{YM4EI9Hn9&HpSg%GKH0K*#&w zx!9TLn&qxv2zvM5{$KeY=7$`ewhIpDh<9bYC>Y+e+-}((2utYa%13hu_)Bn@3u9rOf9ncV70tlD}CgJ-7IcFNq?MQ zW`%BNfa_OG^2#;?fs+m+SC`pWBTH7ZZIXUFMPyfj!&v2si4{=?8 zk?Q8P`r_+6w;_vH-lElz59%veZ-F-C7uH`YCBsHeClZ_e+HrK74{yOFw%@PY-sghv3;N9zVsG;XZ1s}-I?#w!yj9G72y5A z`^RLXo{z~tY=?R`JpXb}b1&uAz~Q%Vh-ub8Bh>2%^}1iwwh4`2Zz|64tJFYVD4FDn z#4p~No=K;#iN8V?kin-^diTQ1(;jseH!W;GN5c7xnva<8*>5pZCE7H2b**Gj-I@P+ zz6|FNwBhv-;>&-#o))-$rn2SX!J(bUEp9ONcOE0?7eajbTYNcNBuip8c1iBE@~it# zDOj%tHVSn%xhmK{7p7_6B>N%)<}-qg-F$}6k5Ky$##>Z>n9hg!$aH#R^2W~Nx96W` z(Nj@OcVqkf9@Fow_V$&=%bs4>&-XG?Fx!b^KTcY}8KLrUY^UYkT9U(g>W{et>FtUHgUaAT{juAMR`qwi&56Kwyl zT;&+mwh_K3EW3Ep4&+JYI1{(p|8m|Yxb~>MrBr6A${@b)f04hGdz^dhQln*zya1I} z$h)#Onh!~LE?I#aIE0qNidrAdS4a#UVk&U~8tGqClVbM@Pv zTd!Ogzu$S+&iXR>^Ld&gr5U}!2hcyX;r}&ayPoFTmfdC36{{$#A>Yu^_fk>MtIJpA z+Eowz{{OqdgV(9>otH9Cc_$%$r*zGJH|2HpXLB&Ee_;O-?7!=om6nfKbsPuo$oJP! zJlR#=x{l44z{}sqAKUq{(s+?-{Me}Y@aYfr4V$)Uzs^xXeIFL;jir7c7S>;I{XXo` z^*<#t@`%T>Xquu@--#T?#0z}iUP}0x+MhM@8t3EoH`v{yIgao7Xk=g$o$q#g<#=gD zro{PVC-tue$5|>_DWke3eqUpW`-1KMUC0YT@2)JptHpjdQ2Ti1J0fR~TZ|=kbWsk(d{p-fVGN#U+ zzvV1L&@Tl2^0)f#xv@7fI&m+n9XfuT8<;ocB=ADuou^1HV6)7@%u!{-5l1YQWd{EZj(F51VtPK`_C z+$(-~Chc++LBA04(cgIS|2gf<>#a-Te);;=qZbY8rJd7)34tVbHV2`@c9DV{{r7%F>^W))}sDWg7*Bn$}ADe%-4qw=a0L; z7>{*~crbd0vl#mSA3K6am)Q5inggsuy%iIQGY_S<&GQj2hP0YxtO^#BOy`MU-3XaE0<0Z0DC$3AT z*25{EdHPw@);V~;m~7Y|n2twnhx;)vq)}DY2zYl*yGdmq+1c>JsQejUL)TDDDr0(Z zSc4Z4w!FaW!*qYB|2F}D4|RVX;s0zF$4khIU6DYM`~kr~!SQZtu|*MIam@>+?~$SM z0{t&HURK)w*?f$9C~4UyB&D^NOw7;RBMH~M!0*e!c!0_a%y$G{7RLwJ-`LtPzL4%G zdf)2tb~4c1PvB)~<4ed%mnO>D$o7Mx*T)Yu$6UuXFH8M=8s;McFH6fy z#vb#W!iyfhV_}ZhB0uu3`MO2>)S3G5BAU-qVoDUu>Dbm^VElmN3EQC!>nSjw^=sVj z_A0e;*O?k`bv{U$1J8%`msGyeCiCXso>&G`?Rzj~F|x;d$Nzi}9QJQ0 zJHr77@AK?qK5M(%bDj@Ee&F%YUg^9 zW~KTrgKxaRd_>eGce9~B{i6~0jfr4>s#rL_(0(vs8R1s}FVLH&UmsRsY8POKL(TP{l7|*vm{=r#u>4USK^0Q+>BS?BhADLS9Y& zth3u3TGz=#Jpki3d_E1|Z%o?PES=aSOP)l>dFeuK<1Dt{CvmDhWffjSviE>i{)XPX z-aGJmFxfd-dYRlq{0AE&X>2E2PENq}5xzffyyH5=@#2emY>ueGc6%|wO;r058lK5K zBK|GI*IS@B>58r1h2snPf&Hxl{?7)s!}T@%e>Ld;#N+YDW;f!~Y1SBsHU5=s6_BfTAl8!F8*;Pqg#j|ch|Gql~QCg#wm(~%SOD|ZSRH^^U8W^1M1G+OZI z7ryUjc(P}gPS3VRt8hBYA2nNjyp^2t=hV;BYq4(RBE6V?!UEg)Lf~aFFI&m{DK8X6 zvLAG6SLVppl)`sjtk!;0ieT#%)yryP)&7zG6s`v`%_lY4^FThhLBGh3@R7AZ1~NtpOJrr$ZD3-0wW}!}Nb&nEb>3z;rxn zJLCm^?;Y2?V7fn4UZ8(eUaWVShiqgrEL4@|^UA9&j={FSAulz*^OWUV{|qRG35Q%f z9ef$zd4cm4*Sx^>FzkQG3p^h30IwJNJ42<*T=K4cZ?!~@;VEVd4_L2($3wd^_|Bw+ za4ENq;3Gz3$ct{3oCuBT{lH3-wDCey>bwv8 z{iJ^NO{VJawzd{~Ty6{bf%6Am54;~tykw0PxLeoOQGE@r@H-#ov;iIu{lWMG+c!$M z>0W-E#r!UE@MO!^d~Tf>ALo)Y_8bB!?9zjGl04w`LOWA>ywKK%IJ9d|=C96LVM^GJ z$%g$CvBxE$?l_GljoXpmr?b5)@tqf#Paz+u@dZ==!uSG@hde-D;PI&X1^UC*hWbTa z(#V{Br|hA9UvoHp)^8ty{f(`E*dN%QkL~d=zMLkH{lVh4(Y!XjqBev=^mIEnB1D5=%p%1#ZrFZl|y zu9a*ek+(ZV_`aRJLODEU;ksMNmJP-mn4jVJLmLw>UJW#(N?s=)et*@*yv66f8$2HJ z2lEkZuZZhuG7453w|*n?QC6|01l#wYajjn-d$MV#jghtbEbuvOeXFjI@4Or~rQvz= z^^ZfLrIgtC$@X2l4{Ds)n`nM_h%c^>VSC^sY~u@om-EkM&t`{vinG*ikP?3{OW9PI zY~iWtcl~Gl%?2xfeCI`RONc~QL{x^e_;tOrB1Rn@_BJ)yUOIgIxB8m1+c(nSyMD23ebs(<`r+^w*H7z`Z!X-z zH7{_yVgIA@0{x@%f~t2RFAHT020xNcnE%*e`O+h6jU>MF@_;daXExbQbz8cdSzU?a z6Zpmp)H|rWpz0UM%UH3I4B6T2%%uAjDUy%a=<%Hwg-5f2*>Uz<53>%O(OR>ulO)cl zwDwHN>p05cG@|;cJJ{wUIN#xT!uS%fzE6KM(^smA#9Y=_2HWZ2@z5X4NAP&(!`v+y zj@6Nlowc<717-o)V9;(Q-*V_u_8l^p``dNJ8>J-`#i;NY_5O2f2`TlNP> zy~p^rUkcV=`h@RWZM%OwO8pbfe%ADQfw29luhb`Ms%b>xckRDgzU1ramCnoO&%=>9 zh8lzN z3)C;Dyx>~zo)f01RjwHt&HK4OxLk_G5#M>)I9^TtrTNJPH*0S_evW4xjwgxQxoyOY z-dy#(PkP6`eyR1YRT4*2p?CSkR{!p^9{0Te!10Ii1C!qU;Lvx$ZV$r^m(rwJ9p%P) z0sdQSm1&N3cxchfU#anrgz*j97gP>?X_|?!ZaC8VJt08w0&K@*U%Amb=2}2YBlYs0 zqfXUmvw@sTn2izpPDOblhu+4sw6H%h`Gf7SKVUnqZK!ueiZ*X#iK}fKdB*R;dVxG( z_tY-sD#^QEzbt|SE*evbW2;}_{lM{u_p{P@QOn8sbF1OcZ+Y$lIf)vpLVV}NCsKg% zMdY88B%|e7d~XKMo^3bVbRsoe*qrW6vz)EE3%ozLUWDV1tu4v?`SgTI_U$W1DVlel z{wRazL;hfVfyZB?7W~Y^@_@E{N0+=&4LcFG`(L0xY;E7I{c5a1d#jrmzq+nF^qwqG z;Frc9#XomLTP1U%6L-9V^AB79us^UpAKT+$dh`yrAk`$V>E5QgNeo-X!x6;u(8Q_qpIZFHbUduE{B2`jPdat29;Qtp=`n!IY0s zd4c{>c|p~?GvRD*<>`j6L|YuZuJD$uHK!iio9kITNF%QFs--oB2j6)a2-KbG=iNn` z|M7jxY|NwxDlc%p!|{ai5S17B{xm8t_qGM|tXr^CH(6)pNhvL}4qh)N8^)J*;Skpn zy-|(tK3QkWYaZUjcV6K4*>J5-F!k?BZ^!rd8=-y~m^nJ1C3qnB1DmThzw!52_T2 zV|zU0#ro}hkh-}1AyqC;Cy_Zn6fpctXBW;|oFWE*@Xlzo<6k1%6)^*ZKtYdhz}Im8N%(vQ3R$kc%$iTmSs= zjGI=<{zRLB*Z^KFqi=$?$-lB#mb$(>H2vdPmebKkOlrBY%CES0Kt5o+!c^ad?>A!m zegOP^Z0()&>i79_`>5Yq6>NOqEndN>Cs50qQL7(x;lpS@ckV*D2ea9oMz0R7CaiaK&{-R zb~&^94z78D^B>o|!0-E_^5PTn)Z$Du4{2L-F{99fei?YZm~6<)ft|10)LVY~iSNsh z)2yb6!*^apt)+i=)qSupZq-&|+G$gJ`0de&dA||!b^C~)3aO6u!~4Va`UzFP!0|)n z1^UC*hPKDk%7fYK!o>NvaIk{P4=cF$g;X5zgZSNYJ*^epQ z7P{ByCp)$al^4hdv~kS~)Gw&Kpw{akFa7hDe{5y7^S!=grT1D-YU4XEQl5#A(==1m zUn!~|O{bYn#5FH){zG0;?3j{`Bm~}+>ULj^ygvR5wnN@vK7#rMl^4`{9pq(?xVLg* z%k8YmgF9ICbnS%jofk2q9NLQTZereUp;^<;{9mZNKtAC7hdiL>Blv%!sJzhnIp#ie zmFwq8d8o|C%ESY&7n2Qn88kh4Kb>(G+f$*(VOg^*miW#~oEC)^$>x;m;ZS+Tb5BUN zjw;NKKEGY_ZrzUJ*smnlt}k_c7nK({eyF@af7sfPmzAb>6XYdan}+%ACnGLGHpoQD_~r}k&=MQ3*-aZxaI}sJ5*i> zdiU?VoDgPq?=tx`Y(-hmCFULGhHGBn{D-`(biG?R)kB*!np}PO@~;AK5iSON*Duva zrb!)NHJp!mc#vuIms$=gFOUy7{~<4^`G}x*7smtGzo<6MN1G2s9=SY9cSPvk)(Mge z0%?QS8{(&#oryFoxXUwoZy#Rj`mTN&i}3mr>W3=jgAZw}W$T9b2lE+RPs8Kk_YSfB z{tNVnt*z3)f1tNHschR!hNJn^w!3;9-JLab@%+b)zyCQ^_nRNzzh6f?xDa@p_43ZQ zx$fq7f7O=Znin|Uu>Vncf$pw@RGFIoI#dDEh?$9$g9=kH3O4#js~=om7U zH{L$cGQsbj`M_JUOYPSNJyRo={;;(nFDp&&j+RM% zI%1<%IQL!Gd{4iF2(EcqYW)J^87eOXy}NjQ4%gE;)*sC;?F#1;8mVYL|7p$!l^4hd zwBdY3jW00Yq4Gk|yMO0J<9b{!9n;*tdwoqV7NK8)aLo&x|G4Ibpm!IKFYI4b`+wrg zhTgF#*?@uo`}xKKW8(x=ULYTE{=@4>jV}bf``_{+E988iI8WD$scgr4az|2zj;Nsn zUczU~*Uj0#zdYo@vDEe5-CQZeEvIkvoHTWuG!Bjrg*?H0hN->_zwd3lciZ@Rb0L}b zS4ZCYMwM=W{&8)$2HpI~{W^K_=*PoRTc0KD3aqI$*(>zg`{J8TpWc~#UW4!JBLPvL z>+xIEx-I;*1lPR4{Df;>pngH+1+`uWdCBa)SMl|6B^OEYYp>T#na23e z3vW>x`GFYr9Y4M&(KfWU%A)cD`GE5u*StXeg31eOy$n;h|^HbeJ@aIL}6Cv{ohqo};de;JLt z{Zo@)X;1Q78H;36c)gfx$crP*dM%!d_O9}2lBH~)Z^__0FJ426-?S_o;_3?<9VVOB zU8bg;G=GsI%yY}8XE?^Dw{5BGyQumFjvp#7&>yxoeGcm{mgKRG^T)F}lC?Z+*ofP1;+hwzXK>96%y+1~ z5cKZfc{%J&ZpPxOT5@KBVb5pcnhU7BKtAC7$2Bhmy}NjPVgI7qFun}ft|`QNRk77sv;k|M2=z^ASPs{Yjn z-zvP%TG;vxc{e^&O9`RckGrg*-w1gQ>oIef>{w28(?+9$9DaBGITV^uL}I za=X!=DT7?wPq$w6HS~{b+dPC+F!}Z7ibVgK*h3m#&N_`mdPe3HUS(?iJ!D7a=J9=f zWW3F1-&I<(k!MqB;Wecv;!t^k;|py#KB&CFc!tUgs@{dX1aCPh+hKJ5g@95&m79Ec zBfj$@Zt(GILz~K@{oAUHuIyx|!Zj~Y&)}LDnD0<|LDjpEm(0i3y>9Bycyf;BOwRvxLYWMDfq2f&y51ijrUEKasIvQ&{TyE~2PZ=ntQAC(sv&ro?G=-tKZb69_I5D1Ja z9wd*vOH0Cb%jm)zT=N3;46b>B`3{vAg5Lc*FUrodFQY3}_$ZPXD=wxRq@(fz`GE5u z*Srw)?&9%<{flbD`0`$K-CWn3O>5d{rg%y?(;ZQHfqcOE53e6J9})EKf6I&fIb#!x z7koq1uMX@pfAY-n`4C6#)+q-eUu)Wp^bLJEOI_c6I@BX%C|K#k$*$tPRw?uh5A@Jw3GgvS3~wtE93qCItH7#KS>SRkDp#Wy^oPzY8sUn$OoMN zxaI}wT~uCB>${K_>h^7$JS986sq=L%j8)F<#P|5}oqF!VOXqJ1ZIpwo0g{cgsJuWv z;QYrmFHrBI@`765g}h`^4bVujHa=vbr{AJ#Bt(bryy$j?YwkKGOLMV3$M;^f($o8% zF|UWo)9f_HrL;|>gL0R;zKg0~Ab+U5K!4cUke8LFcNJ#mxIMpfP`AvGAOAYQH-yRy z)VI)v{g2Aa|HLzb-ktnKZJW^e^`_zsze)}4Z)|N?e<7~7?|#M_xIWe7(I|xc|63_Up~c2r z{Ia*N96FX{x@GL#vx)yOr#y@nGLM$;npHdr{X<*5jDq(Jh1&M4fuwt*liaGX9h2>{ zxk00CFqQPZDChHR1w*#5=?#;EH9S_9hf<7^brnqTeSP#)lK%6~vP7SqJAQ3>ANr+b zweu2g?lsx%oJygn;Tu|S7FP9+$U~!R?#xX8(|5n0CwTu}?YxL=;SrL}{llpEO>eDJ zyrar$=ViwJlH}$$T^;1*s?}Sl=nFCN0ozx4d@=C}Wp?*ovvG~=Plr%`UZ&N~%NMN> zqtCX{rz~#4&a{v1bjtidQ=?aJ@y~WpRATnGU>a=B+2resJuuLvY0G za_0rEFW~web$tZ+fbj;#6KJpW_`*0JVfkH!?$LlTtNzbsqN3%_OV>ta(wQ;atyekQ zTCzSyD-d}3Z|g7Guec68Y#90&yvM|vRcP$`a_7Z*mwCuWCc{EiX+E#K+Ts`jFaIqs zpT0BSkPqIQ8m`#XMbqeiV7c>RsdjT~YV+KwEc>^=jeE}N5P11-c`0}}!!a1x$DQpa zlOM1x-$-zNzF|#S{Ow#1{a=m7S{6&apMg-{#csS|y&LK$T-)&Zk-yWh_RjtCB{A&} zxI`N3l~+421iibMU&srQp=fW#my~Utrox;82hIMhc3uee-M{m4F1oKOq_f*#Q>6H1 z=D_a*tDP4@efRIY^hr^rUmvS~?%U+NCxd9W|7zz2)>~kH!lVyYdi}+USw4wn^Ma@I zJ4KdJo|ev9)C>>%j+)DMG5*pXOhX zclsvSaxCE%)iE7gZ1?ZN`Xk(53-f8f+*2L0G~rikZZ)4IU6AmG?a&|GzYE_F*ztv^ zP@1GKYE81IU0HEz+~}<`$EYa8m9DblTM z*1g6$G}itnhJ1T&tae@?Upg^9&LwB;IRsMJr3ddMd0-lkmCnnV$$fmaTqgoU=k?Eg zb#@zC?Yty(N=h1J?Rgr0?pN5fjzb?NK4AMw=jF&YngGAOmudYwMP<%z5K&p}yp(S9 z+0?<9)_t~GZ`+OMBIAVkvUq>pvyub0y<|n|X2X;>Q*Pv!tae@?A22_`cmnN}9$%s) zx^KDozogL6ujBjp%shRy^I|4&I_9H<;x%Q~xv$0j8G8x5ERHXyh`E0~b8C`G;J$Ex zYkLjla_0rEFW~wMb$tZ+fbj;#6KKQu!gby1Iul3Mk+J+P;jFwO7kK^fd`$MgULOUf zpD7F9BJ8{8r1Oj{=aBSr=LObx3A`+R-h+uZY}?^_I{l-+lZ}(l*2&Iexl+V$&MtRe zV11Xs%YVyDg;uYZwH8_P)Zw9H#pNFE%bgck-zD(!-}16Xh@rbgG2iK^Xg zMDEBJg=_C7$;@Ra+E0pLyMGtvS2&(99&6Hbq2 zZa*Xs>Hb2R^~-S8#}{1JcUKxO3O(vB8}=m%eafsCU2h!yW3|T@SZ{&(3FjOa*`r(t)prAxl78yEcHaz%bgdvzJTj5 zLVXvv>uXrAyGP1+;;!u5ndEcp?rhaF6kG1R5bC@Cc7I)-UjL4Ye6qXMn&OSZKNG{3 zJ1>O#?!V>b)n$PSgBrn*+*=k;3e5*EFLz!D_1%BV%V|Zg8?~C(6dLLVvy>K6J0plU z2K}UIZ%ePbP7B-pyYTzoaDOdaPl$LqZ@E>?ls`Dgu4H)2-4nLMdNHQ`yY>&) zcBZ{Cf1i^+8TX-O+KNqFPngn!Bd8?%?(m*I6&>gw+TH2$92<+1T;F$m`*h|Y&m?Te zWDlM;JIk55z*1RwgEsp6cQN(mR8<+8AXjODca?3bCqF^`g~=amhy4NDacx8W!hUh| zUg?EKomut=8&Z9HCssQzHVrq~>E?>Zl$5t#ro5P?+OKiD+pE;ZU1w^%)%hT04yN%~ z>AX;$+HCmUI=WlMq)vV6j$!#~=cU)IBedxI%g_nmt&gng;%qSS0ozwPFRfO0K8j}w z{_g!DuC7#*q2Ll`H`Uvr5@%}ogbG&W!t^<#b1yOz|IZxiS z+IfL|!2AT`3A9&wd}$yjZH*jY;bv%mViR59ZMNEZf%=ZX%i{RrQTF=IGZ&E}CXe%i zY~nX4aLo&xf6&JE`*m=A0qeV{>m$eqj5qN5p$+59aX-KR$KH9zbNRiG-w093&Pq~> zC@U19D5K2E&Is8fCA-X!QQ0JARm#jLdo`?($jC~_D3O_!-|x@w`}#Z{UXRz~e)WF$ z;{Nk`oO7T1+~+*cbzSE=<9;K)EZT7~B{*4u=DH}XKYSjO{9n(H-UZ&LA7*t-6m^~r z-P8Qu`fuk2Q+yZY<#_((ZX#I(_Q!L`4; z-gx=#n{e`;PJF;br+y3u*Tb$oZd z@iMS+FEHK$?GvW>2#mk1H(pvMUca6n)fhfLTK~yTDCKS5uz_w)=N6`71D8 ztvt#_r$wHg$SyZ9HiT~{Oo#Rw?%##^du(6D9q~N)n*H1tbFF75t$ju~0=L<7(Ycp zyr#VB#Hx@h<1M7T!2X3Y>>s4O!2dTQ<>ekr7|*6vdljQiR^F6S$2Y*SHe!F zkZ|j0^N4)S7YG%{`~3_&yD!kEOmi*@L}wDu+A0L$nisg91lt=aFL3`0QeFZg(#%cn z^N@G7RWKb+{CXVL7n2NmS*^9M&pUp~xK23r&zyLDCKBuRIw^@(04p$&i;5E@XM!jBzm^e>A)B z$)%R!J1?h#4;YemJGa&A|31NSRQ(xJULYTE{KNJ}$_xCz6;fVgzWhkIJ*UPecObRy zxOpl$tS=@R@**3v_m^h(YYmOhmP2Xu%-;CUOT*@a+TF)|`^YvmJ$5=SK4o69C)y-P z^oq{z^c~>?^N+CI&w!~tVLDP?V0lP+f#qQhJ!$ysYw=b`49FY|468d)-;}_N>BLo9q*&`O)6uI~z$Q z#XrFQMP=;zNBr4^j+d=lxD!@dn9e7a97fuHnEXMc<-_Npevwza;pzCeQT}nX;~nqv zcuJHP?0A6f3+463%fS?(C)FIhKgmwmu`GRgY=-iJ^0Gu_m(nugFZ+v6p#ka_$$nm| zFM+O$qx>63%{Zu?`qp8@(~aJ~fX`zeMYnd4*i7N5R{+)bvQE`rZP z8SZC*<#%p>^fdHX=t8xih1SI7jD>FDh#QsKKU60I@=V_}B>BVlLwSdI$gPue!rWZp z_0(E9&i7$@&ROq!DLz~!d?#+@WT`b>h3O6+FLcgle%hME8hiB1n69Nz0Zqnz`$H^= zJ+EV5d{?T$_w|4fdgWuDZ*2r_k$$`5c0NVSk*VoR=TAM+etMRW&fu3a*zy9~55{9) zI+S64OuWG7T~Bkj=QzEKb?R-T2_C-Gz|VJ!Sf2V^kJniS8Rv%JSePHmNY@)-d4sBy zf)7lZiY^-YTWS4Fy92++IDGaNMd10>&xK($G0y2p@Odc1=V3aoW$3@y?B=p~^yAzU zs{H({`OZ5r#}}2}N$=zcN{tW9%RYE}8YwSu{A2naq`df$%-v)(7w~&xozF?8+E^Ow z^El#mOE7cJ*7HGH@6Wu#^nRrAU0A+K{Lx*NH{>C?6qWJGgOPPtb zM4I`YYC2fCrS;g&<@{}Ciu`d`8&|`WI+5~%DP9NL7b!1hfvF4{AHwgG*L}XjerWFk zw&#bU85;%XG^tXSm^ruZY3%iY^}}S3V18kf;iBj=wTHxPua}X0Vp+oT<%^eQLn?%%Y?D{AtCSb`orPf$f2b7wEsh_J-v_{{_Z(|7%{D6KtjD zNG}_4l5+*wUuiO~+4?irT;lPj`(6i*Jrzyl!FT_q<9pEWvYi3^q^>70ce;7sRxP8WiAeV|Kz#vufHKUFi5K|%-{!yUXn1YZHOTjhj8OC85F5uQ_&xY$ zk0{AAweHJbV&2t9Y&<~CGnqH&W+po(%N2Q5KkNR3RW+o%Y;^yniXtjPu)4@yE}?^o zZqgtf-+4KGsp*vr#Q_E5QtmAa-q)s@UD~e+oRpe8A1+;%x+^FKDKD7p5!4Sz^~-;4 zkKp%^DQeTxOi(F5U>mOfusZ(&-+5vD682h2F19mZdEQ<+eDLh<`)XRJeh+OMR?lcT z>6D}Ur~Q}1YDeQW11Scy1+M0f59PDM_J-|?$$v?#v2`k4lBHqad;UCAZZmoIqQahA ziUphAexE<|+%qWymJem5{_Yn!hbARgTE#$_GQzFLFYFrH{#xe7L&yGhauox)oj*nJ z-G4Fny~`&puaSOwm)o9su&ULp?M+OWdHh26wQNP0AIjEwt^VJAqkPXTem=F8 zPK6exW0GNf9IiJ){-wtQR?{DiFVjzix-=viOJFJ=K94Cs(sUSq;qTu)(Es`Iz3|)3 z8U+6PPKB6{HS|juwp^l*mRsU(PQ*7}J~|Fvwm-n==T`N2K~uiveMKwv4YuPugyLk& z3QaT?Fz)wvI2YvS5|OXjaY9pzwNFz6+xA}XywH6-p#D23+OI*pbI6W#BvGX0qQJF# z7BBhQMNYn{pd-aMUJg4S+^xR#?tMZr|5|Bk&X$}&bHmWN{M|3h&4s-px4y&F|Fo}a z7UFL?5bU!3D0;wc&reMGVfuRKW$KqdDdC-D0oixvM#4Pyw}^*M#LkR)3g|q$>K#pB zlY}iVP+wy5cXOKQ&ASL*^Q&dt)wZ)*J_Xw!mWRoIdElDx)8#E`S0MADh42r>+x~6; z<=SxhIi(6_!l;^osykA5S8L24giRhlM|yF0j6LIrj~)2#zm&fHl<8)8L3npWvE1&F z6nVoU9nrf>&*&-aJXH$?W{)79AEExsKlj%`{_)L!VejgD;9$j<`rJd(u{PQ=si%O) zPeJ#vl!{;Ufb)-gU-69>)PKS4ehldEmN4jVEobd%+{#Oqyz=8t@I5(uw`Qr_FQS~J z?RR#auE#fCQ2*u6@=_R45;wua@KcOThgIql*>$-81zTRAzQq*Zh3iM~c_>5w1(uKQ zfBCb#_=a!#@cQ1H0U54VzaD?NB7T-B7ojIV;)oxb3n|ei)?(}LV)9pE`qvjvd*M@?*?0!IP(z_2Z?tayRJ3& zrU%!&!0`{;8!0ca{J)KtF&PHcyRwI>1LBV?YIGeD#CKjak{BsUzsOOHo8{d|ax^Hw zH7}Uv(@1%N^DmT_KWmSoPjqwabqPw?yJLIS@4->6-5GlgE3|swm(D**32u_^MC!j_ z;syFIQ2$`EM}PbN7rI{xCC_a)70w@|H9m7+_yfM{7fqtg9hB-{8Z!tj$}TMu5%j4j z78bcrjj8iHX4=sNVg3JUO#Kbh4ckuY@Un|Dc~D#PUMBJnMe4ukvo>b!C)~e1_f=iS zxv{GX5Iuspg4;L&Mt7qb7#6U^*uGW{%{PY?AuI zHP4iN%Qs21+!ABmWYb5#Da?0LeZKFmi0`~m)7dlloUf$_t+Yv^QeiPTcV6sO@d4c{5 z%FCbiUnoT<^QG^djcah@(4H7HJhQJc*M@P_*g0N>P5vC~;+8+{zpVHDFWp}|Bc_MF zM~fTMe^`7UuEcl!a&fuZNk5B(MXm9=ElKw$!RD{ZMepZb`6pGq?<&Vqx%}z)i<@%U zDLXo6ZFQPHAE(&66G;6R7~ie8cB~0*8FH`@+jIZ=c2{#~51~94${TemKP54dhge&> z-sdSy$0S4l<+p?QcAj1JnmjcN4R?AYY4DvFh1ZFl?o2NSwb?ZtFYURRglk@)e*xPY zDKD^ml$SqikKBF_7C$IZ(|0W^``NWOumIP*VDev(@&f%Al$SrtOYG^GFfQ8YRAPyU zSGw&E{zvXDe|^1s;(0yX$TJD0jjBl9|k|T@NP@ z*^qHrUBERj(7%BFi=9C4pglr)`Lp(DcIHmhuwYWJ^WBnC724*E6StjDo_lOeH))YxEi%fw z7u)zQJf8^1Kh!S@*?qCr?c}A+H_G41@-2G6`4p5(Wp)aCNil4{_xRo>=~J&NAdhX7 zF|kh9il=yVIuZn^Ja64wzCkcG>t(Q-tMrC*K~@*OAIeDo$L2=ctlBl2N&ex;zU=%{ zdb`XV7TXro1vsm2cc<`23Xb4=eD}b6R_?9zUMBM;i&VG7V`m@Ok$B9n zB6`I73VXu9;omRpi@d9?A{z*$3i)hzq{#jVq25m7Mu)9Eg8hq$7ebTN0f8ur#I&U& z)}b%;55o3`<-zj-kQb!>OAXQKV|y4Q3;b2;gwz~egJFFz$;YJ(?7I~G-m>!fX{UBQ ze>z#LGh2Knxaev*HRacn+?@E%OYOl zwEJ1gDf1x(MhXJomAa-_w*O|wi@Jp_#L zi+o-8R^Fr>Y_bg!$9GPfA2faK`3ST}NZSjJAEf1B zdLG8>{1e~bsxsN)Qs>{lGdf9H7UgB_{>Rk5Fnzu85*t}jE7!$v3)WK#UG9X#xs4w&2B}n0+;{izAIRND8v0ylEUfAD}*wtHVJ~w z_V=jO@!cNXQS&J*ecMwkEchVQ@neU&-S47<30XOBJt`R!OU#m1u$>=4UNHGDsK1My zK7;KGdBwF1$2*H5t5R6iV68ycyM|DKC+%#ilC6_wY1Ug03wIx?xe~tX7kEAg^6%};-i7BcBDF`*{=xBx`n%Zi`Ct1l z4{K$ecHTYTC{q@Gt9PK37LC^-i`T*V(N)VsAGp77J9lMksk%gvc_zO5FSSR$4RUX# zHYc~a<$P3@^c?E%qP(nSkE#@1lb>p&KfaVALzVD|j}Y}=u(J=)zCwAu`Mc3+V-)Ty zEyXP*CeqfGvR_bMP+r#3FQ#QD$SzG@l{SedIP@gj%?7uZTOJyycXLlnbaOx%8&j9yl z!T$%mI(fQy%Jaq4L#LR;AEEmyVEIt4Y86*6eqhja;*|P@aj|-Kn2t$iab&dMS(*2* zOFVk5$4^GYq=@HA?%s&Uep0->hJ_;Zu`QYjea9QUT#8xe)8lq5Vk!@&|JU=Qy2F!C z$3oP254F^a{V?iR=?}A_nH*;P%(FMcezx|h3)1;Cru6_!yukKBdC@-djfd^?p5vBH zl->8+Ay2rLVLXK3LiXt|mkJ1o_;#w^;p_`X8h?THh5ZfFk;Y$Oc}UkA(fb+xX^$Z< zt#d&pQQMQRDGlddwES^A3fH_~+V72&7g#>Z%Rl=Yjwfto$ctWem$mCIZ=!`}-p9W0 z{4U{|7r1{P))y%+(B7fE{8?Vk-?~MAH}CU}I9dgnp>7>HTKE9*C@=r~KMB6` zVt@8kXxSx(v5C#Jly2JOwfsj<@0_}Q;JL1;k^L!W^+!nON6^23`Xwl)EH7@*gTo^x zx8#Pdiw3s$kwJU+U)v+;suu!s;)kd{*F_2$Qk-C3Z~BEgYyV=;$mD8=>Z5m)?vtsw z<^}dA~!i+%06-^76O&FYBEbBF}6s;W^hXx4QDh{d7Fi=z0Kd z=NHf(!SRBv4E;lFpT{;ooKM@E$p4^siD_=5Asr*F3bjOeL3vqg{m8R4erwG*Z^N_7 zm^TSasZ=O0C@*XAA`}xw(Zxb5!r}1z7w7u`8Pis#)Jd zloynjwRq9rEk(c_bbZIC@OR>R*&#wGFDNf-@gih(rds;~I|Y~SM^5)^bnj4JP+r#J z<;Z=(%QClP%v5VlXYaoLp^Nf@^0F2$D)#5eEgzk@)lBTG(tSP>Encdf*(|m6h=1Mhe$Vf>?_(9p3(Ct{yzEap#I?D(+`cf@ zy|-d>Nj=I7%F9~31X^2D$$lQWsdreuiXczM3*`mnWi4K~_Z<3BKeFTf=gw))ma|7# zP+m}8*5ak2?#m8-4(dY;f#*rL&62XByr8_S#Y<7&k;}*2h>0&Z>FbQz+RLH5puDWb z%L9IvVp77%SO#LMp;OkMX;EHKUe@B}X6eokTy~Y4H?Mf!{<2Ll73BrxWi4J58#sGFLy)I7_ofQj4c|mzui*XNg7UH!FJB(>E>hoq@bpN* zfu(Mq<&jaJ=Hz)+R{~XY?l(Duw@+hxKLb2Jg6VvKPS#Fg5)GA;H8No*Rf%`?!~Laj zzbdBlYObfb+jE@W#X9vi(gY7*YT)O)MJ!K!uE*;vgN$=Sa4akz$}(SmB;1};$i3}(xzzJLiZ5x;vA(m)yFuM3M4BvUNA|98E*)@1XJFk`P{LklUsK1N) zyKDKo>YJ>292BPemCx=kPk(vK2jvCjWi4K|JTBwstt7n0oP3k@H+6R=$_vWN|K+8e z=Y8Gk^6P6_{c?87&1LAH zV6x|!(qAWE)cDkU@CwO=R?l0tRNOE>d>^b2%)i6ABXX!}epsL9wfB*?q>FI=4fEq# zp1p2ELn?NFh5HjB`zucWu*i2k2{x@tX(Zk|Vwy)|TOay09}V?g&C^+xp}D%fNe$cg z!}h@Td2I7TUeY9AT|9pyxXU|0YxBxfg*mQy!SsDdd4c64v+rb7rx!6 z3iZpddE85l5GMAqnb&1Cej3^*=PryamMre>{Y-S%R*ha6_7Cho*nTh__CL&@H(BCo z-Pp8!B&<5fCd!2r=7;5Bs!tMSwQK#Pja#-XPq#&5`4P?d0M|+r2M+!WcB#?O$6oOL zP{zayY(Mxsd69c~UB2sir*~wN$h>~vH^VGxbKTEwmTiWsl z2@2IiE9(4@cVg-v*j`YE{SVW9o2h@u`RXQ3ly|Yx1w8P8`LX5YwxWwiz@grUvQ1_b z+rqApd{w>O?^|W-sX05<=_*F~622eGn0SHrTfpZbFZUPd+OxlVw?23gY3~`wzKHL< zI7f`DslSPjd7{1ZeTt+|y7icrbBh+yCNq&cKmAwZ&SJ|8>|fabuzf>FhID9|N48Ht zDqt(Wu$vy{hvmWg!2Fy-3eq8u^Q72#FKU%kIon++y;0ng@*$#3Jn@Op@n;$E{ZO{% zG>h2GtXFzQ>Y#67V?{hn$5y|js@i&N{TfDeXVSJ${EBEVzQya{_ezsUcZ`&WhCkiJ z?UU`t7C+^l9a6E4_dtQdoYM7x@%ylUVE@7Pgz2z9VScN}9Id4{-(2Yo?l<+icXI{i zhvmWg!2C9W;>I@As~0zaahKF;UQHm6;n5-r{75LmHa1v2{pc5bKa?$%{dZ)xE$Zhv z)Gc2eu+W6*)3sI)@=KKvl=n)Ms;Fy_K{vAh{_UwOYE1{WYB4n zRAA)jveg!@ufXRq$*?^z{=`&&m><3m)(4gc^$WJV)P#l3922hMww0Z?vOBrd2Fuq8yHp|AzvBx7 zTZsl)OKB!dhw|g+PvW)i3EGDoH=O4?!gd0Fk8$|yEsDVNtDg(QXkwhxli>4EhR?%v zT+5J`R|?6eMD2az)IaOHZDQgu6suA8qa@`NTHyOEai;!4H0&R2>x*gq2!0<@UM_Q6 z`3B}(+{5Xr)3VoNS5oL;q;0;KLt=0@&+zn_#f$KLP{uVc!G~Y4o-Px-ZTnF1>Gfdd z9N2#N#>?q1OZ=YgEM=*5Zv+?v_A#~|ySbdd%}kL$?rP&|m=a=t7gM|f_7_rKbiNRB z-SQJX=ThD4$e?>5=)o2f+bWk!jLOukj}B-OsKEC@xw3rZyP2tc)>V=YaiUlVuYJ1@a<>WWX^kKWqeo;#Af z_kA7bVc{Ki;@!NAZe}8<-Lv*1)i1F9pqzf;dzW~>26|1FzGTrz+Pva zRDtjDx-&~po07Vu_F217H0W&gaKkk(u)ksZBjp8_kCYb}uY~o*q%R>ae7cN_71lZp zq1Q}!wBmm&;X5yzteLls7gAo3#$O;Wgv67H3#yuiwLXbL zH*eVW;X5yI{s7}maD1UMcI(%0|1Q$@gZdO{d6=Gu^CP$)8s!B$9x%1{dgFyzd8ea^ z_~3OZZW~iy>61h#FDNf-?SHw`a=5qk#wmwvVd^%D6E9*=UQk}v;sx$+MtMPbS&Ns8 zhgha;%nl##E?2A%jH@C=c|mzuix+RLpS$EJC?2|AJbToMex45H1?6QeUM`METgKd= zQo6Ri_-8=*e4-o8V5q``^rLTed_op0pH^W!71#4Q3D(bs(?h zK3E@^{{j=im%Xe}qn30v4|HtjFJQZ03YLeh91@$DcX{hHEyXIunO9`l|xtEYyx z9u^kS(O<0`FN5c~uq_|92e!{+n;*`nJ>OGLgfCM>w@7wshcw8g;hGmr--nbJSUyr- zkj8f*FJiI5PUatcruvP`H7MHNh~YagUwL(gUe8{=C-5lbZD8-hPh9f?9o_bm*2+}cum*{^>9X_H^sRcq*JP!}%n(^4R>(b9pXGPneYp9?F+< z?}5+5_rdzW{O~+1w&xpRdDzO_x@F%xeVdC1U6|}ti!i_N&0>G z&I{{ESK3pD3tLX>DYhKu?z@YW7dYObjBEV@kr?$!ozsOca;!qwU*ehmY_!eH-Y|7 zcxEkLc8O~XQ+jdSt;`Sqc3?u@J)b(Tm*P{g$+fpJg8pav+a!aimti~=)BG6De=y0f z-ARopi0lgT=|eO=KA9PT`QiIuePDige;u~>k-_q?l{F%DXZ)IU@7dKZ*$f^!H!POt zrl+3oYeO&^Cz18smJZ+VuhZU2HsxhQU9Yg@Rx1#^h{-KY(%_0H@bn2|4)x)_#dKh>5-Beu6?LIWW-PIK1pba! za>LnSearkf&lHj@)ep#RNi)4(CWa@@4Vb{Buzf$V&B+BpeI}XEEzpNjmCG^ zjPDv#QQs!4BMK^W7)|`~@W%)me?j9fYsFvKdT6G1m1!O-a=0KCKP!pG>rnl&rhZW( znLCzKNHm#8-5Qr!FM1l)FQ|T5OTTbQyom~5Ehy$oa}U)&{<~gz+D@uLk~tvvRFvDM zyLvQm{tD-}(BH#W#`b^Zus-m8NbiG(E-_Hb;MN1AQ`| z`o)PA{ibC;eE;9XBdx{j>}d2Q#&;nv zd3;+6=Z`!*7x0Xsm@|bc65o00)Xy^;njly5>YFH|{h`i^&X3Uf(OUDP)to);$E{n; zGVk`D>bF>sLU}=XS&J8sjJ(HMF?2Rk^_^OSn+MSI_Gr9r&3Ij2P}uNC_b{nBM=pht zWGW$4zo7bME&bBKoK4fnWLWAoadN&@?C2QE3(Ct{yo^Q1JB`~MYe}N^Xx-kM&8K~r z&#l{rTfD(YzE)d;vJ1vjF~w8h{0EcFwLgQX-Oz79*Vt+1Vpwt{%n#oO>jU$*v1@n9 zOBv_so)G%3y3J=1{vQG6$F+R#*df7I_0UQpn#Ktc&6sbiJf>a4QYD+Rp4DD=R=quo z@AIPxm1x?Qo7NYlWlzfP8Ei5}$_wmYD8v3i$_t#YBjp8Yybkgr+0SeBCD3(|G>=!t zyi@NWzVmXOg2ypA>HWp3BICcpN%9e#NnF)xr0IR0_X3yjwxd(oLZ zsBW%W;k^{T^YT?nd|05t=i0F(vA08SSp<>l7sv-3|G4G_?#D#R3)20VkQY7S#KyGV zq6PAryPtLs@=oGAFZ{{BPdw+NVqJU_`amrqgAJV@q4T4)=0`RRyAO#i#rX9Xzck7ZExKRS8ZCC{wZ0;6T7~k0 z^0F2$5(AqU)J*%Q&Ga7aJ{~tUkMe@@vKB9KF=wdm2kMoRXdRU}_Mo>%q)9llFeK@7 zxW^RFBm2fO7*E9%e}nTMOmeR4Cp%NU+Z8%a=ZKX%OBY~%_&!)4nEx`jm2Y6q#XX#^ zIxTxWb|r-lM%w0!IV1*m^9)a)S-c4I<63^d*VNP9h?JqGx?_`yf9Ork76NSpvu(bw zmA?*bQIh_R@AIRWz->2AxQe&lp4;ku+^rxUDKD^pp$z*6DKBvTj+7Uq@m$8O-j8Uk zyyr>vg$Ip(4=+ibOxqcB1n+riFw@Str`N}@UE6RrVLSsVFOUy7{&CFft$br(;af&4sd0Sgg_nbWbK(0ZVu4Ff8!ue8nnCAB==^A{`B624nBWfy zS@O;Ck%=Z!Rf#AsC@*XA;=dAh&GamZpV;qL{LxgRb0{w;FKh9V7)XBg&{2CW>hmw0 z&ZhIlqr9NJti_AQb>7n#6g|Cs?>#?i6fahU@`CcR7B8lLZHqt1FAZPIv`=8TUGnK% zeOlL!nA;y-u7nL*TzhK_uU~5Qkok2Ns{<7tP=iT8|KHgoO$dtQI#tTB~5}u?*k*1>1X_lnS#s$vB$Rut)9?I z$NT-e`J{2eJTNaMSZmnFlCqK9rdi?nBu z9em~ZcnII;)3wZP{+=9B-6Uru2?HpDui}~)7{9|cFEGA?lozD&UC7I2|L3xvXK7}F z_qj(Lpprk1@4U!8kn{HV6n!`Hp=HhBN!22xyg)wS_{TLbFuseF7o_oB$O~0B3x&5t z&$!CL-qp#P#l85>3-!-#<`SNf9RZQ=;tjqD9YM+qT=N3syGVIK8sCMyLo4FYGb3y?v;##Z??Twe)Neu75bN$ z{1M0lCfTl(d|U9zOhvc-Y64|79s@8xd>^b20i!97<{%%ZE=vGdug$y_Zm!ZHEJH3$aWPUos_rTdzSHI z)I90TXakRx<;e_#RIO7+_|D7nqpX^;-N!<_Xq)23Plx$!bY7sof;?<=UK*7tYWhP9 zf8>GLD!%RD=mHaah_PM$8F@_aG%&?zSI zN9eu^$PcFb;Mco7@|U=mL{(a?5g|Dud)WWSiH*(+-=&)$%34^;dB_hhTzx0_|H?O_)(C1~|LNM zr}rE+eAxis4`q~>f3BaE^SrNHom_sNNnRhP;aEqTI?Cp1LZ|0Mf`gx#D!)u`YU=KPA~p;UIfc!{A;9s zv#pv&PVsOi$fCUbyS#{qM&@+>y2wad`_R~1$obdb&Wm%zxSIN#_?Rc!JKv{B3ZPxw6mh)|e&~la(1CYY$n$_xP@M;kWiC@`>~)C3lr5x(n|&Ixm;_4dXkG$zGRd zTO6tQnsW&9u+e#We|_`=t9W!|VoICo+19Q*8=V)(2h=wkotJO58qu6Rw8uD;W*2wx ze;nBGyu|Qm5e0rE6k!`1te$@K3-UwR$2rTC+WJk?d`c`ZB>EdnU+?yaO{FMnz|A#+ zZg}6=SM33&jn0di4k43M#`ff|RL&he4OUwr4*_v}6gkzEEBS&(ALippUc>bD&I?Nm zjW(C=xlo3tqqK!CjcyyA7lA{M!WJru1H>=#8c@{q@IxLpx_-&p>-TN;{418kd))!j z*UA2Re;3Ag;rt8f{0P^)?Dw(qVdltFoGk7W&MPc)!}s}-#4CNlR%5HI2x=o5Ev4D% zzg@q;_%6!JzZ-vv5Kx`GdPL2QHSB%qB;~-0LEWoeoPFFF?moRb!qSsHkcW-V%aN3Gwd3RRJ61i|pPQ4knS3iJbv$)y<{V>W zhGF`8w@2@uHa~CwevB^9(6PLasO$Ge=Vh*2C|v%cm0P^aH$nQRjAtPanD%?GcV3KN z?0cqtgM*Rj;=3p>f0h@G!grqSzwYmqi`Ns6OL)8C&)dWJG4!`K`uXWs zw0Sd+eqNm<`MoRtSDb>{MnB((-p}w){RI6Nx~4gihQgj3Qx~3GHk-8Hz0rAr`UL8m zjjmtJESTyBZ+4vA(sX~*#7uI+M&|{+pJ8qN^7=vHJ>h73dcT?ygVHyfQ7^nQl5 zd6ChS377c)yX$`Y6p=dZuHoP4yrAdp*XHHzG*QLCr*Kcg!xaq<5vx>x`*~Ox-$l>E z{*QQzKinm@A5*_;gm7!WyGsMwK&5f z_n!T4-|r3MA#ndL((^~~yfn1`*q)y*H4h?>@qK+-Z(CY~-7@9f zx5s^6@o>nGY;<05eLur`<3-6$^rInzDXCj>{FCK-Teog>UZ6gK`evi+7f(US^W=(q z66U?BlrjwCRyRB^IKH1@z3G>(&(hb`52`HrEwC5W*d<-t=)B+|;Ojh8Y@)whho?lbbt#ADC%CC&bJ{Q~2==y}+GcRuaj zLNNaM`3GY4PbK?qj$Cv9+j)WUU6hx9mzS5P_R7V?Nf>38i&iqWMn?VZyukP_%FDmY z%k5K3@@i@AQgxez@-#M+n*Qy)!1yl8%fHJDvs8(t@sP$;|J^4H`KM;eaJ}Cf#$RE4 zW4+(caLmptB6KzCY8P2m@|=Nd9KOeQKPq(amN^I+yfb30IZ8{Pz0rBW_5BR%jh92j zi3@cHrRJ~P+g2}eYrJWr^8)oB()$_K8!w9b`$<>X;(r&t5BhMnn45B=^MdR98P*#w zZShQtxw!|6TLPDr6XCk7hIpWUvIn^ zD_oYEk(2O!mon}CQ_Qm**StV~0Ltk74A{+w;eCFvJ#j6={kuO0(j7m{ZS~y#xj0{4 zqsI4d=LJ)I7d=0X9eOB=;qkUO^y)@o$=)o2f z+bWk!jLOukj}B-OsKETVmXE%-xG1uXC!SJjW?(zd2?y7#U2&TeB4roC1VSQg4OsC# zzH3jQCUoSd(xXcq0;@vSM>Zkl1@Zktwe*Y zr8E8ls0&RpV~N!x@OQkD8_o{vTjs}krjTT*en4(Zn(6gIL6{DCIpIQ<$ITcQ z^YKTs3!hwSDZcZP-&{bKzJKAe>N~C1TxNqNNO^&L!0`{;7b!3BejlW~AU$snd6A9T z`%AO?wT8xL%b_%SW^a7wMVq6)w}C#HPyOP=ihk2FpTb$2>=UN>(ca=a8%ZU_KfwM) zW$fl3;?FL0ylmaVov_lvbUvx%Fw*wJNCi&{( z`5VDq-T_*hSEee=G1*U;4*g%KuTL=y$s8Z6xA^ou&J3x8IrmlY*UBU-teD`++MpaHQ>Iq&{A0b+h_R$}L zyjFN9pT{6x>WRQEbE z=pG2dcD)gk|AOhh=7@m>VAsR;llIDjDB-S>-Y98kQ>Al=ZCk zy0hx-S=1h(_Gm48B(HeG)A4bm{NrfHJKp8-lqfGKFKh8qSrA?BH{IDppCA*dCf(-0 zxTX1f^U^JX>uja{`8FYQf7*XJtadbBGmv6HTi|N$_)tD8Qvbz|=P>QaaLo%9^;j!b zmDQ{t3wFcb_#+GVz2*AI!}U}GmJem5{>zfx=_r;>ic2Cf&K(0?4jn_=U(4Kh=-A&* zu3{j!^QQ>D+aufk`7h4A?GoDOMzBwEhZ7a#z$YGubmOo!``FC4e38Dz7JR8 zJ1?yF9Oy2cA)pv_CziO|WTJ-JBh((PWsk_unNSX9FFKP4)y-8ayq7|GL3vq=mm0?t z<8DzGYRG~UH(9CFDDBr}?1%mY zw(*zt#0yV;3DG?JMVUcURFL}k-}YY`!XHrD=fpVN@E+IOGVLmNb3T-w(zfcO)>qGl zCn>vF@ZBE0H=ZA#@Xft2{EqS)BgrQ*$jhJhUr=7K(`Rt}!10A^8Ll7op3HDF`uzOx zuF$tl+aB@jCp%}cht6{-YP~-ddh&``3R3-oX}vKhrYtXR(1XJxCb#5N8J~&1$q($t z^8z1hCt!Us$?Kh$x~js{$Lp%qUtbQ=YnB#`#x*anKVf@cU<=tN`yS3(ODCM?(Dz?;nKEzpzuL zE_o4hkp5oJW0tF?QTw|lT(^)Gz05YY_|T*4$P4pB8Pon2sk6_jKdNs1_(;yVY3C_V z0r)%|Z_pmW?~xu4SWSO4zDz$6>e7&8jB$MnJ`dlIYZ=<3!0^(MMs~uRNvA7R4x2a* zX;(5g(}c;rt*iPzDfwpdHoo!F#;)BZFJ+vkdqU{D>NcN6J>kU0wBDix@|wG!b`SDm zoF9Ags0p`p+G*L#?_&zQCTs-Tf7(`F$a`~=q0${~u{$kILoj{4^U^Q6D=UsacIA9T z`p>z`W`b-<4sx`7OwYnocU1R@z8}IjUK|}~%iMqU56-WYTJF4?-S^y&`8Ds}Wn#PB zrv@h-Z)U^(g>tz|P{PhnUW`NSGP1i$o-o1m`Ysc@!UJs+RcWWLd})4}1k=|$FFUmb zbwCY6!m=ifkkgtYzsYkQRSh5Gm7UgL_6GS{e|TdX1)pY>4q zduxPSzA@IfeJU<< zvQv9SHhrNX6W@42{TJ-?9~|FMhW;+W)Pv>z)#d~us=X6xUmU9z>iRhfjE|-yxY&jN z+@J9r-*`d&mp{vkvHbJLIpe#Y9jPA|b61lfLj4!qw)cATUl?Y@Ug|R>KCYqG+^X7{ zE{5`g^0HREuEk}G$DNjA-ghWy6IfsBxuLwEysX8`;|r8t=_3}FE#zPQnf!0xKzTuV zS&Nr9tWRhyU5&SwvnAy<-J6j?c|mzuix-kUV{5YgBD=O)T@Tn~%%gRQQtE>^*=m-A zckV~yF@qUw=SMKUfbOsRXZ!`<_tzCVw0tAGDIxkvzq@wuN2V>Vc|rHrtuJ0?<_wqm z-%3R7^VMoy_Pf3p*Suhg@1pzbu(N+qf5Z41u4NdnQ+=UbK`)=muJ^KL!1u+COZ+TT zE<#U!#1TI<7gC~4tcCllv8^wr{9j)@jqC0mpULEYYnwdS;RE+$V*C9_@AFvwab3rX z(BO`AdxeL0*h5kHeoXrv3?&Rs7t74-DO}c9Fv>CSb+jv?*>tGLB#qUEJ}iRzGrrp+ z!gCaR4o4^%@qhBRnJ5w}!Zk0L{1>FW!1Dh#UdCh?RPV|jst$-hvZ&E@L=fM3*&c7t zLK5M&=ZeO`>W^oCSmK%&O#TZdUZ8%0`VQJVlo#ym8`PgrhW1ETkA;IY%z!FOSLz+{ zX!RQn=38d5btclUiabW&kh^vu-Twmn8`j6L?W7JbyEu~vwKeZ$BL7fmkKpr=7g*jV zmpWVVq7LWY_$PLAxg@T#raP+yS$@W6QJhw#`h6%3=7;ijvzdqIy|+C)BlVSWE<^qT zO!qMm-oFyYrJ>^WQ#h93@&Ei^;AW2Glx&jv!Zpv7eakmVwA>P7-DJ~8zbVXjQhmPf zu88mYWsA)ho%WZT6zwm*trsi{PsTMb&|bjyN6HH<|8L{v#MT^+2QKd=xrp>gSYs`8 z@tv18Hd>x9SH{#1p58oAGeDMuYhEzfBc!}QdxY}xXYEn+)~9XXvIJTLOR5j-tCJYX z5Phb;+G|*_e33gYUPEKz#}A(QgOw?L52cHF;_l8t(K)(%`#(*=|9ca%b<79+{3y+ada( zGq~mj+6&meNO^(fqrCiC{gULdQp4&Q80=hKcC253^c${u!DNq+@&fG<%FCbSMW~+W zv{OTd+Fa<9FQ0^Wa--{wxNYzCwqJ_l`}Kj=UpG0Qr0GbpbQ*Y|yr8_SwLU!%JWpW1 z>44b_&OB4f%9T!vPsJwJ-o^;}pXqOt45D7f*58Hk66jw*|HZz;+f~H3bMy6hl@FZT zzL~;wSRSVMOC&czBLQjl19fx4DBGL5H^^gnw1@&f5{j^m4OUM-`UT5}GN%8JM57_Z~*$yhZluZ}6*^Snamx-`+xVT0)wHF{;4?+3EmtXJOuXF5|6yuxO#ZGyc3-S@J9%mIjq-Q0e2X5iJor9X zA6UMX*Xv_Mss^k^3J2$#Dvt^%k<1;-DI}WAqi&7MtQS2E%ZDCsT>u){ZlnhbDxrr6W;S8G=Kl%3sG|t zpRe}qw)P|&otId#R|``brTP4<`uc>WCwm|d8=aR2N9bvG%PNos9ywgTU+c%xM&||c z0rkyB=Ve}Ra_TFKyF^2dK6Pby$Bm873$yZ0M-%bE>r&h{roPfAi6B3dhl)}iC5D?b zZLFeDd_0#IiT<@a)IL^dnAE>K5x6yfl{eN%y2Eo*z$X>NmWXbbDPVL747JIyK=)~qw_M?Efg+)(aJ5}<(nY= zQ^vE92X4Ldk3Mmy!ubfCufX<%_d{WdzrgtsEFa3SK5%~I<1;a)$<1%`Wr1V!o%gKy?bfG* zh@QqM@=5kdo~xrshxLVWuGCbiT>w#J-+|nv-bP_cnC{!ARar*bPOc{H6#kglF$<^$do7=E}!wQ8zzwu)9D*?dLxrk?TM zKoe}wlR#eJ`VMSg%@nu#vt+$K4>P9*_}q%8ARkbMyukZZy&iTt*!3+w)sPDlAWZ42 z?e;iE95dY|+E^cON#B#D4Za`B(Tt6PbDC5sOU#^G_cZo;BuUb3CukM^SrW*4slkvh z1yj6EFsfGNYhlRC#yxFu|fC0pq*-a-3e>+vXk?IeGX6DEzu8tzBd2&c6J$~Sf?Gad zdqVxfw`c5W`?qu&_u1kKzhh#W-U&q1iVZA1=G&!K?o$_W;M{)!|679fgZ>JXG5Ih0 zTGcab&*#1s7g!Kga#)*S`#+l+qSMFrFh&;mtJDdpIl2b(^W7qrr#{!?b(TTKxgj`q zy4LDJe#x{EXd{zIeC9^rfZMM2lCC+_a=g1E1p z+?|K$&R$DfI!Zhe+h)UHnszcfGWAdMviqk_XM5$P4+`l#2RYQYG{g4CmY2hfFWU>) z%&O8G_mSBhvQb@qy?Wv2V-2&Pdn}8*@(3~Bw@wq}RFHH-`YTUHlKeq7W*%4{O!s>` zibr+XT{ZBvQ2ch`lW)XVZQs5?h3oEKI$y(@<-~lp<2x_L^P5vQ_p0CiotDS2ecOCL zx*roedjolb@_MsJ#eHw*4Z1rDxcsvX;MV>5{PH(aKY8>$vXmkskzo zNY9f%`+;fy5z_M{a6RBppC_pa9erR^&URq>9b?cLrz4e6pTP5KlEUfAD}*wtHVJ~w z_V=jO@!cN192C)#CG-rR9Oi(Ij8R^mdNftO=)`z8s^y^%+~2pIyRx-ZT_VUl6W{%p*1~ORdjpM>PmU7l z86P+qkNUePFKgK&BF}6s;W^hXx4QDh{d7FisK1N)FKh8)ZzBJL-X*5FjfQlLv?|mR zf=RmcDwywERE5J{@sI-JbZ^@!gZhmIbK_YhipH#*5*826!F;{;&K83FCH83xx;= zgMuRrq=zD5`A{ZuD!3&%)9kD299zc9q*e&iF`W-!ab&dMS(*2*OFVk5$4^EC`n&jk zpGQPbYyOy4qe=PV-AgGvck@T+&g+}Jk1nJBEO}IJ8!OiTZ-o7eX+2;!%FE3E9nX+Y zD8u%J>A05Re$2uhy26`$e+?+?OlrCAA+tIBw$({KhTFTZyoy)&MZ#f-ZTtn+7t{A4 zy-yXs59xj>^uFeQ+GEJe#R+>3asIrzXmgd}3XdQsT=RnId?Qj`VEKO=FYE2T=8ET` z^$pL+=#E_8&Hqi!G7Q(e!1Jn5A0Xug+B=k&f9eO=-q^}ezm!udCl`>n^ZXJ_4sM?f zQA4^O0PBOv9wFWT0^j$i_rGlP`;_{XBA0@34FoL7t2k$_vWN|BVMhf0ujDp&#`lJKlfpoaSsfdxQn$ z1?6QeUMlLo?BM61KEx1so^;zRDJ#kg%F9~36!jgse9VoQ_;QoJ&Zw=u9LfvI%UZlV z;Abf&C7g_9Af_5RW&N2JDv0#)Jl$W)589b19UrgQM{AMaD@*a1~Qz$PeFKh9#te5e{=y|u*1A=J- za>CFSloynjwRrJr>NuF$vUQrb$C*XBS)Cr`1?6QeUJias+QdV4@ExO~%8BoOuM?)} zw&^6!W(#p&i87nZ=3Hj+xKNv2L{ZX z6s+X1kexTPlwSUy^_^KqpC38Ev*P?Ssz$?DG|wCU-X|xy`I{~TR1j>hA3vrM_Vb~K zQga%C-n{)jXD(N=0U;jyojQVSw-cImr*4jqviJgV=0RqfNn9#Nk^ z?L`6M`?8?NOuEGzA(}@o1h(AyJXCBx5NhHv)8m*DnlM| zbFadhcYoB;SNQIQ#B{5KyFvgp^)dAvMFKw8Plh3PS3UMyTJ*V|I`c`w8{7LaVS50N zC#?Vf+6(-C7)w98TOnf1Ons>G@}3|`hIUwv>Hk14dpt_vbyhayyr02wB!bC2?$&O5#iegM)92%%KiD7r?dt`> z>(lt|#s1(-XSG;g&4?;LXPe=CCDQw);PFMhXn%dxM9vZWtC2x1zW6A1Pu-iI2;YjFGpx5srnd*}LgV&TKPIodX}R_*r+ z4F1p&d%a01g~)AZ*r(y}CQR?k!1Q}yePG%iX*u))>l4>rF#SKIUf}+bdKpiAe{6h2 zL1C^|C!$LDTOX`%_GDTNN+r2YSoJGUhcPfr1LWjSd)fVN{Fmn zHNv$QO!W)B!0n+2Ozn&P9)&nXMg{*jCNWp(I|M@E|AWUD#+c?uaC;cT_I1ibf#lT@ zTeHRrf)k>lblmv%d?RdM2CqiEQuk+I{W0^pwAxc$OL|UwXsLLKt+Sipk;VUeZ#lO8 z5%dO+Kdj%JiDDP?`Ua|@z;}MvLmY_V_L#iD@)UaJw7BuD`P}|j)`*rbT`f7qEa)mu zPxa*KlPyv*Rps#eVT{QOruh-{QlBVyN6N}sWxr)-@5>_VG<^4RtnlPndy7*7l(eHR zGBH$>C2lT_%{hIW3N8ec*Lq2`V(SIg7d-y(_;`Gx8I$w46hB_p&P3}S?F_ev9$@dF6X?i5FWhnDTX)?q7%h-!)0@C%u8Fhwy#_-+@$J3Vinh-#=yk zL-SUnCczeyV-F|2)*@7~^@45t;!o6naR=iN)pSxmOPMws9kyQJ_GdCwH$An5rP4);t?mZ+)Qnf~PzT!-@&=9KPuk4D1!hUYVkvGwAi7ojxBqVdn`r_zHb~Je;8Zv2dT;{a zo;VH5ukh+eeLX3AN1kPAsC*!c8!ZqhmtXH#d2AR=*omzdcz(g-3F{Ze zaC=N%;OC(iY}fNh;msU*u6f2z)U(d}v#U8N+&`xE8{zgOiN`gZ z|BqqNtPh#5+FEx(;P$XvssHnSVz@u}d039?7<#EvNRT;h6j>ON8OGV<61teai!S91HuD!U=Ua_mG z?F$YwDmRiHCrN_G8{fQ~{=UrX(z3hs8SNXsUET+Fot@;Z-&&|#`SoOGSq86K5K=Fg z#)t5DA@wqqKlY-B`*~&S(70Zrs;ju0=HwnZGO`#)163h=x_MgoeK4*l8yYb&md~&z z`YK|d_plC@e^-61*KPT%(MFW^)iv@?TUZWbmd`J#J~3V0_JGvMSdKyS7`}VCFL&Wg z^2cExs+R1bgnb`t2ZZjrv$7Sq{W@=9oRt%5hSUqJKNzQKkF<;QsFT(vb`#waip+xL zuzunA1#bUcA>O=@&5*@*JjyOaDVGl0{0rP4wsB=mx7JN}lYK98CA{w#_L%g0b`8~A z>rFU}_OjNR$Cu-KzD{xZc|&}=_yKbVvbu}goSks(1s-o$|46;S{Uh~)G`|bI@Lbxp zRBnE;F2L4^Q!{E+3E#cQr1My+T|7VTB6Z}*p4$8~_~r%nUr4&6~Z(gdg%)XV?>es9>mJZwDL*>qRNCR326 znM^V-4E2I~S1o%^-ZVcSG^%|Zl8M)%bg}n{YR>6hQ`@j6CR9Zk*5!jUY)?SJuH{1%;S?2 z;im4c4HnQRlVpVb5x!qP>h5u5Gj2Y7;hnWnjAYh+2V8rB#}n3XDn+=n+be4cp7>+s zB$k_xVCw~5|3m7<;E}4L`*_#HXI8^`zArW7@b_YhH@cUa4D;95_J_%{I;tEQF83n9 zwHJ6iVSQ_}_%m0;O?_HB_R?#Xqmcw#FYtbE)C+F=Q#gJx7?Ls#yGyNPOI0-KT{a(A zL*=2%_KrX8@k1s zWjBAm)QT0U7dStH#}n6H;QR}zmu&H=5=(D_;I6~j%boRtl<@b$@e(YD?aMd8$9F5V z#?Fm<=NP}Ki}%8JFA+0Cd;_UzjA?cJ~UU_-7H4wG2_W>@S8t^ky(U4-5MP z=mj26Sik6e8oTi+tZ!JKxQ^lYWg(bLz`!j2pyL`>y~q=RDO`I&=hGYO`9_|=y~6ET z`!4%ZUpyHUa+DL-UeNjU#`4l)e%g=VdDs~qu`aRmwPdN-&WCZ`{%y4V!Tc`L|M!30 z9|ea$o4$O3~RUNb|eUi>W_lQ%{rXU90<>jAF&;4&b{NrlIzf=Qi5p zr*+OW9_8qIgwzYn*TM52*X;|;2O{-?G`|bI?0ea&W0y}yuf2=icO`sS6yLpkAp4ml zOe1~qbU|L0nLq0*Tzi4%Kd!yNd>~RUNS|+nUXJanYFBQV^Aq9Al2Z9V6N~R&+=tkG zDXjdLoIbwkDx4tdK=Uu?{Aj)VG2wc~s29}BdS3R3XbDofvOlWG4f=VwUqJ))f_hoc z3%uTrdO^Lc=LN2hj(S18tmh@zJ zpU&^TzD;aMMqrtrOXsitC3$8D&Y$3X98-Q5u3ra#KiogAW0B4q&jfbKe(l<`KyFe` zBPX2Wq;nzH1oR@v(GivzmuxgwoRFp%X?=JOf&C4+7ofLXCB|Z9K5C{ z6a2iqm1c49)5WYi=19F4CY7S{1(R8dixmi^_pr4mkLjg@ou};EvMjo1MVNrr{VVSeG}Ne zKLG9z+t|v2e%?sCZ8h@;v8|yEai|u1PiGxn0?!45@n5_b>&5V^l zuFi4wE7&h3;o1v4|8d>E!2B*!FG%yd&%c)uiL0A9& zVD{pOQN2;VYNTGU&F>;@UtoS0sTZXAUFao;hrD3^M9g{b7xYE@6RCso-OG_q!dW(o+9#2E$)1x=dZ+1U$L_veg{o~n9iIQVZeQSfEJ(e0KTf%76v;{2-dxUb zG;Tlw{$AG6=SL3ktT_LSs?jhO&GUxk&ZM@OE+ zez_eeK4*7GVJLxG0QG`;SubB#$C$ajoIL<(o|hk?QTC(PPd3KW zI5$ysX7VIyUauny-Ui#Co{QzWX{Z5$AB7y4tF91mC^fA>*`52+`i1 zniQQbTj{8VYcH7cbx6Iy`8rZBNb_~j3)2%D+AE5i$cAqdiau&EQo(mGv5(T(OP%ht zPYiT99epK%*bBD#I;37;z7DAur1?7Nh4j1;WnbpfEmFVQxpxX5#qr(CfVjvYU!A+{ z$#~(n{cm^kBW+)>&DSCI0`ql9y&%okK`%OjarG&kg^Q%skJ{M!xF+!33va@z>_mAtCBuSnu zOg2TU>Q1(l`>8NhjmAw{dL|Seug?zjk}FBA;`{t4%$MSxq@zgFgSl;P5>EM1NWEa2 z-$m*L=68{LL7Lx%UIJ+^Np|SD=kdx7P&uCpZNzsk+RK7jMbQcSsX_(^%{fhjaP0+C zeix}1nBPU}1!;a4ddYrn-sh~G%K1v^)%?Ok!)|={;u{#gSt&%kH`e>kPjN8^E2Lhq z&F>=h0`t2_y&%o+LN7&oliz7a*L%iX5tmM3_B(<1Ug}J=vYzO4(Nk&Z&&H0XA@zc7 zeix}1nBPU}1!;a4dJ(XWB;njqBVX@Z@OGD(_$a=6;bQ0ATJSMh*mwDPz4i^W8FYSx z&X3lcAHAa&<{uN4CEXeo9A_k68Haj7y{zZO>sO$yu_}?L@M;xrDE09<)C=lmJuh*- zq}JR*R+=ha{I(B&xMLevZDWj!y(p3O^Rq*n%Q z)2(9Z9~8HBWfXs&GNRr|?lIyWVkH#xr}MihKYEYq2vmC?U{$zBC>Lx5^R3wCcYo$G z2wB|QXQ!UaR5khHvDS%iq!MQ?_m3PjxS5_i!)yZgkL&ncvCrCVuV%rOlil2c%{N&1 za;MqC>3sH48GOlK>M&8n_xVxo@C}iiD!%WDNlmp6q!S8|dciioi_{Cu?;`brG`|bI zc+HX-I19-*5^8FhcC94P;k%a_#%3=U_KbTrzl+oh()=#; zaL7cJ-J+!p#MIL5TPPx@RTQZLx%caeI5`CX)5kmh%x z7kAYtEtmUTtv@>xYYuULt;KgQG?U*Li#dmOdIx`q()%fJ0;v~l^SemB!2B*!FG%yd z&%kfO*=DK+XJ>_S2tgNqS9^d6_F+gxL*u}$culkg^ za^#;L?^>3SQrwqLKjU;zg|D>QxfhNaH89V9nGNZn;*%FD~+Lnu#k zzQa|O{?x6y`{8i^Foy4&gXNfF_t{I=9r#aGzbm`08t2W(6f#ddGhD}MW-6Vg_e@jf zGQN9RNy?}$WjpEbx}zat^mL%-zwX6LvipGgN#=ez`>7b$pPs~+e8BRJ?xp@LS#?i9 z!B|$=fy?hSx4!(>y};uSV@#elx|bJZp`q~%o2MJPlWyJMWL`$S{GP9KsMj?Mts~(+ zrdmYYSI`##{lIvmd+`!|5>H+7PW`diknB;fF-g?R?_R2;PZv$OU-J@K*VMtOtY2)KU>LjmQheziJ=Xr|iw)|Fk8NlM zZoD{(bbbW$udseqhm7Ab_NOg0MbHF#!2R3k zx#xaoH9TzaXqe>9N0LEo=ST4S;d*tL=Gz;+KQd8f4q#xPyfkq_lP$WZ-sW%jqHMRa z^V|#m!hu2S*SpkqFQ8t2Zx5k&q%mB-PRXS-^W($RQ$I6%3j?TMO#kg(tXPC8`Y5F% zFZxWLQdnMWM!o#EUNk-92@|$F46$=NDop<&*6?rlLXpFz)1%Zp?490F5iw~HgnIdJ zy^t5S_xDDoT;4I~nL^_h`sNs&1Q$8`tRtbUdwo0w>uGGqFYx*_%)i3+(SIpLgFHj9 zY_m`ECDOH%_h303zrgj#;Ps=kS1-lsJm+KC@v7`jNt9>*!^WeXO?PE%G6iXx$t3f_ z;QnDex>}ho*Asu(HR|xbW!^I(upCpIny6mhQ2u3MN1gHGRw~l*OF?sdpNhwnSEtw7 z5BO~RitqVdt%9E|4W#3#AxgKELuj=>{_9@onZDX>nmNXlnzh1~d5qc|lMh(F(Y<`U zGyIuJBs4fKvDsL)sr}))JYrp9=WEGQ|1~eW8@Fp6x^zB(zCmb5fkV9$>g9JY-Vr=xS??-- z(tJRe2$I-oDuB3IZZ?*2E#2%X>GC%jnq@qu zxx8IdX?FT=Z(m@37xnUcdkFm^jbVQGG2gif>k}$YOo1OuCMbKK|LtC2ei!xf-+J*6 zsCCzNKc$*b{lhjd@fXG4?gi#|Q7`|kmw0-?@C#oz^HQ(4i)EeWBY*ecm`}K}L0>DM zp3dHFu?Mlu@51K;VEz@hkH72G41HR{X9s82yXvvy*%B2`LHH0+G|Lb0=1BRoom$4k4{;W_3yo}=(_A~{@1)1<{fyUb(fv)uJ69YY~7CgsF&Zpcr1kd}+>0+dHtV)V__uq(l;1_Y z{N6r7&)CK=ziT7Cy<)4yzJzn-sU#+3$BO=TFPQSXsFy$M#lVTm;@1a0MmEu3L34B(`U(=0&~y?gd?+;dd|OZjQz0Jw+X!{LFTYY_4PazkVJT z-tPiqnBPU8hyC3*rtufH<#2u!QDkxYGJU$C&enjb54UA}|8_4hzl(bLZ@uJ1YlSCg zRb8apJTa&8gXPxW?gi#|Q7`|kmyUVit2bbW@6<|VW1 zQPI`Q!_I*sK|))o!vFf`r~mYL7xqU;*Js#hUP?{Rz1<~vdq$p-@W;zsF_XW&eS!Ji zzx{dGjrM+$+l`w>yI+1LywFyB;NFn!?Z4d%%w+N+ZbLCcqOw>E-XUya(dbE zid{{?A%D9UnBPUc;MNE1kD-?bGRyKRDJ|l)TLf~{w-Ouw?OtGh7xnVrdSMhVHZ|;5 zpXzy(OrI+=Q;O^Rz5n&~8BSWdJ`Pw5v2G`+OqkPijKKH&?iYoxT%|SwdLJ$`RSWH) z%ly~9V0xY&w%0I*&#P@TFWiK2i?v6@=WjltcrWTR+VHP?fyW=lm^^KCFK2WQ60fmD ztrmXt`>a~TL5X_#eLR44eTI$JzBETMEM;dODQfgxIU7sIHHLcm-3!w788(_1&MzN) zopZUl?mJcI+^(s0{G%rtP$vWBJ zOvk$}UFoX4w_D(E_kt$rhg~vGgVg?mC>k+*vP334d?vdyyKc&4vPm+CSQq zC4H4(IrJi5%3w75l|*ZB-!sb?#q#_3?&S&nE49N#Vz%>yL4nbat`*|ii@%?0SJnW{ zQ%bw-ZEq|!{^$L6NWH-8jYz$~_3EI9aN(-ODfN|kU#x6&FXzI)+tdh=adeR=6!wNcrsMd}4!&qV5_qHJiy#8^JV zn&_*Decr=5_7;j>es=8c+f}IA=F{Q%59=4H7uY`_^@8dB_3(Z7@c%$Bo_Zx#=CiBgmAeXL zFDBo7kMCZ#*#}Qi(PjkM8ogaIxbnU(cAlB#qpRmR|Hm`-ewsUdkdAjTjb8@xo=1G^ z9Gyw$cx#c+_tpI=iG388h4oQ~Px`U8QE!vs=P`|Ur}D>M^l(3~Y#kccOH_3gchj8Q zBS%IS<7l8NWKTCw3y&|RII&YyR6FNzO6axaka-QeeoXz5zNp^mqEj<_3s!U$E@xfs zw6iSUzJN;@S(Q{s^fTxc|S+%a2p^ z=N`#&zw?edv83L9f*;?#a3`>fyIrEvXnU-1QpR163D;gQ^+!m(!0`*}<oK6=C9?9t3hHd@?Q+xiemy5j6{`#tkoFn#EBZFFe@lmAp0sCj9`@{5kIKF3) zv)g<<`$>M_f@!TV<1i`e1-IwtM)Q)bM!Yw(!$po*lE{+Q+Hc&$O~9LUD3L56l`g@r z>wy=x<6W4qgX0V6S%$vA0^OC7sB%g#&Em~_kVo+%8M@?C$=3s>;Czg z)v&z*_wK3dCPyW{m7RI-8&OFNzaPe!=F_E~`xOg_mf!cvk*65nDd2~nAC~QCKkkrC z-|Ta9lix9akx$!_PnI60e0aUKhk`ct^I3c!zp$_LCPh{_Gn5~Amd_e(L}_1LBk#107o(-x)Fe1r?8|hePM;?cZokpJH2Oywtoqt6KHV~v^Fr6w zrAzrtLE-JG9~XG-(k-|9siufk8K~X8-|ptEx%Jmn`Biwn!}@|TrtS5cr7v=^iZD3S zm~-7A@CraWpWaGJ6q$69(|-DvWP^8ejZ){8mnZCfoD1p9MjpN-TNZ@B55`m`Gcjsz z6fuh81H0zZ~q4k7ua9G`bFvm?*DJ|BDpP#J=)=; z*dYQPBBtJe~mG z$1iS$a@IcKwG13omxFYx%o`E%&5dj2^L>cnNn{oD4|cRIuEH@X*BuKJ~M z&9O-yRUH$hwOuBtm*4v%b`9<|w@h`bm5)XppL&dxVf*~Ad3muQo=S9Hm~``wi)}rZ zcKSgtH>loTqHX<=ee;pHV=%AVPS`)d810XK?~m-fCwf~GzU~_yvaQhdlu5w%{%C19 zqWk(sdZ8VxYlN3X_DB8eUSNBHv_INtUb2X@p)p%LoQHbBZGW`Uyp%W5 z++~s2DG(uBT41EU$cfIUfA<308*Jl^mVXgYZSaY)Fnz$ihUdE1@*FC{$(&? zF(j%Xv?`%FgZ9GlJuY#_c90x@>n|s;pk{dEaAw+{&c7U05sK3ACF|AVv(6sv&t-z= zFC0%}%D)Wlb6Ba*yA`QWn6h+3x5Yc4FW4ei*e34&H_pLn#U%r{e;6apzj)-zdZ${o z*j`oDR5RSEz1Jz;(lc!*Ke@Y%{)(cgNz24r-Zu3QO(ky&h%otN&m30{vh+ z-reY4MBOMUY6^pxtKvN$3;hyVK)w9lA7Pt++2~%hhsMixoMm=rRXY+pEgen;z5MC? z%SP{y4&Ax8;IpdhN!Oppm?Llf4&VDDZEL;?FHZe|+(WA6d)$=T|8+08?vFN_mkS1U z@4oO^+L;Mksw5k4`sdph=mlwiw9&lu9N&`>!5jWd?Q!bl+zk`{wBs)>taa+=AN-Y_ zwyRKgJJR_Pyq^gk52v%GGM2Qrv@UG#a<>nEH10SO!DJqHYq!1P(zl)I^YPfukIuAR zyX4G%mHc#12F1k_=X_RL1AZ}aR8q>2SCR(kChUdZ4`YKzs*3L8T@#;K4d?m3)QrP& zOzWw_`!Qku1>gIlIU*(_p3SXKuV)x6?VoadpKvRKHDI3ojOIs~0O^~;iAcvUsF&ZL zKf-q}5d;=Q6jTcAJn`at4_`UwGu$n1)t6i2E&`ez?0!cJaT?zvvp%n{u09<_I$X<+!@1bhY-w zfjNG5aaM;4;rk4G%9Zfl%jS5Cf@8sz5HHZ*ydk0dVlnjgs{>* z)iGK4#)^pJ^#2@{wW){vVis zS+xKA!nvrRdar53apn8t)?Y0`q~Wmp|(zWPfB_{8!02&b!0U z>$0OCk5DZ1M-aq(_%Zu&a^hTS0jBv8Ca;+KBc#ty!|(swo}b=m>odfUj-}k)V)V+X zT*z(Y{Fh_6_5%A0czlt1f&2g4ylk}f8R!cy^7k%(z8#)_uD@rJy&KnFF!e`By}rvT@4lSd_9aQ~Rs*w)3m^PE{QvO!H2gnOquy(&Nuw)t;{gtJ@rI&s ze=vrhhvm4A;dqxNtm~UD*}c|<>PXY`W4Q#S$B%@HF9x;TeW|yw?dIqJzIky!m}=#& zvEQ7IEqjuCEJlp>_6vzYX|uuP;^&Hc5<*^Js!xkgUaWLWi8Rr z3aX7VLo?3?h;Mg2_&@8{ZFDcPhj;%V&S)Esa)><6{fJfi)oR!fZJqB_C7ax77OHUx zeDeb5NA>~Mb_Rr17Ebwo_XfC4CNX&_bMT90Zgbt$-*QTJPjNB>-2Q#Lk!8W*=JCoD znVa7~y^4qB8{JDp(6zh%9K_q`=_OB_DlDzQ{|oB_jjpWv!| zX`~jhBe##Mj;j7e2bq_fdXVWGLtRtOh%QX?Y54o0H+1~+`~6a|zVL1QQY^z6d!zh> zcGOv&d1=1jV~g&eLfVQ-?JZTRNT#*x((%m;I)1^f{lnDW!SU|f;s{d5$dogwE>=Ee ziT!UDYkS!94TTb89V~+;52n4uH!tY;<3Z;8CY{6qMD|BI~pP^{8v^|FhR7lVAQBlEHK0_zLg z_kI5DUf}y0@4G*J{GjnZW7ak`Kh2MdRq+3BbT8X2&mT*VuiyI0CGGs-!y`JFyukAv z))&6FFB6LPn^kn86QjM%qZc(C!{PtK6mN7dE(b(uQe^zzc-&-5ZkbitD*3)+MMFWL z{s4L9%#N$)kHPsgruu^I3#NRXMxxVuRgzBknDnV$9;c!y=n=-SKZ5HutK>Z}oY7C1 zNn*G(IF{x8g3GW~oj+DOv5%f&{=8+?2TZ>omc#2snBE`CA5x<{P~iWnes43sl0e7- zINrtg{z!MN>}SQ=HW3k8;V@OP%L>p7ynY1h6UL~QjqRn;Ieu^6#36s(g(tRV=h+RF z`48^gt8DC9X+$29@H!S)2knA(>l_Z@>{CR>TC zS9@Z9JsXL^_IX(Nd!}z3o|c&1nx9khLM3SH_E(`M9y2|T=@hc(e1kt;38{hG!{-A8 z^0%i&T5<1=>v$cWH=o*!Sx8s&Bcbkp1g0+P?fg zpGNy5wx__bc{gRoL&}Fel#OHuJ>IJ*= z9nRe7&3Z{ zKWOdt%sf5?z38RT9)7yyb4&enZ+FJN={|y1n`Ot{0)$F7refKZ3d8uGe_0_}8*upa znn~3uWoMY%v5E7>SEQHkKibt#yNOHJRr@gX0_z7JPxw9?eDebTAABBwKD+*AUfPw_ zcUkAM9u=SY2)EzpUakgq>$ltHOk9_1Uln*L{y1f*Rx_8rXZX>a@;iCAuusqn^a1M& zmSgh5HhHnNrQ*tGg;dTX>=(#CVcH+2_Qfk#h*W*~fYMaiICEg5-#p*2W>dKLri!f3 zrmGqS?#yuiFy8KGpC5l$YJf8>Uj7IRBPT4MwvZQa+ZwO0^iWIqVPiu-EEmh~cws5d z=J6(v+RJNgmV82Zu1@CC`(oF8m3Oz?0`K5^`$D{;sCB-r)jyhaH-Q$%1T`ivuzsKq zY}=Q=%?td0@cAQ5@8jF(UMkNxCOlV9eR?JF6m@J8&t~-g7j(S4-u*A3DL=?=|7t91 zEH;uduaNzYdO^Lc=f${GlH|&SwUoYmS#$~o%Wc#P>SaAIhVxsWZSB19U^OL&o{D0= z2law_SkS>?3-BdO^Lc=f#10)%a@Dn*KA(_==y@PnVFcF9qjE z;lfpmQ|cwTyiB^fn@glS;QRyW`cm+IDfs-+|MmL=!~|2%{@Q%%-1S)gPgYN8F5vro z`UB6r?he<=rxRYvl9E)chndd4j<~p&C2;e=i7_9ciu3S#Bb-0O;}6R*wz}Pd4*~Czkc^bvu%2zovJl}=c=L67;}q%4;AhYa^a1M^mSghr zx8>__o!_lmyGq#qN}WO2z~s?^RI5+;-XAF(&-ZR~Vk4B+U<)NaGkOw}7fe2|ZD0O2 zFYx~%&F^kBFL#e}r?y@jqoGs$;!o7XK8Vhbup3W6UohTi_cO5Oo-3>#*fJH8HEVp` z$58_Hf_hnRK7DQCZIniA;Rm~p$!mkFh6hkDsF(G;5V&M&3eGvUJJpsg9i-)yLcO3~ z*7IUzBtJ&y5ca8gJMj<1 z+P-Y8_C-`mTf|$q^?|doOfbcVsFJe=&@fQ|tT@nwh+#}N5X#LTNNd6nA z9)y{kt1+H^^m^)WeDb-L7k#zvjJa2;reyqp4sF&Z)XIQ^5hV>20aUDZ1WIKLYpLi(! zNM3*``+TV1clC$mL9cel6i7aLeaBZM%MY%<3x6++;dmLYj|=~g0$6_+mc#wS_66=g zke0ZiJA!%gB_s#r(7%!Sk>)JYrp9=WEGQ;r?MdZ=(wuY#0+GLYivC#lPnXG4Oh+TL+~>QZvI$M<~QYKEMM>ZvzR_7HL( zo=my&<6rmEk;%DhK4|e7jQ~O8n(&3gn0&zUjqZiy9eMDgwQ1&n4=af;cU=F!?gbuy z7-RCZ(Y-LA`*!fyl^w4MY(okuvUW40UVhKNtUge6q@wdamKpk#nrXTXWB;_#y{Kus zzn4DSRlX^Cg3Ch0-V^omyBA&_A3}MW^Bu0L^rvps-4DmKp6W*TGTyaUZ%2;?S-IP7 z8~L@m4%Ex8^}TrXWo-nPgrV-2WhxvuwT+UOm|#)x)Nxm;6tY@?Tdf}WT=7;b;A*k|pwSF_;C$!>1J<{K<;93D?;7j1rR zX{OvXR{U!j-{(h+l1J`ci8HZG4Rdx8wwVZqUXbQr;PHg@i*!B>_y4zf*-3t%@KRGBSlGV6^Bu-8 zUk8up-{uAW9vH*?Qw-at`i!FRYhT1E$$UsN7~%FCy?yx@;d+IMkVt)ta@j!KrY0fi z1-38H2aHiKzxPKQt$mS%YWbQ~WTnOe|;CmD{jU)5M+k8$ws>RPUE!nGGn<6Wd);QmoB zzvqvjXKZ75eL8P=;QWp++m%b~*(Ykg5HaK03%q^|e=kxm@P2aC3vRto^a`9$Uh=FH zk>QX^{&GVY_8)M51II7$c*D=ba!m2-1OxT9&LcO8w3}RfYN$Ej_TCXZWLfVje&zCC z{yZN=^!k3AM>;>lfHi4&rG&`JRU^2){T_ulMMeexHzqMx={p2MCmOT3J-jgms^!G~dvx1KvbzBQc(zgaSO)axSi& z+HOtNpn~o9W9r|r-5;jyp%*y+!L=7m{|~7bxPPQx#uMKk8y`_nn5)%^s1p9x2kR5w z&j-t)7s_wx$4>r~ynRc^n}?-NtQX(C!1EQ?UNF@!^a8iXwtYF18Do@|tMV+3LNd0F zo4M>}$=#xk#LtgQMdFeLBwnP!;|pW+{U(pMGU}8liXZVPs4tI#<(OjF-rkV%eO9>W zv8Eq8eE)jehb{PaKPGHn2CqiEQuk+I{W0^pwAxc$OL|UwXsLLKt+Sipk%bD~S#0|w zc)r8q59>Q;qS(c}zJY2e@SWfF5C>woeG+H?r#0WrVr<#Dr{9=)4?y4W``izvTDfcN zH>YFEp5z{j5i{W4J$2pWsKmFjGw*#PDv9Cu!x)nnIKGCThhB(-C>f+La!H5ehHpPh z_;DA$dpTBk@~pkZDFI5_Q5TsQs>u>Jm&WFtzD)%e0?KQ>BwDfc0_zVRe^~DEiDpdB z<5K*1SvwQ0ceFFy9$PPB{MY!o^ki5bhq_l?Qg1%v!l@$I*lMY1C4Ydy*H-W{{C*f$ z2L{ZX6s+X1kexTPlwNLz<(S6r&`X1VlE@hc4s~+DH<_-#T;Ac^d>Xbdw;qqGTzC@| zmaN76F;Pq))%=I%twv3PEhfhvPI|3HsAB5{p6~GZ!}|9p>c6;yafoU{?F-yK`L2^FM|d0<1iv4~cM@OP`aC^( zVTJQ%yN<511T2T^{laqS#cJ}j(j1*_X?)CNn!i%<6MXj~MI`lgs4O7p`4$fMOiz}m zsoRx#-gR8mcvgd^&3ntDrfH3y;nrJ+nzKF;uvyxr zq<(skx4#U29#ag@M@-uzEr;!k&>)R0L%LAptlwC;`{411{e<#{5*`|=V3XnW9X$yAwlN2m3zd6Ze6D> z4D9;C)n`2^iT4XE@^p(TzSj;#>IKvI5dJ^t#iLoXqLldmy=Ga;KIkc-T?Xur;OC9b z4Y~R7S~m;qW$jhJ@6wp#7dZIkcA)s2-64gc1Zn}eJ&bYfWq65shdKY=<7FMPWDJ)_ zZ^7e@Z(eG+B5G(4-|b=@)4OFJ;h|MW8h#^cj@=}cfh60aHLn7x7fj?B^f!Zv3rtqdj^Vo(nRFgYwTtJ+U8Ig2*;AW;2H(8E{tKxWr1=-< z<(eQxy?ot|v4T1Nz&B#d_W14vw%0I!0NVpJ#_swrzOVlR=ST2)EYu5j9x$Ch8_f&j zS!O#Uk-j_P9M_FKq@)Q@FQ}LQ|9U~NeSyz&pv`caY*puvl}_xVrC3qfZt10|1f)#9hVuU?ni~Sz5LDqyl=C8f% z=FgW}u_E;X&v$q{aqR`(FM-rcw)j+ur8hxv*Wv8t&U!&g_W`_6%Zbjve?25lINwn?mV>5oPx^05TTefVg>KT4fg6;SPdV$9i z*1um^X--6+GrMzGcJbXy4(d-y?4!6WtdBZ;(vP)`dYcUIe}U^S!}}!+uRk^HBA*Km zTL>#=r^>FgrAT{|eRX2D?Y>Zw5!$_l@cUt$>YAZ(_SS?4V_D?s!=qOxU^%8(sxpsH zPK2AfyEa%rpG=Yw=6CV^e$0hnE&&6x_=ApXT=gPP1g3E91s+dW->DSg&Tg-)C3xbG zm6KR*K7y?m_^S|=L@zm z?C-JtJht0IFTvr@rY~P0dEL`Ay;n&8RUPUD^|D^R4z4GQdO^Lc=Y`Svgs1MQGw*Gh zf4){e$s8-~`Lv`v*Crt?dB*GT=?PD4=SSGKcVX%Y%7=LpH!+m6&yq`(Rm0C?o8N`c z!(#h~Yoy$>W zseJ1$h2E$2ZwYbj1yg^E)C=4{QZGpJyUlg4;|C_yl421eqd%MQ-HWr@n%B;d z=$O=!_oLqzzC`1j7nl!3>IG?j7kV-Er)=tJQoU<+f0I$H7~KJU_rf&Pp7PvAoBXuS znZ~0WU5}7@f#*AnVf&7>eS!Hvq+XEbccGVkFI#o&^6BWccd`4fgb$12yO$4SKa+%M zq%WQ>$jdVGXMKfhFYx@wwHKHVMCt|U^NrBUv3*tT$}Mw#B79j=Dj#TK@!gC25W6ph zmH(2{$2VPt6GR>8{0N;Ntv5dkrY@~G{gb?TzU|WvMp2sks29}BdS3R3XbDofvOlWG z4f=VwUqJ))f_hoc3%uTrdO^Lc=LN2hf_g!{tmh@z6F|aC`niVle~8Kb_xweVf>jjKDHKm(E}POY+SBtgnvkdO>jgI&9Y?gY!3R<6i!=i-PGbCr>crsN9qOMkBQU^d_NZay{x0pj~w7xasC-qqhTzX=MBrD7kGaizI*YpBTkTUu&Qt0 zq$B(8MFKH8pGN1?>&>SPsc9Z;t|jm*wHb~Ziy0e2y`Wy!^TN`xeR@x+26v&2ws6#} zm?G*0^|GE9C8D{LSp@_WIW$cX>FxhYZCK&K_vagvG?(tMvT%_&H5b*oc+uA2+6$(9 z9a1lF{*KfO()=#;((PHooBScH?$EWYa@I?tHu&y^##F2H9Q)xdBs&(gmQC}_ka~eW zU<}V!q+a0s9jO2#ssk&Mo5`0nK<&;4FAW95&lb6ouj_De~) z_5#m;Tzi4}9i(26=69hN206RU*R!AG2QHY_3NsFq;=7kqwGM)={{6x1#Sx==qkPp! zy+9xE{KvHynBPU}1!;a4ddcA-FPJ|ObKd&}ebN3z>R^2L(yE(d(mzhBDR{Xo5-Ue@#SBQ(l>^!mxhcpB#>s?JOv z4|?tvqs=Q9-R_im2J{Aw|LOehp@V4zE&86lmkjM^3<48^;rt1%Ux(@ajeZ20l=(|` zgjI)s&{=iGc){zbaR0cD^P(DAHRm5T?VORRk#~Eo`>?M5GWXG{dpF;bwY|UGy&2!< zN8`$&I~wnq8%W7Y%kJ%KFhuGF=I3Axj}KBWaK4Vz3(|ZY^m3Cwv|(ZUntXf7(L%~| z^jq-V%N;UKyMz$!-Kj~@>9UoMYPj|S^D(&g0`ql9y&%okK`+@oPu>kZuRcgpUgc56 zm~DXXUSc1mvzI#EX`dMAayt4-0%OZSJ1R z5Ut$P?IVHjUU(B$C13JTGcCOdh*pVBV?pOf==^BC`O$THHg4hNFwdTt@j|mi`Bc;k z>SaAIIf^QE1VLuQ3vU#?D=Y_BP%o&L^}N)}_b=Tx&>SwZ=`_D7Z(NCbLA|W!MYMMd zy^3+qw24jpUpGXn&sYY-`CPoIhck-!(cn1T-2qY3Z3zc)UJ4&`Yi)wTkcaqcC5JdykPjN8^ zE2Lha4|x9L+6&C@BK3kazYDz-?M;5C9bNAkb46S_h1u@}-g~Jt(aL(F(?w6Er9T@x znugR1^a0O*Tzi4}U8G)+=69hN0qaN-&K))K^}YpfcbSQg;=30vcHXT8ACrZBm!H>b z-!Pj&=SS%LXubK-J9=UMF;Q94tx>^oM&gxms29}BdS1MK1=<>`5_t-*R`G^XAD=_L zpkCJV66Z^5%`If5Nu!o$ubRpeg?d4~tmj4j4%cbzGcK+kPhJXLjuI|Jy`Wy!^J47T zyfj97WzaU=Dwh61ahv+X@}O6{V+tf6y}sislI8cO^SgR+lyoXIp2?>>**9gSH!8vT z6SnzX;;Td%gwqZOBh{`sZ}qF?fY&?V{&5{kl>T7ZMXl;eYKq-N?YzR!NC| zx6iF(Eomf2s_dTj!P}S=Kg`(j}KGJ}`!;f8LBCM*mP8GLHN$K7 z!v6Gl*Rq6^;=XkH8K;9Pe5KXSz0eb;@hA; z`PaR`{s@yF=xL*Sx%`Xhb4bzFsNpHSXzlwBz1n1ZA{8Sw>e#h9Kw$L1r^h4-eq%h0}!}$@MU%>s7vyCR*k}bYH zO%YVWo}%RouaCj+hcWDrVEMm3-tDd|=8Vm|6>#LGz;-#IZ8Cqmm#(eyqze<4J8vIo zZ^`)@DT8{!?e$T3eo*uZoKIfztP_#pkV^h?Lzpg=@p5F7e6>46n?RtqM)=?E#eBcX zE_tft{C)Q z(?Graw_biekIYet@a)qXmf0_)n<;#ZPJ)Y^eb$js*1bNSg7q}Eyg3hM@m;~&YOMiD82eq#8=OA zo6ym#+KdJ?mS?|{yDFH`em@2G4`YoeZ^sHF8+P6_R`KD0r>?NPaq{Zcm!m@>K1=?&S)ve$>~KvUlWJmWIj)vbbS=|Lb0?7_^R0IWjlQ zy%fo~_dw|WzwTvh(Q@!7Z*akZw}-xP9(pbcy8B@*&^8*;c35J z@?ZCY9i#i;Tg2*2Q0`uqN?n;2=mXR3b*R*@?!YVViFI_;8kOMo!|o->1v~K6k)oo@ zM|fuQvjYqdx)*SL0bc)d(AGz60XG9^n943MRgVdkRn~cd-yie_ul;YYkDNKg&ey+) zlCYGfk0#}v=s)OQ!1^xa<$qg$=~%sOn0CHdWV6bTK|eFy_n>${Mb|E(7b!ncGQ zBvWQpYCeO!=_mLOx)-p%3win9dYRD+KKa{|Ey0pTsV_FRw5laaI5bh+baLRFvEdnl z3^qjTyWsx=!1^mVKZ^uGqJQ{E#0GUtqmqiSzHuzm}u(?i8Y}cw%i=m&Y7A=_xuG@xT$UBx&h|fq!5YE zofTdGbuWqHZ#GwSYs>lQjEs)d%8h^?{_9?P#h<@zn02Dp5Yusa_12~GzwX7MJA{#9 zt6@n|>7)zM?J^b63p`JUJ-(cz!zI5cPCT|$_#Bri;JE33-3vG$!Se%pI_zHhPFLe8 z(C8cgaxMxuevjMwzwYG|Hg=giE0HY*6a8ZNYmphy1HATO_tI*txZ|@tmrB{rGV>aP z-}}Grh4AXOsd}Sxfx?;`!KSo%KIp^Xfn@{#_{ndSr)qR@dTI;7?T6h^l1zvp@@`BoW40yeiRJy4OmdjIVH-~#ZV{#ke2i*(2 z`Yz<Afv4IQ`o>hx;`JD!?a(So1&LylO{XM(Rsb=$Oq$a=u?zRcjTfMvRc@CVPA49U0| z@d}#{&PB#K7}KG9{$jRjATaVG=LqR(>&lakAuh;z0rN4i4elRgy@3A@K-LSg_ag(n z++Uq&9C@p-yau~y4_J^M15)e^E^Kp)`ok7_UA`AlTJ zAbUSD(2I-*P8kPPazfuiw+F9cel5CtNyeDJoi@Yph9cgs;Aoq9$=#yOXZx(M`;nxO7sv}NFE_qgmq!FQxU(`j@)z5BlLz_>+{c^EJ|6p=;z{^eR0yK= zT`(U5*Gpi2B~LjeEB(F0X7ER3%oEbpD)9aA>bqe7eZ8N!b@7KPtn56V73XzeUKn3x zr{a74HiUb5w_VGC8~l8*U83oqlpVlc!z&Y7@>1jD9dJ9m`%5|dyfV-(93;r1OBDO| z{hF=7YqA$9PCT@kBX1L5{ZMU1_w~`o)q5=~Qv`xS!UjfrjX&$4_yWZjSn)+XF~aS} zr+}4l^LpLmpPR)YFOU~lUKmS;4f}UKm>(;j40w3zUN7VY@&e0?pw7sZ??Q?@{MYX} zm=6ea+HI`WEJ(~|65KQSW#mhgglzr-uf7ZBFJQg^FMk2+yMIPQ=vNvl!8W}71>XNj!UTO-LQf~MF^>uy7n3(MCErl4DRwwo zxqkM9xk`%ACv?wWsP*|iaF={Ah`IIZ?qk({H7LG7@dZ|VDIzkf*|mzYZk3TrmiRdj z%|{xL7g%0wBZ+#)do{hCA}}m6q$pUS_yT!>Y$O{($+Hj~NU&R+yI#8UObj!)>HyHomes+6}LtY>+ zu)K7Ct1G(1v{_TUsjl$b^cM!?1@Z#Ri*=Eo$7*hUKuf`vg<9j2M{L*Vczq?F8r5_% z`c-N2zx>z`(o0^GDmHT1AzM z`p)?z9zUHop?Z2|I%fr_ko5vyUkiFLQxTdJbPc59NEzg&II;H`+>WT1hPm_c4X38x z=5V|lY8c{73A3{!QTRF=WGJZAgi$8@kNdlWpSRj}Gp)R4)$CY%mRe99$3Ol*JyOI) zwf=B3pHu*|XHQ&*6MR4Js(ZPyG367(JAO?=)*0Pd;F#b^r0}dB&a}rjNO3-!p;Z zkEj=dyX^()<^q;DJ!KTPOr@Fc%uPfUm%rQawVJy6lD}FL>>q5`1+%DBV*lxwP{e;` zb+3{i+@7eYlW`Mk`*>mwt=?09w`FjDO`6XIcDjTky^^o>VF_)2GSz(JRuG^)| zak;@4xJOMYg(=Y83-wI6WI0JY_I&p_o#E5%iqL!n%}222Bl!%4OR_}_XGMhggez;$ z?V&o~g%@AIeAn|wGM!zfJFT0_*6_)~^(-*H)XLHe`CXtSPRdO>dQtvO19*MiLCbf+ z|HGntd|?|}^u#|_RZ(Pa^J(OoD>oEhp!fnSzF67|Hc??UEHB63Xj@>vHv@Tryuk9J z&on;TN%4eN$8>SW=;JmozN9;?JUO(8dZ5OAR z!-Kp)USN4CJ*;&*q^@rFve@14)Owdf#rq#Zh`cS+|8N1nx`rZPaYLOULY^9yeJFnvc&zi z7r-%DN)?Ov3FW)c|EGV!^0LQeH8gXf=IG0UwtMbZqSm1J0>u|tUX(6-`?}_SP|AJm z8tq@7N(6a_A>1FR;9PduRDDq<^oX-0jJYRSKtJ$P45JmY397 zuJ_xi;v^VYRV)!^2GH}>p!3r(&rhq9HBTu?3MP?Z$EzJR#gB#J3lv{q#TVKXUE}@> zKU$v8=3KT~yyXgcfxN)-;`T~~xb(%F6U;=}%N*4zHINs`3oI}6`uvIwuQju4x))PY zIju|}FOU~lUbrG@+jV2!FZy1do_fb@0$pDR<-0KR-MUa$Ugv7RSC5^&b8X#zi9+!O ziZ8I@OJ}A(0dL;1p3>a)0lh~;<&YQ13oI|@O2xS)KN$){JAR7a)sV!5yg*)Hd7=Cz zUSUL;ncGULM{s4}IrKbXD1U*Ozw~(E`$YGg_m4h)B7?5N&uFA0e=4i&W702K$P45JmX|w~xOy(Hx*7DfgJd^4 zb5tNNkQZ29or(Rr>@U(ZO} zek2-B=?Aw@zj~THJo@ujA;&w1CzD?S5PhBv*x#Sg5c<^z*WXl@x!4DX+5P@L@T%k$ zZUFlanReZ_230Ze^=Pp=9h8;zvPXKvA?R-i&A)uAF72GKy&v7xY@0R$r!EpC$ zWL16{l?ynbiX$U@-?yw*$S{SI-i;}JrhT*Wx9201&vFLbj1ts7q;}l5FhgRIosW=x zJ}kWFeXcqv3Hak?nW#qVi%0i-oC5uW&sX!xO!QKCJ~ywtK0xv{= ztS#n`V#{^e?%1H(3pihZXVRMTVe+Db1rxiXGDsn=aAj8oGN?jf%!|nVq;H znk7JN6=~mrYA^8SBV@gR^AY6b@6JcB!&rlgV)%w0s1-FCq(XO)uF&9IJ z9#`vTXY^=18M?<8hm7&mlm5il&oV}r>&@uBL-u)D;P`>_1-KnqFJS+Wm%kfdTq;J2 z9fL1#58l&Qwm!YBi)t_M<|Aaifb$XL*7-u?cWmCbK_Pk$sJ@HZ@dlsA z2gX-K+wkUhMEisHdT>3>^yA({??wv;)RIkQc}ctn&eG(8b`Hsjqm&v}p^@gq439c{n>h$d*(Jl z35a?Dp9c-ki*nIeqFp~;ZMS#*dj;MtA8Y7a_&ON!YBNAk2&KzcetQRmJ1;~4W4Ml<{NW|_rG7WKD_@r_vU5|lr6^wYs`XVL9`N(Q_DPAzP`Tei z9PAG}NUxT-r({Wy6JzuWE!Tw6S$3N6X2Yxh@;_=*pRSCo_;BVkzpB6^*25NGcxqFK z8=GhN)!iGKSq*J44*GmFhO30PvE+F2F6&T#*_RY~aDPMd5o+@zNa-+oDCCO66FE#`F4 zz1Xo>$Klc#)~Z}M8(8_F;UD=36kky52lV2iQu(avjIQ&KAk*dF569e^i%PKxjWb%v zhVA2eRLYtnIRJleV#-Ct+_fxub$To^NV5B{@=46I%>^ z9@vg&q!M-wvS(bnk2OAAQ8dTL8;Yewsx{)LNh#~z8IcI@e1XeMy_RYN&5=i~6HU<< zV)mA*4c4kvBC77xlM+qKaj<~D5Bz+1ZDijMuYYhm=*5Ws?G|UT1O1;rd&&>Jb>Bew zE|l-Ws=t_>c_q=oRv^;C66^2J!SPCT7*G1L+0+j<)7ypRzv!(&Z%`Ytcn_|RkR88& zJH8MrK7U;y@qt%_f{i2g$6J4>zKfU#c>Djbd65k0BMR#)DtR*Iz#tLI8UT5Lyug}| zXz&@6!YwrU*e{1Y?@fO`0eOME!18j=DiO~ELy_~%QzHT%O1BNj3*-fsm+&ZJZyE!M zK5EkAsa8A$Esz(;3oI`eZ(XqH<|}7VCfeq-`8+ERd4asZ^3rtK^T|`)=ed^IvLqQf zyhk7}kQZ299zXkj{O(Rqbx)1OMY~3YZ;%(r3oI{Ibuu`XOLs1sDAlJuBRq8%@&b8* z<;8p*Hy?LYCu;Xu86`2{`Z(kT@&e0C_1L?0)g>Syn7=>KZa z{k>t{-`iV|=lOum0x5+`UnF)f(+m_}p!fnSzA%*O6tLnO$>M$P45JmKRLlqN_r`J%_y7>$lj*xh_IpATO}II9VtyP$OVZpI%~o$9gOs@&b8*<;Cdq1q_<-dnX4UzLzj8iWGpnKwe;Z z5xA++qJN$7IQz9emb)(G?;$Uc7g%0IQ}}PmMkQEZX|r03dAo28@&b8*cC9`XX6KZ1Gwi00P`*&IodC#6|UeB1i1(EU^)FEG8dxSz7UYKXOwGTg-% z%-Yuk%}3CD1ZzHG%i>|j?XGvKOuReVfLqf6d4asZ@)BleN22g`Hpoy=sR^S@)(`Rm zd4c7H;|$M2$Lz_juLG+rJ({AlkQc}cEH4f1-%j!|k@8T6X&)n8J4Oe2fxN)-QZ*)e z>%12h)~%0526GNhijWt`3oI{be6-cajw~foVv$VA+kHI&d4asZ@)A@_|B2nP5f^vI zH|iT9e?H^|@&e1t<<2i|O6@x?esAkDMb^Y4ATN*?SY9SMGgHKMoV9UDNbpAP+CujW zg6g|4>$}^AFTR--58q6~ST)8w659jC7bw2KiZ6a2znm@XAz0-eai>-5)}esBKwe;Z ziI3HEE6}peU0ms>YnNeT>o$Mny&K5l=rHLgd%0WsKBCVL0PjDI=<~9``ya!5Ue-VQ zzjyl2ICY{f^nXSHE^lBgDsS^;~InTXP$TG@je4c!2KD%Tjhc+gtXD zpjY91zTn-)g3Ko~7tgq8c;NN?V!3fy#yI1@<^}Wvw(Z86Qr%287D;ndJdFCO%)#x4 z-Aip!modpRFPh?=Z_}FVc256wFYw|AyzPhGi`Pm!)dQmjiz}HcoHh?kr4O1H@cA*| z^Be!M|B#%Iz~?K${k;F!e1xA{$H(1x#D(Tb5Zx~6a3PfMLiz6hpYJmMe0r9ZciU$^ zwN1}T^3{FNNBr`T`DI0u+0(qFbk>{C!=FjLG1c~t81lb=6?bQ);RZNggZVAkANYE( z{q~8e?%?Rz+t}B8eM8$wIKb^-|M2pun)SD8lg@6g7t6-qPhux5*2>Zg`CXtSPRdO> zdQtvO1K2;R+iUmi$&QJ0(sB$QVSK|9@*qY@Nd9Ext)BHbc|PCRtnl>UZn4W2V0^uW;cXO$-Bjq|QW)5G=0$a4k6y-@^anqWYP$93$tSnK&x6+n#{=H$k=+i) z7x4SLvwtq>#ysul`s{gk)GL;Hc;gLze{j6O{SSWs!|ugXsG8tR;t{Uayg@zEwyXW% zc!T2suMLhjyw@YU9rSXw?V<>&N?LTQ*~^t$bCSwF{&1;3Q@;ug*zN4Zo;Evz^A-5{ z;P(gP6Fe_vOEtcBA3hS#K4=NIf8=otd_CAd=oj2BjXRbh;8beqU#sY-3vIMqB_37+aF+j0bdV#0KI^(M|J)J z_7ATO<}d1!#@39?GIHl;D_HMipZ)=kH@yD9?cjKT+fm&HWyN)(hA_s=Xka?-C6c3ZI{sx$7==pZ8R!)C9VF5t|`Zpe__kSqooClo1i6 zvXR`We=8nrF0^ZK)2Co!6yEU+?k{LQvM-XcDu3)RLI2^Hl*Ff-L@5;_3=&^1Z`me& zoBsX`-RGm+f$Q$fS1x|5mf!SlWe`b>8WlPF)5@J_e(8ocyP_ilqWKFre}nl57%v06 zNf#6YuVpRP57Cj|PxAp^4|)Xsg4<8J4cxGPLefCiyDej6QW7?OC2Bmd$-!4|ZDqhy zoTvi)e0XhS^B3ZynJ?$?pNyto43@_>7|ca?FPF?ox!%q0xYpWAiLG24W?>h}jddyS@wTA57X|XT^J59gC7u!i z`c@*wIL+Y^4bh$ni~)KJYQBZM-;s?kpf9lf{Q8d}iE&-L_Uy0N?qVq=;C9d>JiqoI zbrW$ioeLPfEhr-MQ#awg9{fCH+okGp#VImxzhtTh4_$D%6ZF_K$lUC7)4a~M`Vp(s zxTNTwzt|4c4?kSbn*ZiKcr-s`FBH{Y!2J#G4`jW7{iE6oqWLc9W$*3Y_2pb$>*X`H zReohhB+=bVCUrG)Iev(`BSlErSkB5Sx_JTf9aMWkG=BlTEHxNQ<6D)N=BBm0kj!JC zM0YRpd7IJY8P053Wx^JkM`%ZJGK`x(STw%LAew)P(X|$f=zN6e`X~~6%HRaeEb(g2 z>r?gDPg8*VAB-R1`~tpyCw#a=s41R3>RRRpV ztUgG}f2z2P?-74tz4~hBds2}nEc|zy|N46RpnI|8GfDk&Ug4h7sjbwZM6k-_wugUDYhb45r@e^Uare@p%2}>fcXomy&#+K+6WPTQ0n}?Q2CqxL9-OS z8@hX$Hwcuf<5j#VSh%cAA;r`CRsU?&)GI#o!SY`!Om{Qt|8~B6Gnc8iHmLdbK*YF} zUsBKxxc|ZU0nU%$>svA=dW|2bt=PR2`68px*~rHmils!VHR7j9DeK-DkqE{&cx}Q7 z0j<2P;7$p7j*EGHx5RJPdRLERe~PP<$jlRvE_eaHKQeIqt0>zC9QxH-WtDZQ5Q-Ed z=~nS4WTkA^JuglKiGb(l!1u#zgX013^~i1q^W7sZdh0hAaW=AFXz(miJ&#-aKPfwwiw->-^jd_gqdm8AP>vT9Zy) zyH9J%o7bWKNw$zM#S7l`D&XfK+ZMBX@@v!2a(U>7k}k&GXwhiCKUa1Xb{@tLNLHle zoT=AlY$NCP{PZW+^>pvHon$1Up9dbFh`t}u*Msrpkyv~D3JEb)(dYRX4B0JVRC|H< z`;hel_K#{Wh~~SXmlRbz3FD(dIJ=oos3*-z^@aG|@Gndqx) z)7&h0)n7jKZ>IhdLDmbR`3tgMz~dj)Uh28J+V_^Wiwp5Ol676%Pb^?l5&POG$2l9n z7NtDK6A$_a)m8m+qI$ zH-5WTpYmW-qaV@y1@xlJ9{1We-~ml+07ob_=VT)|zFul|@{Z*0`Z{D|0d9#gi=ID{ z>FhGyY28$|hEEo*XMyt#n7@F>|Kf*9%y+VvQgbY?`(O6pXak>T3VuGk_GXFHajV+} z-??S9(hI}p&cb_rP>IxvLYB^^i*GjTb`bVeiGu52DthrbGIn~XwX&seY9;$gXYOm9k>N(DU@dwOL;Q0mr--zu01HkVC zukFkC_48wE!&!ao>?0TX?8K?{`95%$d@zW)_3G|p)qXW}&tG^rU&x3U)V`uM|3pn4w%XdL9MMP#byH-)wtuj){5 zOwFbAeJrZIfX6?oy@2;;LA4j~{4Bidy+JR+%x{L&`+tW^oGZDg@t!mT-Mxs~UDzJ` z*yr3Zpsh&5?C`;?FS%xTd7`@ROG(M~Nq0MV`6U=XpnUgm=ewE%oN{~=(;Ik?Df)h7 z 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

t!FH$eC{lCr2M!TQkhwfZ( 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

kJQpC>H-uk!-OAKFMfZFgQs3a$$C zte-5}XYA7_c~lnnzs}2aYO}!fq`ds^CWH7Ip}t|r3z8n&?!36qwWJpsv#VV{w9DLa zy74|*UZ6kWdI|a;t=@(69j$(mqGaI3eY8venvW)bj3w=P*x&!U-X(iCdwZ?&OAISv zwqCf-r#=65UXa!=Nc?a2__E7Is#X7D$JFf2;H+boDVAt?L7IPXzM_pUusyW#WwY1Q z$J1<=7Mik0T7wdpzH;nRN8%Cs2iov@Vfkj;@P89rvz&^Ymy$KIAMa*Mb9IW|;icD9 zN%ry>6E7u$<#J{)^gq&g!T7S>co}D@a~Dcnri;Jrw0FSB>-i2ZJG}hue-kP?Ea4p9 zC4GV-F?G_fvKn@t2mJm2B$z%AP%ugAWEW|6`C;_r6TNqt54Pu{E>p>Kp#%gJk*fn) zZy0atRJVfs7(>OrLVjduSRm@lAyf%kur_OFBMEm%L24flTu zO>-(}6^Qp{iWo^Tk2o%i_4~g_{#w1F{rrWqxPQQB8x7aZ<^`^=p}*1c0_)%5=~f$2Ko>it%e0NhlpJ8!5;-&?>-HAl=W1n`lrI;ZVQN;40QH6-Jhf z)PGox6kkf#+jc7pMCTRXi@(Ap$e(iI$i(n%!YXUEr~86_tV+F&`(-g*(h^QRL~`Jn zqp8YBih_ihQCwr(!N>V7yoSbNusx)5r1*mE_g}Q5>O%(~+lp{4TUW2le?9bnosTjd zoj4DCUU^X7!HVnqGW{YPA0!)zmw!7Stsj%nYX%in^2{2`<})Inj=zTa8f`v8iVxep9O@Ue*Ndrs z!Ss08Kd4_ybfqulg~VtC-8dbkaMf4WWz2Vf#qsP`{ipaIlNu?wuq}FOXnt<1ohdeDvO4n1tr`(X<%` zjeS!u;#9U)5V$;r}xd_IRW;2W#z#xt`|p_(Pv2^v8~k+5ND8J0GDPFPM+$MuSBQ zDVp#nI!;{dV``F>SGUiVv?z@B6+YBTASV1CZF~Rq^S2u>7ec5ElS0C_A<7| zaEBMn;s?@v*lxTW?Va`{At)=(HMM^KMbDLMhnF2*{BUZ|JM#LJG}gjmu&9pPRozAG54(!m;0{eD(&#H!^_`zf&Yu!;bn)HzwzQ0 zU_t!B(n^Q7G?PBN>;$Q9a?aa==ob~&KYLu?n}06A{n*F+j$KSwTr)B|LW|g5Bk=_9 zKSLX?C(!;s0NziA?=!sSY;W3_Sf%lNWNPi{q!SuFQdtJ+Yg>Zex~x#y|KwJC!2{_ zXboBC&$yjfP9(A~ceu!1MX>C#)x4nHzYdNsj4!*~O74oyclfKi$5t}XsgX(UE4bKF9--y(*xTJ<~CirOl@qVBMxt9sj`k zW(WrXDGiOJf{pyj8n!<_(#rn*M7xWM=kuY@6$b<-B|~*c@Vgg7qDOd-)-^d$O=9}I z5#}FgLw}>qM{s;0FYtL}@S$S?^$J91Zqb&>{_&4CQBRDx^{~94(nLe*QsJQB3D`fF zf1nMI-|qRS*JN_YSaq%VW=b{LN{i2KwC{UEKA;W#yVdy!ejl)p%J5Z9jv2SI6$id^ zlup+1(9@My+5Jwn#TF1`JzL0u{ew2-6P9oHe55gv;K25TB8lKR?SSgY6V&^uLO!4k z{kzrqXz#a^8tE&yTZE-K&ZT!b3eEL31~jto?psmP8W8&sIsIU*!8`YBa_-e~rIpSY zmm%0cXe05m-Sd&mt(14&eV-16Omm8yrqoN4C@Md}Wvgg)D@MjBXGk|5<|F7o$OC-e z3YNq3w>lre?-SH{vXt553sh|Ob{&4{R`j8ZZo`>duHA8!X+SILWXpZnKbU`@4UgaM z`KW;=ttC~nEcN~U#)how0Hc;ps#W8kLDYN)Idn8MwA;6um#xl6P`~^-qT6Xk85#7; zas9*#Qi}Yx7~Kn34Bb!4XM7I(G9T3e#~<4FKKp0$(|va)j;)puUb8ZT<=Z_Ush{9j z2~c!?SiO9{`dN<9gQhvc7-BgsD&l!s7Fo7g{;lR^tMd`mFKicyx{29l;w5OGoJqK~ z`&SRk+D)+$dXYn+mh@?C3@vc{p^e1LcF#xLsVCFxnYm^OC9lx04n4I*x*rGqw`2eP ze(-jCp8?)~+~MW#idV4!YSz|C0=A<>YttC|H<2S;|2at zdndm9bG*^=zukC&|I^;#Wrvr)J)ibn4(vHqSbF)V1VM;HfSA#v>GqMQV&6M8&c9*N zI$v@Mu8-jT6ePZo?r+_sNidlk^{HWrKdezmQ&^Abe1`SI=K=8fwW=pUJrnLwNa&x% zI^Xg1jL@k|q~<4_tBhUaq`NBF=8@Wm?ZM++>UPU1IehxA(s`UK_LxtV#_7wA3Hv_1 z-|J%kIOt9YWzy}Avl0Fq1(!CYsGP~$)ZqC@HuOKz@o3B8_W@O%ls6Ac95@*-Q(0=J zwake${%G6(ubsc$^3h54w!29VHlarbk30%6cl*4<%T7M}TRw6aZ9Lo@Jgr?oE|fqZfL5=Iozv@hV^4=!+Zq$ z*AN<@-#hx1EdG!EAELeI=V83Xv^{uyFoV=Bp|`vHssn!z(k!{IMSBLAnlM#QTwJ?= zYr#Z>_4!C){k%ak$7)h7XH)fECH0`q<^_%y^eQ#kasFlKPjkF?Ro%5q4~rWaatPE&E^HJXE&P{SpQb@f)sC;q8Ytw^9)`KcDwq! zbG^Z{q?q9;@vR!C6qbG6-IK+M?Yt0F(4A?%${x#R6ktmjn)q?4>ks2o69L|cqHe0k z!K*$<{(3Fo|a6NE$qsWDY+QaFl%@_IPtkB-g<^}2c z(DDN7-)dfv<^$vV zhovg}8%ex!e$i}Bus%#}_`fWng6jqs3;peJ#^XhE@*JqKeg8TKnKyY|of5O!_)m`M zzdCznvw49$LI0!W1;($f<^^f~KwgGy9KtvaZ4--23eH-KI~!p;FY7|0iM1j9=imN1 zp?|4=I1(){nCcg_ykM$d(8d=e{Q`OU{>NthilpW%|Dl4sVY_)vZ0F@%vTeOT^R!Kq zf$|x#z~>{I%?q6Wn;l;;)i0Rx0`&^C;q^dXl$p#U;_fpJ)pn8YyVQ)IitW5OIG3HN z45Z#QG40WJ`8x?;BU zJ)?OoH#J}lUJv92?pKTLytD_sH{vGM;ZK&7A^PRW$hYj*5%u|1rP~#?8p1jKmTaVa z4fP48dY6;Bkcw=4R)btRjD9@p77z44rZ(gS^7`B6Bwhru_HbXF@#%vTl{!R0J>Sdk zdPEzEsB2xir;GajE@@2Qn(vu(<#HW-&ekR8F}U9ww(rk?uRyq_Y4E8~m$Q0Gw%|to zX7d7hg5!^t7ntw1nir(`19^e_cVRm(xC-G!4_|kV^SNGJdZuVLg_ajg^)6aoVEou> zUXb)I;QZh0_=2Q& zAx~)Y5t818ywJ(I;@ZEAE4ja9(nS4p$33Y#7h7aXDaB0=$L@-@^anCe}$`+2~41@jS%KV(zGYc#`xY6^4GzxvMOoDyQ9JA3y# zzWVAZvP@e)qIg&zrglx1KATj?Msot6}}7m0Wl z%D4V<`)a=M8W5ya^r7ViQ~iRL7Z^XbninMf0(pVor(-)Wd$?1`+E3THT#VnCN!i6& zvDv&J=@+!T!1%G%yddcp$P4^F9ou=Cl&O?xP&gTWZsN5;TU}TxT3#^KFKBr|(l3xF zwD|~0zd&B#_vzTq%Lf(i^YlYZ^+aK!0~c?Kpw34xf1gjQ*9mrI_M=iG|GbzD#|!EK zw7kImqqaJ}XeZwBd}HRq%$IdUd_3Z*54;}83;aGE+j(hE@N%Zm`bu!)0O9<_qBD%` zWG)#*2^~5_M=kF7A3xc$)p{50eq?aGATN+7zEItxeGcbz`?+pv`+dN7bHBoFU%K}F z;4jBvk8D0|C0HM(HbG2x_UhXMiDoLy%>GZl-W{82wUwkZQ(!D6=8l{8pv87xe!3+P z#(CVzC=tx8|M5sg0xd6?>Rq(FAnD!B<^@UbLSDAp{@xEeWSF14JIdkvW{Rs$E=_i` zc|p>0^8%up>;zpld$log|d^}XUxwY zM#~GPdKWD(NP2g(;|r4Bg}l%wXc={jPu6FSr72lVJGx>!FZ`7T7WA#{p=6D`StK2N zN73?vsoq7)3*=#|;|r4Bg}k^GDU!d;s@ca%mO9JvO0gWTstjWJ)d6{YkZg+E`^}2qK{~}#JLRjb!_K_ zE$`*pBtJ)8b3j1yw4MzsT3#^KyJ&eq(z~0@3zFW2y!`C+R%T}EFB0&L;+J$x^~QEy za)a|s#Ihnn&-)mB#-A*Z-)vrx^e$Rnko4|m^Ma&zAul*Jjf~;ag~BOTxK{eTI2G_TACw&Rz<%ykM$#(ei?%cQ>0CB)toHY38T&5`I!QJtrH?;+o^OP@aCc3fr-NYS4T-PwnBL!o`UNQ;>6h*)OLd5w zH#bbZ?^8g%3;!Qr)VZc*?pLuKTkopJ_@gXag+BFoOR@KRKJgpHP9K6e zVEeFsczy7A!IcinvKr z!&>5@u5;yg_`}w$^k`n}@bY(FkmAjD=S6R!>-~DeH<1ztyyjyw_nz+X@=so%{+dp0 z7MPxtm;c>l5MLwIH~e4AN2hdmkJThG+VJ?swrRgp+=rGIOxM$B^)8(6o2_@DK7#*O z{;%;e!#_nwXd8CIGNkjZ8%>G*4ljR?FG%0BZufk2`xo`^dd`dyF4B~Q(N!~Pw7ej# zH{pCl8(-jhceCRQtRLz6ATP($Y?l_AvPW8j5}3Yn>{7?}_4FU+bBTl21H@6W?ghBR z1ll{i{4>7n@WQ(%zy8g7A-~D{#YFtK)vho7I8F)f$&2vSn4Ym3+2Lh}m%sgQ;!)|e zz!J+9mU`EEulb>zOFPd4{>cl>pO`)mP%ugAWEW|6`C;_r6TNqt54Pu{+a2~6?dvig zS}6)=@l6jMtMjwD6&gD{Yg$J)Z}6C6FQ(4};PWFG&!PX(?*9VogZc%ohcVqR2(G_i zd(ejazl5ea6|@S(dox9hq?kt>mqpUcus&!b`4b+G)`t5v$FI`5T)ZLh2q*Ts_}8XS zB%93(952{^w7kIjcX;`Ge1!f-vLP=E$x7@5tCuZhG|O8&BVT{mY+m5|Ot61wd4cus z@UpeMaOo+zoIQ{y>(?TZw)YgrR4u{l?k`n z{Ska00=5Tj`2H@;N7$}k96~t^G))}v_?I->DCDZ$H=7rjFQ9+X@`4m!c6dP-Z(u%Z zU9NiJ96%May4cTx)9lHy*}TB<+-zRp{ra8wf{qV3K9CpEYPws5luFMIsDHg-&ZCgp zSQz`NO!EUfimw$29;G}xYx z^15#sc&Xyj2WYRS|9;bWitLLOff2FHcTOfZQ~ae{%b4;4zbCU%s z-+!4>9Lka|2@9r=wR-t^aMk+%Iv-^^I&mKOyz-#DgB92JW%@~DV?PJ&H~TV0t|4AJi|aa`7SWi}53~TGlDs@6OAR z?=8MYq0`5ov=W*eTzM=MQ(iD#A5qZdaAbLArz{mI?8>-P-w6AQWFzGx7!O`N`OMTm zC&vAWT4ZkoEy2MW;l*wXx$~1sal@*weP#t%)f7#pBS1$HVw? z#=yZYg1dK;G`&EAv5mtR+w&0zkv`uuwG5)ucmuB+zs=!pw|vyxYj&md_{Zt$4C$*w z9mS7r@TDiqBY@O3vGRP4UsnxnL??#$PrpC%^usbG)ji2|v&{cNl>ulA_{l(|& zSZ-jdU%>e^*q>WX#x;8+7}=kj40(aPAnmWyXOqNZ3c1GcG5VF5UVfM$|}uWTH&X| zoi`I=J~49?mxm6h&xy|%PaboS&d31&x51PrwD>NlFVWVs!Tg{Mt_M8h?r7PV`Bjid z(weB{) z0_V4y-DOeKfd1 z^tL_S@ce?|X6FUpy(~y#;mr-zEAchVjB4d9YeL+#F@@$#A-nqU#iDLnxjMK`PX=xi zr(u&2APYJT{vQqUgEoG+&db>-t$L5py@9%%8eXBPI&W0%HTL(W96a{cxbA|n@Ta29 z&Wm!x1}$&i#Ce}5chc~eDBkP1Ypj0a&po*F{X|SI^Rqz(Rk_CoLL4R|Res%B zSgu2T#!EHg$tlqp^15?9rK|VW20(ob>Qk_P!2bK!_6UsUk?~U3H%eu#bUkbuPYddA z_HVTQE;n6!x4-%2?T5Fn&!g?vL9>@&f8d%us`faz!tjYRY?MevnVx+6qyY_*a z8{(Nba^Y8rM>abzp#Ku%q4A3`@=lW$ld|uIkR9z#JAE~4+itUU<8r+NRm!4he53J% z>%7G3(o2g@;#qnIb}cS4-_bB>ycm^#Bf3y_bno^H2PhggJ1;B-wPo40Yz&N*eeQV` z#}gcOI)s<0?@KyuyEB$PWur2~YO(cPK~LdEkqJ4^b@6yKdxK`LaGjT68yhOwFJl3E zLh|)^Mbf_D`-1ib%9zc!L3@O4|AGDhw)LTv2j@qJ4)9L5jxlt6>6z!~R2SI;dBKba zwEo65UTRwg8Tj{8^U?=v5|J+wF+*M;FG%sawgED}Z+Ypw54~gRlUTm*GTP?iJs)q= zj&d?;C$vagL-0Pc#goi z`Sj|ec@+w|8Mi6>PghZwrwyhe0}+a-*`q&`1Hk{rbnG?4c!vX zbk}e!pp6gO``|h+udjTMI(8v2?8Wg^#q7+7f;*PKDzfw!#|;el?`*cRFa~)6`xERx z(4K+mVEI4I3;2BbFBT?0(mKi|X(*Q0uBlXT+Uq@D{pl-v$E;q<>6w5f*gjAO-w#a3 zbzVvr^Nxh_)mS!E*y~cu?Wrx6lkOWm!l2Y4uX1B0mHR!W_6Qsw&>n#Oi|u{o;Qvja zJp%t{wYr>j8&CGyjHm0kkl5bsSHG>-=gAGE9`;Q-%>I*K`3_qA1#CYkgZGsamssq> z`?miX+v2s83S9UU*zT_bpZBL_&>oqmjq>Z--3T_14A~(R=vEy`99rf%e5F2qT0!~! zj#C#v{Q~j;es5sl; zV0~bIT<67-`QnED>7B>FzRmadC_JUU;{WE($I2Rad$oog^SW($ATMD5fP8@a#s4)g zU_5roN^pA=iS|(M3qxV1$r>Hv;GU7HAdkD3PpWHO484#6z8@%q>ycnOuJdx0ka6SK ztDoArDGtT^_6y__Y3h$su)Y7Z61?Xj4fhFNOnCwI4chkz_BR?|V17^r?GgC=7?!+T z<|49f4rR|`zD~=~xDWOI3RI5QXF4XJ%l29F|EwQ^yrK06`2Jx01^m7?+kS>4lc@yU zJC3~Ct*mlt>gMwYKU|!}X?w!rncnuipP8Sj5RDaWW&|y%b5+M7Eh0KiD3y{b>6e!1u>BUNnzR>blVQnk19# z^t>ReFf63Jei0o=A57U|zQ+x#S0<`9(I6Ce zVh?zw#24oLt+1ZI@^{atL46MPFShe(uzt`Uf%*^I`81k-0q4^i!UoOvXg|Cqcd<aA&Z!@KmRlO+4}KrN`}td~KF}Uv`~Lr$7qavk zexAB*u1pUDnAfR$^B^y9{pkN+KYGMH{AMF~n*`g_V#P-5z!8v-aPoWKsP9D)m`NV* znbTEj2K6U6Uj}8cKD6%v%|F8Sd&IUpXz$SK>$JJu%=RWeEm4{{jJW>i)bQvGVbfsR zdLyny~&&wImsJiBq%p1RdL*XP88{xmO6)!vnT zX>Vg{#8NT@rLrHRjmO_k2iFtOo=+#T>v5*^k2~fX&ULx^eiFFGOSLqMu&*RNWkPxa z!Ra#%wPim)jfnWYq!=!bR{J5q{^(Eh!gP+s%|vYIn&cr{vm2*n@X^NOZ>NL%f6<=r zpb`GC|IiC*h4z{+UEW;`g`CcVDkNIc7I!TspMTV=-t6`WvX&!;x~d>Zt3 z!TUBQ!@u&qu#?JecdV3Ta^mp8R==Rd_d)%Fmj6%l`SNzu!b#!!Lw2&u*7h<#-=WE1 zd%*AQ?N1js_E@(Mz1%$}#h(;dHoH964l+q{9iq)O0H;&lnn zRs}Pgwi)oHL05LNR?hj9%q6?WrA$Y0)^7Fq zE*M|Hlowo&?~3%2NGTf)PaQOL$}3)AG2iO(U2wjLDKEGl-zACT*1-?%-gb<2VyJ2U z(T}Yj-v#}DOnJfe_%8T=-&T+Bg7z6xUT{6W+me3dXzIO?%hS!(S|3J^7#QqKo@KdC zY~Ef_=d5)#I2_yf3#R)4FdZLE^K~cZTVJ9$_dxLo6`U1ehEzLL(7kAynx>~jPJtuF4F$psG(T9 zVo{fr&|dD*d8Jjutsbuf$o1TyGQDg(i);g8t3)MH?^}@bF0Ve!2O2c`44FJ z2iN0u_SGchp)z^OUI*2V*1Wv_b*sng!1Vx3_j}`dye`x~Jtn*}l&Ns1W{6IQQo~k{ z*Ma*D!SkNc^b4-X>wLJ?ggblebsXh68G~JgjiA2^{aqw~S3AwCRei^2|Kz;6uY6vW zbC4Iv3lcA{@SA?UYQ39q{GuxX_i=(%$P45JiI?{_iXr$}amsuW{Sq22q`8n6$O{rL zvGJMnM(1}tALyDtaKfOp4e|ncLE;6B$3tEqFG##3{PM<|TlBrW@$_sX$BOKw^I^{S z7WL#V&38tzU-iha!gRe6Jg))m{}6CKk2YWZ+v(u{uxR_KZ0TnGTHnW$y>49#KlUL$ z@>9dg_xg8u0v@upr};EfKV$oU8Zw)ln_u2DqtMihu=QcON zhNFrRfwdonq!aDlF%rwbgk6^#>@U@q_EU+$S@!tM@S7 zeU6&>(P3>om95STXn#OH(9&_8m+2Mz(MkT;a?TfA-P~MR;sY}}*DqYkI3@32Nn7(w z{^_6gU%>b>I6i3d-`<~y)}9QWEPN};9cP18U)2V-l+2DdUA)9#^o+9`zJzp8N z{>$HfU(kQ?AKM>H?ijY})zR2rF+3&Iq>`y=a$qbCm!D`-PrATLO~^a{s#*Ik%a{T^6k*4UPM3-SVaLE^>k&8>aA zR%>VE!mw6K^BWvmE%- z^CNISDBAo3Oh=0!gZclo9DHwo{=(Zk;d6VxjM3VgFYLL}TT7&FcJ0E&l#$U>jvJeO zegxhxw%O*>f0`Fe_j{ilJ=laVZuclIgJVH0FODwSaoeCP<(bav=OJY-0_0koofl#r zJhDu2h1XAskNM?`hPQ2XUcmnYFx5x6&Wow5+3s;U!sbcZj`XFDyCzTBUY z?2z2-^XapMOD7A<@n?#tyAtzSk1KM`7^IU4glQ)J(0D36bBG1ocpch!V!NLKt$u9B zAJhL~!TI!StHjc};l~~f?{5+1+uR-A?7WZ-P~KK{34b@3LB?tuFF?E1c>({Q#*{Z) z=Vh0`&$qKq$-(0k^0m}nZ3@tTf&L4U|1y}4e{Gi%!}iY$HRLzr2iG7kkQXFgj#luq zmr{$W$EA@!9`?9t26=(JAo0R~fuweE!fNL9g$qaS^AbiwULY?>y!7Z7nGb&_IqTd1 zy@q!BJhMPMVdA#6vHMYlr4}JFq3^JrAH|C{tjuXu7xOdg>u;-;>BH221oQvbc?SJm z{ctwz9Me>aj-{m?dqy)&vE8qYZF#Ui(PVJHcV?8+ydxgXhzh>4c(+9U*K?mkDu3c1 zi3`NLihrBWb_QEsz<3PUK5#yb>HdV@J)h=|bo&yCpKcqlx0WX-)#erWzwo@n;d!Y= z;2r{j|tZQr)7{AO5J4-wWXo(sqq5&%Lm-Oem1VZ6}3``_S@i8 zYqZ(lfh{k=sY{pIU2>hC)7<+?fVZy+d_QnJ{xvTVA3C_=7NV#M>T-<7+P^4+?Q_2v zewcP7e*UiigrF%tl@s_rpp0w0l$uTB;a{IsUvNtbFTSUdEy;S*Cqz=pyWqib{--;_ z(y-;Fw#Gp!DSMZ~8&TS$!(Wvd!TtpIgJQ}HrsolY&j)3VqptWze@&OnqB}lW*z&U3>`~244yAI!pRHfz$a2iCl?#CO z36#;s3)l3^l?NLB%`S&~G+)kC-0?08c_m!W9l6Mqvv$DjYf%dO3bwp#HhTo}5}-t% zV*gDnY!Ux}V2}L=RnT5-HC}!M;YU5^N@;;A!Zv)E^*!n>vNCtIQu; zUN)OO8dQ(D{KY=A(?y)F)ROG8D`=lU8I2cQvq$8e%-ebT%a_@oExJ8F6HpY?NBU`} zoK704o0?XyxoZx#ylggm1lk+We*tAQUU1DGCH*j=N!Gn1{>1J}+jI6=pS8kumjczt zW$w#*vZebKHL>Mov)Loi{($>cL3yk3LNJWi@SLyf+Jh5KJ;uC;@Xox~yR1s6-759I zbludFK?_@6Hk&;H{gXDPe42JfgKFRJGRs|}Cni7{jTc*EI!!(|zEk@_zf`-gMLD+1eHv+fTKp>ky_(s; zyt&>ZHmSt98CA6clkOd&zVo;35vKY9)AfVl{y2fmINfU{B{^giyEOH{ z=Z)32M5UVViPyus<>vG>dLNn$mIq~A(=R&JiHGwvY>W;d1Bi zy+>b}7#KJ(Ffp7s7%7tb5*!ck{h^GRKa6X^yo78} zM3zrTwPXLNr?Xmj1pB zw4`=!wKn}X-{W4hjq zmLL3I(NAY~uN*09vZtZ?3HM#gbm00A+IlpY4weUHaQ)~C*So?u_-yuWIk|7bOE{i^ z`TuJ&xPN!3&qhUpf1r97ZI?X3Ig=gtBDbgQ^jXVUs6Ker@wI#kw!E0~8zg-=DSJ(x zb#<(Eq>vZv50Doy9Zg0%&ja#;oxTKlNxqc5=Bcg`A@o+@);2R1xPAoZM+->yC{ycT zSli0kru^8mI_5gpd7=M;-S-IUL(m?9>6prB_8rsu(DH-&MRH)CYd3${^IJT#>n$1= zc_1&47bN{M(Nj`bLhR2qb*e?Hx%Mo){|MS6M0?a^;H*SAkZEW$EZ$dD6;%NB3)C-2 z`o)J<{|f&1#|BwSjP!B+qHz5P>K8=)a&%m$D?SjfuJEnZx^}rg3)C-AzaZ%s`zbZA zT*}o2+b*K>WxB&skQc}c5-+A#p){ z({8Ese8>yr1&NpNM~+49#}cozMGdEzMje)eyg*)%co`m@A#55TD0eDUX{*K ztBIMBCzaOjRaWPjJ(-ym;8mhpWJBC!#X4Dy?fUe;UJp+a%bY7ArPd2adG;Dwmh;SsRtTBOK#oaNBjO z^YZd`)WS*O`a^cI%hvWXKi{?D`KtD>n*12aY5kR-7VvAU>lcdNykjRPPhGuoB9M=@ zP2%fT=LO`Ur&X-^^fqI`?Ya{mRZaz;1$hGVuc|@$$^JNOZc7ba9(a*65A-T58A(GB2Qiv(Wm5 za6bLNynsAlD&yLIDT5|^-3neKbFHyQWOcqi@cwDIK8?6OecyDV_PRmowyGAMi1PS4 zbIF4xQ4Z_}N1d$|2TAr1xnmoDLEDf0-bOJ5KPyg|PoiH!qlGjV)9)9peoX5F@883; zyscWF11m*C?xmeFHS#5qX}#5LPieHw^~BpVnH!E@P1x-Bt9`MJOIWRlh-WsYH(RiB z?1A+ zel=*1{x`n6@q9yfHeJhn_JCD|Z_ze!s9&IdLDDZP=OU>{kJHgR#S)d9|2j7fd4aqj z@$%#N5sT0Si9_V`{GyM|jB>ZSJp%0yrt>9SpC4HYlef#aO-z?B3EXa!U~z}~1?m?h z{qpL7NoIukK14K9~QK>r3!#`#v$XQUXT~a3z9t&8SWnt`gVne^6hMmaGA&>XpfM2L5ttv zx;@emHfX*_`{6CQi*0IfU>IDVhWn)u_e(K8ziX}DoPxI_xh$nB%{l_wBV_%u)%};z z!YhV%ZfMXC7YQ8A$jRxar#$p_f}Mqec_ltV__|U2e|>))+W(W_`2O6>K*I8#&%n5c zxQhJ1YacKjTN&5wk+)zm`G=9_Q0aZrUKF+jW}A%{O!s5zEQsG?sd|qe>FmH08G0TZaOKFoZe0QR`@sje$0J^y?XE0+Kq{dhy0^iuXRCt1nm*h{OH>< zzn>bXrPHPEu|08`PvL!h(BDP$ciD5@Y|NS!1hsC8MKhj#DZJV25vKkNXg@wA%GKQe zLF|%mY4&5s;@T>hj;RdVBV7AGz)&h(i<_t=vOK^0oXM14#b)CLQ~w1V|0bUKaVv3h zNkNyn&?1+c#$Y<8GROfVl_cqR`dcER&hp*=#jM+H54Ze_dZb$9O% z{uMtC_j^NL5P7lT{b(Xa?_pJT_FV3>l8TVcW{D}#$S-)FO7cJP5HTY zuoB-@sPj`fPziZ~ydd$yp7(j#+k~O~Ax+Sn#b}vKRJT|Ow?@sS$N&+SyYlRle|r50 zZGQmTd=^`K1lB*jVm~^`A6w4(f~%XGD@z^WvO_lapbw(}$KdEou8XfjwHlq+_MMBeIuGQGFdpiZ3c?Qv|+&&9Sp z*giBFypQjV|9y+oGc={LM@<7}9}{JM`}Sq;vHl^?BbxV_qhI=PV#~|#win?0{qFwD z;m@DS(ouF3zu6Y}*4KsvO$OTo%AHk|ifuP8zaFE$TTlMA;Q+Sn#kM@yJ~SER<)LO6 z$IV2M4!4XK79tW{YpvDm?N)&*j~l7(KGq0u>A;qk-~IiA@Atd=@2TWmwS6FdZ2#e> zKR>q%Q=rLUdq6qDq0#PwG-E)(Hr^CR>yNb9winy-VEfQykQZ~O*izE;Lu!d<2dF-l zTsbNx`ljlz7D0oadROm7RgjqlNi`UUD2B>i&m(|1oYqKeXd zW6QUFm)zj}_E5hd>K9X6q59q1YiDO;Et;pfu8p>9&9k0yG@Mmfv)ny&%Kt95{;ny% zLDGklve)EUSI25c3VG4|Lrl{#ov(xOL-4*4Ol7dW`i0R{Uor?Rve)7t`m&Nm?0+_r zG<}4s%kXR074h>;=Ge|}uq_X^7flA|M;G=Fd~VzIkngwD<~I zI@sSJFB-bZ`b)&?z8)ge`-SG0RInXyY|De~MUz2Z@{ZJZnZIj{yKRxQ((9V9yxDlc zG=BWIdD#$pr5^7dL&YjjORg4ra|+w>#C zXRmot%i@251e&3@k}qnz6|+ouU-w|`i*h%$|nY&KrBxMIqD{BJWw z`5y{mJUmnf@&U?!n-|T{Mb*_-rsF9|+|0@)uF9L8mm)s0@@0`^jlgXBN{%$D*v-ZZ zIQ}3XpbX|m^Jmf0!TLdeSIc8GXwpTgNRTb1Rn8!2VYBl>i+8?(;^kEb^Cp(BCcUR6 z4r(3>*I)V`)iE?J;C^`^3|s#N>`zc0Q4JrsQE%s?y*St7DN0carlZN=_@m`7RQF3r z^XIDKI~7#;MD4XR+Wr=_bntl~FW~wSw!DDP`_nS$zog2KD%Hs5T(@O&ijMS}WESZq zky17qo;qmglvljKV*aPwgX{H!ykPsj|JvWByP7REDq}sGQI(~%_u-xFe{GL2?T`QZ zd>Z5hTm6D*|6t1}s9zM0X>r6X*$VD3m`OSj`t7&-yJ+pjc7BAZJp%Ki`6p=U;QN90 z2=rgD-S7RcdD-AL`!p(9MeroM`PvoL@I|=Z2-h2t)*I!Oy?xx$+vU^mx<&XsOQL|h zKwgk|Ig%!r(X^jucE>6EJwFH2%^@$47bIRJ26(IogFRP?ig=_gdi0J!ULY?>yf7!Y z(3vXXk&a*8E*|;XL=Ex+c|qcZM8kw)D1Y?|Nl435lR}3i;V)_pvR9P$ErLE@#hi`tu2ia{_@wx--fYlYiO zHR8!B(HZi(b3LW2_tplmT|YvLzgA1L2>VLXQzoP*5S%{KPz%Pt(B$78zxtlmdhGj@ zg2GaZUSfl2?+}^{w(rN?z1JHH^qz^lce`%SV_|ZSo8;5G zT1KIi5h*kotpAinz^-S<8ALeFoO)XF(5bzW^4Z6>?UQ@E&W1FvW;N4+{Rx&wlYh59 zMSC8oU%ahb`njkxj;1VHOdSq5u(sKFIp!!yJLdk(F6RpmT@yEtFWUQ~rK9lyri1n2 zIxmASOrvkT-zY71e`qnk%dr>R{U~7nZFL!3pT@R7{K-`3yBdZhS74z9n~Eywk1R7et_bf%*kWzqFU^5M z+@pO*xES&Rc|qdESiT^=@Y~*Ok=AdbSJlMvAuo^@BwpwjL`(JQQ_^2jYwuL;$rXjX zKwgk|>GUAG9?^NyFM^cz0duLI7vu%uQb$O{rL%PUT6rjN;$5>_|bEO_1m2${?-)a z1@eN#i(eyyvC_U*x|T)m56OuRRzO}LFG#$&@znO(weA@E%@sSVn+jR6 z7yC~@ULY?>yfm1vHMYwOkrmvlyL0g5@f^qtyl{LdEbG6bDBtQl{hsj0k%6A~hWU7QVg{#8NT@rLrGm`+qUE z<r=g|eIxmC_MsD4rS8jMuSGW?>J$Zhm`&Ep| zSjiH5<>TaV&Zm^%c}Qsb1WZTMFR2oAlz3gjvsJ;&rfmj%Y1rCl@Oe2B4ThTDp`ZK$ zb%@vIYAw+81Gee7&P#@V{Q9qLLcV4ysSnHqJ{*&pE&U+4{D|Ns;Wz4=Q@67IG%q~H zJz4?}WYUJ{$(J?k8(v|{3wWO+=zn0#16p}BUN-yvB)3vJg6d7kJX&rIu-r{OEnD{U z(};-QON!z0Xtf^#?2j;=A6c?-jP@%plXOqx84jFb+zEc~V1F~6V{tPP8@eWW$kyz} zX&HQMc>(LkR(7C#afz;H;;B=lq-QL@9|I_Z^*d;UKkPsBLRz7{=1Z4%7sKy9AMzBXHOQ|5GIk?-Tqkp%4+3fx<6WP9m5EFHN zF6H3duH@XWE%Q6#NaVF>NEUVUsc+rNHIj!nqerA3BZPhY; z;P;HFjP3oPm_85N{Gk7WrVr7chi!SZ`oVN?eiRZ;>CJRetecUVG|7y2XVX@B-fc`M3ztQH?o85o8n=?Urb*;0qv&!VOO`Yr@ zEjhBfti9eqYU(YF`rzBqaB>y}^(d$O{rLgF(k^8vOXVZiZc>p?zV{0C|DDAn|hNgVxO3(&5@}`3BZ+ zT}$wPHF!P);`t2TLcF;>mebU`l)A$RyY`Pl{Q~t1l787&tXlDMgkbJY;i8#skf#*n z1@eN#i{;FVB<%+kuiW}(El1alIUz5Q7bITree!jLmpngtwLDurNXLB|@&b85;>FQK zetMTj+?#haL=!~yQC5%_$O{rLKGjJ(Uw-3h%dU%SeDE`q3i1MZLE=R)?l$SCJ+#O6 zyA=H3=m@lhyg*)%c)9LnySnZ*zsoPV@UpXce=_6+@`A*RKAR*SQ^+-jkI}Eh^zy?5 zAuo^@Bwhrqm6|T-?jz;8)Xj0#mF^Yf1@eN#i^x3z2kG!QbJb?E#mMK=mmn{Y7bIR( z95qR-9-Rt$v;BrjuVyUd1+E_FHKiit#tIZ z|G3xN!GDvpyB^vjXpfNW(ZN(+F5)-O9LwXcey%01YK6Q&UXXYRwy~j-{W2DyCnR5w zS0wEVd4aqj@p9+@?{w=JL&uk%d5%tXkv)(X$O{rLwJn1T{QIeS>4PoueG&1@eN#OJeewRGn={&HE;O&E3;tbTXry<{j~9MpW>X z#k(c)zy9g-U&Ox>(5smZ%$w^yVv|aoTSog|5KRBw=hq2zR+hgs$-kR_E=rQd_n-ip z47LZ9!T%fMJGCG5OSSuYR5CB;CNivo`O)Nm{XeWF`(QzIGyn8guc9J9b;eA{3*-e! zzbLnTaF=gcbM<}xEamv3XefA|*q_!f;P-^4FaGv<-C+ALl|lUi>WATAyz_Ah3A#&H zPIO;!B@RKWA1sfSAKP^Be5nooYNEC=E`!kd`k<60(QT$GWxONmA?#r-lI&^S?j0a6 znEE$p=c(GgxwUWCYVC}iJcBERQ;`xHFW~#5osS3RN0T*+I>^grKmWyI=c9o^zo5@28JZ__vIb&6UcmF>K)%uV*=)Sb+sO<15vLlQjkq8h z(fN89s_Oa~Op*SFpl9XCg5Kk{R<$6t${pV-bXQk3<(c|r4Ew65_e>MHyA-bg4oVU#3Vf$8`2yLmy2&w=S^yny-zTVBwf z_q)?UdnEK`1g@{Ob5$@@@K=@?;AH4 z-(9|aPgG`26ntJ*{HRr?(jkZr7do zsB$X!ET;7fKj>i1R;t$4raDB#WkX1UYrKHpw{170qlKB%aSc71jj$|Htk)aS^ovL@ ziIlR@@YF#=r@Z0?7IRF;=XdAF_I`{Pj7IlaMchxeX&1|;@_7&yayk#HkZ4I;+_ji| z{!y=bv+Eb|KFpm#4sv!m^A;~wpP!pbkhA{N`X!=M=yR9%8JB!v>UX54O5%R^_+wgM zp}Jo}nm<<+->IO&Cu*;qF)hD0`>pWM<&~K0%uml3&**II=y#9C6Y5iab!t`0Q`>lV5u;g7W&h?*jJN~hsxwBdmU6eTJ!SyS4_v}cjs4m zX|9Op`E<!IxbeQ)C$5zvB}4`g7a)0+TL5FR2q;eYV;XvttA|t=>JM%^SA6oj|qO zc>&jl!28OvRk->@Z3eRospm9rJ)yaV({rT;W9V1NH> zUh1BWO_`g?KXE4fAm&~Y(S|02?fH+M`?P z(zew*BwLpzGE@#{g&jxKpA|0A8s|_&K`RmM|n=h zU{_%yOnLd;@jC8Ew=a?S>9zrTYk6`~ZC>3qzp*gjnMW?G8XVhUdZ&5b;qbiFB5_$! zb+%eGF%9Z`4&((}{Q~yipO!&hUI(5K|9Jcu`}ppLC-{vqeEvrGih+fbb%U3l-Mjr+ z?LD@<1g9=tYIn(XdQNliD*@iVCh+~h@%Y!gM11Jrid%@HDyYjb9&7)i47ShxV)$X& zk@)$${u6?x_*72d`+zd8@$zPwYC*2ZQLg8Qt^QK-iIb(rc2n0i`rEF3;*5?JA9#r^ zFSRueQc2mn6yAu^9v%Lw%n0@;xW5EbUa*a?f$c%tzwj}hep)ZQ)*`iv-E>WVLIo@j z${#6Di~Go$-WRdYt{p#Ne;ZqW7p(tJ%bgM zHQpgpr)Ez!OnCwQJv4g_#()0w`(s-_8lSix-))dlteo>HnM-z$OPP-1tW9LzK|6Y& zO=;k$h5piu1JC|6FaNdpE*ej0@n2kz?}GE$+m5=g_vuWY4RLd>S-;J9|4;J*J|Ato z{&hN9{1?~byCiYkI{3le+m5kL3^mO^`Z1SrEoGy=ePlo;co#Dn&GkRc%YQAti^d~b z{1?~byZn4X+vTY>`h3;trLVMw#yeg289b^+R+JRz_vyIVQ{F$#%YQAti^dCD{1?~b zyDjNQj;7uVxjfxmt@UB#h`}?tZ~~b-%7@%uf<<#ZgMD< z6aH-dDo2)McCB0hjK_d7_&%VFYxC)e$z#PFOXccSnGXE(V@KG}SIfTeii*)n4LO*3 z{U|LXw!Cb%_zTEOfD(O*{Wr0&Mf?MTJ@y||!T1cw2PoqjFAD3?b&6a>u0p+n1-dO1 zb2k_6To2YFTDH~QMg3ayxFoi`Y_|BzpnA;ZFZP+8F5+~hmSmq@!FUWPgM5H8uEk#r zdH2lOnhQzwK2vTDPOK*a<0s(zLm9L48$kVnZU3Rgv#_lnEDy%({B&mb%8`;Ldm5^r zaNo5|2YJDa2e5xZ8P|A;8j7_m7IjGp?d2YwS6Vfc|6*bCBdw!cl7?b=?V3sjruGQr z4efjQuf^-o)-Tc0aXnslkJKZjHAIUv&g+qHYG<#eOr&?6m>CNdSH02R=u?cJ{xmQD zwRjy`ydNzc*W-0y{3Fuv4hhey-4DVkuM@K;Hn9F57EQnW*Wz_rTrp)n{{bSO0>F1z_ZC6B3|`!YIhd#$DWPwN+uS8#m( zwv4tugqDu$@j8k=3!=*;vLoDV?#6^ad{%Z{9lcck@Mo;;(L)t4b1u(e$_p5u17&dh z|7-C&Fdhf)w*Y1EeLxxXcQ^ZfDSit#p034~^Rz|8#|5Z_iK~`H>{v!3PNrL^gm{h) zXkg3BW{cN>@ws+8)^uvh~SY%jPJ8&f__JEK9h?{}HyF3}ScpbYW>%D5J`;0&eeTr2Itc=o!ykxvaP-|OGu33$lXp61g`{fzB??|*HNdas|{9ykB# zczbK0slLyicUzs8ggv*p2{s&6j0mj#C?ur_KpxO!T<3+aIl|obvCyR)=CD>_IS;L^ z&I_nNKzXb4a-Yn^uHM6R_c?0jM~AiXRJJ-Vp#1^)KugDU{W85`KRU@DTh94{tDBoE zOMGBP=lX?98K>m^D`{(<$v^$m{tFo21;+ry zbnz0aNpXtvd5Yk>^n7KT-GA{P+aFBs7`E!w(b!)xL)ZuUt7!cL(~;*>xHg}TrK+h@ zoFsd<{P7JflQ?xKdlO1SyvhyqH?%E$~TwjP3b#;C>gh_%62l zrO@if)Zf51{|W26dpplD5!j@73^a|bM4s#uFVo1pmvU`+x7C}S$(Eaae)MgW3%%@%!5akDX#GP zDe*DCe9`c>t;+}g2c-~ zhU132rhcQ>K%r$Dn?Jydd$y+D9|Lw?><{!bMj!X;DH6+w-Ns`83-9#@NPR(CSB<@BHp` zF#eJoS?!kdLfQ54z1@^46JHNvJD>jD?M15(+>d#daOq@WIsQx$bys3u>v6@AJFhgJ z$hPMsE}6T(u%(H`HvWP(p4i4;(CSC)4=^3={y;E4D1-B9X=NGuH`^`wtF&Yo&J!8y zZFXMB1}JYUyM(_R%pha6jTfNZ>b!vC56Wmf;W{t71b)7qbxIB%r;x9u_G(jr{tNV9 zko=dybo^_(lo+;uUZ^3z89%rNd4aqj@p80+pS_e?R6Q<@{PD2IO*6;~X z#k(c)zY4SyCT?3ByB}3pY7rt6`VQ0iG{_s;dHdk}W3$QN``Rs-lrIQ#zTlK{w|ecR zAW77k)bj#gO**pnP1wTFIZ15)XTY{Rru_@XUnq5#J=B(l!l%Xy!o-Kgq837@G!!%B*^6=YYKQ)g@mY5c+f_o454Z z98&^4w&RU$c})8cWFK<$uQ; zTmEs4mm|4?>vyf(nOpC4Z@<=O;Q)Doyde3zuFP|1Ms6in)apO8N-R=0guFmrka*!{ zowze{^0ZLD*B!3f<>V~L3*-ffmn&&Pl{rBQHhM{X?cxV{Xdo|;7bIRjn-++;2VJk& zWjz&9K>AY{@&b85;)Va=`l$jwD(2P3sQYRU9v0V?qHs1ALFOT+p3DBQ9Ld9zNE3f~{!oVZXL~P^v*p|n%Kf(0? z@vj8*YGwoT=6a9Vq!QdfGL+yBw(-y}+K?q$i|`s#NQ|Igl5~3lcB=5(T%X44rzI z7)~6F6v=%Fd4aqj@scuc6?gr0iq63@?H5MhRHY#=kQXFgc=q!Xmv>}{2LH@z*LAR7 zfV@Cnka%gL7ZsQmmn9)iicK+*tWSZwKwgk|xwUrN)l8l6rs#SD|6Qu%OOO}H3lc9W z!6eSSCmeOCHA~#pbNP}WFOU}`UbL?9DC#Qv_})k;IAN3|S^;^1ydd#XdaJOFaG&yL zqT-sy!-msTkQc}c5-%Ye6uF8bl@web)r0oOv~ogTATLO~2wCVd8B*Jy8zl2pu%;V? z@fW!N1#$n2gRXU@5A|B1nJjnbF4gQss9&IdLDDaU!ZMtv>I`<08qHV59!sr;yg*)% zc)4RBdZU&0n_3IeXz5$}`!bLh$O{rLo@z}mKWr%KXW^X`Im9e;wtMUT4sAbJ=*Js*0*oWhB=Pl9V!td*FugwlE&rf;%;hiknVl};bfuPLpIyQG z*}?r>G$HO~sotkYxF4s=A7N$UMw7wvpbYMpy2ACY@C`njy<1N1oA45jXJG#Snhfr* z8|t%Bk>DSw-bLFbPjJp;$7HOGt<+~Ro96X`Ac>X0LTq_KJD&mM1=IdQJ0BDBf}Oqu zc}c#Mz2>Q|5h3(e;MO)X7Px){=SPV1qfD)XVQnjCoAP7N>X_?X=Y{?YcHbkYA3=Kr zrei9j*>_CqL(3297s-KnuHF1)&u{U}uD57hvj07sv||FW1yHBioO442cWsn|4d3=R;l~FG#$EKXNQ;KbCl%EowN$ zH0rP%O8Y2GqVD`N>qz% zh?}ffC#$htpZ?eD0V?8`&G)gNk~un7${9$=Hnr7x5msLm%D8MkD%9y_@`jvr9^_%G z^V0UKTwc0oZB+J-aEz0|ZP%^N%gftQ3nzu^5825sTieV0dj-8x5b@j@LKt9$siLYCo7jXPR`&2E>BJ3+kPnnROKydm@LoJve z*LgWH?fC(ptuZ)6C520nm;d#5LHo4Td3k1ABs$$ky130IYxKr^Ej8rje|Z7z zQ!AdYYX7RqkCB|#U-@YPzqXow`PCD(#(b!r;tW|mNtFJ>18_e5zr27vU@GIM`U%rKJfl&xIT@zK7HSGqV~E$>9(pCo`~}JI&;Z`B~cFS2S=T)6$eT7 z54mF-e?i-i{oY0~1V1ZInNOl$LZgNB|HM1czGt-h(aMAAX#Wp@`9axMtb9peTIPDwpZ2X4usoXluj4OYY~vDE zDowJ%aWKDZYExGr-u0t$yf3O%|3wXxNeU&o^R;RrfZqc9lIl)0glYFV$;o<9x z&>kW4f;NA`b$i5jY4>Wa&BeATR}*fXr1i5VjBEDj-dPf{%LD;C)>9rb4jCWyg1kUpknEAjaQ}eNw<|Q1Z)az?U9DCLGwM@4{ym`Y*T{+!{GWf+%JW=UyAYhU2FB`6uceDWhqr@ z))CMiA?uf|?!Sx{UNO9LLxX;}NZ@EjPEP;HiP+=aS9;#x)bHMAA=`29zrMc??f*$| ze1Gm`AYpmWXJFhzTt$B1wGWt%t^B9$5w`8av^;p;p|@Z$`G=9_Q0aZrUKF+jW}A%{ zO!s5zEQsG?sd|qe>FmH08?w8xs`|`A4%}>w@+O+9Ra-(YIxOKQ&HEr%T;qd*U>o!u$B3zl-Savgf+l zm^CX1YTXozW<2{+c(d6fO#K&7Uw=rHtGWM!*d^c6?8lD9wN)@3QyH{Jzx)3HOxuHP ze$XBnN~LRY6SYK^=XakonbND+Y`kFVzkvPM#4|r`B~C6W=rR{tN67Z5phwTGY!|)m?)|~P;>Y2BZ^#QGFE+d%O~mLu ztjf-w%Y9Z-5wh9r5w`xz?~ccS_6XPf7f;PtcINdC1_ssDssz~z`_0A+w*JfSj>mw! z;F|yPX0Rq-asNtH!HSCPlHmd#jK9G63sU^0(eJt`Ki3Xc;=2lUekunlAuo^@BwpC_ zJ}-NlFqA)}37WGQEt7e{#(ak0t7|a3j@1Q`GK;`Jy?%tYKLBk$i>*CEtABdMesq#Q zww&_?S2s6TmN;5|&>nfKIaP)ei}}c`s_R?lg}vJB>j8!o`-CoeJ)#UEi_o?Wd&~;; z3)C-2`en{Olx|2U$6NVPyy?e)+jqt`hH@s|`c5rT^}8k&{F=vBzo4Bz`d`;CX!-;# zy<(?Gcsip9>-R{{Oj{y-uU0QI6XsCDtpv4VD>RlrtT+S!RcdoQ+JPg z5O(2zqs5jNG<)HvGrL!glr-7XQ2m7au4Ov3{s+^solk@H{cgFlic+!d#^u*z)OYL2 zzcw7$?B_K<)C}XenJCiXmhr+uM1pILP}65{7e@}kf^gWjl&nEzYfA~esS}jcBP04+bcI4vE>Er{jj}%8m)dz z$K!YB2mcS)?7T>E7Ox3#p1Z;jwH&U!V^0+FY##T7EDc^74EAbFhCw{W5NR>3#tt$KD*FtUE<3ELL!S^n3ds)Gy$8 zU@HIZ?*rt8aWq7{n5ua~X?%}9)GtuK zAjMw}e){f7MpRLnZ*2Lt?~)t5-yZ50MEzoFD^$OGd+qFOtVQ!Q*R|0b<%Dr=Mb^V3 zmA;?HXgNr*^>A(KPhwHpN%*u;(^6!G@!X5rMTIg`^Y#rZO5Y z8oJ5)OT_EG9wO8Gh31!3HajnQN9w!G-!;bFwn$p(b+kHApEdS+Y6tsENP zPibPCofqyP-U$3W&h7JgCt|0beBQa)c+ujDDf98a%@pN-D2Va!P#wqzDF1E!q8YlV zy4uQgJSB;nS-Hejd9(AvDCf4#_Gv=d?H^VxqD9 ze$UUrbn~sw3tIdSEgjc+kr?2y9t`$eB`V^Pw&>A2vekJ3^##ZWn!dqxUYHYH=uDOH zNXM^k7ms{xqV~JvyJ+?ZjPGI^U-+-DH-hmOZ0!-I{R8rksSL*JNHk0+hVoahkc6}> zH7RsR{%-w(HlEn}FTcD0zNfVw`#zx~6^&qUt4-MGS2 zx4mp5(~fe_G+m<6o7Y{@QS{jI0zU6g%OEd$!YS=JpDR{KUPgXo8{(PS>b%%+n8y$^ z=~XL99=TE8UYmp_gX5*?eEZDuaASXhfXUo=?5}RBh@F#70t;7Exh7^g^B8P4J1avkKogur;#-ihD~*jwF2d*bRAs zydd%7ZQat(MV)apWzk~laKM2z$P45JiI>3_rqQ?FZQ|B|72fs=j!>hEeUKN(3lc9XG>yaZ;z9{Dgt6xc49TJ(FOU}`UiRG6y8K>pswsEu zk+Ru$2RFzI*Aem<-Q;Sd4aqj@zR#! zx05e}sPk$1a*y^M;bO=Ouka(eA5G~cGPf34C zt-VvVCs!2m0(n8=rPG7#dPL_*zX(#=2h62-W0qE(BqO&NZ-sk9 zULY?>yfiXr&{}yKQ$Ax&Eqa}>APsqeydd%7Tu!X*TJmP^1-#!CBM=~@=KKO`qQSOIx~ydd%7#$RKqqENJH)SRbdu6Zey=7JQ%wD0$UXf(4GPAN0lB~?itb`EB2uU)N5x;+b-}AYy*L}S% z^)9dOKcCmR=Q)r2dG2%1UDylk1(BEd>eKx6&+aiZeaW2n(fmpXdx5F_OQ`*7t4NtY%>U@x#2L|)o#e|GdK@#8r@0fxRH|!q<(V;@w-O{XMR5YE*!p74`yqLF9#L(QkU-N7$Ldl1q}bBc=hc7uX9T zFK31;YbUO$D0O=*y~Fy!IVl(G-y&v1Pr}k_aUwyQ`aSqPB=CRRU<`VL`rfJV7_O9> z#ivDPbNBMc>-4rz-v>Hqd9dNi2}L}-EFW_n5pT*(3S^g;Cfc^Os^9pSht9+Vy-{u) zoc}qsMJ9u=w|K9?V})Gq>)5~gdt|@*`)lC#gE9C$vallWB^>u#>=u%}A4fxN=DA28 znHPRtydf&EkbQ2w?EdfeLZd|IW)BW@Z-7M3tlS{f4xIfS-dz+Y4RBP6`g6{+$A^lLNbs61Ty80u@8$7lVwO zJ}p*PnRv<=B|pa%1pU{?&j;&A!rqYqb(9W^cOK#G2!KAp|F?lLIQ_f*54WtPm<$Wv z#w~1;?9HOu_c0gy_g#IR6MxQO4biK~yNM@=?QIqDPLDmV$;dy}*t`ek7qEW77;JAS zFSx1fh8R(U=z=|I7Heb#Z}KR%eAx2N$`WA*kuWa@`xU zCE87i%Sw2%24iYE9H{06>zIYtpy;(w|D`%l9EykSpqG;KZRWcE(eHzA8shw1ZN37Y zpMdoRw)da*0&XAF_m-i)?+TS)P~A(RN!s2nI)9LjW^T64xnV&lFQ5moJ;3t++6&b8 ze!=YpW6%p2gVTdCs(XpZc^%nmg@3&(Vv;^3S4IKK3s^s3zWLK$!0iL`BUlc`aDViF zuP1=xBa_FA-GR@UrP)T(Xs4qEZXoLg^Z~~Ib$$WcAB^ATpBFzt;gw$#TeEUr%%uY? z2V=1Rfyy_io?k3Z)rfU77Yn^O6BiuJ%36c07qEW8@zUSs1>9aJKgi}ARQE!xSX%o; ztdCoWl9@Gbu{{{{0*5_(Xo_rY4@?NSsJwqbc>&i4=9@q51>C;q(a`d9)UzJA zX{}OXyH~8haxjMbqyOs-^l~eP*q`Q-*dR42UWN@9!3$))fIh(Zzs@gU`-3sm`7Jm- z*#AKFSE$|}$+${dz2SL$LYZin&2DI39$7D7{leoT)V?3ks^)Y5fqrR$b)GCqc0M=y zmzZhp=gv~aeQx!VH11~tk^Mg`vR;<3juQvkDJNbvtre!i=1Kzd6X+2t2J;!R*Xy8` z4^@up`6Z=f0q@4oxAkuutYjQp6sBM=|F{2!@&T5kx)+-!>7&-m9x`T1&oWC08E!OP z_-s7-vo4Xqp4NhF$dK=M=a;ydBVQV-gL{M-?QDGOzES z@=tKOtOAxBp5ofQh4~=(L@(9##iWiC^UYmxxwf=v#%K{^8H)f>zSo<-lmhc!RKGV^Ao5T z>UzjQ^9z`d)|{32f^l-q)bCsrz4P|fC$K%CVr-{!mB+r^L~gy?0l2uwe83pYH{kN1 zyd3uY;@yg&{B^fu%0zkKqu28^hBk@QOBWIq+p=Wsuvlx1X~FveP(HwN*o)EdlL36z z?4NI`b#oi|54)H4VA<>Z+}9sz&ju)AzP5StujiLy87~|gz5-_Q+TKxu>w?T+J^{=B zwfw?h;5`>7JKIZGe5PXr^F$Qv1@?mIeUhn2LC3aW9+vRieq`j&&Dsuoe*_-y$i`qk zu^F?*(=SgEu%)ybl5x@W4dC0e2%oa!9^+?B%!=*I1(%QN=P${_`pf-KJ~a<2wK04h z_#Oaz`M=|5*h@#qV?mkXYsAfov*gja{`_2}BX&!ql&XWbu?Cpt!25^b@dL-mUC#sG z4>)N3f#bo0E)Qyc@O~rXW39TEvzV*Nl^Zrrkv>we7vwxZ)i;?9M$P1r?>Whm;jCd@U z2hZH_r09XYz+Mn}5x#fMRW>HoR;$xyBes3%GVBHRg2;=en=Y<>zI5c9BcYmOx=FAX zZP*JUFEs1qviTAu_p5SSd3Gds#>1<;67ydqd+RKkkja<_SML*b4VYaDGAL zg*lgt1?SB(x2I`0J~ZPrbi-a?FNnNEIXaRke4Gz6=2vP(tCkIdy}(`&d0{=pwbVU- z?DfZywKH#ZglSvWbk*^8=X%{RPGDv5bmy^i2PvL%3lBw+cke*fs)+xn+3ttwI~G~y)5f|$=i#o+dU zG5GvT+FOI{38}uI>-BV-rFV~QgVRIBfBJc;4yxWy`|on!%2*dg$IzCUPwdh14-*Jb zJl(_L%3bQl0KI@7p!Uz2$1G!5T)|I?VSB!Lwvr2+-uX=gBjtAUvZB&4Pa^kfRb<;A z>U|Y(eNgcQUQZ0(-KCn6rEo2R zbFFdiD?aFl{d{-VxNOSe(U?Of+L|dYdfZzuKS0$7T#k7B4d$1F*4LlTFAA2a4ia6> zWeU?-D-N$}$bWTyfjWQD_v278QVR?UO@Aa}ks(@#Y<>Ld`~o$82Fsz^AM|q2`~tPU zUtJFNN2PMAp@xZt?TSB-)Yx4O)&A99ptk>S>yJPWP%+g0%?Qhi%xCx2cKV&|X}}&M z1iz00H9uI6?C}K7k8BKjQS4ty(IB}OX8M&v{I+_xolNDBzOrlkkso!YlyOWJ-3L8? zfyyt)Za+BvudYAvd#X?|xIH->;#@6GPuhwVhy`-+i|du{c!c6^MdxLi%rJx-OGzDc zdk;E4xV=y@=*8j4SH;v5Gr||E2N-l$9+mv+?@K{>Iq3JLp!OHpa;Wb~f#u-xq29MY z?D<6x(~OR4{0Vm@=JzQ+eUYAyYn8TVL8lfmr+rw7*$P7juY@vK(NWN52%puxuKh>s}I6R`ZCG5CG% zP4yEGv&?-TKUKiJwyBXVZO%oz>SW6=HTF!cJL+yLcJ6r!VzdE)m4+xf>s~YNJY?4| z@A@uUeS1|YqAE;ED<;pP@~p>{Ca%8hm6R)A+DDBW5859gyFCY;9`pikKVzl!>FinV zos)hvV>cLs8Nl{ObuVE3BI^hABJ_>o*lf>{t`u5#O1V1T60p9(_5E!z=w$*&3HQgc z%ds10-@mIKz9;`c=40foOJ_Cbr;m^fH1K5n>s~5#g46RtSQ@ycBP$y3 z=cUEN)kaH_r}wrfHQ2T+Ozwz9q)d3u^}j4_l_ zW6edf_dLzbD*0qz%vfWxf6WWn{$LE{3Dvy}T3JkOWQ&ekM#(9*uaXVvnZ323zl~0S z^KP0W^U}UHczyKeGc0Em}sSK8{^&eHnbsGK{aF3JFaMxV3j#ei+vi{Y>-q-!qc^78(|L__S5rpDBHzuQy+9D@s_0y@cIEkY zyT)R=q63&epge)ogE6?jZE`C0tARDES>CBROL1qL!SaK~;QdaL2kk}|Xb9!6W;od2 z-dCUO!FaLT)18tobjcHwT?lg9*N zy#4|{Uk2wF#Q6f*_C_@?;QK$Y7ud`H|GYPtU&QSKtw(ompX$4Qsx;(X>5ZV0PwHAM zi%y9>;df8jNmL#5d>88ddGP)(vd1sf^x*U6ET?;%tZyb9;jmxd zwb_Y^x^!(unB-*Z3(eQ5-_4v)s8)TWYh-i};hQ=(9Q&_%0oxy0Kd9~{B{M71SKvdH z<+t9FylZ_b%3c+O$4J?{JTc;Ru8V7v|Lb042|3Eu8|pal?$DNV3-iu^p1>H@z04T# zBw{(x4r$Ov7Eo|>Oq#Ra)@#=1v`v3V-%FqCO8KvQ0X;zF8&vmlg>tExd7Qf^jrF3Y z-5BZM6~~}%za9oM;zSnrON)dq|C$$M^9kq))xF3`+Yyb>t1oECr=tr!zZeha7sTTu zC{L*Fg_N$!BJgzo$g{c)vl+ftbkV1nmI*@Kok!p7Js2?>pFQaNuu$V8@cBKc>A~X} zYI-m~N}PNAzH;uPcaO?T{0#qoV-h1)nOT2EYQBCs77xxZB93Ql6LDya8&xGaL!b6F zXF$c^_JG$TnrPWB3c2iepW=CWl3nwQ&S4)Py>nE#h4CO&jr;t>`3qfmrQrU8^#R9- z^AA`*sCKMuia2fnQGkCnfF>;;?9Ms6WcYw{mX1Zhc&XlrEpm08JD20((K^WogT0?h8-S)3eW6 z2H9C2NWflTFNnN^%riw1y4~LPecdrpw~RFodx5^9!6`5apLX zXNCe&;?1KCBoB<_b=n+YFR&LxUYL&wnNu!C&AigHs5n!)#|V3Yy&&=u>4kk?{<>S= zdo*K(7sdCnVK1;3L|!aONMq2uFm5$n{hYIuwKNZVfxRH|!Z1#@cB09EtM00iXvW5Q zRoDyc1(6qZtncELPcfFONeAwhcMGY&USKbXyx>m~$E#h98Ja4@XK+e8M-F>|y&&>J zd2XkF#XT$PGm%m=sc)|`>;?9M$jej#h99Nsu_GVWn+U_xrhdX+U@wTg@YeC1enKj$ zlbT0Z_UU@K4eSN>g2)TcMcn3%1^Z>0ix)XFxv&yoFR&LxUPer+Z9jd(RS%l@)y&&?kUwP`Cl;d05^4JgZlXhE@uou`1A};}D)dhyB6i$-eBZf0L)9~{Q@be7o zh`dzaik}<25ij}Oi$!_;;h*&QiX; z6nk&F?&QHEe&bhMVK1;3L|#1UR^?|Svg(>mp4s26)-i{@z+Mn}VP{xKo)wqjpYTm) zY2M6w0DFPGAoB9vh%NbcCgX)ijPzL=*B^I+-!}xm&xfohsQ(Fr&qx3282sL0Q}`Lx zr&v4P(~9^dHhxdff$IamzliMqLj6w|+#YcKe_IUxKVT#``g3*3LcOlfoa+TzTQATH zSbyODLe=MC_X4&bxc^`|s(Yb%QM9@1wWIecx=PC0n0*q;3s^s3{egZCn-{441CJkY zdQ|s9*6o=$GCOg!>3+twq`Zk8#3er+dFzRwEP_PtOssdtCZO86)Vs`I6WAnx)+6G4;&LdiOm-~;4g{@pNR&& zfX5S5J^}0RPv;k8z2Kd2E@CW9?o3I}r~aDO8wBnTxc^`|s(ZP;!ToUhsmZ{1N~0Qu z!pvkSFJS$E^#>l0hs_JPf1o$;_yMO!buXVbSH6l1#(h9{r&p_gck>gI&U;RoMhYw1 zq(KY;k&+H54`6+P^$T^p&T7R>hPFBf8f>hN_=plc0oMmEAK4i6y3t|LQ7|p;6wY)!F4vvp}NJR;4pT?)TB;lN4YvUsL(_Vgc z{rqV!y27f8G!3zvJz9Dx-s=WFhuzEMdTXD5M~f~INrxSqcF?I=+ro6eH5bG9Du)gG zu*F&McnA9%uziuuFKu!v^{at3t6AQuIZJV8o5AHBG#=>|>y$yaW0gUkZ@13T4af z))zCChNfQF4tv>4I_fNVN@%0&2(Cynmcyy`7B!y3?&baM`Bw1>EVFUum?`hM!N{RV zG{O6?JJKo~#9f$1!tf5e7i%7~jA3yFKP86k`R3V5u29=EUS|9J6e?v>no%cNoWbwm zga4BRV<<1@LN-?~%CMFtawhmtEA?&7nUa<;>^#HaWYm?Vca|wU>|U5{$ptR*Ths|- zze2y3QGz*&ZzFIk#qnL90mi1@4s*`@!&jtT__s0 z^Ptbj)nOg>@_*a=p#D+K%MWj_n0}>b?bSPM>t>2RZqbT*YK5;qM-soQn!kVgb=QBL zKf(U*pzVe1`~iG>7U5HN+++NViCM9ox%16kak;j%X~t*~UhY*1jHkETg?U&)2Rw6{ zKC>#8MnNs#Wl`I=lz4mHX#iWV*65SepWZ*H?FGxh@pS*?g%nlm>peV-ai$bfy%#|* z;Pt8BoqzsxeS$tVT2mzi{evu?UzSN5IW~$5dIIYgj8VJx_EN43( z%{o8Fi`(}sXdzeUpIZCD_Pg^7_`fA^JPy|X?~XNuv_41W@nmpqWE4InFa^WihppEjnr$C8yZFN;U+wJ;&?vhM6pio^;-@FYT`noBG}L3AH`Q zmV^0)eq(`#M#Xb?I)B?{jrlu-5(_v9GC8l4kxs5 z6E9hNw&T$9Y<|(!M(Lpk*07j&&7I!+T{L(5x4Z}@)vqEeG?zfL?xge)-$HfIb$EI}sCoq;11X zaByGusMG;HLDfI1dFgQ@tGHd)Zi;1~w}YOLA4qCX7~_^O&6F9E&wh-=<_LJaL!Iw} z(}UMn!TN2Kr56a2q#{l)NXL|sZ~Nu<1HkqD?wBChXzo;6uBX?LnS={FQ=&2XZqEw}dhuWF3EZF><>6d@n8+9qM+`chPwd8-a=f7lD+ z>ochCrBXodtaOVR0iMNLLy}-_Bb0~VeSD(Y@=@)2U9y>IXgB#+?Jn%OC;e2Ja>Xm* z`W_$bsI~NOX53>X{h$8{K;;{-9IE}n=UyfqVN;EMRJ@mao`M){KwzaIiq5*%j5`n6^~t-wi&o!WRf?zzlhTUGv#31l zF{O#CFMB2B%9r+0@*x z0jeCVe=z>ry;SN1r{{&RG;m8tRzB2z~bV$4JZBc5l zZCRMy5sOImY7ta|@&Hv1);AdcZC;SgC*b~|x))-5`7bTHZ%$vH+VV=^nAXu)bCK*l zPjj+15`O!pJ4pAc>%W%jG;V%UWC3;9GmSq(v?E%PAON%TXNXXcV*6E z?}!FWHAqWq4;9T*r4vNDDms^}U3tFUuCbV|_&@)*LH2wXoF1(I-~IfqK1*V4U`RYo zTnK9;v#fv!g(*(gsuN9SUo4&s-q~=vywZ%=L<~F0;zN`~zZ*bVXaA!J1i=J|0 zF17k8>Sn(@w_50zv)|e`J1G}MNrz7s0F^(W$`73v@OxxP`ayLswfCp*8{!+(-h2}! zLb=THE!I34mt))c2iBsm$co5*I+O>f^26>0!@D-}{Q8?vt!rsbbky2U|MmPrL1;8| zhEZtr(zEPNfmaWXOh`D8$=+|U%xba@F|*o|1BfqLvK{FJCp~g^26o@*?aV0V&9)E1k+;D14D>wdszLyEMKdN~F+aHXfJfXUmg;#W`MwM8~ZB?}2wQ>yT zgGxTBYq2akCH92hJ!L0R1?2&%9P0T>@c9?8eGVFf?>90!-o^~Quw&x7{A}%k>3aiT z>G773BZXToEPWx$S7L4NyygEe;4go*LV$D#Pr4=*+4To5Zbxx3e7Uyy15??`}pWKx!TBb^NUp7^>N;sC6jqG=M$<`-{=|{-9z}Mjt$2` zd4MWEY+gVg$ofHbFPN3FbC>y|8%13kW3JwFtW@@@AUsCO=H-bIuX9~on;gmmRQX}| zB1_0ouHI0`fp>?toLiW82J{5RsP3gbh30w*k3_o)=Iv|@#WNqxS#Rq#>vP(sKcw%a z&vm7Q@&HwS*u8)rpz;l>dr|x}N$F*)y(A%Ri_xZbR^^IgP`6(X0~v85i~FTTLKi3x zQ00fs3$pnH^n~hOcJDHuxEZIg!`5Av(-9maFsY+=!@SUBepr3;Xp63A8k7g9^26o@ zY=1C@@`UPMh{nnV#lJ}3xF&Lwo1ypoG}!)NeZeu}=Xb&SLAB>GMV5SqF-~?wl`ymf zaH=Z*&-Gkz|Ka%G_VUcBT6Ad~Zv)-&!CdHCGbx;3kn;d_{GeKX*&T`dNypksB#+;U z8)tI=6zm1|g6RJNW-nZf>bNXy_2={PTY>_Wm#~f#2ihqoUNx;1ro!e*f;xWSa>Tw+ zEx#o7jAuIysFz>`A4`4nIc)&WFNoV8+2aG%ynJ*@P2aA&lSXGrWwUPYHUfKry&&q3 zQmJ-MQyHc|;2B(T+sM8eQ|MxOlqO#9EuH(~nwvze6?lIPSx?~ekl^tdY`Ahl5f3lR z$6QCmn{tx^EI(*WIL&vVa67zLOrBMyaL`q>UGHbk6L%RF&vg1Q0z`IC7w&5)>GaMVPv1r-Zm&-9aRwQp{9C-|%T5RIq1 z#en;F*t~$xA7ri{32&#yx|&{tvd-D?!{4SA5s!Tnif0%rA4O_jN@%>4wm702dmquK|Xt{DVUuJFIrk4TJP}^6#rBA5Ql~TqWFRF7Q zY?^06A!mU6;qvFrPwvV#n=6@MeL^koPnUyUwlrc%@PsI++>@}M+U{yBA?x8!@6X@9 zepEZ(U2Zm&!nb)`Rgn3jOrr1v73>8*-$iu3YbQY1r_{T!^z{3=_>S}R-mn+g3nDK) zr>u(Z*iOFP;)~qqT9wIyy}(`&d2uDe66PRgIAwmE%)5*}QDr+**E`%*MQRV{p``*9 z#xnT*I;iKp!SjhfJ)Q>NUtI~3HSztnv??n0bCW~YP7NF%aS({^k3A}5z9O>ZoWFX( z9o(O_PKV6L4Qm$IUAY=zO{_&=IjWDR&-3v#482!A_b{=aMl>}E!)SKytw3H7ySQW- z_t&x;Ukp&ez%w3J)Q=iZ(_GWFIeL|}RTPVKsIP3-Xg2>Ctc-*;#HvPa1UBeqbD|JdG^vwy) zmo)jMxPmia;|M3wTk$pT#;1G%V-dK3~$dt9#aV`S6<;nm{ z#gDGvv|h=A`*$hcy7}DXu_-Es2K}RN8_Tf=@-;0YCfnbABi}GPw#N@nkLu%Tf_Jw& z)}lV`DA^8ei(I}gA#wgm!G0mm+w%6XI9|zuwZra(@#_Q5v)sD@UotukY$R%K%AH-= zsI2dg*9 zYR4w*MP7mVr$!MwXA0 zmz1-PUKzeIkLB5Yi+xU7k5=oE%!mK^zZ$BKr$y7Ey|46#tWH`!)5ja?5QWcQ;PV$m z=P!(vW5(}(_E};-o(V}{@PnV<1;1Z+z!=q@XZX6w6RdsK&i(S>JZ-9O)&G3Y8_dse zj9mUfH80c`dHOgi`!2=0*4#)@f2RTWN62}AI(|^iO9hcd!=6oy?MvzNcg4Pbf%~Ha z_CKH>RP$ngn`mHiK*!%L8qF&EJmpz9zrgtg(fRJ_M_bUUSKbX zya=9dd$0NK`z;;jRZev`_C2qI+vBdaF+mJJsuou`1A}?>InkrP7 zwi+I7X)1g-Uq^$zz+Mn}=?D(6=3zO?fRm!!60CWu9`*uzLF8qk>Qze2%x7UcDtaBB zIeRJC3+x4v7jq&;{>#4k#F6-S44iJ4{m=hB!RrZdjGQM_yZ$0t?Q5*}IMfO4^IeID zkDMvs{DPbZsN)CKyeKbk74GCc4qz=|#F~>NZ-l+TUJ&(1Q})hx*i9TVp43*0*hzYr z!d_r6h`h}1+5dEr)~yens(v)%xULI(fxRH|^7`_+OPI#lHTpCBlXtI7Zo*z*FNnN+ zw!EDAi2BTl68;Ct)m!xTuou`1A}`c)wc!TvP%*60((K^Me{brTw*Ea z#hN^{qN=nJ6W9yv1(6r#_uqW*vFn~xSlacEU-sgFy}(`&d9illZ#{mbd1WQ(O6L-b z-yG}(_JYXEMW)FQy_EO4^~}HhG2_a zAX3r+`hj}C9{m3v-U;U-#=_*zl;nKsuW7yi^S!27t(eKsR_8#2jnxq!QKBc{@}chM zL6w8+U$(y46wxP|WX5L8d6JH46HR-0Exi=)bpxNn?nQk+b|&y!WPgz@HSXHNqm&NpXR|p(RJ{gu0wi2P z)mpzhzqHAz)UO8CtY&$q<}AgXZ9b?EaQ@H{ho^*$!Saf7jrTUs+@<1r9+u#;9-u)- zJRBuNY2-ml%d|R%Rnh;Tn5+1qW70eD`-tH3pvt8R>x-F6LsKtohrR429d#BwCA86X z1Xm;(%i&aeiyF^i_d=wZYhp?efv@__^CtOI89#;ROsn}!-K-Z>iC;Ppy-7XnUcm3q zfZzZ8>Mrntt@g`m>Bo<4+z$rS!S6YMUZBd)g>0@~lwmDPesVDUR>*3^4XB?ZOW11w6jN`lr#L z_p%b3@snhAvI&)u!vM<<8jo~~b;_Vy@*Oc+7}b=HQh!}stywm>5;c?e&Yx7DC?B_4 z=a%XE<(pdS?v;;1$n7O}{!V*M5#x)Ke>b z{W+5OUDf>k)33Y0?~(oL>m%Ut`MZ}7t`Ce)Z?_Bcu!IhH<}`g~RV(0c^cmqfb(QdjG)fgNnib zWoh#qrN(>HmR1*F*Q(efU<~C2T>h`lM}N9L1NinV!l&%G$M_i&vtm1QK`)>uus*;T z)x2yUJ95(JslKjQ^>nP)l>m-e=jV8F`G9qNA2ka*FM%WJA1M`SDxL^*6=LIZW|hj`OfP*LiK#5sFm) zxRWMPyhQ}HJ;&?vhM6pio^;-@FYT`nn>y^{BkuAs0tJhmgfwyI@#CG2qflPJ`Z;KR z`P;l`2x)ze%Hzr4+Q>G*>%;5@y?~y;`T%28^HNN6kuU5i<(IeeIeVH58gjUdw){!! zJ&O*#(F;szI@-TGzkt_Y{&atIzl-K>|CSfQq&n6vv;I-vmS^*ewl+!+J+Owwyld|C zz6%v1kG+|;nRZ<9?wyE%2+#)@`|0S$_6fe8k>E429+WDmIPCeQm9Eh-W+DD(ShFC< z>jc9}C@)}r95lcDZC;WKj!Sn&hZ9=3iI=QB+i?KBfS$nm0Ap11^3CGmv6tQ$y(ZfX zb65B|c}VREW84y^nKDE2*^iOf905Im$3IlLHIG@wu(*Ps62ta<^K2y-Sf7ou^a4SW zRK)28>6kL|ZNL2f5xBnJ9TNl_&7Dfi_4GP2lW<{YN;D?lt-4R}ZotX7PdV0cY>J0H zzl?I|kdj*A-^4g?D{LaaIuub9As@5aCSl|HQdF3Es}9NoR5|PgwY>1@yo$_nwvS<) zWXue+_8tY>|92mcsJ?tuyS_WW)aM{gZKZPJ2`*>)x9i7?SHkr@KG;!f>EFz_$4Z(E zp6`O~3-(V*EAK7U6wT&Oa+A{8Zk65wrw3#3c`2~`pfNZ;pFR?#l2kjTSKV}CNRd&t zHRj2AZ7i33JdO(5sTN|vC%NY-h|vZFRvMz{tb5J4^N?M?yz9GY_3c%qh^jCtt(ZKE z%CjC*nz;J1S5mHgX&*IiJna3E%1=4tY}TEu4)(6rNHv`(#!Bnc*|Xd`C;e!~ZZHNj z{A*r7AISPabuZ`9+tXE7S=JouywSDvni(I+e2lzx>8$4b^bwMQ2A+(6-3$0XV$c&9 zgI7?IntFv>rN?G$6IpP^NWj?Gkt$^_I|{pm1pxkUAkbt{@1;L9-#6K=mpjK zqjtCK8@^rY&8lC_be9F*@7~*@)L`4PFu5ZZk?PeVsPwOSK{lU&o>1M(GA-?!qV@Ds zgUza0PaRfGHP&1td(YF{tddXm#f&v3``5gH?GMIKo>1M(c)PYqRTAl-TG7)Y3w9Dc zf=E|I=aRK6&$rt(7Sk0S4(bIQKY{iCyPx+4-w)t5*i1NfN;Tl-lJ*ZP9qCleOiL!& z{fBe~spB#A_)deksqBUrQG@7$3=101Wn0#%fH&bb2&69CCww-@qE&7VAi0r5T>s~OtYa`FEzX{d4 zmexc^t^M?0&o6==slHNtyLa_(Xya6-HH1z`IFQNSZ?Md2vJNq{N4xy5d-)$95cvkx z^NY>=@rb#RX@%nP)Q!@Mg~Y;qrEOFC&;7q;WPIq2N_PL(ydaxTKu@Udg<^Z(O7@)E z#g_q!{lt_#PMCUM+J?s;n=?0@8q>;+=lj>Zfb9>)P@YiTi}}aE@gHboq)!(r6T+qP zOoB>2scW$;Iwkgm-#uj~f%N~U!TU$x{Ts0U!RKGV@`J|U`*K@ftY~~PKQ2$N5Hx)+ z8K)bFxb`92OM&7(xmO+5QCZ?UZ}~qA_{(3d5Fj1GldefccKv~zBt+4|Mq#%!KZVE) zZzR5N+xpfzgm&(_LbD9FZtjP}K0X>?bIe*GWKznw>EcLuYvhZW^9j|eZ*+}}?jd|r z$A)7MnqLl^7tjZ?eo)=Za+Yum)@SK9K^}pAlCw!%%3c+O$4J?{JTc;Ru8V7v|Lb04 z2|3Eu8|pal?$DNV3-iu^p1>H@y<8nv@9%Pp!|nGdI&sp%FT|YnwqCP7r)~N}`d<26 zSIU3g3+MqV-=Mk||4pH3S+6I(j$E3r*&S)i;l}=z6C8YhJ+i2V*EtsP5%zy3#z( z`zH#qU)eRh%597od_Imdat*&(4gK*}H(xRrJfDYpUK6}ulqTA?wW{Cvn1{~91ievi z9ISumHxZ1K+s(_0O2<5j+^bc=@`J`{ih9`&M|Sbj@@Wkoobz7sjlcMgM|@c67~8OR z<#W6@2?Y4E7WFGm53<+9cJh4Dgk|uv-o)W3;7)YAHu2Zjj|GSyNnLv{)YpB}+9Z&6 z2-)rVo;%?>=+UkDB>5rbT4s%q#)W5u1;+Zy~J0a=BIylkD2L9=Dd&QS3=ke>;=*HrJ7eKI6XG0 z-@4s#B%LhaXM(-JUJ!X1%54!m9lqskAFli$>C%J<>;?9M$V;2;&yGGNe*8!GT9TQ? zg-T#AuopyL__{GvynD;EzsD6$jSA4S!d_r6h`cZ@`b`h~2s=|)a!HbQ#54f*0((K^ z<;-wp?Zh<|rEZU;?9M$P3mn3$H=ZYoY#2b)GmB z58GicuopyL3Qf}XcG3BRY&3JTZO#n~!d_r6h`dDPypC+O!oS`XF-f12E298=fxRH| zV)A&gJMcNPG}}lT?R2!j4cH6p1(6qvQ#E4U%*8@4&cp==v$EE}USKbXybvpv);;?9M$O{cVWBM&C9Ud07sM3L~ z(rMTW>;;h*UYj)B>u8E>Z4XQcxTw5;z+PZ4h`ij2A@--aBsNG*ikD%-MeqXl0((K^ zMaEUq>J8816Us!pY<5HQ@~{`!3nDMAYCiWL=$95)=gE>}=X0aOUSKbXyrh&Y;NAH7 zw*GB{m5gJH!W8TU_JYWZO_TId>tzoaGo@#lC4>y{^?R_=NO`IZ}4|*|s zCDl~Kgq!g5bqDl;>hG)7Pdwi=9UHD?31^9vp23QN`y;qNLew95w_+%N-R+n%Q6Bi{ z^*oIM_5yoBa_r6`vwwWo|WneF`7erp%tdy20ucy8lBEw$5ZjG~t zy}(`&c?oRHAb9zeqqn#vwIh3{hy?ZmdqL!dFEt+TJuSH))73{m&b+?q1bczKAo3F6 z>$JV+yG9wDRcY#BJCOx@fxRH|VscUvjpml$vC)JcG2@Ece6SbT3nDLk4yrFM8ZqLr zTpm1g!;_*1_5yoBr22O5DXQR0tTJT=+$`;l%u6C&vqh_Ff06xNL=WC^`(7TG7sWc+Q@p+XGyFL42h?S3t^3zxJvupgjJ0yOWORqBV_RwMXAo$QYCMV#2Z%Ggj1)c^!Iq2ys@B@ zP;_}-Q@q93s3Ru)qGID+mUkbEv8e+_N%347aS5a4%GG?CwRxLf224Y(PeNT>>Rz!j zMmb}w&2UF>UOh!tL_L?zj|TtaCdS^aufYFFK`rl3mxKR5B2nH-irv0>71Mh3EV>k1 zSZEC%5%!BU6&XqnG5aN}s&2F(t%+@`AG0OhyA^q1yWsz8p#1!4FW~>s*lo}Y7ClsH ziThextGPxBUvR8_wwEB3S;Cz|TOY-72oxYT@Eq`nyi(zG7o^yp0)p zVaLRE`Pte7)At6T7qEVy{QPMzm*TCP&rKeiqGD*!Kl-+@JaZ!Q#*+d{;sm$v%6G!s zzZ-7tKDJNp{z1|n`FzQyuU5+2Z_HzPcHd&3lh&ivdL;89 z3Y;GFf@=9?VrSBZw|7vmvYK_UT1D*)lg@iinMMjL+N41Y0g;jp@c(LH{eWKVPM(>Y zP}{^ETtYLSl&2=ZJKgw zu;&*ZvZHf1i+!#w)S#hnSZmw;X)j>?A2j~cUUY?36=@n`H+!`7QoPpnYc##cFP*oQ67{_gzJCZ|%r8d$TM<(-!6cs;AVpAd!{VkCq-{h zR`VFjD}wD0p8wEj(0f^l&G<>OI@yHE$YFrfp9|Ssy(q(4mdKglL#@=eHD^j%!m#rU zhm%oPmfl&W@UVON{BwhAj*FNtoP4aJ5XYfr6yHYRR*K`hJOhk(JUHjric@%as9AA2KmY{L6A=L#Hz4!f639@=_r z^yM_FBP5^X9Y2yojgP_lfn&ti_fYM9*sw-fkD>VF?}Z%xU_}s#qEoz_(`+K4r%}#?P3T72BB$wLF(aZQoMj z?RBRCY`t2ePf~w+|Dd)PEC;Xe5|1mRUEz{p;5uU=&9~m+hpZQH`3KEUf4V+FFE(S= zc>3ij0=AS^LozO!z8kHn5`z9g7SAusq>UUK#Rc~tj8V2$0QfWV2MqB=*^`1qC-slCUG#%~VonOH5^q=mJ zTAs}>+S({R^uQVx^RBtmd%uh3ZvU1S!K6CYF0=ko-{gYh(w))agcfe%C2P-i96%pn z?5Cp}+b8&XMuN}8dQhsM;;`qJKsv>f@}mA^GJO%5G%IrW$a(?m2ig4cw|jXPDnuT8 zGi@{NxZ>SA5d#qm$DN3YKGL?~B{;aRdsOOx`wzyb=0({*psN~%NQ0{@Ka*go^PJ5`aNqw%lrDkZji z#p5QZm7A?IT7nmOpyO*@L2H6u*eL>gj z={8I69^1}6PeF_}Ah6O9MQ7b>#+`?1UJ^?CX?P=QE6pCt=iOb9`k&`-p*%p9n@O0e z)XT1)db(?(Y*BgT1DLN5yBA%?P6`g6{+$A^lLNbs61TzU$573SUXOh@iyJ0Qit{}7 z`zt~eQ0obwK+BHr-f1~2D4P-q)O@D%k{-=R|NQe8354NjA=nGWyVn&d)LLY!*+xMu& zL;prp40wL_r@esN1Jz#0mUCY|zTND2sW;Bkirp|{PaWC$!Rb+bd=yb2>(qEuviti& zp(fjd=u6=7fa+er|DA&Ek8F(Ua9tK0X4Ur^8KUH^hhFXOn0c|5{{z*%=tgg7ZFkcMv$cn_Yy&X@13{&9|rv8uT}_<4&h1Hq@uc)ZA|u~#fGbu@s&p~ ztL@dEgYA!OjOybf`EqU--Afm~1xN4DHL{Q@>?#@kmX z#`=<;qJciZ7}?|Ppws{E@$|30pM>h;qwO+k=2^0;gqTwl-#@A?zFERLP8?{boOso= zR+tK#D+$%Th|f0*FGx*kn2_y>4oti9V*#t zz0ql??xpoQLjXPtlL_eq51ZqYtfL3@g6iWV<-LR!6&7qy{xQBsMqNa!;QQpL?q#~U ziZ<%3am|;_8#>x?P0PzR5v#FH<&K zceW(rWxqE+W-%a6<3FeuRPT>&udx-!pIsune6J;x&QXUT{MF@`Oy1;$O&c+L+V?EQ zP~8h&s5UH2>m*dO`L6h-mx@wkfW{Ec;1sOROJ(TQ4zG#7`Yhs*TX> z;?wr>iAHrVH{FGYx~s`PcMol#Yc^)Ypg6dw}*sl0K9ysfLP%o(7AAKoVl|a8FO4U+7 zNAP7m9gnw;=kya&QJvI0!m>}-!)^Yw7pV3F-#3Mt{&$yO{;6tpG~mZi{By}hGT%Bb zf!B`?`*_+NUsWu-^5ccf52G>)DODzi&CBl|ZzJnVvf%N>A4PJNq4jws8aJ1>!Q<_) zdpS1{j$u(i=3HUSP9_%B3pmIdwTHsuHU^rsO6)& z7f~DvM+=E#xu5T)iQ_W7et6itfcYM(J%4vOs(TsNjmv-SBe#<1;zfV2?^^wcNww{# zZ@B6~6W^N1m-OiV_WT0AFZH`UKrJ8D&tIZVAGP+ZmCEh3RM0z`oKHAxUj8=EsP3gJ z?y4Og!+q1VOg8_%{#L_^ZRJyuYPFcp7dN>c1?HChZS4Ub-{AA3VEKO?gU{E2`R}lw z?>cm);df-%PHPU_RkO{#6ZUnlwOnyBmn|rR?eq?hTJqoS1^oWVf9(TYAC#9_u4niq z>WtFYDs1E4*RW=Q^Fzgd`ukE}lH{DEK8QJX?mdb;zjd<`hXW12NJ9Bl6^>wVg=ozG zJnsXwKmT<(_&(-;y?$_gP+ksue&KrEFiv1)@O0;~a|bD}m#%!IzbxmzXO(XC<Y1&g{=YvkKibnPh1$N1uTM;Nh4Q^FbduDu%8kQ+XISrA>y>hXj3SBuvE`2Fc$?S(ak zuQSVtV&s-vXKg-llU>I{+NIYR7cXJj<=(p!MrC$TFJ&cxubLRHeA&G9y;LUqX)CHd zUniOwGA7-pH?hz5P+fL4#3k!;@lPL}3wQYY&qbiy(Esu0r4HJD|MmQpIX_rG4u`E! z<@B(HslRpuzrTCf`y;6zW{Xdf+#bf?*~2&Zs(Xd^v*AG6O|+KEe)~Oxry=xzxiEW9On}jq|n47e#U#+=wOA5?zQoxkO+N;y&(5Jcn|)^rWa(@ zd9j^i6jvKqM8W)0sS})@7sArOEgf0;Q2Uh!vOfRxc-l0Tiihe-^=DPIGKY~l*NGQq z9;#TAMdps5B*q&W;vT_Xkn=LT)h3p7_xj0Xfs12v3dQlD7bop;R|cZC(#r&LO-ePf zd56tQ-${)3_luUyg(_JCdv`}vC?fyR@iNDitg;gpB==%r!{BQ=#ZI3X;H(p~zU&FUhs7v#LqKiHYH zau`#)bjJU?0JFgfRP)00(DJCs9WvWU4bnuH$Jz~+B&0FuT^P5Tu71v0%37L-y&&hs zhvLz@INt|sv9AiK-#=MD3VJ#0=Py1~#FF4Xw0*o{AR99#;wM z<=1*S?B~0wxnr0MuTwAaH9Juqw_<67$4AKd0I#<}jgJm{fAsOG^#k+ksYj(Gd+$8G z-b>6`%D0zd?@jmr*gNlVtiS({%gV^g%1kPRkWnamuS7zTkiE$$WTa(B$Veh1Gh~l4 zl8}*6DI+43WTuFI|8|}4b-Azmdh@CG{X2i2>wO=0o%iE@zMikwS#5EB1eXVGT%f*S z$B!rHkKhM4Di=v=|)Oboyk+Xq!L{-s4v*@gDD=NotKAE zZVRq>J3ndTYfAM=7k*4#u#5NaOf}@LFnDhM^@IZCWpjB!yMLiFUcRLBeJo;nsz~+R zUN0XKt-7>%Lv5~$FU#zD!zcGZUa;dO^9)lcg{|=p?bH55L}`Ivm?lD{N~v3kzPvhg zYG6;R3fg%ox0=Dj_n*^U^h}N@y?ZieD2AIYI&}3B?b&)Gi;gQ6kQeND!4!|s&Py`8 zXCjp?ZLk`#X`sP!@F$p0W5);RcT=l~7K7t`g|&TYPVF%uZoswt=;Hm8K`rjQ{dzBE ztK$4BLVp+UeIx78V_k4-NNL3Orwr5=?D*m6IqG+l^6=91lWw-~v12_TFKG9>KZ5b2 zo(b?1Hh!Y>(~xGIDi%}ZlB+k}L1w;C6MHzV7V?4}FM>sV9o@0gw^i#tom-c6a>6xU zD0)~4_=hW(_dQ+me5Q1*gkE^Hd(JH-WQtO?j>e~54f28=FSxER$v-T1rWnUbJ#zZc z{%qe|fMIPCZ^20ibKavCWVT_1|NMS?&_Dd`Hm>tRIF8r&OtAOzeTnA&^8yF(NI9keT+9&z@tCx-`hm5?ze# zs{?4(imjCSdgxE&EJ1z2jvq|=g7*AqxpW#% zxIb^5<6q|mybliiz5mzk%3C6w7eZ1}3rw>2=VX-K!nOVOF1Kd8Ixil-a5k#&v*R4e zs-=h3t|=9wmM^qjncuta{PX*d%mi5G9j!%W2cBxSg(Ni)|JQtg-v{!7Yv*}X($5<* zNOD@AS-IU5Uwcuo!-+kUhH80x4RyA$l5V5@zpgJ=4Ci*MkddW$o9Rk;(J#}1@9)2E zgS_CHzF4d6qzf4@+@eZ@v8~0#O;s;8XTsz+5omFnmc|iQH^Aa@{>r^V~o*Fj5 zH?g3xV)kG20e&CI3$E#l?ttUX^&KkFQPFntB`xa?qnY@Z=`|P$h8CYtTu&HX``3B7 zOLi%>EmWT@-X|k4t!F?Fe1HFS8`pV>lry)9T+%!^U2;=*z?*sFnhz!?~j>Ad*d!oiuEu(lUpRy*ztqw zycERkTHwEjrDq_U5Jv z+pmSjorM)(K25gU=^;l}T+5xf45qIM?Sa_-`~G%5{W9YXEiLzhkl1L=g}QTVkI;7i z5m;}>cKkQ{^SI8-SkOz^=q{6o?|-c-);6aeg6Df<7k@zB0!hZaCa>4M&AL%Lb10u+ z2wX3P_WNuOg)HgiEKqvRajAVYpaW|eKcKRI`F=o`VI3HS&$dBuiqUylfz^+b#1jI?3`49 zg<(>OhE6;FZTqPoO&T}rohN=leZfv&@~-7&?@j7v(27~sC7LTw0C_=sJo46Qe)0CV zx=A+PG4TVeig$*ki=wB^-1?arCAe>i=e>ZuV8@F{$1OABm`3iIz`Itb_k1hGHD1OB z9kiu|Mr!G4dsPXKTWo*hpdN~!9j_@UJuH2)l?G& zJ3c@^k4az9&PztP#!_^_$=A}YcL&?{%y^dHC~ha>&>SKzebU5hHbV{d1v`E)-A{t{ z{c8JyuZR44B-uG)*efspEv^CHuZA5TpuR9YO44g)yxkERFwlAPwnRLx`4`7~Oe)0- z!J+ z4frO{?@ZUkZ*sKzF4#p$w_yGOO;b5t(v&16SrpIIF^of-|fxMtyU-pdj z{GPd;_~JuRMnkgwVj#?qww4#P=SLoISaOO)JGI`rt?cHsQrQR33qr=rah7!6_HzGj zAsOFt*Pf6ApuV8JzI*BSWV3~+QQB#i`*n%<`CV{6U~73ndpuftl~mIZUbuHmTZgds z+>8>ue;OGtW+&En4)2{lntkgKS7~c*7pO02=cV*VkzYm2nV^OrmIvJpvvX2ING}LT zxEj*vm3isr2`0n*2s?go{d{lr=W0)yopZ%agI=5;jI5r4`80NXfceqBg+f6)`R(b~ z>!?fKY9E^f_2tR+{Th`-t8E`u$aAeOR|oc;1c=F7qJNuhtijvrjVFYCgv4#!P`{o}nq@Z4J!>;2$-BX)d%{-wxO*29vE zaj9|ttka;dS_iJ_3-zn&y#n+XNL`JUI|*sdGQ)U;jF;Gv>AX-p#n`Sgz?2W`R$ z&gWjPW)(t9y*kFEyo!)%<*?2TI>C&D!vC{(+$~n;?4i41HA11Gz6;*A(D^UnUJ1_AL zZ>3Wu_V3)8V$|pIpz{pm1v@@KJ*(6|l5Ty;;8dr@_K?sQmubLwg!cOGgvsT~BegBA zRL_@*&Ue>H!SxKtcmeeVprU$El?^e@lksf8U$hzc%8a_|W8tBoJnD=^bG$=LOw ze_?-*t~d+Y*T3+%F3Rt=KCg23^ZksVI>(2Q7i7G6cgi2hsJraax82f9hebRHj7Mnq zFXH3FBcfj~?xgCTdm>gLo-t%uB<>aLUqx>}9a%)SDhA^bcKqN)>!%%j>`)acrD!cR z9ZC)If_8l|p(;GX_R&K9MnBz`&$%vMsS9@T{++3Y+!Y4T&A*;dfV^PGOVB&k2*YIG zndZ>0r)#)Pl@5j4%%J0(trK zKE8?Ki)L|GPcn>`2p`JI%^iM;-~8)k+nvNCXFLe`ju5UuUa;c@^e=U-ql`kFGy)7E zdc+h<#H?udFMcAW6mLJZgeh<+_)t0$T0vg0;{(i(aGe*?wsyv_F8pH-H?R1+Hy6AU zwJ~Nkqj5eyN*<_YPd5tv3zp|K&%K>|T)3AY#LJ8~GF+EP2J|mz_q#URs-vwN$Vsy< zS>F?{2DxXVvR)lN3n8{}9^AWe+sx0g~ZZUnf z3i=o9_yGOOS{cznqqj{8OEkxJ9-vI~t{N71Ip#w^;L>SwX3EJ`1?_(KhMsou!n(q~ z?k3;2nZ$iCKf=I=vV+WqeOyFk+7Ps+@XxR2$2Y4@KIday26BuLG=(iC-1=YBprj7Qkz?pnEp*vpdU`4_RKD%O`#a{R=W)c$2&&wE1kmwmo~VMEq6yE&ba1x`^jW!i=#5H?*2_;`bgUP z1@ybv@d4&XKkGFlDTfX`@{wi9eqHlURkQuAmul;pN8q!ksYjM1!_e+`U$1FD=Hq*F znpuNxkb<(0znMW&ct%Q@lq5Me)k3Br73vFi{1nk@3C%FiR5&>2xe{LdWAEPTeiE&^ zw0T2qu8S|r?0Ul|_rQ3Bo!+>F`?LD&FxXl3Nn7c~qGJi@chRmddiO|fga+_z<5G!< zJEkV}xpe@SURauq0=GapBbI?%ysxPBCi}M6cO2m0XXZofpnuA2aUO z`!m&Xl?O{lE$)K6AmatRuN<78MmsOxMnY5EyU$9>gaw+A$cem#`x}w*a!&c(d*!wM z^Oo1b6jyuAmhc+HS6l< zXvdv*M9FyWN~hc7n!Xq%)bM#Jnh1Fr+1S!%rM`r`Amb$_`?x-L&3S>hTuM*oBFY$W zEkEK>-BQgNLTT`xww(uRHqVSkEEJ&SPc~ zCSh}(j;FMUz8@>D#Gfsp=}jtVJED$jyo`#*7}zK{RyaE*7PR=+>AouOtL48qI&IOM z|1M_N!CdhDW81z`mH5bC;?Gcs-g$&hD5XOp9y0SYMrq<&mzZEpg^o?0j^U+C?bm+6W72-=T_+2K!>=ov`Ht z{Ji;X?VJn^PL&R!Cp}B#UwXmy&}ip{TTk5hgl9kTnUUiiQp^u(1Nd~rditFWT~)c5 zLOjIGk@8|GWSac;nDS*+_La%HPsIY@_~Kd{Tn`1#9~F%B?|HaHSK(k#;@_@KW{U0q zA8CBY_WQu~-Z8!S+~;NVv)pg^n~lVLZ#78wY17?46qHgh|54DVdLHtEo&UvkUN|rR z-mxBa~&Tmxnkca3fj7N}{jrOZKO|-DLg?`hjW$5>A6TXoQ z;}PU#BVN?k6wls2u$t1u*V+)QsT%_05#(hfUc?EKO4r$DS*5C7XiQWG!(cpuylliv zs+x5@FUy|C=||4(NQ`{Q3gZ#vWg}kRdP%zSJ^Z8>aj&Q%^m#<)2uC{0X%Ug5B^l4d z^`9#b{_T9)|7>(sB}4It@edqH-`#HVsp&cv%2}1(xpI`PgIM}#H<+LN?KX?&E?d5} z-I<(h!_eiT;b$I@|u}bjJn#}5I_gAg^ZL+TnOyqwi;Onoqz5Ls} zusnKy?~re6bJKQ?Rh^q>o6*M0S@TS<`^~49$eo$4m$zlU1@moe`TpDW-Lzv_B26zy zw-Ncg$T?$8EW~9)pgg{>x5PJfS!HbLH|yW#1^=eRx5LRYp+A|0ZwZrMk3btQ)8yWi z!)`Q3qt4#EVMbb(gLZxS;>|dldhv5>vYcwJ)v$e=`0jV+`_!E(EmNZF?%Qn3``f$( zCkTtA9`=nU(zbgbN^+kNZM>B5mnr5xpgzS)^K!iQOBCw$Mf7oInpdvxn;&wXFBV#u z**Z--Z<{YYNdMJ4ENVvA``6=<=Tl*y?T%ANG6hc7AA2}ek2YQo$u0V~O!W!6vNEJ6wRUWD3pvdmAu+U`&Flvc%rnwsvz|rNc&?uzTo`yNPXqWpAij#_n%qq=FA*=>-6dd2mMOjtcoh5 z2c=sH;`Mdd{`VD68dR3LW~*?>!Gpzy@K&bzk9jlPU~;& z!^GY%&Q?nM&ir(q_#zZr$@QG4kB=u?>TmN>H*3Xov@}9?mtv)s!keC9$jjg5C4n&f z;^%Yw5(y zWZ?~Mg}nS-Ui5Uo`q`*6N47;ziAC=Z>HgPv*;eb_Fik%W;SvQG#A`W9 z4e-Lj^)KLj0k;3&zdawI*nH6Cp>@(Y{X@-`UE zs2M?Cu;b-<@}*zfH54Us895npZq7Udc|rSpK$aN6DW@Bkda{cN-RIcaZJ#=pNX`tB zEp2nip18VDM+14mj+dA)%H>CNM;7=Ro{LQ$<7)zWL3=zhwG#VsF4THkBE5n2Gvb+J zzxt!rSPwK%Dv>vkMwvX=3wgngm%|6uS=xPT=Y+iuA57Co*o|wv1h&*mJoTk=@2uGI z(r+i0K{WEv%wb$=u%;%e2=am*FEO{e zV%qondB;|)D@zLC9mF+WvR4UO-k4T3GdOXN(u5r)gZE8f#|Nkf{On&VN=+j@4>w61 zKBh2KjcdFdt4ts%t)mgtXr6Pf9TTet&;Nw_f*n6`6rZUU_g-V?!h6{8llsAaT;nBm zOd;*%5=VHtsqnP5pU!u9A0KvnfckPU<|J)aFkK(s9Y5_uK4+akUeI2Dxlz%^`SEve zwu7v(x2bC^)9>QFZ)6>MtP5@pDUI0vl!5w!9Y4NpVxIVYqEshlTs0r4m3HGAFH>E$ zv~qKc)prkdC!QNIQgJc1uMVJDE4EVR>!Cl9vjlm;j+bOdE6JS3!)`4^bVnY`aZiA} zpgli&H)6ZGuPkRaVem)5a_{RBc)vY%e1P#tl_SxyDrL+Knco`vsNkPpl4%%E=P1+GZ#YKs5%K;;a6ECn?dtmF#gPGD(~LkmnpfL| zW*~|?jpzw+UqZ&D-~S&;`wakUtcg& zQdarEdL4Frfb{|H*H;(qxqf}YBUnFrMRlnch91YVy>I*QTmtp)r~a+ z0D z4FxJAX}p2Sy!%##G~>YM|8*NvJVLwQW%;a=NocfwKEm_cgY*K&Uw@mI|N8xI_V;1p z1?_%!d$hyDgE~qKQjWROcXmDHhP=Rdv{5`_(6MIVP{?1p_RiUihbmhe@&b9;h!@V9 zT~)&Ge##Ow(+}0;^EyLbATJy7a+K4ZwlRV}SJF1&t6uoNBb!~{#n$g`wx9T~{~lgi z$2F!ZFXQ(Kt}E{-u8JMI9&W#Oli@162HUPas+r4Z_b<*4tMALbMg|T&`?~G+Nztp2 z7i9WUEJLh+X*{JdO}^>%xgm3fA&<^drNQ)plMm*vM)Gs+L_06~6-=e$it4hjwDlDtMteT3uMitM$;`wg zE70%jOWPL+c|pdDPzdjWcpWc&N>FKsdmQg>)34+?d@mgpR9_xbNz)Z-Lc6}i7Ete{ zXyCdMs8Arz9aH5Cc|pd@Lm}z4nQVXRbV`Lc6}a zrsl4!xf~qru_Rl6Wy#yP-=xHP{2QrO;PAI6v@@p=-&elXe$yb`r%iYJP*6(2{6|5b z>iMnyK1_e#XidXnyZ?_ha^W~*`EN~U!1WCJJTVmkLD9@nK?j1Fc*p87{XOvc-#%Ze z-@@vX?vm$os}GOACk?31Zua`R|8Myb_3Bf9FNcO3Au7iPifP``tqtt;)SVtO3S zCktQhX=@Vvt+oANx=2!TBX@|2_Zpc!K(Jm!d&J)H?8dQswm;ycfT|NRRN_ zkA`@!5SQ>P*z})02zkNI|Kd6?5<)$%${ICul?xvC1{c*sP5BZ?-RiW^ zfxJLo`cCZV%TT%4$)*%=$V4icGY9@q7y@9GcryX4lxhLTrW)f0n>&WfdW7k!}>o5;Z)}hoTn`z!_d)FW@ke5Gs*<})X%A0^| z^!Pq)m-lUfO^2$4_Lb8}>c*#2Wj*OAfE5Sp@7+XFYW{<>-KDWGmLbA2zkMd7hKPe@)R|$8pdQjQ&}S@vvt3!lVy^y{%f0Ppp|yoeJkO&haoT6@dD02 zgX^Wh=h)Vh{_FV_aDKWzlI^61^%wu4VISku8Kuu}q;>^2Sdd?8y)nXeCrw@%@&bAJ z)4z<8+tDAGV{>-!eK$L%oy^`CN%O&#^I6}A`JLTPq8jo@c?l2I9WMSvlS%2h^Iem( zfdi)B)6ZSUWJi~0D*6IRWj`(Mo51w>e{H|LnyzD^oK@+aD@WNnh^3GI&;3V8^#N&r zOydbY2leI1IR&5kFyR)i;m-s@;w9Njzv3!aIgW%GJPjPAwW&sYUpcnCgehI-*Uk5N zb)BaA^@#K(Bkphkartt)yztZICT^8Wr`7m-uEoHmSTTnm2Hd0=|@5j`} zc09n(gZCd``o67x9+BZ%(s4M+e^1nSs$~?f3i$8E_WP0c$M*X`UUH=y&Gh`j-e0+C zNU}CxXLFvKCSqGFe&`eTsnnU2nMueCc77LpA0RJio1X@G343?7K$z*%1=55D*`vQ~ zEDVxwde>XHa|-2i$V^3L20~sSFMr0PS_L+-Kp6(A#LPrOd8NiWunl?HTwajI6Qun? z{lnA-^~Htixe;Ce=f`fhWV~aAt}uda$jj#Pg7$a>@_?z0iASW*vHkskpND=I8Q?OuOJIGd-%(Xq=i2OO=g$}8f7@d@&RZ2WP}zeM(k z4)yvexfhDjye5+?i{E|pv>0U|=dJqE+h2Ic)eImnke5H_r}@wK>kHpkOdn&QSU&08 z`0{U`r;2U88~psg9*@v=-XZ9B!TZcWKLhmz>dT+{0@hnVKZ7=2V19&*Z?Jv@>PysE ztW&9^durGK-^7B(iW%DdF63ovdAUn=DYY$BpDf-dBQULJKo9i4Xw#Q}-M@f-3;aD} zY9sBB>FcEYS4f);aX#h5tv;|3Y4n{a$e`pAHMkjEU$8V=msI7i!q0 z(Fpoq$P47hfqoYm- z_;|9V!1WD~7i8lP`WG;t1K$s(Hq!o>{yz8|tiJ?Ja)wa2hOhW^H4RtI5)B4>5YJ?#dlH)!)O|9U(^J1 zGI~(Dm1uzV7|07Uy#eD9+Ia!%bEBE~m+3Va35FJ*P+U(K{m<`L1N|%LzrZ&5d6-Wl z;~N}b(C>ohV?$mxcf3J;0r>{s52iNK{+Rwg_#EVggddOmp_E$ZW0J#H3MC`j;rbWI z%SPu*S$bIQno=QZ`9j;3`Mv9o1UNqc{R=XFa7|x2oY*sIsFt_aP-hz}={DMf^8=8V z&E*B{ewUl^h#CEK$XMqo^TPdk>l|=B12R6q_z&s}+Ia!%bKrau+VlnHN1Mw#=y$>U zNI-tj#tW?1Z7nbCgF6>?KQR!fayOPtUXs=T&nJVtARB*Ni$~!7FZ9Bz-E(d!Aybs9bu>QhYH+@B zYk5I?egxM4!8Y3b%fFro1$jJE$+ei}${fb?C7!xHY6SV*67D z-0ui^K{o!NzM$Rj`sbHq8phK(%Cz+xj*)z99{|>8LS7&*f9_W+35}lU^Np7I?#ZJz z`G8sk`WIw;;JSZlXD-~?!DLz+_)T%SS5o3LxSkj43o?FiEgl`r6Is7w=f&C<*GF)9 z(8dMwf{YJL`hs@<;=wwv^yx-QRh`LGyQC6bGsp|%Wuy53KK9RXpN`3k4*SIM)GeoE zgXh_yEgt>r^=kAeDvj33bNB7NUT`-41SYJ+=CMZbAqO{As|N6VRkZQ) zuj>oQH~4-qwUPG6^!LH%ATLrM2^n;(Mi#8kX6%tonqP+dNjCTQiEDn>ur`Ue;G}~& z?@*AP*yZ+!kgXEju^%m}&LirprQ&E|LFdiY} z2hPaL zf8Fn*U0+fc?Be}9Qw_N*44#{RJ)r=3L8d2Qet~Q8h@Vr4q_QhZGGsNo!`Q`s5w6FC zylmumn;9g9XQY%#Ns?nzEo2%}q2GnPY{birwP+73U83uf>y1KpsE>Sy^_Q*X1!=tv zX@4+YVrql+y3`QT3jz|ZhBSI*Ub=aL$#6XbH9|7ALId38|0-}Op!~j-gF0<`9e+X;j~)lcaiY{jz6yP5@#xTwTC5N-vf?t5Af9QtR{fSbEeW{Zduw??T0cSB zAI$eLwL!nzYem`6N9L$f|(g4e|u?va2fnEvNaz@)lpa zyzc62qtNee?s(&xzFgMTyVY^HYfMVS#IjE|vk>j;8K8gJT;4%_0r`jevbp08jxSRG zfwVsuZ!on%Uch({d4araRIj_GDyGC3?$Wayqa+j%l@anGWXD$oRpvc+~!@QdOaUZ9+LtEXK_=+9OxG(M-=T z?ERISh9qnAbv9_@1^QiNe1m=l^e>bH1&5D)k@LMMaZ`}JUHT)`m(3k-T+8M}*|}MF)m3>#e5fzT_`x-Ox#NB9y!oDnFQ$ z86RML!!=$se`yVnR#I$JPe=((rO|r@^#$^>Q9Szn?6>h;roQ#uUc0Kml5J8@Um!0V z@$&QdEo!nObPR5>#Ff^+j?bX|{1=!XZ7%O%K0RA^PL|xN^l|3B=6tEF-3(A)Hg~*n z&A-@+QFN%bf1auQE*#w?&E|EF+`_5hlI5=BG^`oC26);qKSIV2uJQ76uf@Yi>ye(H zBEd_o^YSTBUy$*E>-o|6_2J2m3+HApef`MM>X23!7L*wi(G$j8yhAV4uuG#6>I*V{ za7|wXjdrcnIh<*a^044DOkUT5`htuPT-TRv1hc6>PZ*fC1f_~x^K%}C`T}{`D4&iL zT0OC*ymmXbU#k3W#@?srsc9m%wc>|9ai2<^Ntu~MTRej6>o%8nFrRiZS@;;EEb`(& zVspjl^5dg$z0~H8H|Sr`zFz9C7U|J*gx9vOr#@gBJAcRr@&b9;C?1)0o3~yTVUB+% zG{}3E+-VT)`x{|>cXN3Md<8=L|Rmgf7tB`M3H-$lj`$P3#2OXtGn=K1j* zqGE^7nEbB)`ULWVj1Tblifg<`CWLv}bO+6koPVlM_PR+D@&b9;$nSC#51f6o)^VP= zbS&sL`{iE93*==ZUcN31UD4sPbu;RlWQo^%oDBW$*7AbXuOjUa#!F1?|M9!0g*y0) zJI>s4Df7Lf_2xL*^#$hBo69@MOChCs&AL^D^$R)aq@!QI^lA}(KUQ3cKU+f6n^e$t zL>=Zw$i^Sn{H|R%W$#F@uAgfdp2dA>dagUxR~JXT3n-LNgv54P#AD`sem zN6_zXF7Keeyc&H{sLuJbrs$`(@^`aEJn;ciSxxitX>K#Og3?7cYsd?-@yE4z)O5w) zQix|eJINij`YYOdt06DQ_yGL?uJJPbxbsfL*p#>}1DmeUgq_I+MH_Yz)XmMs+O*8@T%LfuKwdV= zk4|%r47Jlg5Ikk}ZOx?fmtf(F+TLKz3c}~p%K}9KX{f93LchDYyo35uaIm4*`gK!$ zv`zBQ0gpmWs4ts4-k{$_8c&e+2jdN$O5zFXP*JY>VqSjHKM5--Wzv6p#3V z1tReaxCj;sBx0u@4ef~R5gqFFQ*tj9qj^mxR~C=9`9>IzHkWr$Uzk)pw>dsetcd<$ z*DA?8Me6kG1_%90-K>f#qX(s1i3a2a+4zI;2<`Qk5<&9HW$~1gH**-O_oq|G&ir(q z_#zZr$@QG4kB=u?3T?c=^}ERU2K@}EFSK~48Yy4+x>z@}eY6;mmxg|KbH^Lh7o>g_ zX@8IhOl^>tG}Q@>C(610j(gm0-}3pw3VDINY~*+8d~;+c6zwOnYO*zUKZwgg`+XD8 z?`|&dpuVUb*54oV-BDz_>1?t@*jG|`KEvjYH?GB_-+Wf@CuC{}ALX=MzIY;H3C1JH z%SQ1?RnsrPGqXcA^Nwfam8Z#+hpL43mD5P-#-~%{k6*fO1@j|h{NS3t984FknscZf_DF+y|ZatRZ28*CsFKiLNoFx$O|$)zE^u23{9(VE}oDV$je54*Q-o}>T!M}?LNx%xdYW2H81g-f4ywGlX&Ee2O-}P z!WFc|BUs8Be^HzNEXFOZjwcxhtIqP6orPxX{Nt)w$?Q32*hTgwaD=Z`K_ zk{EcDz1n?R@0!Ao_6!YppD^TQBYjbn6%Vl~JF$y+Kb5(HKJBI0gog{}r?x*E>0Q_> zVOrjfw)zX457=DZ!TQVcPq#J8dx1iex0V;Q>kIL-ka*i=LZ$n6mmeiMoFzm%FVOF9F7KeeB;B_4 z3qL@-gMmR#-A--g7uxR={@493(s+WjKNxQ?wLxB@OZJJfJ-y4#`Q_fExAs>Gc)rx; z{yss!i}ZaX?T?8M@Hxm!-Td&u3(HJBu8|HjBblO{FhAN_UeNAeUZ>R`-go_{lihW- z?ASBI5->m7T3(Rq1JeGWeqd^Y`qF5<*3_XYN?vrgK92j?kzBOv3-r62%R9)6NE^Po zS9`wB_o%GVcVcV@ATOIc-niypIHxav?EP_Ve^%}p8J7NY{%GgrU(b)w?qBx5Ev^{8 zsIJ;}Vdf3dkAovHKZ5$Q(fstahh8%zZlQeUGVLGUUA3Boyg*(y;-y4l<{sJpoUG*u zw(o}yT{A^HFEAc$F7KekTtf*UNzFSXtn zVY`ziuMByCylmumO-iTR0-kfr@%AUMd<+xwg}iJnFAX0}w$%;uD4CmBbC%@me8E(Y z2cQ4#`2h31Wk=h%bB;9ckGgW@z=1Nf^8)?L=JF2aM^q|#73D`e1dq^jABdWMb_MP0 zrT+DN8mT@Y?GNe|rZ&inR8SvfNMB*`gJGxLM}xV7U_QOMzfaKbB7NUT`(xq*d=B!$ zOwN%QYN0E{qZyLdo09ht?fEp+m(ArJ*gPrZ1rp zRDR57j`lIpkR@9Q>}ZDjVIeOY<Db4daMg>4JnP-{**!6{%Od|*79;E_cNLAT2FOPjfK2J zz49o$&t`MS8`u1c)f2hxma`Y+O;w-X%cWrVMZ4dH^}5aF9gIikmq{Ly44sNt&n;n~ zqF9FO>vT4Eyg_{#)r~p#!TDj2yA)lyE%}fKSnt5p{@eAJ>fz_h=LX(Z@LcB!mK!6A zfcmnvydZtwNc&^r5qu8ni&q1_+SgxAqb6#-A3UEYu)EdzRS%|j$2>Wjnk6EelaDsP z3**t|@(%Ly?25uAQNc?^I-mSi3A?Py;r{8(9d9rmp?&=eyMfn4l)|TWik$sT{e-(i zt{BekRv{xx@ixPgIs*UVld%ydm{e16#yQ|BW2mKYMHmEQ70fmNQ-@V`av_4(orsI=G z`}*B~ofovP_ja{VouR)J|LXNl;?KklQFbsMZLXe!`4LimK-wRZo`BCmeF>;d-tpoq ze|t`SeAE5ahtz226Z$N!Pdp_;&*18Jpv;(vo-pR(9eSaLT^fy$ z7s$)900+;9kuz#3+il*O?2*A^4!z9y?)J;0XA8qc(xmCA@Os7OYC>2o+f4=2Auo`Z zKY0#K_+-USrOCqiPoEaO@rFOZi%c@e)W?4l46Z+)W0 zYU$Rq8KW7ZT~q-38QZyeM^@w4MK1*M0jPqvcfp^XE?^h)7{FBGGBO(s_sk2Zbz*Xwm?ufK#iI8ZBpn7npYRJ8%GL?Q4c ze)F%FZFdrnobe#!J3_buc|oQ(puV7e{^-D7ftj{R#;yM+oFNph;VV8}O~X~QM1xRYknw|Syi^T~yBzZ&AaLn4 zIWy(ts)F|YurNPD#y6;spx?bG#8OSXZ8m{{fO=fX;R7u^Uutv58`Kx1`3=(kAP<<@ zATQTy*}8e0>q$t~0wP8!gdaj)ATJx8|DxIc)=RZ@%_H#H)6^qNl3{4)5heKwb{b+Jhqk>r0*MPe@r}r&%t5^V{y}6>?nV-%RUxZ>Sxt{a% z@$qC!p)DRk|FXHfgS?y~bl`JWTNpX6%l$O3JUD3g(bHm-ft6W8h3)Gj*9dBHVN8o;G$P46Uqj&_K z-vN1nyllh^SpSE-KwdWDrBPA6dOo0RKE*3ObtZ}n)?X0Tb8&tCNPK`)R?~cZn%m5+ zpmdSV8tMzwmyPrV+@A({fxK+Qi;!S2fhx_(!9ZOGg^TTB36K}a%SOC__e(%tATJy7 z0-pB*d4ara#0&rVetqHlis@qv6w4=_8(%_RATJy70`5!v^>!7Bp7OpuTMGc;ni9Bd90s%!NBUm`rN}zbP*FN=keN*T;bM z%gt_MyI%tQ{NL7>@jDrzofjVQI-M(PkdYT>!8Kl-Ye^}>6bm$cxOEOadEx&N)EmeP zc6x*Byny$S#8N-0SN}r(dimWeT4pJlFtqUk*L!2fH>UUi`WNuL7qs*8x8o5w{{Y7y1syZ3*-w^8)<(`e;<4f>I;|;fo-(KBd9N18;`*K zX<$7D@`7yqaV;LjCOlj)KeheYNbka43Dfd+Fg~G;mw!DTq3!%SFdl*DzyB`Y`$pEG z$GYIwkkW|lPZ`Jy)R#ZcXGr|zhc~|zc<%ROt)~4ym5tzeLCE+3{UWZ#Bk=xUwBK(J z{qE-S4#p$FmPl*Id{LuZ*6=nll}q|)&!-_TTg%Hmato)1OP0Hi)39dn8sKT8-M>Iy zww4#ruatyFPxSdl%Y66bQJZ`~ErK?``>*qYw)>C3cm&>e1n$2_8!s@Q-dcSD{R+5W z0P=!t{K5PP?e!P%{8az^l1#&RI!Bqde#0@6kL{2b$jhJgmjSUDzxvZNC%)Y*v1)2h zy8+f?ATN-YKY4L_b%TR`rEXS5mC=LJtwaOu^%v-0kns)H8$rKYxT3ZI*V{aE+Jq)HD&>TJb}l zxKE|dq|8i$>tP@-o68H@{VsSPESN7rULY@j)_1jtz8@>D#Gfsp=}jtVJE9Jr_YHZ0 zy!^=v`3P0CrhCNe(JXRy#{^;8i|L}(xxs19gIe{OQvN?+Fmy2G0*d8!!L*`dy^) z1ZjUv@eX_r&QJH7lvs~{Bh?BV{`Q1+<`gT~MjJ2x`g|kW{R_B%1iUX6@&e=0pYaG> zuM5v3L&gWF=iqz*+V_)y>lfhpFI&qC+T#&;9wr!{U_3&`52!C_&!-ROiLBqT^I~m_ z>m#^4XybzRc=WIPU9|J!!8)(>=|)Oboyk+Xq!L{-wAWu?K8;KdLH`Bj(_sA{^0K+( z4aOs+^%JE1K^`!*L0-W5MaT=}Wux`GLzYG2UcvrV^!C${MP#dD;Cf!P`CS-~HkWr$ zUxXg4%M}Syv#vBn-P5_B&kpXthrA#ge_V@4jtqMQBv<3FkEDF7vQJmdL;HG6s4vL) z2K@}EFC`i}?fAFtr+zeP+^lz=_yy)mP+yRZKd$LZhwAu>ubJUgwfm5Ro2pd<ys zJLq3#-TFNa%Cx(?E{=(~>kr;T`+A0dofovv2Pj*yH3+lJB|jolKS8}NkPGLhH~066 zYyM?ex+r?u%&ni9QG)xHc-{+mKMCYzBma`RU>EP-nQF*gVes7i>j?#LJ_+X2$oRoE zec|U6BB|`kk_=hR?l5+-Uxf1k$oRnZe7c!IQg}v6nUo|sHq}C=Ar7Mm*KCFw#-pv}1?}~^(BG7K>f+Uu zJnwXaIb+(mU_9DdUXZS*MA{$B-!Qd7zbk5E%xp&Ee0-EVP|cohQ~}oOATJxmBNt=) z>HwOxVk>379{LkGOK9f>=F^+YJE$+kVv1aH^`<+>%ol2652w|_^$eRk-nf=e$C*lA zZKM6F(@H#1-pz1N5$X%%WutgB6vNFH9lH96_H4b8MaLBjxW930c|m)AM50xfHgBlS zb@64HU2pj09vF|dmKUV?4buLY@*(g!=wDKda@M?cPezJ%3*Xpg#g+>7WovmsyS{+= z1loD|*Voq})d!^gLH)qg2K7Z|WPxXwP{p$w{B!HAC(rPsofnXQOyjZD&%yi%?fUY$ zzpS{7B#38Pu2sLKPD{dt>bVhJ|L4bUw`9Cyg|0Bd^-{><6UYlveL&hD+usMMFU_VG zG>AqXnmLS14c62|6`?(!hVcj)-ylyQF9EbB7xBO4n`Ub;F~ko`a>4uUH+Q^2eL?$u zS%;?J-`VLUF2c3%E7bN)P!JKp!6^L)R~ zdEIkIz!28IuLk4G-;FOi z?C3{73*YAP#i?lyMx;?Jr1($>U5g5P0@0CC=$l^Ppd5KVy zIT^@4Q#fpmK?{^2Tv;}^Q#CwmWkRl4FXeN&XHS$-Jn*I&T# z7_R#G+sg^9Ka!sEct^rh8>;zn4-`(`_`REW6w^$M$ z%VEx9HD~MG1D~Hpx4sE2zC?Qjn49rbe?7URMQp`G!3gss=w-F%)ijrm_EHwp5+8|8 z3{GOyZHHc@=mmON&C9~E2nMQs%q$n8$cwF)j!i)? z(93FGrYnsVsjUj0rQNT~mP_Bp0=+;lt9h}JqHR%Y{xVhkbI+|>c}_Rz1$tS{OVf6X zN8#3koeL6yKN`LtOoY!L{ar5(+I>!3bTwILXjID8o=2qMx?Tn@U+e32qt^$_TgkGSR)#8ijnXQYJ_NSX8FIfl~B&-~TUZ9uNyby1gPFgswZ&L4{BoW}{ zH~_{!INylO4|shS>-|x<*ze=ZhnH_h^~e>*r*5x+UXb|!>yOa9oHv>szH?aOwP0Lb z(a`)eS@3*ed_m@i(7ePSrIa-$4cNGn^pJJLT-+0SLFNOjKSJ|j+F{mkRe~+%y;$F_ zYt-la!1IOi1(_d0^KwGUq&}YMT?eg;Lvql~P)6tlnGdl32+a%Y%V;~D`Xr)_iA70e zDR$xD`NH^u%nzY?X`Q`V_kEN`QflvMqd!%X<p6ujT z*dJ*_FRRTr+J@3~4R+~xIfoEgJdoeK6a0U`{s@^LLW?gua(fJ2i#D^I-O3xZ6#H2Y zdO_v`tUp5YvUf+#2d%e1gJs3@4r(_sJ^;@b#usFM2+d2QA*K10sB>xWom+X<{(R=p z3o;*I{Slg%_M!5eBfJY`xeHo{f11t_f#(b33o<{1=B3up+fqzmBNs)qdX=Bn_EP8t znGdl32+hmDv)1UakoTEv zF{R^{JmZ;4A4nap?+}{J1=c6lysY>4d0_qiU737O!;=Nq9Ed*OlY5$bo*8<9{n2XI z>(r+g(toEEcnfB7lZ`1by>NU%NgJZ_MAMUBTfF?W_b}Gt%Xfy)8?N@9bAn!w#T#(^lBeSrm*Ou_CaM&e_f)&}A{ftc zmDl?D#!oA@%Z^IArPqe?b4TpwbosaJGu=E9G}3y~EQc>^g&TT-UjFlahizx(90QK+ zoaN+`9K3gKaK1%tbn%L*!RJz!e)|h*R@GSZvfjtLSbv}DXY(`nb6NSeWlBE2o4>$m z>z$pSW)Q>dpwQT3FhVih485QmU$E|lbu3t}fT4lxYrFW#UY-Wke#_kbZh_tnO2PnG|}HxFv^lENHwn~uISuEGv1JR&l` zW3CS-ek-v{QG@S;M|l4fm>(f+Z=~Df@&PUfy;wR(R&U)X_KW6{TEJ z29Cwr$otw4vbkV?ge=|=nwL|&gZ<5$ABvtd{kCk>x+DtoBV<0n|0kh&d9u5@%lb`i z%&l_?3%!?eG+}=Py{tAL@bUT!vGk^xW&xYLO71gqF0em>URLuW6eto-@?__R*(cIb z6HohTV1M*?ys}1c6b(7bnBOGgACheO1WWD7HzA+S!=^o9>sg#=izu4nIA$M zzvPQj7tilcJaIFFrIas)A*z`zXHyHS$qV0aD)U`3(qFLVWxdZ&Bh81AZV!&fah1V* znu+LS4c+T2PS$mt!xp^<<)Ig3@dT`YLW?iSYGWGZhcmq$crM(I@chaFzn2BQtTx_d zzLKFhreZgiUiMgH+rzsV`5M~IB)9E8|EkrvS>-sk1p6aoe!%#G_4{Ac_v-Q8`RO3B z(PTP7I%JX(>-o`oAHQJT%O4@D4`T{tq)#*Iueu)(`+@cAb?e;=*6+tu)AaIjO>0q0 zi*^n7t4N>|FA>{O$S9)|lR}$4dilB)*7~FMe!mpb{08av;CLKY8O)D%r%0sN@e0pu zRB~khJ(Onco+4SA8K`b=m>}9B$1l7IdO>&mg0#JnZjZ|cxE%B%KPYTB6y&i;o-eF? zuE%gU{5~u)A7Fih<6WffjdXkP_;8g$FC1|$%$6ENRG+VGkc()w(8l`rN!I)L1!;RD z-5!?@a5?CO@`MH5NY0`=WpKmKI`uY%3opD%`%*gYl*=ZiODJY!!~O_aydkvsVkni= zlG$IfK>0f2Jx^rv005pQ|JYH`OoJ`*w`o1MGPlZm2$(5x_yqM zh4YQbe1P#Bj4xQ9pRVj;^x{(7B606fl_%H46_E^m#BeKc!!a^uUvuG#I;2KtE6dwA-u@{paC>-ecC&LYeBK^PYxJEcCKk zd|{8*Gk&WuQI|EIs%iDj$rXHGAlCAu^*%q1_3JNg&o$_uW!Et6pi7w%EY&E(`ux#) z_ky%PLApJz{s&wR_D7tj_NZ1C>7_aFszX<$mIyIL=>>eiQ1$z0<`(HXQQ+tPZ9`FmNVtT+)Xy}=< zsJ=Z=vxxN7#JotZPcpo}4!)1<$A5ZBJ4@%AHEv_uN%`pp>y0okIDdpJo`CrV*dJki zyj#nW&SdLhPG7;5oZlKZr;PRY!Nc(`y57O@?!{sX{Y%f=x1G`rQ2y1Ns)6}@6fX~B1FRR_p;8(lFT!XvmtWCb#Lt1kFl0SLd-zwU7T0e>C zKQw5wpaA{SWu$I4^%vH>toQLQ z*6-gXe;E{GGf#TxLHzvFID13VWO-(KqAsbKvLFu2W)smA=mp*Qg7y69-fbJNP(gAU z78a!=w(5&Z<_wHs#0@0D`oKd;2K2hyp#)}M!6@ACmzAMe&!FW0uHNmA#=SKZ}5urHHBn27q3oOmMAyAZ>4?+k?l4s|fl1PhrdG=F@5&1!sV!Ex-XSXA-OR|4Ha z0*~dO7i9HMXz?Xqdg?wEUq<@;80SxM@c@%d`5IGQuaFOZHw`G3zgM2anwRxHAAqz! zLApJz{s&wR#+QkXKTe+K?<|jzz2Ve6Vi= z&HRFq6EFR0RF0H>_j&$3(JdxvDspEf%%_q0A++(XoPRf6PwWx!G(I5R9*iHj%3yq9qvnnaw$Kq1&IOi^ZdkSa3)cFh^*-Lk`uFWi2VTt^_r5CwRED%)gRlgQU&V3_rIB3Stg&T7|6Dok_1K|h=mlB*gX0%) ze2#CvfOLC&e-HHX(ogxar0C^b?N8onq-|D(SbrbdT{?tsH z!B^Wux-CdQ;igBGg$u7(Hn+m($TVN9#h3N&1?%^}3;tSbzWSdhd^r#s{R^gPw7f!SOD4 z!SRyUpGd#o&HG{H5a^-Ua-J)Vk$!$-8N=hVhjeP}V1I-x-hlB1>(}dSre7uKKPYK( z?VGU~TQT2>_4mQU>o3TBgYgE8FC;!W22wvgK6o}%Eb=o89n25DHP(IQmcmb00rl~R z3=%NDAgg~cz98*SkZuopz*PplI9sSqZN41S{$>;T7xL;zTX_8inGdl3K`&Up|HbD; z0?q45;pU90nA!)wA2DG4{$1D~q3a!tFA_1gs6MbW?d5gJ{l(XI(*b^84c+<%;|tRM z1nKr*{KHiSy?A>%EUtLYZuU#eGrnj&kO=Q*_`6=P-X9t9C=js)U)}Qlc9X1OPN)PN zzx-V=>@@05o#mzyIMdB{#cr7yqr3N_4mK5 z_v^b@pKsK1)}^#fRSIn1a80XMH|oshJ-<6#)%h!6m%QnZPoGQog@L6)T*wU%jf==|W&M^0Ud3GT}!6Qn{ zZwvGSz5M6*1M1wlYz+)I{EF{w6T7~%yBh27_g?S)5!T1M{K+B$6zvtx#j#iVD=Eqv z;dmEWJOTR;us_23_$A2Rp5gGv@c=_fwQ8b#Wnbv!?|Q*{d=cC(GSxV~rR`(SEMKS2 zes<{P?|Q*{e5q_0+9JlwD8dq?OHTWPoI^}BaDy7-i9TN)7G?M5kXWpZcj5dIy57P0 zfRcgzP6s?UY;bBdI{o>)vnuq0ZheE}7o_L!;-BCWr*?vF-xCB@5} zbkU_?V4&=~VtWYb`M~Y}uO~wDvSgS&WR}}&cb{n1n36cM6SnvNZEvLYL1}Ito`KX$dRb?1u`y4A-zIlvl@%0aQuSI5258pTOKtvkbYtw{+twRQ6TlP z80+`%B8>-VZ%=4mR6Ay(k1@mt7*8@E2tC?pgZ1x~qut&}_eW@6>^4lQ#%vqee=5I= zOLrzWGb;Actl7zpF9*A3w@aH8V(xv->ph>w`ux#JQhOm6_1VE=I{Xz`g@OL?dlSgU zD_}e#wD>}uRxT!7MSO|vVF1SpWA792e6cp(1&@EN%b*vmU9TgvpuVxfB=k$>NOr1< z$>9if9fuqxtAc1hSD0`%|G8=w&r8pN@wOUaLOu zqyOW3kB1ChA@l;htmb8kY%9HwjrtuI_7H81;nDHS!%Mkn}9FFYxj zcf?lAP z)x4OBuzz>3mQ?Jm&}yOa9fbU}f&lkoQWPS+E%Uk;+!6c7kG)3hHwXkNhg zcYx;$;|nrBgytpM`r6!}#}nGa$AhBUEbrDsFUWj=^+#x4;+DLKzW?ww{`2f;E#Jc7 zGvN8c_=3z2p?T@`KCmHX_QSrG#+#N#KJ0J6`2pw!T`$$cM#Pl^0*B0utaL|{eB*s;i}Tf&Ew>(H zwXkN~@-{9W7SUIh# zw&fDtg?tV0d|?@xA42nzv#7p3P_u~i)x^9=u1|6{^nuI=Sbv1(WpbtZiRxhTF5iS* zJAR94-UZJWmXY}(G%pmwMAVPu)LWlX?Dfl$32TNvkof@XkI=kWUb5QyS(U8*D^pwA z&$ei3@O)tznIA&)(sG_FjgfwSV;RHavxjtQ?4S>1KEV1TG%x&H_L**;2pVZUX_mv6 zwZaXaFDxVTLug(CUCAFFy6oKYfynT1UB*Ll=mVJ#u>J_mi#Y>h7;ythaJkFpq^ZQI zaqxU$8JQnK^8$X)9=u-){NByq_Ji;J9r&*Qw~rs(|Lq+IQu)ioGh7q-&1$d3+hhHH zsiR~+59Ae-Oy@Ip-Fwow?+EmQES`W~hPWm2C!9mh4hQBrxi}@7V%-b%ApI>(m#{ZO z>C{{fv3r=H7j(Uxdc!ENjW}MG%W{L&7po}ta}09KL)*^>qVVQ&1tcJv528XlFCB-qC3{Th?j`%C}fn; ziAkZ&9=&|s3VK1;%Y(6`G;Krk4$)U-{`29-wXyC+>=b3?k1w{<2Tz^aeP4v^HuQq7 zm$tYtMJ;^~+02rH-B|b1W0Y?_`i=6a@4&Zmrm2%0&k3tC=(GY_RHd$`>;-8gb-AjJ(t+DPaw-kQ53aF1iWRQSf z(Dgzzp58X+6CO-aY$~3{eLVu}UYgl*Hnp&tyzu>|GT$X5{RMhK*NcR|_0c)?Ip;TN zDgiRtR~fMGWp|duO0=yTN8{b@4OjclIYBSzdTG(`o+RZ{QEUD~v(-vu@*LK^T;lkC z=+lkFl1ifr+k5#srqBzzUZllNo?4DH-78<3M44Y$O@8us}mKctm7=$6Oyw{8nO@ zqLu}{pz9^r!MyHTO%v@$;^2iZJ{1XA_mZ!n-Ar=Z?(?r&jhj`DV@uErx?b9)GG6-2 z8|HEc$x8Xq_fcToON-j*;uTYa&!sN?_7~Kws-YKjy@*6v*zWjR{%X%Rkq(;7#NAl; zA~#IRqHQ%eYi*dyqj>N8JoJLD7a4!@Nr!}$N{+9(n#X@s7+~Ft!Havlo}92Z+a+s3 zWfMYr7kWY0%R|d#MGbS~Z^9{>;a^f{Phs85^o5>FyA_&UoaaU)T=e?xLoeuhDY-&K zs`vBY9^w<`BS+MRKV#j?VJpt+J?t|HPpOU^XIK%*gkI3~;_h2r?{~}Oi9>k!u1ebC z6|8$1kk7p}VS1s5ZHqL2#Qv<;&; zU!?!aZ1T7=^n$LJ25*7Ghb>v>c~uyh#9XF{u#EnOz)_v4ncPIhz93%Xva zpRZKRwdKXFL<;>9z2sVibuV=+GJB@v4pUMjL?u}$R3||%=z8%FUD?Z&P{1qo?8G74 z9_?wYd%3ZE>yniY*>#zf8nI}GeLtZWbiIgwFE;%B{nM$@$871mDcwR?_mUJuc~L~# z*?>{^xtmUwXae+tu9w5!^m~bIc$yZ&s0x2;)jq_!7rm>(N6u>c_+E?4l{QO|DS=+l z^+J16;DN>-?+}vGYZXrZ1wL5!Qg|b;nT%VrpS+;Fc9-cC1L(zx{?!@go-fZXL@0Pf ziTP~--&cWl8Q=H0;JZHB$BS!!srz**Uab(fIQg9TLR3_Y`RAvD|IlR}*04Aw__gquj?-`z993% zIk@}iZ>AjUZB|?4PR2^m_H5i^*^8 zX#6tZ5jOfYx5BsHFthi=0jNb(tn4a^H%Whr%Z-bXDnL$ zET9*3y%5VSvvG!2$>dVd>^z^{T!3{i6h|wQzZ+=nbZ>fY+Z8&_1HGW@g_oX3d6(T6 z>SzJdwDW`N*;x0IcqU`nL+3=eWXGNx#8#aDHGc&2BV>M-C&pKa#h#ew#Y^zJ>bwoZz>y12FP{y?yJH3K#&i3A^%*E;@fmruaXL3=4Z19n({is}DSy^N*^n$LJspFA%$hCuG-%)+N z7NaNf3hQ2cn2g*>zGa&{)?j6c8IXbVM<{=<{7P_OxLgtw$~&qau2}aX{@I`_ z_9jtPUWe_9ez89%j4$ZMm))_--~YH=mi9iy8~mx^o+H-1I8JDLX3;OsIdqYqEIK=? z2)&@|g@Q^}KV<7pYsI@WnxYe~vGUb9Dq^;c}OI!XhEpciz#sI*9a5y)Uu ztPtko+p_CE=HHKbRYy0XWpCSvoP?2Ow_;ij^n$JzUhZA|&rGsg2ITH6Z@i`*jP>{u zmg=0}viF`hPvmHlW#leZ=mlLboCj5{7guV#1QK6!y9|hgVcpB<*fd$)P)c_CR+req zO_ANu3%Xujyp(P{>++*Bl}(VSo;nKi-&c!JlRC5|)Twj+&LJ_M$mC$?1zj)hb|d{` zE${Q#;wid}%x^!(dVJB6Gq&d5p`;={Ubyon8P5dtg07eQ3E@HJY*iQJ>G)kTD!*L7 zx|imqVm0NS<*~zerS4oXxpfJ8LD!3Go?~n2ZzrSv`8%|aXiVg=?uD-R$=(BBm9Dr; z-xTF)mLG;*(Df3wxn_9kUIe3GmY9^Hd~6)ny+}`ayd&YM4a(%I^4_hXeg=9$*UN3W zinM!m(%k082C?H>yO*%;rNSX!W~z_s2eJL*v1_xHjL-|ZUfkS1oQ!WQ54*(LGkJga zH&U#7S?Y;g<`Ar=J49Vg8EN!zJM@CCm$5(OM{7tgC|s8J`k1#T*#qldOzIrZmWY^H z>y4*USNZz<*Y~I4{g}x7@P#x!5BL#scoSnJJqtxZC)T}0HT6Ak=sKE7=C>uL{c~&= zj4#N1fcImbKXCcuNL7YI6wN2=mmQ&)pP&Bd5EHjp5+2K8&SEuZ>)ZpqpzFnM{^@uD z>t?!*F9H*`3s7MG`Nn9E0CO{*>aQo4w1};EDByS(<@=@PehOvK$t+sLdM?&-NZmP( z_5Mh6>1Z!yF)i_t*u>x@M%{K8U(k&&FPzjTN#xB)TEtbG+l!B3{`$+Gmw(RAr0H4D zY_~1(%_o+FUeNXO#rdge>xi>6b;m}t54lO7upVC)jzus~?PF%S5Jg^Wy>x5}^pYuG zW2);F^1<(>0mbt7%5&g&4(&3&@BhJfeYB4k*Z!L22D)xI=N=%dy-0oMw4@Z)y-Zgc zD^gn(JWIP@mo1mRjRkr^H@*jjII zAo`>yckpq8fX5fCdl|hxFy3;}c>40>Fn5D}awYVFt{0gP(u*$Qvu<3od(A_{_u69J zi|CoHicm&4+z%a=lh@+biEkfsNX6qTc=1JKUAUFnS=S~)lNv6)W!5XUNDjIg z3g@R$o}Yg7LTut7yV_uNHOUROK%I1~#~0R@(RMoZNkkhHi;~Jx?80GuK{vkaH%}vO z%IQ4MTyE6QOZ~?V>t0%CuhxAZrID1{d)nwv)nqyJg02_l+MOkZdwrg(9rJJ7&bjq1 z*1gEYhPa*U@c%w&UZF?zrd9@eLD$RvOZDM=UhO-bF7Om`{_K~&uSog9cx5v=6Xfw;%t-L`?v7hCj z7j(VE_}n^?QGa)byU>ZJ!b)dovF>H>j+zfzZ+`~Misv2FZen}@y`byG*K#!YNn2la zfA~Iy?E6weSohLsNNGML>Rj4;=T@GzKc6{x{iTt}_xQk~#jj79jY~Nx0ZZU`9qlr{ z<9~2{@O^w}A0NK^lg&8$uCR+*@WFB?t8Q|cB-Zok_M!5eBfJY`xeHo{f11t_K`-dW z7eez=>*sALCa{r=`mgVm!}x;C521M(vOOOzWMr36Sd=eqqj1p}j4xQ5 zZ-nC)WWK@p2#$9@t=KL*D(RM98_Lfev7gh0UeK*?LW?hLXXYFOj_sV~}w_g}!{-Oplo zN!7+p$-~s-^GOEMKJfg&GPpgs9PKg~Up||kxu46*w=Glh@!k9dPFpa(KrhJR4WW5q z9SfE#U}zxw+Ae;wm#5*szJK(uz2N)*0oPw|T|27cl=kiB>4{ z*qtoWQ_oX~9zBcgFX^5 z)iD@fkof@P;c|K`eItt_dyLha2Q1P%bFl8^6z^bv^X7-5Cr!UC8?`QpLNDlgNf1dM zc*$eTROeC|a>1rA7wcZ0?5^&zep4HB>s-P@@1-0~=mlLbC0Z#WyBxRaJvWbL^`s^a zz`B=@*I$UGH^npy*yL4mpOJHcUeNVI?8)zSob0nC=yQcWaoz2 zC(=<9Py1=07j(T`yvl64^~l=;HVf4I-7JJoV%-a?sw=U>v$&#Lzib<1*gjK2FX(!C zaD7C6!~8I7j!Jonux-CQ*1hD5QWwwfPdsrmgQb)&g&_)hLDvh{DK~DfeX1KI?QbqW z_bkC?AyD2}Pvjir}8*4Xy&ZU*#% zt{3~26`60`56jMZ8OjV8-w4IJ7xle*e0P32NNhBjPLK|ngyUV5-`{ZHajMDJ_xuI> zgVlp&g0v>F?&Xh=)rT>KGSa6R^;g}Ghy8%@1>N}aEArBZ0$WnoCfk&Oj1MPYVBL$F zrk9UvT8mm*v}?FuMFJi4g07eAmO`~7xt4krpYtYl<(tj0?qzq1M0y>s@XSUfNA}-C zY1YsSx?c2}4&S-k&Gv^aI7KT<`;Z9My~qy=+YJSIERyF7E1&Bz+zq{;>*e}vVwAeZ z!R?aMM_$)&7I(qA7mhd=W=jnss?S$8$VIeTXhSdPdg(DEy~65KMbdm`@9WL6RDoFc zLV3c1ZX{>Xoie!LXPtVR0`!8emq$V`DfBW9Xck_jKU%BVwTyKyhEho_nf)aTl&>S+ z^Na{jLoeuhu~9iUzvnkk<$=fK#q4ShdRX_u#y*iQVmPU)lpA)`?Qs};uS_2c$+lFxua^DZIbbAlIpzGycd`~o0Q`|Aj{Q--~G{fl_ z%H46_E^mci(Df3!nZ2iaw7=%)Yu-^6Riz=Ud-1Ys7!Y7g7f?+GX&0*r8XJw{N`tQ&`~k@Z9WX=U(vrm{@xs8GIl7>fZ461bRsr7iwBc zkYOO&P{J2tcDfIGLASmM?S1fCn`%eZocIn7# zfAUZNQQmZszEwMF=7YJWs>wKyC?kjULRK(XR@ZUJQL-wC_LJpoA(xl!z;`^3Z@vhw zzt->bC`ntKh+yvUGUzuxqbTCXPH68VD-U!Pbt(0I9_`|lX6rV$A9_I+UkKexbCMs8 zXgYc4v$Xjh{ku{H&j6FVM?s zURdU23XNEj(q1#_(;V-~l7U{Jm({#yiaPQ~r6KrgF#QBm9k?4X3Ba@m!TKvWi>DJ3m29xvuQQr7XLJ#6Mkz7y+ALk zc`430UD%d$+tEaj>h>F!8xznA^s<^4zuGP48r)51ZSvh7(vtI+KrhhCYF=E$$}P3D z^GPY$(uF-wGIv8S(93FG$X^D<*vyk2dJsSVG|t|T6ncSPR`YW2wvAV)AUO>Si_#HW z^~ELV1$tS{%dPw!lAIOs{JdZ9k9%lM(n2rDyf_ud1@4f!w_-r{ORql2+Z*lsU+}%3 z2?HLEtBzd71WL^mU{+Bn&ReN__UpQ}jUHx&?=>ciz1$tSn zKdP}_u5D41q|S}6y32oHUncYdy{zU%qLJi?TXVMd&&c$l_fnjK&4hG)EzBm+n>ue@@MR;X`;lTNAvVlAOp%>_7H7{(`+;PDcI${EvL0MgiS;No^^s<^4ajRI$%S5WXY91TW zh_JZ*f?lAP)w~3U(R;C-mhEO`q)M<7p{avjpqJIW9CT8!XcsHkrcSrC%jV7aA?O8q zSP?FoJU$b6pS5k>#Wu$9bw7JAzGK^R|Pd|55Nln%U_H|~8` zBye3IP-%oL40?fHR`cRkO`<-zR6As(-u2P-RV)|u0==x}<)xqUWl7P?x!Rw+)kxc{ z3ZWP1Wi>Bc`fg*9%AcBPGx%zINVf$+FVM?sUWNkq+SmAr30x1ox{2wPNe%P@y{zWt z?mNBdj>6H(ZnYY&$*!N?&7*f8=bTHnsV3O#7Qn~BA6$R+cm#T>9yTJb91u8UW@OEqpRN5B-}+l? zFFr34XkJeWH)mAE)IRwAhymZ@hwJ}ud69^@MfHK5X)mu!?k~Q!n+~x3S8soO>xa_&X1~Nd)>q_|^}h zd6BTws5^C*n@ZqJH{X>@%uV>#2V8%3UxemmfBYUN<**p**8JQnK^HSL` zv_*`UQG_K(mz?$oIS1B#JksM2ZC*H9mlJi=z}moDWUbGK(7cok>~}igxnYA-tI_Gt z=bcs8x_*)V{(AR<^!(O(e)_%`dnq~bbS%pThS5XzADNJz&suK}y&&s9!S)01e+hWO z*&*OqMM1Ib6E;M<=MlI*EF-IbLhFw-o8P&qH7sB9eOZyT?}tnX^nuI=Sbv1(Wn@=U zyv#`#T?z&U%DyYMhrsiNWn_K`&C8Nu_K;a_uibs3Sz}7#$WE;L7#*7?s~bwmPT%Sh zTevB*d#%q0^n&zw)_T0_+xl+zlTMmh;XZfvW9=t5BRwCu{r`F`%%6$bhvtsl7k|Mf;_UZ~T`#e}Pf zFR?ug;8M`oOxEA)PzM9~~ccy2vpX+EDjjikkUguBmD=&LhgmVZD$Q z43@$C4cBt8e!=a*<+#dmOI}3ZfA|{zd3LmxZ{hHN-7kuC|KRV3yubEj59_Ckl(E%{ zvPFTSMtr<{#gSRXzE@ zZo?8)Y%06{<2`OOdp8{C&{vJoPc-&?{ODVZDCosq;7wjT36G;|W>$OHbG`~(9&jxO z>l0~v_Ie-K5HtH>UrXanOCullH)!u4+@BNut24|!U!GlvQ1FNn^V`r@Yuup7hP4#3q3Vrx>91Lk>(jrnfXf4}M+TC*1U?vT)%Q%jQ=29GQmq{bPBe4+4x6iD+D3q}cL>kn)4a zzt&zdB2p(fJdZSd?LH<@;7B{f!tu_PXl^e@R^Ad%&Rz!lw?`E&rzuUpZck3=KTtrd z1A2+=)PFFb*y4M+lw&^Y-j+pN9&jxO>mR9?sRhTeuVPWfJ6{QO3kf`y1NV=%mt=Wn zdZI3=nX(`b%VrbN6!7!a_cvQEY}WeN`Y8wK0{nF$^~ntK)fggvi4( zU-{0c)t)OKW861gxLHqBCO~;`9Q10;OpgDk6ke>x8EUEl^5~zeD_#z)i=02 zilMyf$XDt&^Y7c4*yI@hYyKQOK5%<{%hA@?<_0~U&>lV>6xC*Vw;tc^K`)Xuw=ANC zWv@@_DF@8g{yDkUUKTz(_(*M79CdpeEjeyYY5a?y_UNz3TAi+Wdr!f<)OwH&NpJ%Kw#KK{4ZBK-veS$B<8 zO^cK~a+Move{%k5QDbVR6S%&*jzf-;RYA0$EN2V3ylh9W)E%#?Q&Y#k-ORVDZBD)c zu8+2tqhvo15%r%AgnSK;M^{FWuv7TFhhXEE+GawU_P-^W0s^8)6h|Jn<_`87Cx0gr#J$1h0pX^r2HTa!O1 z?6kj3)qI-9+Y@asSj(qDkND=-pcg{Rrw=_5b<{n5;+xOG-MhCn6ltRE1#9^<=mp>W z8uUWeWgNqB@TuB~g5_u@HX4hyjxR{_X=_oP4k@cy!$p^Y-j=9hBDB3=EuRLx;G18A zUPAn%g>uZ2<0LMfe{{DfF>$TEAkC*2vsw8+ZF+V)Y&-MMkD3$h;CvD|o&>Lt5PCk1 zZ+}YY`E*0tZt>*!VB@L!7kckL?KW9&Ue-FF2IC_bf50-K=hI)l?k(W^S*%m`$VqH= zeD@Bty^&+nQf#VnO_}6;;f;6A@d|xc7=TQ0WrF~fr zzd<|++FtPO|H1YE^HFg5-}X{|olm2f?04g^Ds`sS)#5$i?}KH~3wZo%?FH%lbn9Zx zd77+?^U?P;tS)9dg`n*P>-jV|-v;^s%b*uRo1f0BJ$Fbj+VpAdVqryAk%T(hUcm9< zdY_*L+aJ8Y6wFsYf@{8-(DUig*d-<^VQ(^1w8(>&X17h z(_-gbg}Z(gc}U0y96)dpyL!CF3z?|d{aFN8Kf zZPyS>U7KJ%tkrc-(>ggk0BtYe_;J0@Pvbiujmrz6%};-gQgKl1m$k27$qkfWxS0pO zuK|qr;QTbW9IQWF%fa=*@>)MX4IU4!{*}=4X_2uWO z^mXnP_ttmo%?p^1g6)U2zXSJ&tBfn(2J<8E_}4l=LOMS!bKk#LspaIrpIuLnDu4HP zMB59l{vKERfcYr6{=fEuE8hmafXBbqUXbR~ioZ-I3ZtB#-U?r#)}Pcphqf22<n)$YY|j@~YxE<4`l8`Z z8f!5_TdU+eq`X+G`2La*@f^T@?ZRO#YUyI3R9_Ojmc=_5=2``*%NNE^xb z<+f{{8bj&>+#d8oX!$gM`~|k4Nbly6Be!y-{5uQL_Ojmc>El~PXjG>2yv5u~ELqp6raYK&cqU+IyHxJc@)h04;KvZlhuRImHQaOFebaP_0((;Gu2c@ggmQUI^`e?|9!N*YSF;@{cW-=cT+!nm!#58@yJ1 z-beq(_Z|-!x>nB-p4FKscWB`O_Qwps|(pzXzmhi_~^bDpw$ipX^E5GxJXUbxDC z`~BYKfv%!1rM}OjUA)q4-RAb=Iv!lh2|b_wSZw*&^m5EbMTO?@;>*qS>&*+8kAm%m zZ$1rf&z~$JK+#^|TpW9)zmlS?5nPUM863ZW$B*@VIx#d^?M!vJ*u|XC<=sJX{b+l6 z_EROb&LG&8*ME~X{rh>mzdsA+qhR|X^|JG3Y!$trl3nwU{X#4s2abXJ$F~f60gr#J zy&#>R?zx=fJ;oPqPfM9oO5clM*mt{Q6qCf54 zu~D7U;oV2?_}%#W0M`e-5L!MRAF&~Y#%DQm?gjr9=T@~Ow7pc8J1Hh)Y*ufVVG~~|8M8hNkCetz z*8VvXHt{)E&3L<;=X&$>lSCHEZb$Pdp26Y%u`u21OsbOM)a9K8)wpgOsUul{`C zr}gFq%tyiYL7E?xGgMeGPL#AgziKo5F#JjfxPN@h;P?eR{oqwcAAg68Fz9p(7?0M`e-5L!O{E084erHC+T%_n9r z4f!pf(e|?5^Xb<8o5?Pzch4J%Z97)T?{Nrhe|*cJ7edRYX*)SK2oDs`@2L3U`tndf zKH6T^dp@lnkkkJEhq?Dc80>BZ7BQ0H>jPXL^g?L)biyx-O^Ijk$~`^*vH9hW86WU_ zv0#1RTaJ~fS@^E^qCkwp$cXrbN*}K6!RNEV@0Ekgk&a(*9S^?CK`-HA(MfYhqwebe zVe%MzuefQg$1g~~uSPmbRP$1_>*@pPx*l^8L8A5M<$U`M?#+vp)2eD)F40}c*T|Hw zG1c`7`QUfcfMWT3<+=6l1w8(>_CjJaRC=1uQg~#!M*haPe4@fes+qQGz3yjkJ-wB$ z)>o<1le|oAo?3XBt~KEtP)7wmZzWku(^j0CWTILs9p2afCT_iX2}^a(Z`pg#nXNc0vtU7r|_P6Ta5BB@qo}6c9%-K17%+Pyz&cFK=<*s+JChwQal|4yq zMK^-+Wuis(S5G~SBU`7Ic^}WFaPWK7Nb47EFW~bj(96lW-wci^o#QtS{}NSi#?@X( zy*Ncox3#(-yJ#4h^TlC?;y3s`YFxjMYdP9pz~>F1mw)S}c=LAy78zda(~GxjV_vw6 zg5RUYp;eI4vz1Tf znEbu<<^>!tg6#vwm(#Z_EB6d;8Dilo)7#kj0`KSJ!2RP}2IC8O{A(RwkdAjp=h7*} zlINNu#1n}&>Yg-4+snTm?_PUjP*qO;mQwqm+wHUsu21o8Z=~ykUI=Zx+m!m2iHZMV zP}D8W*-GQ(r)Ycm*W=xQX{INl%POaRPQU)?8l#N*`=fAq0=*F0`*%nDn-p)g89n;2 z^jqacU6MH3UcmA0-+sRFZ@(`UUoV9A{$25)AG#T{bgnZy)xXU)?i54Y3pl>ORo~!p zeCLmlj<3Pr$G1%A^GAWdIoW@;I(;WOaKFRsVNAe!^MddE5g5<#ZEvLO6Z-s-+E@F! zZx6jXl;W1NH>p3M`SNvd0pHJJow7$xVzcABcOb1lr2lt(=a0bS1>YY4E=Rje==pU2 z=?qq@&jG*lLyYBoEDY|gH!om53brq<{*LV!r>lkR$W;YF2dirbRY<_?(Jq7IUGVs^ zo=B>wFq)e_Z1qaDAj@&f-}()lB>y}{>yz~yL{K`(?he`J2Xrfnw^KIaAw9AB^Pp5`z{J8bx#2fjB_`XJ-DcAMp1y_H9%cB$ht24|!U!GlvQ1FNn z^V@>94{(2ko=@)xydJdlRHk*%pzGklZ+EMO&3p9rJWxp)VWFKr;aJmzt3AN_0?TWi zPyg%rYC_Ma9qzNL=FJ8MdtV6hr+6ury578i`6%cSm*;;yUk#35z~jeyK7Ej_o$-Fj z3*A5YvB%PO@B4zbm$lBP|Mh$|=!MYoX+xiH2ZbG(YlV$Y+kGcieu1`^wa%yi^?Wtx zh0yND9K60)MZ?j{$|k_JPsyjs7;P_LKK-}nr@{W}U(Z*AUI^`dK|F(ZL^8$2FdWkS!VFTG{Y$dzn8`tHKwHeM^$9qY{t(tH|> zZ@AhU>2gBPr!W5*ud|RmlYEN(L1i3CcAKdP`*#OxNyXj@&Bma6)#TvyR($Jot>X)L zyvg#+^h8}!Gi5;>mdz%jDd2LXWkQcHKicn=RfpzmAJNh#?J}M^wBEcRjW1yP`x(q^ zQ>CIx^f1+tcH2D93@%4nCiM7H@GIA=sQ$En^)JiaE(VV?(Ds6K{DAcS7qI=Kt*^}u zdOV>$d^{+s&GK$NxEyJj(684Wd8J-n=a{+Q#Q(K^;Wb;Bus8&I(9TJQ-eOkL% zSdmpEp^o(bh%~-{*Av0xS!*xg@qk{y__)?ykiOshzU7xnZ<9jevIgPs;@B$d_2$K} zGg+v^;X|+RB|WAWawfmQ_F3;Hh<1eA&8tF!09@2K$5gj$YY8-wVO_>Ec@k+Xu|2apgzg_Fy~* zmm{q|aDQT=fg98qPxSffuqeAXhs5shrBu{38=c@cz3`-9j?)@kA1s4j{v=w|utbuK zUL8D=@ozRc;I)10Q@^mfP%Z2{0 zdEtm2Sos*$zEPsgbB;ma8{Y3rBy=wf?WNmAHeaN4K6|*8l+lpQUEob#I|+}YYi3q^ z*mJ&$|1~dKudR;|dHkNaOZss$-vo6Z7;nIM0+tEg%by?e_ZgmA-pTs&gyXc+x$t8r zDrnQTcF*+JEXeig-&pux^8&X2Y`xw6g0fjN@`mJN0p)^^Ku_TMgzn|nzTM|S;^YNs zXT@Z)t<17wJM|w7D7N@sF6Efdy0>NVf87h{K~boOYlqy%j@yr4d`U_u{;&Ru(7hbo zaqyw^LcxZ1SHU-5+RbYcueVD_Ui*`O`j7Iai}bD9|7%`w#SbvvfSw55i>c1h$D{9y z_6_^ zXD@^O+oKAX)0C!Pw{ zbv}*sekwwbFJnemi}$^#ccy!m47MMkdjbDX_?|DJduin>TbfLXub-x8 z7u&Yuk2g4f_P^!@^nq`@A#^WKv>z{CRB`r68QiI&XdRFQey{g`-3z|)hS0sd)ffNz zq9|QN>~4sRPJ^rD3uR6zUj-KWxU@LZgNJG=|JS|X8*d2Ri-7ao!EM&&s_|bQr21Dn zJZdEJJwC8#@#|A&<5Esaz!LQGfAb++@rKa7>>nK%l$>*NY72oSE;QHYI z5uBgSeZb~9P}1mh&EvwcnWA8K@!dlNaBAuT$qR%f{^Q#?mKxM_vG4oF{3?ygmo{SsqzQ5F}tQdk9a;KFY8zfdIHOY?qw{` z-SqCY6D*_od&JW-GY8O~Kf<~f&;zb`L+D<-BnoKXeX0*p=2rHkb0D=s`~DZKdBHcH zfSw55%l~8V%%i#LzQ=EfQY4AcB#|;?u8=tiArcy7o+5MROv#WUAyX}Rd#toOP+dcX7MUi;oN?ESj?>~qh#=L*)(|CEbKVsn0ex<8QHo{--ZA(ptJYbaxofp;&2MgmGc>xVy(NIRES3>ZA9wM&SZ+1~D_t)B*X4_R>K8clm-dLRcBV_N@ z2UkCBeJ@Y@H6g_AjEzf2SlDZ8J;@{uPV(AYh1spjhJ)Hg!(FMjGOIpe=%SevWdJ|vO1cA@-_(!=ox zen0)E#TUqjMc!M#L7)FWW1RaeOSwgb7V1$lp^r!8)tqZCQS}=UYgpg9Vyn-Ab$*2J zyhx~}Rkxm`Y)zDNYTO~~$%l1)n$X_wS{!IM6s32*_*6+bqpYAP5bOMi(0GCI1lRQ= zLgU3nJ)Cv>uQyw_o}4R*K2~If^?e<_^Mc~TlT%fwrOisq=J;O5>z9S};q`<*9$hb8 zD=M(1C_t{y;`Y9o8cDd`2kn89VSZEo%vv%wjZVHvgqE+j=LF-Qp1;8F8KI2oKcVxI zzQ=dtg^pfd;tfTjyH%&}!2MDv`#?Ru^8)(=zZXF9L+HG)W_3=x8*VLpxH(|V^xM;; zaQ`l}A4Z`vg82xvA4)dj)s6jdndjAXL9VNr|LSA6|@qPcxnAMFfUj@_MPb5YewO_k^2k!TV_JBM= zJ(O3P7x?}MYy5=$gEFD>(scEnsr1jyPmb{!T^r3LPr)^RLGiQFyg+}#_bdLaJCbC= zm9KUT1i8s{tN6j|ag_<3mxt;%*?eOTzi~)@X?j?E-(qJN`;Oaz^N(n?E6y1-lviw&73KC+$~_QR?2*Uf{&nIQQI=GQ(~<;+~?hU8eO7Xir>atnmf) zeic_PKR>Q~!0QQ}m&MB0?3y=j{~o{G`QS_Dre@nx_u`I(=CEg? zamfObX_;7`Uzl$~`=Vs{zi-$cD5J_-Zaw7X-UdU=`;Vy@e)wZ;!IJ$Ku4*)|V6I7oW+vuDQsw7RHyh^^&wX zAxS>Fey`JgByRHR`B8=9G0%dr`;L)u!y$XivHD}Fd4c~s!P>s1=7-REdAF#N%gOov z43pxP4yuioiiKqJbv<$$(v7ba{v$so^!fBFNgZ(yfrW`% zNe>=UB&-bL3Y zoDu5(YZ>M*L%%AsaJ=4X_o5r3Mr)c(h{ zJVNK?c`(gq8!BjG(By{kzri@yVTbcIxi#L zf%om3wM8UucwJa0CGY{?cv*YfB86L3mR{^qx_AUb8T(TEAJ_5-ofj#$`45#B$%B=B zjBjlJX4H#syoj>c(>@QPOBXSV8dAT>dI(qlF7@?<&WpqeWl@*K!F}tKo>05%^rzw* zFB&r8;r&dEjFJc1+}vney_VYlxRyugys$j;I!|?xy=;>upTUN*E=hdjrOnW|Pi@lS zrSa$7shCg4f8y%jrM{lfc{vwV!s&SQ0gx%e z7txs`Eqo%4NA!X&+!$@VwB+kYxbA0w>(i+JlYDiU$Fk~bM$&(Q}BhJ1MNm>j|9~cJ;&OPdc=bpY2v|5Mz2+if_EQy{*ku8f3aq$Mg9> zppnYErS?CrZP$ z*AqG~ELVP0{tCRGZ2iSFzcgSS4ZiX6&9-v4`J(pxuE59Sd;RM}mfHWgmPhEkTww}f zW!y<8aFIRU?2Ze?JihUA-CHd)msBa%s7i$VUf1@1T>ZP$*AqG~5>oN!I{C;tr?}3Q zr0gRT#W!BY%M=x+e9q*28&q@)7NRa&YX9R}9-;GM`K@MWUEqjPDSewu9lu{JzVSk@ zYC_K}lR0^<-AZpCb*c)k{$1+p37r>(#iQB}_Rrt1;;gL ziy`9BQ-VHA?SEX$BXnL4lg8x#+VOL{Sg|$Dh2tGJ@Qs)7tWA5UD))MO$z&a74=ZxR z)xS%9J)!dwCvQ^0v2Ay5!XX{X=-`y?_{PgX`-|_rDqL5uG=-%U}fiHuS@QoK?-j=3<=O@ySW#zsNcwAbDtACgJdP3)Ax44{-#mjfk zi+K1JCFbXw@r@VPN4GobjpI+PEjgLa=rugK)c(h{JVNIs{z$Sw)hh~OGS^pWXHCd? zdnc0D@y1Wo-{QMZv{wDJ4zBis*TeNAT)%gQ=j~uE54I1=6=nT{CdS7f*^zw^bu0+3 zN6GMh$csif?{$|?cZlyR9*sNc`RhK`^+s6Va?9{Mj{%phKjWN!)W%93PdDx|uUl$f zu%5pGd13xVp{Yz8!kS1cUd(fKYKWgnCt`WJOQikIciUr_Bs=?R^e0~PDILO!*J zJZLeXJ1(c3-gV26n~B!hb@!1+ZxlD^{c*f3cm9In0i`E&UNoAg^CD`0s~jYEd8J(_ z?l#yUH`7)_X~oo{V$iXBb1=$2DE(5$m*vi1Q2jya37wayH8-7p=&(w08y1^CjL-QA z|KE;vyj*HtV0l>Ehw?wJddQ3atG%8ZS^B82kl%iCpsb|~-}9Hm!{^t;?HNfW3V)d< zN4#N>_u((8$2^<1&sBxoQ+<%R6RSUu!G+y3KaI`Tn`IMHjVG!Gg{Fe#FK*;!x-9LOrw}t}^8Dzy6;MY%e^I7xjM| zLO*|(WO(@YgUAOl+(F;u-}yfchW>)~L&=aIv)ydpx=u_}vlBliUb+;Pt1K6#-$H*ud!S@|=S4Ht-=)IPo`pA)S>k(0(m&3V zL5)X*&Wo$_l}-Izx6e#|*pOcFyyhO({~O{vFL3?^pO3$tmt-N*)0TeDEvY$c>_>Oh zo2~Nl@Bgz!<-;((1UQgCly$ag_(-IEtUB!>Ilhlay2e5SI)Ns{(R7+7FUW_Fp#BdF zpEoGudwhXBpvEWIf5;1=kYyL~tD|+Sh>o}|L$*u`7a!=P`nV@c=YD>7i)$KV`L4Lxe5k$92KQ9JA}L>=&7TV zqSr{vJ}-y%K*@v_U*LQQmCq1*d^x7}gtD{u6q9Nu4LHd9PbkO>fEmh31CndX&AO zeV~l*yuk4X_U~`!wZWtJ1GR#n9il%Fw>>`y;4F$-}c&-v)TY3-`X< z*UGssRSaIg)ayst5xMySzr8MHn)M6jGN-TkK@)e?DO~x0*F%4!E-CG+to)R5n-j9v2gg-b@y*yhd+B$SN=Y&P#i@**t4O+Rvzt8PDmr z@AA}{YqoH?G|wkF?0&moA$Ak;fRdpQ8`*F>GVSFL9{008s1M&jxhpW8Oyx5ky z7k4ByhdmRGOBRq!%fz+)tGtBie6~tyu@~F&#B4+7Wx9|$D*ZhoG-Mh~L=l}gPUyTq|Dxp1292^_cJa?2XwQ~Cb1!_2x}MN^f&VA_+jt?h zRuzi$n|R$H67?xizv3V3kE`+JfAg27b>Z{@0^44jr-$s19XrV#)uQ>JOR~Ysxp@0@ zM$FbZn4h3z`2788`3tV&5$q2t|0VSJBE$aR$9PbH5c62_=82RLEkfr7`X3cv;Prny zFYy0|gvJZ5>(h`ADF5xe^k1l%A@loSxPk6<)^Mki2%+%;{f+DUI(Yxz&Wp+}o3JNr z2kWSLrs-)rjtt-TZ4wUg`JH$6x6Ecc>PA&mz5?~ozJFT&0^0{=)cX}w{tNRLLR&wA z|5sgZUU1!?jq84Isvdz;$#cH-qO$v?lUuDtAP-n&TzMh1^?+?ZRFl@6`(+U1F!C@V z>(at<^Mb3taODNp@=@ynu)M#Wm$kPoQn*!R>BTOki$^e&u@gEkSo0TLc_Fm%2>!nr zo<{~{_`IQH)c0Me`%(VIb$mnBhdR#?bwA8syuQ=%{m$6DY2s21g~Vpb`IX*ZS24=- zOl?MYC}Tik4Ud_gpqX~?1>Wl2xe7!sMtL$}y~g}*pCg?%+xpiKmF%OC?uXwWv6L_r z@wd-Pl2+4omSl2R!Skj5HeR0jvMCml&DZtFZAdr1Qpk_u1L_H#7f}{_+UG%Z=^|!P zL+UqK55e<-{x)8q|8b2sgw6~6KRi7Di0RgF(d`LgytsYttU8%DvuRGFgY& z!;0Ld6`lMy3aI3#wK1?ARThtd?{85ud>*mRkKpi?clk1GG3pOepL z^*Qb8-MqVBsj#`P^!y0x{{!A_VlOPY5^($Sq-2Hnq|5m~ofoYCvqt$B@_>?2<>`Nl zUvRAXC`=}^Cs#1x+BJOVrOnW|Pi@lSrSa$7shCg4fBxyb!1bs$O%*l=4<3 zR|Pe0qZ`C`UIyAVN1i%*+*Ar-T?tlZJkyVGnj^nW@pb0x<~ zyT!JqMcusAd25<45Z`&xtrk*eu0EChdUstF&u^u*f~M!0^k}S-EP=!Vkum;>rtr zz8v)1c54SmC6l+#np|Y~MFx3-*FzcK<4bGV%xA{z*mA~gC0-%p!3Oxw%LTzig+S#m zVH+eV+I?jT)`<12p;tBT9yifW+$|Y1HVyrY>wFsKr#Wig(Fs@gmGDRf)2hG|?_S4p%rbftMo$e0cL zLgB7o8PA$IQaS(NuxIGd^cI@zy*9*YxKTVGOee2CI*UwkIxy5=I!TDbqEioU-0 z_xt!3X`_@ILEAF*mYNrM-rM5`Os-u;b=E#Ew#uVVo9Ll^AumCRHhB#PV?1_;^u`&5 zaLB>ySDF`{W9=W0Ew&jLUAu8~&Q&uV@{=I)Xrx9vmWn#)Ud)C2@)9e}OVm*4>z^qV z8$Vnrl58dxOZ!Av!5wiE{gR7smzL%%{nh;`l z#>S;1EbO&)%zfE-En+^CjsY(d$AmDg<>mzyzwwQiz5`_&(v_H{oU%GQ+am~x~R%1+A>i?C)_yXetO8&3s)2R0csQ(MV^*q@Am5wj4eYpOwoZ&*? zX&2JHUzAx@tUuOyRo&ZQXj$oO#Gp*GJ&{9`NCn1w`23^%jc>d_9#H(i{zHEd8ZW%?T=%O&o}j&P zjV~~MSvL7G)6JFtlsmrl@C7N z9+8-RDL%W=i0kX(b8)|sJfbIc>qp;IYP9CQclD6DQd1#MP4XhKet7mpvdW;%wd(b7 zess(r(p;>zJo8x3{ZaGA0@~Lk)eEodBBBqSy}X9=(3&~uKV0n%=hLYB;rMG0=7!iMr#l#FWMpZ0ziwinm@CF7`~k5*Xn3%Nzo0yBFbRda{0m*09t zE9nd!&p%|rqYlf*RmL^G!1Cev5A{pU3*Ujn+q31x{-SzZI_qC`@SUa+n=9@3FHo zv$yL9DevLD)TQPH#uu1BL3=}9{_FKdf7TsIGU3WsI|hQ>WV%)SP%>;kl;3omv*X;L z9clUOn6Eu=)WMbJ1?zgFU{habVWfKyml;Rep-2;z<>qDF^0n@Esed< zzL1yydOQmL@Md4+M98Mc73l{34WCb-WY~Tvzv--~)unn9r?bCN(CZZ?!%Fjl>v#n7 zhky8I^rOKEIoYRCu79 zo=;}Ed4b_z$bj7^+D{E;lb&|4#(>??GN*{8?^Z$Rpop&A-?hYpBe^;`6X8fY5l!l^83v z@+S%J;>exvY!KQwambNxHg?^m63f%v<>a%@%gxK-PZW|T^m_-{^=z~9Cw7>?=M^Qx z^}v%UXPNo z-j6CD>f!w8MWXVF)<^CYz589Jor*$LCYq?UmF=qHDcfv7hxIbqT6XZWiO1yL;&WtE{@Zxr zyyfuu7D>{jYrD$1(&H^&qh!bjlnIR&g%bTBsSgXXXPFM{>LZg^lFj0=Qa^iY#8aA^ zdspq#6Igk{bw2~H@fKbW$0O)Jl-yrl8xn7_ElQin&%rh~lo=(X$~$*!&%0Pf;14ilnlos+FxfA7I>}_J2<3XwNGT%7fi3eB(}xLaq_nT=M3e} zfj^xW)O;Fc52#0tKTr?vhccn@Vw$V!PgIfK)&07-?MI=2!=9}IxB1$b$!H>cnSVJo ze!$8LuFnIm*F*ncjW2M09VNs1p$zBKSo??de%L;g4C6~3m)}7NzipgCmBF_+j})12z?Qlpn~s=pDn)a#A#{VS^d z@cljNdZ>rv5&U1tMA)I90dvKl>CALUH<4W4GRAEy@Z$uXs;B#HdR6VpCvZIr*Y8PS zd_~0<=^_8$8Hqy+bR!|o_3;K`uswg$O~K#koB(Rzu%WrImz+xkjlw}Vib{_S|rz7i4X4l@wIw9 zaR!!$t4!$YjlnH~op0S`?X!hw-mRA^h+Jx3Q27W}USK?0ZeC!0kS9Xth0CB#ga5(N zgs=2e)2FPSzsAZ7VFGjj=Qo2lC zJnCOI9rs`Fmy&-Lb^n`cu+wpyL0hMNd+VV6ag`x2F#ZgaRef_>`_44|2^;I}l&?2o z{)TIP@OnbuFXj1$W+ZfBeMF0R+nJm7a_Lxkf%yuQp?$IP0^`?m^8)LG{eisH$9Yro zB$Kz~CQY|#-Vw^j_xRGsb+-4#q+K*$;?0-WJ7-6inin`eLHlCm1;&r%<^_&_us?*( zON_q#4=a;~Bn^AZ6Qiwzzp?TH`9M97Sb2f|TW(%Z`3vMFUVIBR(OaR>lIz=z>UDV% z@IAh8)v$>P4|nQ^`o|89P1W7S$_wNJKL7A}#L5fw-*WSU+MfY=f$w+motKWx8R8$I z*Emf42M?%8j$8iM`@Pf5e{NamA2L|;jAbrL-&z{-gsTjBf$_)t$CaGEw}y&cN<^*y!oBTPyrNwv%OgE%)=i)Mhp_Sj`9M97Sb2f|TW(%pzVx^8QraQj(A8P*ny+j> zPMa#vkChk52YmjaeX;Ta{kPn_pz>W9UkEMVRoXTA(^~p&1vgoC>Wqh4=70UY8ohJh ze82XYPW7r_^|jT+F_0%*WylNUNpbOUVVqlpcb)?)*V%_Jc&$n)sBRq1I^oK$%J=M* zM-Q&`!Rz7oYL|aCTefTDJ7>l^t2pPfspEV8a)2XK>d@KJ0=id{x~~UqNwM+*^IIrG z`(ot<#aKHYqgs6Qu6}y8E9Xuyuk5pxp{&466_D; zCAj^P7;}c>WN($n0gr38l=vQBDjPn3y*C+qBSJg9anVg;6e}-~57hIBl^5v0<>m#B zZzx{o^BfNO(^33#krZ&IoZ!2L@4OUQ$;+r;_ShD3!2DhAX!s_hoVd4c}z&In=HGu-Vqt?tt-`*>)(W`b*- z+S<;m_p`=&cwCFe;P*19{=)Xv_xMn==2@k>^mBSV*bp*sCxuV*^3%EaYIDwGTv-(C z_#R*Q*U4B-o=FkZjtr`A&X04zH(p@;!pe&^^~-Zx+J5BP-jZ+$=k?wSc|gg8&P(*p zJHE$$eU)Fl`Q3%qJ8tdY&I`^F5T@^rHnUFEGD_^Cf6stobe+Kd|O6Q7xJex+ELCoQt7jeC)Ic5V&U3@VeV-o=zM~~|SpSC`cr`@&63pQSizBAIfN^d?p z@O0pP{ttO?LgQsar9$HI&1}a%oq6vfc|NUubv@wU&rgBxi{bbR*8}n-t_}IJa5Gdg ze#+v0ky?T8;}Hk*hxXK{?w>|$zkZW_S-Yuedeeklo{e1F%%uxc_l1w(x*h=Shmvuf zf57rk`3t=Mzm|g%ZSoop#(3-w>5VfA;gG}k|C4ZTt{bw(jGOiX;7R1&8xp zBvNh42zT*o2!6Sf%J9%g{mWiIjR;Cyd4c|g&p*^VUk|3q@4xtwC274#lsHc~)T3k+ zFJ}+)x)drIxfMR4f6=C$n4^DZaB7cSbDrq0uT;g288`R(M^#Yomol%PJj_Y|xl0-T zFB;0I|HGkpf$sxR{eyZq{zCmy%kVt1ebq8YnBQyu3O}`e z#;3Hg&yOk;k9ii1-FJ+P8xGl94!<8l)eq<2aKAV7H@=-;S1aKuc7o3R;c&bCKoP~O z(*Jrq%CNTK+}b`DTGGTy?46r@8s!hDN5z-b@#x>@d(fUxhVf-0&)%XUXI6jA@RO}Y zf}+w+m(Lx{2R<~7`OLJaCrZRG_jm-`x76`v6Km?}_rxc&dwCaglA}E8X#?fsincv- zKm4w*k7D}Rn$~qUNAjt*bXlHC;HCRECdtuFdsb>bUMqv4*XLn&mFN9)X^Spur-B8W z`TdBEcf<`8`-RV*N^BIFQr3GPmnj0k9NTRz<37r&>n;~9y!Z12R!dD z@Q7J#JK8z!`269Ky(wF*(^)865}Bju9dQ1i4U7+{`OzlENBc8fvf^e66iCwjt81YB zQ8M%&%wH_cNex|IzNof4+gJ6F7*=4Vhkm}bC!AWn}|HOtvX z1*vGrayEPy}r}&{m$6DY2s21g~Vpbd85n5 z4BzF*Y6fWEBu%}E5QehU!8A)%wmVy%PyAwIW@uXnd4{|YH6+IC<`-qGEtK|s?I->a z-{(hbPc{ok+s}E;4~ab%A^$y6`c}pack-+SuK5cbub>R=i}m~$xW5L* z7Z~5(0zU9Rr=5FSD*Nhz7Vf&yA>w|hI6WV!Xw;YF6 z+}AmBw2=y`cK7CT`pO75QYh+9{|r)K^nu?F;Yh zw{kmVaDsk9AAV$0?b3(yaeN<- z_yjIJK0sx(zN0*_;7!+s39Rb@FrGje+86730Q4W^1?D#j-EZS}3A*VVTBF$+7!=b` zKGwx;H_g~$6Kp}#og~Nt+XrP>AJoquJdyRY=}V?2ulhB!M&(NQ|66?LCHI!^5A&p7 zs$Z{{e<4`ZFVdmn;Bj2%N01LFL;EiGcm(rr3F?_kQH`V@l}QvV zPPgo_C0kfO+rECpH74l8g!o!5JJ>!bqj+(z$?W*}{>_;;n){}MYt+6I+IZy2Q?+a8 z%-BUcR*R7);*g!|!abX9a<$`#6K!@HA7VSO+`KIJcm#P-Vj5n|yx2Bw+0bRxY+JjI z?c^58>uEv{KHhEZ7W%;?1o?n6iWfp3kB&2KVwb;Ob?s&KC;2yYrL5n^kPj%s z@}Qp3$D`!O%DU$$);tZ>Y7K3yKDnSgZY5DK&g7pfd&hOnE$z*a7ib?i-oX8@P!I24 z9glE(UyrgUv@cc}t_KJmGrl-wCtM*vA3`-;x#dt5d0AiFM*4cqBB4zOyz)*iH!rK> z5q|M2oEwISvMha@l@XsU2S%NpW0bGsOhM9yzvA{^jOnbv(i^UIdFN-xMas z>BM@){lOvQdzo+mPakl?WqmB_V~?=3g_+2+#5o)tV%5# zQ(rXVJ1;4-!IPP!D)FX8Z*PShQO-?j-}g~~-I;dt%-u(Ms*ktr*Z1iPb+y+0yzlsL zml@4|w?Mu)IRU0e~X$S8;v63!gXC zd;(q%;}_IJ8D0vQkt+2cJ4f$Ebx_^4y--l&Qu)XW zi;`@1t-B;xc|m=Dfz>`JUa*#r>-}r=eGf=G-mA9$l$zacL@(scc0|efP-nq!)^Mh9 zRY^A3UR=w^dOxo9L0-n@KBZSkuazzzc@%Q#Fsr`_k6N>k@woP!eb=Xk@IsZdA-N%_3f1G~QH&XHcW{8h1n2xlBg( zzRkIzL3_4LeLgYRw93oB^YgdyLLuQTc&?K)>D=Avi67Ok2WpeJ`Qq;e>I~PEYJBM9 z)?MXgl@|xGZ%tX2kDk^grdz)c=c*1razgd8+whgp)0=I73>?g7n<`W*NwMY~@8@P+ z^jB{|c>8*hhX@@RPvf^R*ktR(VDsPxuJm||*C-j4zr0HgaL|nY9w1nrT_YRbIEOV~ z#d<%gy-*M5M+cNW?&V0&Nu`HKy)j#4j)woE{?mDZ_QN_qswnFpG%-H@$d2rTsAEBJ zJxYf5g)*Vdk8&LfQy!2I&k?7m_}6PnyveCDmE9kq_o!;_Nm<5I0r|g;7u5SXsE2$& znLVP7^n+Xi+sTT|sliBtn~-mKJxa!UKdOAFhw&xdBa83*IWM(H&G@0`y>89HdSQa= znQ!d5Ys=d3^bo1upUw;HA1c1U_r1{n@clMQhV?@^aZRN`&|OB(vgAp|ZNy){WA!)I z`(gV~GUTPKD!b|K>2>DDY0p9p`f46;>@X$Qp*YsZx!cizY{qkz(0D=FXQ}msHXg05 z;c$Kb^hcJY!sv$1Y{v7eyx_LK0L2%f@xm?~#1iMAZW8nPlH@KK{?E=8uaff*Tp<1F zk{3#uaOA_E9$%k5K;YFRu-WH`x}YP2}fbn;XiEl2PUL zRKK!#(#zYguk@kA`+oU0tm6sR`%&$MdN>{tAHPFFYk!}YPlstX`jSeA>CB_1)H%8U z^B*2I9T9m0a6bbq54Iof|5)k$FYtSk?%{nr(i?SzhKRz?F<(rNp0&T|`YqI|s4C)R zsHje$59}ZOp1O|6>txrQ;Y?q8-9mQ4wFP)R>^~~L;M;i~6Z)0+pN!rJAHPSHZ=~F| zcsG---!ol_J)ZW*27KoQ?r-wC>=+PW@LyMX&AB-hnBM_QmzQbyyzU zzX|h~|C*PXh+Q64kG0DVzjyF);;JBp=hwk}5cUTp!~USI$Et_<%N<=2pE}wh)mrjz zPnzlP9bM}EyQuc|oeb*sskHReoE&R&5!v_zbv@L>_bDsQ3uUC=g7=|hr4lVN&W0Jg zei&cy{d-tTV}7~Qns-A=3p>{L7@oWIO157zsa52pPE_5|vVb+OmwPf!xR9?*X$HyBxvbVtQBNS-ony9pu?W*D_-tvsrlPW)2?(qn= z534<}^1|OzT=>c`J0e>-L}IfSJ3mT>?T0d<@j`xmra@rK#)!wP%zcT;rTY%+WwN#G z;Aaz$$-Twr$fo?a@q*eP1@({*C=(hlLXUqPD$>VSIu9L&>Q1BB)1|ckb4ncd?4f52iHev^wl(>|lFQ_d`9_ z`(b$~8IDJ`XD^)!A2dEix$Ec^C#BHma6jgs&I@Wjjj{*SqsAYohxbF7(0KXe)_eDP zWedYuS9;qD`GJ}}TLo_OwK0>?MEElQa%%j5l^0x}2VAd*{=phwQ2V2x9@Yl|g??GMgw+lTMG!1V&u_x5nSLCKI0C=(hlUQE+22Kp~IWO)$% z%xSuy~$?JJO%XjpR1ZrJwlD3mgwMWBpw!4DDHXGnpm6ha`DH|59nCttoBG zr~P4lI5&(h`~ymc_d}V`cyYh}Bj)m`JI#E*8*i#83I7%m)$f!ev^qmm_cjqrKQu=@ zk1+p&`3ro$p*^7t^9`s+$uQqNY4AP5u8Dt^`VEBv>6DG|A%AM3%qx>Gsdqm-a`F0$ zpp@xr+X{JeHO|VqaGmzmXocl77;ihPOBy}&*g-$KtMd0X_`e%?J?uY<7kt}ack8&2 z?ADvsEz@DLyq+QPf&cY>2Cnl5{fEBrtL$TW_L?NZ>>vL_g#JLukQd0`wVPTFN&aF+ zH1kP^!`|2U28g%3;Cm_g)sBO?tRsMJ992F_Pw4v@RK#>lm|3Nc^7TL2>rb|OaH)BL z@dw%)D=(0T<>m#}2m3?lywoog9+zob{C4b)P?)Xm?aNqsfqXz2+7~M?aQ?I0yukWk ze;_aY!wu$AjD`xko=|W{k2o{n`}*|8Pgw_#3`n^-3H$TxtQYTDYF<#!BUWBe?{{JS zSjQt&K1S%gJmRT&o>DuSeYSa1@aN}ATv&O5{y{yDSb2f|TkiM*_uHW23$L&a<<5?q zwxyLJ>1Mx6BJn-GWOS$XUEwhA+Uii_+f^z%^1)?9i`lZ|>je_OjDiivC%&bj{>%KcHA5?X!c?UKpHTYF^;@1nrBJ7hLlftnmeo zf3QD<&P%49mihJS4k9I0C#6SO#|p6W0{K8ak63wu{#)+&g34bYFY)4AsEOVRjh0;B zZd9+!lYsB}OB{Qj_wWF^9Cy~kPrC$!{-qzFVKI>%?n&#fc=5I!1ufO z&dc-g61s$L7a7sM`87@75?=n--;-edpAGaE&ZVeboxiG$SPjj#dlrRD|ZGtjt& zkPrC$L;GUo1^REfc|qm7Fuo94zPmkaEBn;Om#XA@x)dbcICuZo-@{`4A0Olo@&b8n zJ5Z(LH}-6CvHKE#=zHCnms|HLUK)MOvq?%I?*cV*HY^WU8Ga9Y`B$@LyGFiqW~{S{ zb1s`YzUMF0Lcb*vMc6H0UEW)_b7%c9R$gF!3uS13th~T@w%okH`e1(uotM5N&P6xg zw9f0T5fYniC~#eBUSK{0?TeKc7(bSq7nm=>{y<)W+b@YRXE;vwR(TxoxMoX<@9||Y z=)1|=?H9-296C91i)@QT%d|6mX`T;Jb$J zyj=ZAE%)%~IwdakoZg>f7ms7*1@Zx(e`sHggH!rAs7seMtJI~{8-`cyAE+;D5 z?ZT(xaQjXI-0uzZ5xBn@>S4Tryd>M+5fZ-L8T~#XcVLa> zU?kL|WLO{M1;!twA2tS@Wz?UHUma9&891xRb)CdHLyFe6=~}F|I5Mc6^U7j~2h0H(g~ZXx*+b#c-2T z7vFe+@e3<2@cDo|pkzYlMfmQvRO1L_H#7o(jDzxI|L z%e5m3Bys?-oHKH)jHjpTTgY%-_yF?j=|xi(%;StYW{-apU~sW{?T_4yYC&Y z`l8DGzT^54ORT)0oh%CNss zztl23FQ}}p^2d}ytDeT%1yYVrClpqB`Dk!LPPczI56yOy*^EGFf0Vyqd?7SmxN0?n z$r`VS9T7Yfecrp6UNarfO`Ru^cf%o}8tX(KsI^J%Q>ji~uF zTra@7Uka{oLVLsY#@3sD7n++@#$+$jwZM^ceXZur39EM1bcn`NMp8I{1Ew(R_X>-pn>EM@?o;6{PxA`n&;Q5BI z{%5{yiiKqJbv<$$(v7ba{^NWjt~(d^>^;AK_rsgISsR$!TM2D_`r|vVGQHQ^S-1^y z-1N78=X#){lbttyC&c%9(~j(pZ34LR0__W*f2eo99!!(pfAJ$r(t437ah`CfN69E& zqU26LFehDDACU~{e)W`TrTYe|s<@+G^qd5Fo?dMZ` zmr3{*h6~2B$e(5v%`?OL$1RTwc(04sRSG^M65P_*3-u^oqFOW`bV)XNITvrA&WPDM z2k%G8@OedDk5v!HqdIL0gJB+<;!k0>b4;$X8NhgfwZ6aoenQJ%w%VpQ&Lw9CbbLA) z?Di`4_kTSeWmwyAZf&0nEoovU_RdW{jVoWM__8`4;g+96`@{H>WiukF?ntI~`rNdZ z^}zQn@cky%@d(!cx5+CVU$Bl}kQXnSYo3uCFKcp4t|h)OG(x?~3%2JGJ`aS(%lgv} zMHh=Dk}Ai7PRUv|-OHJ5$oJdwis8wb7OI4ziypYf7hLB@n;0MM&veO(n<-ErN%ya= zf%ZnpsPRZbEv>rsBxP%&oKxctSx-K<-dI8BTTd)hPOWKNzq|ByHBX3U-H$8po!474 zNSxiq3D5I}^?y+d)A?+b(qb>R<%!vb&dX4b%6IX7KCN5#_U!#@r-i0^2J(0=O^XxS z{D_Kk=P!#*dI#R@w9M?Df0Ik1$TYrzC&lbD?U@4q_g;Znx!(Dpj$~9yUaj zT3)bTnBaQm8+-2BvNk+DM5+hn&4G?j}xy4 z86uuJ?R%HgM6%n;Aw8ohsDP~ubwAW&&0k@8C>ioH>&85LO7*O<@IZgxx>xV{AurIM zu)QdL@QoMAIi=UqJ6Hl!Vz1|Aa|ew>KA;|DZ$jh6zs$hRFuEh%h`&L+YwH3riWg`f z6hHXJ3yKdIZ=gM(OlZ8ku3FrytDIv)VsUc(VopLCPtS{=JJrN5=t+scOJUZPTki1) zo(Bl+jjN1xJc9Ehf7TsIGU3WsI|hQ>WV%)Spp0tYcakn;E#vhAU60t+K0o&i!T0&m zWo`D6Gj4r17ej5LDh6Z^LSB}8Jo?jkvA<&S@o?YcLcz)*i;F#%L?Itg|F`j?XD%9L zePq)&=P9CgrmsX~C|;m_u#QK68ZRh5Eb`v^4f@>iIW_lLmU4>)+kR@{v>$y^toSydmW<|%z+9Yni z_`88R!!@NEANsg;S9$s0`7`7PWp6^`;2lQr_g( zk@fq`a>|*{iP^*Vk67nNsP6%xy>T6%;q@?of%T*QKW)Kg61I*>yHrtv+o!OhJQgLx z_HR1BU%JnonNgtm=sr8{0b$4sY%je3Pm^K(ax3A)MujzJb+dvs9=x~q5_D}Z6x6s> zKJvn%B%599E(um%mOI~t_J_Ru*Y;nd?|VSn@m{s{r_}6rBYGikwj)Z;hdK*>vxYN; zt4gxL_Tt(;toP$uALQkQXU0f_=?9f$U86j!ucX`H{OC{T1@<2+FEF1)$*_JXFLiub zX2uiYHAURjhW?dapNJ zlCxs%bjkf%IGyuN-ko5^i?6< z+>$cGZaU(gqOo13^^HHB7id4M^P`Hg{y`Jt zo zmtzR`kNxSq!2Y7*3w+-T{SVjMQ8KI_%86?#4TA16a+W1eGHxUO`W>skvEC2chms*L zb6ZJwyA*1ui{|y*axnGa+Sp-Au0wIGk8`)90ojb_ETQp&vd>cM32i)zyFnZ1R)3si z{TD~KiHA*(S9!sG6fCWjiTXSK%~k*`&h@*=u>I@d)}8%KhcFA@L^LqO^(p9Bgw#nNc#lAId$|uPmPQ z^7iX1edzGMU%n0Nc!KqQ*gljD$0Kc_xQ6u3qFIVpx7v4q<@y<6;xp0hl0|jwH01#ACTnispfT_4jl1z9(Tyl4-%-?Rm;A1(L(I=H_8et(U!FSH-l z_yY4^l#FU0#*h&lGG&`@KRb9KMe^5!pC{khV- z2&gp%+_$_K#N5q%@0yWg`zkN1yv%R1N@(f#J2t~3Uk~F;|8Rr36r-WSt|t`S(Id_b z@Ovtl@51K;@{TKS>Eh4z)ZK4<^!C?Uw>VaA3d={yuzu8dgtb0Ydu$@~>c|Geg(;dh z+(<`NPaT~Uy+&I0c{wZ}CBuAYrFof& z*yU06Si9`-dj}sUt_o6kJ|@fuQT>B@Xm6-rY8mqK<)u-m-}~QB@*N+Vj?>wEx|>PY z@0qT|9#8vY^02N`!*a)$zLP=SK9!c9nv-K~E+QMB;M!mKzILT~p^Wrf@II8RRH8-3 z*)U_*5914r-?;X7rFq#If9FooWT?&!pMRAwy*tV@oESf(!e5cWy`4DZPv-@m z?+bZ>_FeAr=y~ROHkq5h>+bSO^&FE?${{pfUf4WvbFEb>R~*n)|0(owp_8Y;7}_&n?iAT(a&nR{6Z zBYI6FiaPj8Ud@)*j<1cRIIgjoVuE3h9NQ@Wa`STd6NTgn{oX-#J=?7Oi5(^=e?UFz z{5lw4u;xp!ekjB9;9>rP@8ePS*lX+T?J7}1l==)`eD7SY4Y4;{zw@C^)IAROhUQAG z<>m$28~PXOQ8FsNpz?9leix`mwP!&8o!nq#LDC%+(~QTmx6-io59|G?_Ch_(cc<(` z8fL6QEaW-XnlX~hl}$8JX)D`R#Z$cH8LcN(e)PBT0{1D9(K> zQeit@FIUriSTB>UWd}c-cuejsK1Vj?zl|5v{!6Hbd_bAdcwzq7b*06={fClK>(Nk;D(~E_J?~-_l^;xL z&}ntp&)C8CqV9)!toOt6P%<2kEFAk3#*XYH&hjY0t;1-0KBmJizx^MmE)1vQ_B z?M2C`@dxTr3A8UL;?Z1S2SU;5Ed>U*2u-*^bhmv7@2~)YaYjEx0#koa`wz*ES?_zux z&&KT;@9_~`P}WtlxC7r`Lwi9PYkWbqAEn323(QYYGHlOlyWMU-)Iw9v^{X7Ia6Ml| zXuOEtTkka<`+L$f;bej8jH+@)5bH}Xcf+dlECqaFNw!g|yf}QmMUr&s+OBf0^mvQc zke|Pem&%@qQ$MZu-=TiE2xQnfvq z_M(dcb=l7NyvFDWng4pdk?Z_H|DiAZD*ITTy(Wn;`^Wzfp+8VE9FO35zfsKXn&kIK zB=)IHjMqEwGsl}LzV4eR7qY**mxcQcRX?hHl%CMn8|@0$X&s}+I%DMp=D*Ni(7srCLG5RN z^<(7))(86oc|q+*gZHCk*dNsOSoLszG(Bs(Xp~8%7(Ms9-jwUT-cs{|dLFUzf_nb~ z?TeKcxE>DuLFl}ws|~rEDli4t-Tp3go9%itR$k0@vwiD2F-_4rOr+N>%SefO9ch{U@O?fs}UU1D{u<`=^x7_gsmA^n<;Qv?fJ-#@|rjaCU895u} z>HFMJk@y%^UUH|7CRS?&IbtV-QJodutN_&j3e1^REfc|onWLtfze5x(<6TK>FB zi(>x7x#k^j`ySjs{a^3*PBZ_xWubq_V9hg@xhQ>WX~+|{q2-*PTvY#I-(nJ)!USJ~myrafjFTBXbA#PHnlr_7YZJaLsqI z@&fbE<>m#}hvH?JjDgzIOg_wB=jma3@&n=c9$!42uAi1;39ye1OYiLKKdrRXyuf@D z+7~M?aJ*Y?USPfi`vc<(q47d)XOq2gLcgfX)R3z-c-s_KUU1EKvGM}_x7@tIeCcoF zMb^_Vx;4JbGO<#&q|3d`1}iVP=DS#Vf&N==UQqcij4y%rpbAq<; zyvBe1y&Ao9-+aIJnNIbpVD+`t#4+%B#Z`v9zY+T~x(mhBq(&Y7{!D$coV>iC|&Y~Q$-qjG~$o0vTj^S7HLrC52vHQ&X`3*=$B zd4cu)ZM?Ma@gB{+p=4FE&Q7ZDLAk+F^McBEvGRh-ccFi=#uu0`p?C>yza++-;W*h_ z<#E8{nk^;1#}~JOX7ShAb^B6BowhOYlyhL^1=oBRD=*N0%N<`}zJ%gsKF{HhKOMy{ z7fAtU$_c(}_|8jbZIvL2#GVURRH+_5oFRLKl^0y|U97x7|1CE!sC*aZFNF5JeY75h z{?$ukBJ@Uuue~(_^se&woM$ZFR5~rl*;DyhbR5_38)5!}8jq4~?+6Ls?u>q)kUOx( zaxfA;uP7Prhl0Go@yb_5xRF9pcPh84KSIms*Hf0o&l~mX&xIqGGxk7N|{R~ z2^o^P$ebZkWTp_2AyX7mrbLF2d7k_I{`}tSb6xLqy{_}>zVDaYpX=J^th3MFkGx8w;h&D+r0d5 zUXbF=R_EoynbN_7x+$+a#D7~(S`dY8^YT|-p#GXlX_T58*U(sOFo~^_=^6a5<)cIG z3jua-M;!MNjqUqn7bb?57fk2VX!R}}@7UHaP#+=f=f2hBi~Piho6depHMQYXC#{$n z&23)(cYKL%(@*@a)a-fd4eQd&*xjrDwfJ(5{iUhnjzncv@^x`}AB7uec|n?Q!uCZQ zU*LQf+wleZN4h^4Uk;>RSzc(!8ftzJ$N8O~KnK_7(_KSjbuWkocn>L0tiRrfy0Fd5 zU*pR*FD1|a-~S0$*3Dh`*iBfoZu4p*s(ItOYZcetL9A~VLw z-8S0Zw3S*Nx%y7+2izYDw%4}(zj=b~1K*c|<(S$qKVo`5rpLqY?N!E8{l$JAO0fG{ z(t7rza5CEXg6Vu3?Rq29d>Y&DGr;vt*#2<6u|3Gow6*o*oC%kS>#!^Saa@lt=H2() z^Hwafk~H&NC7zWpragAZ(&qM>oTyVh#4YgI2I=`Xi#K}6k`T+^`pL)tke6Z2P=lYM~OX; zGQRWbRR#qWgRTj@-dkU8&0?ap#sPJTjEi@Q#gO*L6nt#6pU0S=^J&oeEDDaU_N}%) z{bF(I@Kml{vR=yRNi%Zo`~$1{Pe#NYS(bmUS*xeGU&oXen9tz&hy8KuK?rT(h)wst zXXG-`3c?Yv9LYxFWzO!HxEE>id94sbnUJ=RL%VIbdivV0R+AGFTaZy&u8V5Wci5H~jH_#un;rN8**tTIlx=~4> zF|l6r!&KvQpUeAbHrU_TzW#sB-&WHv)pfj2k4q7Zz2s54wYq1@{O`_3FC82Oc6Y5l zDsADy_sUN@iz!b?@nt(7VW!Vv`@{IcrhnsS*wNu8%5?6U&K>Lzw&M%B_J!@e)#8g| zjEp)}*(dRD_np0uQtOVx=iO-a3v9ptn*C4nf>!Uq`0_I+R6#1@JCAtpyzKIM>s2Y^ zIFeV?elK6^^f`}fR9j%m3#RiU8s=>NOxLWWgJI-cT?(6VaYi^P` zevvxT=sr+nqCMkpENH)A4d|vl=w=ZlT zu@P=6+Cecg?P-ZO{lCd7VS6IoA1wd7?+5ZCyYJers$hl;naj}=xipdX6%6diZ9d{U zFM37H!Yjv!vYY!G_*hFNPj-Ga&%v`Bz25n5_3_aZ0?$-?06aQ`b zsGj_a-mj1gWh><lxE~;nm}Hinz|p-P^XSo44l}yb|)voUOkn z!289ty|$14>+@kaKSJ9+P(Pyehjc#FyQZ9qczXiw?CyH>LDnQENPL@@zxFp$dm@!@ zHD1K8Xx17UbCB~HwR5{&r~k0c%Qi1-H1;WNBYtYj!WvC5z8sDdb2u6tWqqpt;zDTk zq*0a1@i(&`uVxc&L?umz@l+sH{%xLSo8v1~B(fIiF4pn&60YmrJ@dPcrpnVi%}=frSvRcXhxY^LN3i{& z{(|`o&UfMY(1!kCIke&Na6S#MAK2xcCB{7LOcq_KB)fje3i`XsZ5>X!$D~YC@t}8c zb45Io4bP`B=07s*&cQ6+s>0`d@Ru}(KKer|SZvq!+iG)~!Rm zuYPky?1?z7#0~3@epH>U;JO&)D>iCGKlv`Su_Gg-a%y{9>% z81LWC3%q}{ywC;QC`xueGAxjpeC#0G9swj9ULV@njxYZ-FDHWE$#%V+pI{dWDrK_m zqFK#k<{hTXe-yl*ezEVwc*`~~|C=Ak2eh{uFEP>7O+yBkR1fV=l^|_fTyJ=GP&7F% zz-+Rn>QAITM8`iWc#(%co`Ndr^wLaP`;UC9oGGdKmO@Qjh$I0 z@s!IpN7B!S(LaLk=OWoquR#0D3x5~=m{EU;iky1Yh>xpi^(xx)Vf~P7I6rchbdUSB zGeEcfwoHwwWM%!w)hfH4FP)bnpJ-lm&U6U;xAOwq5AFQuUHQnk^~Gb^&O{xuH(rG_ zA=yanz18&Y^`JNXrY+LVH{>gq8NUSV&8xYj${%T-U9`faxX1RUgF&AJnCFBoQ3o@CzBFb@~OUEA~qva8y4WaVM(;?v9i^8L24gtmv6Ovbc1Y? zfv{D5IG;^%=k8%G>1|&A_j)s?JZ&{z>UNTT415q4M*sMNh=M8c@mufe(h7x438!5P z9_>t#>-e|F7s@tPLc#CFOI+m(F4d|&1xWb_slP`m8p4vTS)xtw{9K&!A8{brNd5+D z>#n{Y5*e}3>iFiBP{D#WpP)S-slKor<|FminMiG#I3KeKdbuF2#>;Sh8J@pwV-|n5 zT71c+Q2E>$nm2GL=}KACUcX|Pk1+i{0P=+C`ZT8FM}TeY@vz(xiSM@`^HnS*yg(aY zVExhBTa6cu$7-e1#^=f2DypT0noKrAUSK|g{fQKhws|q`c>S4zKXIdtSvR><0=6Hf zJfb}x)9b-}Bpul!EnsqE^;)?xT~(^saU@>g^0>#MP)n7vRf|i|nVu>m#gN&3*XY8v!V0t}x zd}V!~q0>EUuJl5s`*$q+txv3L^^g@);vbJr2uPyUZGrn2!1Ix8I6je%M_Uegf&bgU zHZMr`2YG?<3F&^Je{A!DX?-9sE83wnft=F|Dah;d%q{qmXr|oyU@pOMJ z=!jFLzmRE1+v`;rV_o;Gv0HTfPsbN(D!g30JyH4+L`yxQt4pP5-^Yf$!2N_|LYtdC ze}5Tx+aV!)t0}vt=dK)K)Li$W=EnOMOg&h>An}P*?igv_NHiWHP1Z^g_(F=_$*Q=YIHHmQ8Wwtk_yV4m+Aws}GN{vIta z&_A|$!8G12N3!3o$u%iI{ME(#rr3T3Pk-ubr6!xXz1M`BA?*#Z9)~ z7b9i`xD(Z+4|$UfJo_T~#5o{-=+g^Ecz>9VH>CKe+pl;wGhJqtwIyFu%r}(>>3a_( ze~_1GnW~jpy|O|PR#Q{_GL>)XW)nx*1mDxpl$Y5?aZ`R``$jj%{#IY8T<%)G8>9C3+6SS3w3zq7OC}B8@4BsKUfaqDJ;jf4fByB zn+)Y3l}g+>|Cys2Yb#%{%?r}~q2&eo$2KpRjt|I74wXge=EY#^I%S1e*@<7Dah;c; zfxXwB7_&zleQe!AQnhpk*LXq7M`+^4m)qV2oVt}k@-jUNE zXcKXr7e^z(n-$Y6O3ingCC>_l@F zHaT19ZHqS=E1#WfM~`d!??SzMvGL)tkPSMu4&}tM7lU$9*yaT(AED(1#xHF1f~kIi zy!^1S3lT8A692lWK>D(xvl*`Q^26`q5!J8Pz38${I4s{k!b8goeXq7`Gy{Um~x7sv-3 z|FC`0#uxbiHf-mkMm*0`-&d`chcg=2b5eZPVf~>Ec^S1ddXme`&7L9g;&H*sUK?EJ z#lp~gnM?)$F`@8fmlzA3kIzd;I`~fYxbT^-NIjQ&K=P;c?g@21KYuP3!Nt^JqTn^r zd`!nP>@Ud6T>X_Ng{5;A#0|;XK5zM-FISxZU0^jD&53y9@sDj@kn}Fve1vI!guF1TyWrdA#}qwW zwrP;rGfIZ*yfCHGw~Jk_zK!pYe_Nh$atSRjkPkTivCRvT-bKp`rg|6hQXouGymUC> z%>8u6H{2;S5xCCF^IX1(2W8wcb~Wu*H{<5IXI`b;v9)(wd{CJwVh>Ik4`Ta4qBQNTBNh+$m ztM=rZ<2o<;*-XiPAtvg4sHss|7Es>6Z(>3>_+47a_ef~Uidv~?iETMNxw;55k9;t zFxl#zLZ@dV)6l-xJOeX$Z6P1_TRji4?r&QW_g`q3J(2+ZVQRn2+hrK3!K?4I;!!Ww zGo>k7IL8^y;Lk;E-d?o&%~})Jd2v>b&>W#sHvXE}yz=JzMSirrKz$2s*#2mFf$mN*ahi9|)4?_`P|skS7ntv` z%?qY_7xHqcNhx92FvPE9-qTUAnt2G~&wX}HG zvypkQhO$~awTu7xpVqtFRih`e7?zA2IEsoMzI(oN_*8Jeccq<&{=#ghs|?j^$QP0g z^AV91h2Q2bfn}NFnW-x0)k3pb!=mQxKQdHyZzjFIo$(8P?}6kWshlr}d-qJ~tzE?t zvKsx7E6)bzH?4Rl%FEbh=!DgLayoIH7lQL8vpw_%Chj#}pFPgV458%(>RV{T_D0JK zjAz*91yj8Xd7-IW@38o_o@uZW5*RZ4u?*LFvD>NZZ^*iwLpFU``F7S3Uu^RN^$fOo zf%y*GykM$#AurJyZ<75=^zg-B>W$c2wm9NCFVVeZdy6U~@sFzO7F^Hgy@!?;$Ojz% z*yaUE@1o5|nCe}~3xx&kVISv#qA3;{3p@WQ8(imQzJ=06+qov0?6dGp6QOoCT3#R@ zaQtJN7bLxlmKRL*F61Rpe=;o4fg(EU`WVgK_a_8#ofppX(K?OkR=rE1opCIYJ6T1n z@s>VoYO_=raIL&pvDt;G-i3Mv#v8~ByNjlue(r|nfHe!5jKw%Urg|4%59Xsvmiy%2 zn6vvYelTS5%{esNJ9Z~ZKDx|_Ai?Lmw8uIJd_M*5&xYyuc`@+{{hs9QU!`c6PZpY$ znxxj<>Wr7{CJ`mK(%iK$F^=oJ%w~R_b>)}8b3=2CkNeC>C9d%T;}=?9Fx4xN|EfpU1#>^-)T4uU}m1|4?bzY`Y8l|SjH8d6*Ok%5KdImB5o@A@@!qF8N8cVHP zZhbLYszCU)KU!X(zJ>E8IDXOUU6?=6>KFL^;WjUS-LF~V@T>MLkM)8}18O#O${ZR0 zbzb0p#F*|cveo0u5Pt|qVG{4rpC8(eNB;jCO`+ul&TnBnfi~Ls0Pk{dkFZ zezZy8ij7L9*>eL`3tXR1`!v?OMjr``+jZ&dW2Q6*)oot7El;SQAK?_HWwl;;8G!cr z%U0uM^@}=3Ky=M=+=7+-$54ZZCCoP5e;=acYJ$D2{u<^|5LVSUl^ z0{w6E^4ItX+Z$6G@{;k|HJtvL>VE2i<>dQCub*I>7Z`6~ebMp){crQ~XL%`_-#uhV zS?A{27R__&u-=a-m$I^n`s*Y96hG^9`yG7$bUuRLlVBSEA%BpUzx(}N_&&o{n;#uJ zT6kp*uQ9bL5eTiyr7FWFdy~(%+m@l%U|PMt5L!)=X{QB zUSNM>n-`?_8Mb-BE-%M^>qhy!F)tCdD`prwDtP{I2>!evbtL-`{S~$8EP_@{^AU_E zus0NhGf(xqFlOk* zBRf<7`AFblyqbfap|bgPOkZUsJzY0%!v7D8wY@2>v&xCg(GF9j^W+utGMHgkCnryE zHP?~8!LURRuMcgvXj}CVF$O&Mar&L2or#StJJaOe9-s=bZRn?@Pi)o3_4%~Hi`n-P zR=cT6Y41y@2?Wy6zox$RYgZIcef-i-N8*ebOnHIr2iF5(IsY47(Xi`Mr6SVr&+p{K zw}j<*!cYwFBWEO+dhv@;$VpYb7m!B$eO_R-_!tjjCRg@cYkt+ zT%{z-c|+ZqISkiN(DDM~4ebA&Ig>x^p6=#3V6bO#nC@HI}pMQ!}bJ5{4Ae|J85>EI}^yKD7P zX$u#=SAN>rt(K1_Zr51XZ5l0avQHP^?{y)<^?dX^%xTUMk8b!R!3p_xg`5Gno)71@ zkZ(Ai;Q08b;|tVJD!$Lk`U7FOk26ASGI=z;xACdGqygz8e z_K0Cr-glZ*=TncALE_8S=V7=WU#N|jZk=8n3?3iNJ!ZE5#%;(yTNzwej@$D8?D!aZ|#kCxz5ZG$-Am-Mi278gZBr|hvm?Qy!5g2Y`X5*{hfU+ z>zePv%hR~dOTc&h2POej@&~S&y{iat(AMqnSd^=cDZMbqZPiY7$PeBhY!BF8kPkS% z;qf%g+5DNVSxL*UjuT|uudT;+KGF|hQquYI=);^3vE;b9QSVgBH#W`o;hO=QT8+s= zLYxCe3fV@XXeSy+SY}`Ra#AYw!7f*DOl4Qx76OU3gp% z>knB>J&tsLP`@J0kDlE%O zNbwTpqtm2QF+yiHtLP4W`0_a+b>iR73;aLuHZOlKFWjEDxJMuN5@cj6itRTxu==}s z`P0vL|LJ^mVAXsFMXhkTwY~qu*B2A}a9zJxCsh5WvdqJ0DUBZd*sglm#iEnbBqTbG zxP8UihG~-s)A9)1hakp$<`1}R-4{RUU-v2Z&|0iDw z^0?(luhTe+g^iBK(nme`$);^u&PFvbwxh3}G|w1m{txdD+ORzy$jPa{*CSlpvzyj; z?AY^KT<7Jpu~%YYO}$(!!+VDe(s!IHi^e0XrK_C1eFUL)rx~;%FR*=(`1z-Kf&G6k zlrGneRKzkd{k=@m;GQ8(_B%vvhkvqHJ=fg7kfCe@?+>02%b^WbW%RQtj)1AX`4HBzg1lIRvk;Ucc{g6~Q5r9JNS zC0XgIWAi@_vppOAV!cz7l|Oi_=yp|l*=1Mqi-$>52ZsFOQZd~U@wlaEu zSn6JP*mk%2D~iu=8Bzld!S&leosVd~{#su?AbPq)@h30K(`Su8FU7vr3u5LNo3DOb z=c{K3`vcmLN0^V`_ebJW!-EZD1@G^PP=?;FVJcletYogx%ugx#gOy^}=g*nYKc@Q~ zLSAM$#;(2-nszp>{_68XXtxTkuOH<-nBUbW|LTD5=!eKE8j6ssV+J?d3t3+I^oqVwVler>npVGq#^*cN4&JKg z^%j#1IlQ@Msgp7=_owqwo9|-vn|oFVAC3{uh=^7{l~bOu88)eW!?u2*x?rB~8|*)5 z!}taB5&S=_HZQ-lV}fvZxMQ4@bD?$ct?*N;vJ1j-VT@k2YxpnJp+3g+`)SC_qrez# zQ7ylL_8Yc|2M0g-!}rnP{UF(Jd?Fo>wj8b>{ZP(bcgnnDoBlN5zxt z`q!hrpDT9HUWV}n))%%9EQkFG>;I>D$YDy;0Emwo!9^UI6MJlbDJp9M#g z>EWG~yE%06{Y#o74|;d+$|sqZu`I?mFA`q%i?&fw&Qa$6@!yBymvEhz)5EbXG4tyk z4D|&PFEjPdsofA%CtkZbILk=Bq`-e(0rCR-8}fl^KKj$V!2XY8+P8o1_Q)RovKGP& z0n=yi<>`qYsI|oS+&X<5Ki-T29*;J@+{;?f^O#~`BU3psty~Bo-5#;H=Zp)?{cf9^g!JoL%#;luMDuK2=;P^!Hhw1UqAIwL78xOBv z)FJYf*{l+Yq&c)0M}8}*F+h(z>UOGUa$AosJb&B9?EQg%nisVF1$nu|u|(fmXS42X zGpMfL)DXe3F|#urTa#`JjD9`JibSdL`F_=;pB`GdTmy+5?) zBh?p{Ltgam2p%^+;o<2WlPhfzFH@4NKu?YLS#qZI0qcdP^TH|c{B8Tc9baDi9<}mv>~ESkbuT9*v8%^cOPiXnVa1W320*HFk@Rqt!1+-+NJ0;pO7(iPD!K zTIvy9T`I+NKW*qAKCgq%XJta0n>~Mj8F@66W$+E{DJp_^t|rKbK_nr{3Cm3d_uET%8wRdy1obfLtd^d`ciha z6t8Ke$;&&sR;zv=Ysd&XT1kFs*|auQ%KG3*c{6JcE@c(bk=H!;i8%ky_fMGeQo`k? zq7pUKbJfm8CY*u7U;T{!Ic~4xm#Q1w9z7jS%g6QgqdZ9!9_4rEcamGol}1PuH zc?CY-h4n?t*C`JXiGk`hmNEwU-`3y8>CpOv@df59+YF^K?b{FZjv8FMHnvtO@F6C0 zNNDME?uBDFBNFfKP(W%wr1Hx8K0~K_)?Dd@O84(r_FJD=*XkiFro=xUoe+>jtJ{*` z+aew2{k!1Y@1u0i)E`eH`Ge)K{b4z_ZODu3>Ds!E-^Wc~;K?24XH|*BHZMr`hn5%U zA1yD?AExaOd0Ej8r6E5=&*&6ETx`9rJ&EhQklg9*VDEb_BEM)Ww!*i{Qy1)G-2L-A zRqUqiCMl)L{GX05X!S1aPsj^=UwbosiRCp z{e=tkhp7$quAS-JK)9NC9e+%1(T}BkS*Qmw^^cZkOs@yyOX{1 zw}@?CknRsHFVH_)UZ6ir+ZXa;-fGcsM|@9Im&msR-V}DX@`(@YB$c~y+k%Bq)t z?aUOwbzWS^nQhLMyc79;%zJi#;AVovK4Zsp>*sn#t77e=FFg+a>3pQyuXr{yU1pWF zC0|p_Hd z+EZp%2UaYV@j?T>Wz^+_onFam6yMSE0{x@q1^PqFOAeJq>E^{?>pEqHSlNkRpK+ZREfdF4;m6YVFl-xDD50m~sTQe0KtC%-NR$cpA2IsJh)5!ZPUGb&vW%Y1Jx zW28oY!%ohTyz7nC_4iR?ewzJX6ar}1|FqtP|Fgk#{|wk)kQey3GK0DWr9@oEbeCL?{ zP`HL?xzuLm+)%9bZfx^{l#kHz0^=82UZ6j;y!^1S3lT8A692lWK>D(xvl*`Q^026p z`Q635`nQiv=h6(t^3n1F`G7WTf3&%6!>7>m6=<4(Ia;wJJ!mOueaOiCIZ!{s)p9S1wTejyXk| z78YGW5@f_D)Q03AsoY)G`jC zT<0Y^Xy3tKcV8Ng8`(!)eEH!dT3#R@(1z`emKT`s(DDNP!TKWEkQV`ep%8*B9>TdS z>4@>{-krG43+d+csXf=d?(MG=_U98LCB-%`NaGbPFGzY9(|iQ=5E37-9P+}f?t*Wd zA5-*j*``5e&nOwL^YT58p5y$Us<)9vx?i}i`rk&&3*-Z7yrSg=_AlD_f>!TBUJ8UM zikA*2oVlOQ_=Y=$CIZ)aG5J}fHRBwnW}Ujf?3Ew0^MZua!(hWwBT5nblRGbXUxoS; z<`=YjS1U2kXMkjUoua-bf0a4&38vo%!0`=vIaz0Y9M5%a=JAd`2JUf+Z))tq{3+dE z`z_t&Ba8gs_Y|=cIFWK3x7(TIxXk~cMjiUY)P~;&gful<2uW1=IK3zDYP9IX`Tc@^ z&&(MpXWzfTkjuQD?Q}j4EiaHKXv6kL%L|NOXnBGDV11En$cvL$d`S`u$ z*M8!-PfK@}30ICiqPTb2OPs~BJj)1PXTk>P@NV6Y6NdbzWZIiZ?p7YG4!m{UxIbg;5DwULYTE z{KNJ|%M0vZw7j6zyO0;6PLpPPWv+_x%i_GV1TxmR&Wn+7Q@iHl{Ju{@-mZ5BPUq@f z`&4>3JpPf{f|$7Ls{?s|TJLgKjh@J2STb_pC@OmR?)lE)Q^Eb-m3AKb3$vZBGE}c2 zUr09O<*hHbW--xPG3uV&R<`LJ{sAb*Jwf?)CjLw)TMf6E*+$JFEwqwVT{E zQokbkM=IwF;@&+|dTUp4gset?!%M0`e>x*PVUTEspJ1l;!XBw=81cnTMEW>qPXkIHQ z`EU&Ps;b_$Nw(0Q$2Koe&%pLZ%L~kRXnBEp2-X+LhP*^;yh-*e(Zd&isW)P8+2V-n zyo9^smDt@Q6yYoGS2gj}@k7fClBWT9E9Now7#&Undg z5>aw1&0Px<R`(99Lk+*mXj zpj|E$)YI{J@?Yl#>LDaPVEI<(<->xUX{%DAO>QhTf2#_~>;F10u>YZr#M4&ig`&Vo zR%k=~)h=_-9%Wv2{Qo*HQz?y7Q{x&Miw!2RRWdz;kQXF9w$*vLIoFg{XwGx`_FjSu z4pa3H(eeV@6V8`l`=iynaJ-|{FGp!vh4G&d7+?3)6^pWFQi1jTuj^f^4>P{&Z@)!x zkz^T#8g!8V*Lgvjzaa6y)#D4nwWH0(XImy`+ygTCtdp$K@`5z};CMwFU*Pr7#useQ zrynm7&yO|N5l&%RR_m3Q0kHj%`U}RFt;Wmf{`WU!;#ZhseH|(L%g@?{4$**Z(oW_D8Z|K5|VYxhbq!wExa=uc;?TzSm%z z7Z`6~{m}9P{crPvjt|&Bke9dDYbB!F%N9~gc2HQzt@xRRe6H%PO`x64nXAbwl9~F` z`3Szh3$F+3k7Pq$F#Y}r+wU`MwfWJbIYXN(cGo$>6G+wN$WNTaHZL$=!2U+d3sQX9 z<^^56f$`V3(I}lM<~DRsJ<;3J)UR zZC=ML2hNXRJc0cQdAXANa+3Xfp-*Y9yd^8~e#J>5 zCTfq%8sXQ>iViap3q`==p^fx@-D`2Y@f62VmJB<*=FFD0w8zq$1T>NMM#BA$9Y1`t zr(pitr!Vx|D@V_9{gc(VmVT>~@Otoj16b}BZL1z4#(?KOPQO#MGqJH{XPVsG15_cl z4gHk#iLKhWKA%o}c!^Q!L_-@_cKm9{9^b0NG3&$CoKsKE@=5VL)g*m|DKD`7;Cdh| z=YOLs8g^Z(R7Cpy`JJ5jmarVjM&d=U?0V+jXCIZ^2pjru1#`A!o!iL0LED~lkgS)l zQ6!b{@|{;A@jO-wVM5K|u(`SVs7~vGR+L_3MG@gSPI&z}yJO;Bq{-*CLJVa> z+CC1!awJ}GeLihY#UWvIJC)j>B1GRdD3cAw3)mjpHfHgCtNl+{|8Z?_fASSM!IjIE ztMlLY{@wZLrGulu?yl8Gr7c|eUioQfw^}}$xLspiw`sJz$v$0tzt@Eb*YnY^nQzsk z>ZiuXdyi&!6Wgl5^;xv}=)WG1{^|Gv^(LnM0p~}0&SdneRuMD~x6N*^hz2~`<^{8S zgVg?8jh7-r)pNN)QD+{wNj^UAbah!|Z1v(S9f4HL`|roTuvE=r8ecG-AJH&p^Jltd zB`v=?PLOfGwjSI0Nbz*z5jT;x^)v$y;+wpjAC88f$(b82JD7Fjj{en%`M6Qa1v&o4 zLHQS>kH1`=+ckOm*Ow`JufuYvcbl^Z zyjU`p)=a-L28T?Ed*OOMYPFT6VD#lpon}3=Ycf4X`|q9~^`(dI=^@$JefGcvSDfGU zIBb7t!}%7{{OI=>&Cp>pYTdU?Jqks%&Q6czyLp)f?Rm_fUp+Thkkc~DF?RKx(6qC0 z^;e%CLc3KSIVzt^aJEj4(dbhZChbsw*Z-Cyz_j#eFGu|4hN8}YJ1_A4gl%5_ zUS5J**+=bsZyJR>9trb*=Q;Uz^YW*k@BY*I=)kJ^4vJdga%+44iLWmv_TjpIxnL_% z$wXK&GZS&Cevb@PBdJylnIGzj(RfbCImg`jUZg z@k^Gh649N8iP_Z!k?Cc(yKdd4%sb+v%TZ4+=-RsW%!Tvw`c?TLB%a`U1+-!OM*IH& z_&yeV{&Ho}m$Iv+cugx!Uf$8QT6KY!Jo4k%bIu;4my-lu4T_EvcTR*S`Gnx}yp0L7 z4PAxx8>wgrOSWc-Ho^0Aams(h0n4FHf4_!G$hJ9zwuQ*7>4AfeLcidZ9}iqti3yO&aB-e7?dG|~%))fnp^c%-TZorOR;7pHiRZQQ!avOmd><3j{|6xP z!tYUYuTbhp`c3MJ@Znv7$xk9guiCkk6`N+K^?$U;es!=mS%hSkfNP9L?EN$Swi4L? zn10`K_b%ayM<0LCDpk!C$`mDgw%ww*8`37{6+*r%k@dC7ZCvMtLSy>vlfaSjZ{m%l z`aJAO^;jX;1EH}3zL9#2yfK0sr!cwynDVquZn$i**%D# zcqb#H@^KrD)pcCwMK5ddseU`1P}knBvfYQrm4gi^h`ufbMGgt`zHhLj8^?6L5#}Fg z!~Xcw`KVmrQ^W7+_1rA7##lX#yCDDydeRJa?S>{P1wuwQFvp?21#D1YnT57MZlRm*{};d2Ly zKB47htLGy%kE9P@dph<8O$o?J(i$Zwy($$IyrOx@BTCII`-fpHsD=L-Gvt=GN%#lQq9n+&Dn`hdu&OIacr+N9e8Uysmqi&~qCb#wI!uH#?G0PuYZT-mO=1<$} z?72Z33J+-5!_`woF1ZMPUT8SGtAO;77>y(;j4v>MV*0!ni8tsU>3CQ!$ah1eCywz= z?EOIEh{5NCupG&T`U}ZM@&|cAdw*!pN2)I@hx&yz<{JG4O+4~ZH$wT)k5;Fh%G}?4 zOKA;%E1Q%iu9Th$&)>HH+wq0$j1|>j&gxCFfQH3djZcb5@nV~o|28isl1a@Oy(KGT zb)j9HgM!oBykN!y()fY-2snvYUb;pO7(iPD!KTIvy9T`J8`s4~}e5A623Z$P>+TX6}g{h)uiJ`MMW z*i7HJbC+~h{q?w`bRjkWXzZiS{SJO|GC!WWzDsg{;R5|3T_2V^Mw&MgjYmk6wNeDW zkfL{jyukH1cs`Q-PxG>md{+m%q(~K`mg_q`+kwHs3*RE%PL)K=J=mRgen$Ts zx7YDY)eUZso(`wwDnmf7ys(av4$hvo9C?usF&ZcBo1i*%Ux?}Br`kJ33)e>{z;f7srbo{#DAa6Wx} zL&YSKe=VU#prO+Lgw6wO^MZ7LXnBGDvCRwgkJR3fmlf?$8uCN*j7|~6#n$WEleo@{ z0)BOj<}Bab)sh?dr_NSz)Khz#a@LAv%Jn$Bk1AEx`P1dL_9@g<-^ak z(k7-KEIW9uF4>;`=Dopnibujg}YaAKSb@|FHhhUXEnHTa#;2e)y}4_f5ff zgw{0ELPcH`qqMT>Gmt0%}keBWo^mV6!T5x!SwxV*k6zr`26M70>@L@Zl;4RqeiXO!Qz}xgqJyz zOxbPPeiu_RGchhef0)`+W>*JRES2#>1HNU{<%FGOHWXhQ`fQtPWWuJhvm z`_;Am^tT+{ZN6zFW(Id-n-`>bj+PhbAKSb@|495mUUH}`N;fYCTh}Qo#L7wKXViQF5x&O0{yJH}pRiXj|53cj#+r2c{BkQdnBm3QxR-#bu|QXxlOzenv@snU47+>5v`4;l6wrAwa+g* z{6JoQ*w}>#m|ls0T~r`_S<%@H*Lm5Hk&mwl>Q$+p6*WHBI~akM7fkgFT3(>Oz&074Z`y3wE9<`T{!x%Scy(SE*LgXTc%{~R-;_;*iPj+nzZXN;<^^edqU8lizo5-W zn0^lnINZK}T(?vw>JK~M&yx2LH9D3_VPw;E%Ru9M7JGN+fxy;G^^ZSV< zvi3NiH)tdxpe|#|0~UZE&5JPY+tn4(>D% zOH@`PopoRr$+$kEv&>dEkZDzLS1owi@K5XA6Y6|^{#-1Ai>bpz!E2)VNY_K^FUSkr zfAwjS;OMuiuu*9ymn7m6FB&PuEh|3-y5#KFGX~mWL?*!qtH;Ga#Fp(Ef3qgAn9GSyuf^iZC;>%OnHI(ci}oO_{T#@ z!^=O9inyFzey(XXiIx{k^)6aoV7|jPFVH`xya@OUg%D)%5YA;uM~r9p?!_J!pBsRKK9*1?mfI^8)=N@dJ5r5{vw}O!xa(cbP;9 z)hWguxXugt!6d3rlJBpbjr~2HL?BRxZC;S{3tC=~^b6Yf0`ncFyyW-C)Q-HU<0Yx6 z@~+yGZ;tD{jH|s>syi+odgNER$;bC0DQJ1YRKK9*1@q&Lx_jX-5|- zLNmPz8fRl%=cP^ipbEW zKe5dVoL|BELmTpPgO*4~!0DR%(QNrj_C9|lT<7Ie+#P2cz3;?syGiEHzBs!_#Y!JmuTyuE1ko3$pc^D=QGjwI%m zM@G@%m$hS0w3X2Ef~np`%L~+_*yaWLN8$(a;gY7Qo^udh+oOPr=wss^AN7{vUkH& z&>|%CS)uy)!9y3M+0gQWsoq7)3+zv9^8)n|ro7zKi8u5J6zu%fn^Mmw)X{+JyokLu zxyaJ|DVVBWIFq79gcmI@nCe}$yukj%HZPd!U6_xEI!&7GmANX$FN^ce63AHNIxjbd z^N5sPs1#2fBQ*G#Ej`kr%^U0-?s_?_slxFNd4c=Cgq1Aw?^8a1 zEf>GaMS}Ig@JJc8)n|_0gx`WaD%r{G|L1?w&_9yR7sS1Lru5dX;s{xd{>YVQ1M{0! zyc6YRY%_GiYCbugxXufAZvOhX82|f5AD_f2BO5NXykM$#(eeWID7JZl{xRi+rf$8% z;@5hn!AeMA$neK9T<0YxAlE`6Gb~ue)1-@Nyg&onydddaw7ekcU9|B9>LW~fiPm_N z>{p_PFaA<*#NM*S5!ZPkyW0BxM78}PCVBENHaQnr(DH(*-bKp`>`!dR7pRXg<%Pn6 z_OOrhK+zNnjfI{6lnt))^3m?gqZdxjm*b>A@J4>_ra{XKrg|4GFR(wc%?qY_7wVTl z{mHOE2a4#Z>ti%`-=7e~bzT&f))Q2{TJV|LrekM~i3U{;d(XQ0C9Ho5I;Kp}nU{^0R3 z@e2K(%0gaJGg8bLART@g0Zfj-uDZx z@q(mZ(DDNF9pnSrTb&oiPcf%2jASJ^# z#X{CE88N1B^YXuWL5eq9ofo5p_STKM0l6YO!bZO7z-QaM{FN7|zot?erKZL;G!`37 zVyk3&2LEgMNWyT(NL2#6jgVLLNBs|)yU_B2>3kZk-i6~G+j&Qu?Oifn zwgkW8F8{CbGA%aAOmZbe)H>*M^$o@%+ihO{cYHzmo^`9|Bi~v2#ae-kA;FzVaX;6r zRMGN+G~a~d5p8^d^IdGm7w8}9{va=pmx$*_n*^@dsAQTwH&C^}_4)MXz9aGdm;1;b zN8c>KA0*b_=H;*PWt*43{;#~!CI243#9{K>Ft0OH)0c*}dD-UWfBkRbN%54_@_zgM zwJx=H=6__L+g=a&D=%o*19W>Nv;vt9gd3HQdY`tMK85S~$hXDz;-?L@TY5>yrHL%} z^1Z)j;}IM^IAi&qdEO+Mh7#%d6pYt!{Royr{Q~!Y!S;U5aQ=kp{&nztSbu24{eps1 z9SfSJV()T>4JBO&JD`rFm!UssBef?y9<2@kPZGPvbnUF0)Dyhu+lt>CIw-Ks3w(Y7 z>yMTf=pX7`*x%c{{55{U{(v^*Wg+nd5AoW0Yc<`{CfA7aHf-~P^u7^VUZDSNUNGYU z@&Rqgi=feoYtp-O)$cXQrBX`pPcqw$yv!2X_0&~BHsVX)rHpSBC;H_^4QBNSWK{YZ1H@+P)$KK=;95GFU>0z>CQfM zL2FCB`|%oG`LWFl>`!d-0-x7!#}{;b!2W@}?5t$=AfY|+e7DYbw+lkYQ|@xHm#7NP zaoWUt%LnUQeL%_&P_M)FBiNs?K38&IPO^V5^eN4iw`3*WuQ*A>MD1}|BmA0K(P2hn zp$K?9v=QI0+bpp?7J6XQM#XuFCs)Y(3-O5aa@|sOBD-|!?N!lYsqu4y;o^r#3&_-l z#xzT!p#L8_;bwjI&)cra)4#q<(R+QjY>>aoq9i}xqefbTyqj_Gc(-U<^$;-zJoj<> zouZwIjV(LVBi^v^7Y`~5**_b|ibk$A!N`Se8A2Wfi!Gi*y@b#F(4Vq@U?2wGlXd;ZsK z_`hiOf$+OK1W;`JE$5!KI?O1G3>uaKj%%%<6PyX|2dVBn> zqZ_P_RF&Kvts!&mz*N6rIzOUe&gRc_%}QE+b(|pMer-Lr^U+G40{KO!^f5u@GYMG_ zMh~{fW@-)u1XHqExDXt=XynrxRrOfxi-NDF&*${$EVBmK|8sW7#Jxz9&ufJk%7nCi z9AZ3EWlhB?p{_~0Ib-ThQvi>Ldbc@yz>6hgY0dO2V{pinxEHSHBYsk2k>{r~NF@pT z%IgQ_@c-`lQD1uKo*t5o-DeL>aK-sekHhwdHk@xE&5!PNu?8E&yG_;xbPKZ_2xyQU z^X#>5+V#tMH7T4@K{4rbmi!s-rn+4%7TI0DPD@V0>ro1@ZC<4@7y86zm)XDeDPQ74 zQsJ~twchPtT(Y#aDb?_J$jgV^XQFpAdWRi~@jBU#3Vg!#`BBE1%tAv4KZQCA{U&1% z;jn)@FOUyt!{>F|yr9dkP`?;VCrX;^en8dBIP-lUo7U35ofo*Cv&{=S9$`_01RWsn;d{?Yur@{%&6W^z+?+Iv*WaHQzx|D_m}E??3VN#l${b*DqHxB7XVEZ{&3!X!DH;?`GvL zEDr3~nU$Zm{3YdZG%XGO{}$8vHq@su-a#8_JsTbmZKz-7>aRR0ES<9;Zb;VldCUJ? zYve?}$@0m6D9?va&})wj>foq--g( z$W}(BWRL7w%7~1T>`lllyMCWPf3Mr~a_N3~T<#C==l9|1&)emk`x&=$J-6HKocp<- zJJb(cPs9CI>FIlaUO$^&r=JPC^)bmz9G3TQ%g`TDPCAdAOYwdwo$<2ISjl1_=q`0a z#kWg7M6FHFO|%zHaGe(}k9XerC!}AwP*;YJ?g~t*f3xopP3p}FnbdTOyo#SSv}SA^ zVYx^8lR1O3K`Tz)n)i9;G^M6~i}vN;N&++V`?@q?o=~{{x+>^5G%oX-t9wz=gO!)J@()z?;KFd-~ z>1B&wM^qfta~q-mg8hN#uV6aV$5!)4Ww$t27`r%v#)!@{=8MxLNXgg zDcl%)6xVslRgdd4FHkxXJ>Ee`_s}%;*;nZUqEx~SvkF$kQS-Ap&*OD=d|c+h3zQK) zls@^)8~QKE1H4ZLrf+p#A}%t>h)&{NcD>jB^C!z=P4jmb!m@lG<;ag6Ak;rZRfFri zaJResJQTYy=CE?JiA^m(u7KB;om_U9dF+yZoLcpT+ZPgPYeQ447$#4W`H|lYXg&Pk zcpF<+ls)_FGKsqe*4>bY;L9p8YU#GME!Dlbx9V9lVft3*<-V;gjeP&Oui^2t)p&U_ zp0K}AAKNl!`yJ39q17LZ2hf&>^gLW2aUDALqhXx!Q-9|Idz*#`^ENM-@qnc7t;S1b z{U9Sh8|^WM`&vYlKZ#hjdD-UWZ{JUU93bbL&Uk(-`A&Fs{Jt6bI%*#y*7t(xV%^tj zqe`VTVEh8-6SR+zH<%8er>4To#@idEdwl0ox4`OBX_`chiPoLKF0XrfBpdUU)-XSm zVfk>s4t}2?l)}H#IQF9S?z4W9rHY9hqPQxCCm?H z$OGgBu74Am>O42Dc7(N>cS{5nK8WK_{wmTDDyTL~V$J#lV-jV#%>67w6iQG)(T179Q_ z(5^%K0>>Zn1Jj`l`?uM=!1t48QhZJi-@YI;j&F&6aQps<7E$n`$Awp8=Pg)w%S)Zx zfc(MsBFS5w7mde!AI?D!zb}C4 z@cGT=1@0GO`n^4-{A_hz2AlJWi1mW>DQh_9{C8ZCiX*#~*ziDyEXwVfXHr|Y798Jg z8MAm8+v}tMYyCri#QM{&?7Pn8u~3otnMdheEBw|sdE0;1YwyYLGn*X z{YA1zNYC>gapv!iVcrE`Rn_w1^meCj$Ye(10edc63o>Rxr@&f$4+6=5%^^-&I9}en{D2DBW?~{wD#@!otWA@?{1jPX}9NX*BSe#Ej!{h zm+5VjyC5&{eG=07hON$vmcZmiCpu5_C!`dv31?e#8|(W@NxTP!Ivn@vvMO@W;5sjk z#_p!sAJw{*nRFf-U1Eqi9oDISSfFa^PV0++p%LZ$5?Q$mJkc}r zCD`7tLt0;;-LHe?!~GYSj_H0Kd>--vWw>7l{Sn;Hg3lw#|91RRIZTzZ9RA9%=A~ZN z@Z1#T)lz(moq`JqEz?fyWqkB+Ftsl*K17N~q*E{UQsGPQoAV9Ll&z2{Y{2tW>svKn z9!+al&r0!KN75fGAMyg@m(EAwokOSP1D?t47EfAWS$X$qQTB%D?}RpjllVajjKZ)! zOnE6jd|OsFYNXrN?xtusJ$ZnFrtSrHFGcIO^|v1-kG{yo_3zclpO^FVR^i{+o9xT- zo3=Xx+Eb{%ZTa6_Pyb)r7jI)>&W(phbk2Lu2}k2SKM3uCwDUb4ef4o#TCR=q?{~CC zp#8))Pu=IQ)jK4ynf=jHJ!=Hjt_@P8ZF<^`#LXnBFk&jnR_m%iaGjSvlCz}Cv-XU)Il4OXzQ)M~Q^rlx#)a*$lswrve^IG! zv+YYBYxpp+s2yia)T}``b>teHPngP(7kD3x21e zFOsz$5h81N|4zw#kb`j{B-oO%?nch(DDMy$2KpR+84-+NvmnSyU^aKZ~Q&nKIC>ixXz21)U?g0 zVRgy=b&I!oi${8}%?n(=K;F^v0?WrXFPNUkS&lq#_g%JOg-FLu9~a&#LMxitV})Lo z6SSulDmpsTd2pQzx= zz3VHU-Pwa_eK3Dm{X-6KMIO7nQ3r`|y^aJXef}oioTdw**9vY&s&uGAeZuFFWN1&3 z@}o_M{>Wj!DCIDfY}|!_Ihk{7D_^k93sV2k@&e1pHZPdY56DXvm1*g3%V4VyQWCMJ zrzhKSotKfJeNG7%4@Ag3wrU}+S#rlUUXc6|TKj^jKZ3m21W~mQv}@dP2*fjgDnZYI z>%9ClrC&Y1`7lqU7k5aDZwnUq{OLmFIE@7J&IRCND3tTT_n-`?_A+SG?mlKC;y3Tj} zdT?4GM_Rp+_9?FO;$Xn*QaQ_frpdiYSex(so7>O-G}~pGDd9iv$>h~|tq=Q$sXvGM zgffTXePv4B;$&)?Y07|V?ME;jQyKCC&+oo6o|f6qTT4SzQFb+oo$}NE9=e4C<+{g; zoi2*T|CCU|v_6<$)I8HPt}jh+@(EMTv71LaMDyGXwex+h;!VVgXJ*^&Mtj~H$zH?u zpp{{~YuWJdY{&+k{8y=`WiN-tqOi>iQvcBM0__*JdBHS(fxHab*oE*IU5S5Fn0M;3 zq@yve^D^jfDJ|D=!;3D{@Ss`kBRsUcKt7-hc}L3&Qv8C}zF-=^Kwd_F+iciNX_fd4 z=4B7tE^6UAFXy>c@_m-qU(Qb5yel?NN`h@(;QYrnFG%qVro6y-1saqzioL zHJ{lZe`(k?d4YVu`49Dr*1o{=!Pxdkn4ZUh zyiAxGBxEzOA4og?@^RkEJ{w%;#Z=#CnN$}4F(KdOn=z&u&H7I>-{wWWDs%gG%Z)Ne z+IO?#-Fw!-7R$^<3S%C03?h8)pCM0}%8(cMePao$C$&pTaak&-8%8cFBf#Ux+HhYXZrC+S_QVn`FOUx?!}*Ao7wGS>%?qaSF64zL;8+Mj1_$9n#;J&@ z%w7sy=OyYB;RwC=&y}Ae7pHsP(zjrn7dZd1%?nbzi`E}u8t+10m=tc}U(Jmve7I~= zFS>Vv6xVs#^KAEL!OL&m@UP{%i8K6ILdy%}1I~YJ^MVxbqU8nCco*`L$46eYB=SV_ z-YbR@_7s{3T<0Y<`^fbDGImkBcc0B&;ugAm7>;$A)^u7; z2Gjarei@IvrST3a#=a!E*pY`}tbcecyT&9-cVxb*b9Ye-{)y|ngg2P(Ic2}$CnWco zd0CRq4lOS*UV$>yFIrxp{lYdcn8q)V7l{GhD}(o4SBdg?Wvn|5kK#Hn-c%n8FUA$+ zKWYlUMm^Qvifvw?f5J8|Nbw6=`+{lw0(oJHaoTO6ghw`Un@~Ko*<2mhdC|?>ljI*_ zsBlDXo{siXxjI^2ARlo4W1APG_ysL5n8q)V7g9}gs^P3v7t#myzuuqwB#G<1Wa-84 zeLRtnU#{Y`{@CuFFj`(9A8`I-n-_Q<3fuljH~yY$mAMlefBHemiLmFMu>DYmych~6 zHl_6zuaJHS{l+@XJB#bQoLX^{Z_Z24PFJ33ew-ED{leDOGUr^tY`CF?Kuhn@wat!q zWzUa{A2~H3HfTeZXOAlh1{#JyuG%&Woc|gwi;b z)WwdcO)DjRmRx9gf$=Srp?=Zw0__>LdBHT^g}nIxBr~~tO3sx~Pv53*J((WYdHKHQ zDm7Io{Swyg)wS{KqygNbxROe}rkg3wiO@h}ZWB}x%) z^AfOs(A)bZ$MQ`-l3U;J2$Z1Z1@ZysKel;6ig(fSf@!=9dD+=%*kmttxN_>U5a&FB zs1>gB!trFLPv~(4OYTHUp9|6Dorg=}-EW_MD`gaJ@%7cQfMc5-?>cAQc_o_Osz{Si zy!eS<^8n-tQyKcBd$D|EIq$1B@&!#>m*RK6eJ8J_-Jh9G^Xhc``Ha)GHKAvPn?Jkid}9<}zI8 z#g0NNK%Zqfi*)v~lv{?hAGUdc@eH);E$))}`qYjMDJ zUZQ(R_Z3!0;>###<=x2T^hV1IGyd~(=;C`t3OE(%Ii@S7%w{1_TKnoah25nVSzNQ zH86O&GBkn;|1C;w7g&%uR#8{IxkONY$VwcQ*~0kZZM+x z5X|vk=LNIxp}(Vod)hxz+8< z2v^9#{6tQfvBoyV$p3fI6k1;3`WD&~D5JG6us*c*1>5WC$4f+u6CZi5*vO_Er|QX> z;`(~px1r88S~@UpmvzVEJuj}wZS&G)rmS#joRyE3#cJjC1GM`uTaB01FA4`AM88{( zoS+VKm>7D!&C50~|Ns9hhu_=F>7}W63FcF0`UmsxC(HV={XXD-|38BEeZbk#XTDY6 z=_toHOuXg9ZsGj-UFH?K7t$Fg$3za&%pP)hq42%?`ANpYPv?B{duO!OtA>noh*tWepoiv0?Xg#WpjBcTx1;4r~Gi+vn`rKO+;r!`W<*0<0<*u==y*q4BNb5 zmzT4Dw4!`VOo|2Uis-+~@Lr0jm>oIxB%z&Vrs!GB{qs7Q`Xgvh;CMn_u4KRdaiA~X zw=`SajD_fsBuqz=k5yG2FahPCEv%_mjZ&`c6_1!)u+4A+dxfvy?Vq(Tep3Ps6 zX0%Z(@bpg z7J_1Z=fyb_Q5}OmE2q^jE7}6=)xq5<{1JlVxbBbE>ezI}Cl_wrAiA_1xHcq5)niR$ zOe#Oh!|H6dbJ=4BQ(mBcFLS#@w?(-rnY%cGE|geOA%@&l56% za7mr_JNl$gN-Am!+#nEG|4}fXK~$Jgymk=QzhHM($crTDl1hlaXh>W02uw$^FSx${ zvd3`Rm%AfQyhVQMN|l_!mH%sh^!l0u597DhN2M)?@x5|iXhZ!Y$w<8X+y1D2!j(Tp z%zdpX;iU8Q?sA;Jk1RFp`ho)<-ROA&W%17vSwqnNqV-2Go`K^}k@aKHE}4;oTW{~L z(fu;Fkn+Rlp$z>IjGvgVG?f^)F;23?T;gtfL834i%oErCg;|W)4v*_jYRi3C9;V-` zLHkQ{Y0{8TyBkj;C7DN(v3Nh!C#(-i{c57ArzWz`8Xt0YgXcfsemHC| z)DP@0()e#SFK~S}E%%K7wwp}rXI&B}yZvuEWV`Kl$!G3*9_wjf)8BbM4(5mbL6V_9 z6pq}~JR<5#VmrHI=*;>7WnAawK_C8o!v|F2+)l<-l@G3|vc{?F$^9Oo9Mev3lXcE9 zfc=B|fck@c!1)dH(=cUnrMqS%E*B^gq}_X82h)*cB!48S-XMLOzis`6o(GW&Cu^hH zl8Wp^CZ20~=BrAsKBg3-Jhi1(@bxE zN2-(4A<7-34s)yvKVAyAUO#>HC*-9ki)YW$qm@)zA%eC)qT1Xr9r6-FUoAXNyt?!` z=aRN^)uZFM9`Cw5)%31&;_lS?FkAfiPT>Q{KlDdXKS=%w+8g-%X8R*pe`iAEvg=Kg z%X`N~?vZ!8pAlbFabG`|zjEOcTi<&35&>)^PFBN^=odtvSFCLI{N4%s2lau} z9ynew{~p!p-Mmu9gns2jWoggof{^mV=b`>!ybJx+Zc+6KikV%;)4vjE@THTlkSJT+ z8z37C{k)&-y+||5KkgI3^!zT=PxkyuY-`%;TJ^0t?UO<#0=RBpUSz9YG9cYi_(<>b zqvrQ&>+Hvc8SPJZ^X_r8I-z(wlM~t(I6hE6a6FO5f3tak@sshok8gMao-VU%%&UTR z`pEJ9?lS6?T^FoV^j31Y*)3px*dHVr>ccA^-#Q1YTQlD zP?je{CvnujG5HO1>Owh$FBbfl;=hW?yPw^^I$k-Nb1dIt zI(OdT%}mJm!{0u1)jSo=a5x}3dxUSocuKT*m((4|2hx0j`5`Zc5BC#mJbt3}S}a~w zl85;LuJf|0ye{y zFEAd-)piuPUz$ZD8|S%H8K}|m(}CsqW7Wqkt4H(rzvb_Yhy8;xl0G0WHpe;5jWUTJ zm6v?rShVG)$8}!JXu2|4$e6>WA14girFf;v`aLh}&v!~rf3fJ#tvKtq+5U*8V{(0& zTR^>7a*UHX`FR5pUvT_jez-n@=e@5C+!>~r7vNvoQ4mU25jFOeu%;#=xtVj}Vz~E5 zGZH>nKBo6eL0;0|CS9*O@}o_M>uFaml2Ad-fINk2 zBU7`C6JoaC^<3KY2zFSV2$}Q$6RQE|6KpTk4@`&S3ERKfyukHz7b?<}RVn@O81RtUqmg&f0M~gL5o(t6 zRMQ=l8Hi0OdGwyO!e3%c*{S1rONwwtQyTqo$P3gL(A4! zgEFlOzo?!raUcI3RLFfy;$|?HD)A%OKPV&F8_3Hc+lifCLS^50cCXxje(@a-uJiKj zC%JyzGid>HerwUX)%}x4Z`E=72nvUY{9ZHDNEuq#Y=6||_v>wmxB1bB-wEgV1>Pnj z*&{f9FhBH1@PB+m34FB?D^0xkb19EGpB^Y;%uu#|C~qr%k7ltrE;7O#uBR~lUJdfH zi)C2&3sZfwqB=uwroIh6e4h*ZgCxWGiIg90I`l_#w$iItMUyrAXKsBy^p$M+6kE}w zq95zJH=_D36y3>OhV})v7wQM5!|{ae-)vss_}feL$DTLsEY+D8<#2jd-YGe|C+j!K z?gZ!frF8QB?W!<8T3)94i>-fV5ALs7Jb8UmEX^6$c}Z>4zn9+QPU$dab@2dxvx2-c zuL9AU%kVq{*^&g;B?-t29B;@6rv7NNd4cQWM0PcH3-z|!B3?PPRJ7B*l%@0JG>y3g zrX{93IHW}cu+0k#$&us&&#tBEJj$-o13wFKotKM3@=uSPVp<-(HNR`bM<)l4H>Umw z^7LPq;rU&(`hfEjsXR>c!}6d%g8xT_{slh2Eo1h5#=p%A+VO(C@Urof6n%OjdVlR@ z)5U977Poo9j0dFg*lN7IXAl+qAudl!5+9LhE?J$p&C50~f4l$1f8*f|OO2g=qQ7hS zBWX_l+U8}Om%s6nc%Rhq*eM4+TCD|+<6r*DtmbP#AKf`jTbFW zlGsg+*DgF)dY{GO<0ZZnB>%jf{&&8%TKw|HKj-7lgUY=``Q`7pO@7d9+n2wOKc@3z ztMT&S57lc$krJvS-!uZ)!W%fYdD-UWZ~n-yHP-2{Pvi^1!YSds=PYT1DdVPT#FhA`@veqL)WDW1%DcR5|eDQ$x1?m$% zk0hhre?uxCro;W0(W~+ChrVxAb6&@5On6apE0?Od>(_IUv%<;`^@W}*q{IFp*&o;+ zr1wXr3hlXr)Hyp=y_?SqB(UMb_9Dr!d_3D^ir*8ezxfJITjoqp>Mzt?NyslZR?8E=mQ!IqfATK;k)d;>ZdOMs52i!? z!*p!RkQZ0=_aDCgQ8apqCnmzhA{&WqUXc2SmKRt)T3%pznCc($vZ5MFLw0gE!}SQF zBCB=PAGpp7v3u{=1O2J|;=is6t{hqA=pSN^35nZv$W5KPBucqtZL{qQ+ISa^C*%dj z!vhPa#E4ZyOM?$fL>hdS7>_!0zh6QCKlUnN(K$;R@_&3^56efAVZ3W+v@jGdFZ6*c z=6&JdQtoLO4yuk9&@&e04 z(kD!ZyqL6_*1HSsjrzvl!|g+E*MsZ4oEZrpV?E6~bwlg0C0XnxVr=sQ;|Hi;w7kIb z(eeVzgY89h2kpy zzOz2_Lj*2QR>KY`YIWR8bBi~7C7S49zS;h$v1wAj#HT(wi*TRhqCn3Fr13yXhrGc3 zm$%A%=N{#Wlxrrq^{EcEt2(6d+juJ+4Ori3ooX=@Mjda5)j#C$R^+kE8+DKf*Xu}N z(&umD&1t$2dadAgq)Nv>?gK>X4@^gE|6qAYGW17G?`TNK#pLk_=%bx2cJ{hpn-`@1 zq2&dZkCqo$9+Ey`I^-pb%Cz*iWw6x;DT&zA)06GEZeLUk9VYl5pYj%W_Ei)#YCVc; zyg>hfmKRtaU&w=Z_?2m1sco$?sE$~!cGTWE*5n5j0 z{Dd;pH(L7w*FR`^f#t#WBFT`K!`YpNHw)<*F79EwzaBjyj_bUnx)q*1ns-!Xqwdu` z4RW^c*yaUkzM|y?#wTcbf!`A#@d48zFDDMybe-?`_29HXj{JVsaI-xTJZx-98vjO)BSENoz^ zvdpO~e`K`qLSHZ!EiaG{C`0|D%bqaDGAmg7!Sa zJ?mhLW#%Gt2_bcOn(HQmd$mN{Mg9hSGxXw#- z5ZlqoyRY@94D6#UUpJmd%M0WK%23~Ed4c{8EibS<*j^+V^1>5vEQBC~gK#0^RK!$f zF9ojiLh^f7ZSM^)??WH>0*(lhkYJk^r1^@L7o>O>Q-1{GAtXLvI^=~(;U@mo+?c|L z%Qp3*dnZV7otM72-3Kr2ttpQz)cSJRHoy%nFOUzU`HGeoIKF7@3)*-W@{-3#UbH0g zMDyM&h7$G^nh0Fy#c-@pWzI27-s;(*vI2i5N8;lm4pV{cI-FvT;W@<`zc)MHwX{Fr z;nZ-t{_apsNiEgrJ~&@7l_4)V8eTCe-bYILqylm>)teoIFHybUDW{XThrqScq0vF} z(&Mjso#n}2xG$BO+uRR)jcI)_Km0!6507Qnm}KdW%vW{pE^5Iz|9`bVa|?P>nfEN{ zvzgX2uV0Eo%L|NGpbYhkmKSKh(DDMygY89bTBJ-O9-N=e3P%sb;d4c1L*1n*PUm!1}n&wo)S*tFj59)ut zKle!z*LfN3@G))<8u}KgaOXtr!YgL9yg)wS{D<=sEiZ6<(eeV=f!#IyT7bs>^PS>_fb>n#O11)(Bn@SRn?=Yc8%UhR9M*TcvtrP z$oP>{17d^bq&W_2Y~x7dfs_t;IXM0DC%2_uJDL=-m+~A_X^U~HyukPt%23~Ed4cu}EibS<*j^+V^5XxK%;fGV zIafkGeVe}ZWO`iZW!Ds)Ndza=!yk07HK`?Rrm@WnjAx*}(eeWQ9a>&sJOtZ|Btu@T zKc0CqsvqKCyy)q``<7`0*Le}`zW%H}=s;)O?&U*__<}rWd4YT&%~!O%!0|=P3yg=5 z_<-q<7jKPteUCui&dJ`Cx+BNF*5f)aZ*IjKsIBVR1oypWFeEo9M#~H21I~Y_U$nfy z@kPrE+ISc8va{2$$zJMk<XM>^>&|R+rcKopy{S3 zM+c<6o)TwDtvWdSd)>&I;#<9Ahg3dNx?OT;KSjG*5Xoc{`^oqpMMI0f%{iwl%J$FE z@yYvUb>ccN?y93VPQ_eiR9B(WqH(FkxJwwY2EDyF9Nrt@8d|3Z# zI=P;%w-OQ%7pskvQXfaI{xW&dnytRCN*Cyuf${>KiRD(BGlu1;#_Ly+|_T zCHh=Rl7F!dzR+u(aeK2C2VCbR{0?5Roi`!>k)i=PLr)EVw7ft*kmf5|Uf}qm%6qq2d4GXN4PG%dwya9Pw@t>@dE7^ zT3+D%fIJ|{Tb&o0g*+PPUxq`p%lW)I8XgJ%bzWdRgv19--|DTO zRhIb8f1MXN{!m8ZX{+->o_GE9u??YuT_&F0Qk)9-|8-twQW{RoOr1OTtKKlSMznhv z@`4nPZFOE;7CyenH{nos+ect=ZKm!aT3(<&;d%+`A8ot~=R4Z?1>PqM+xuUScc~iZ z{MO5Rq7D;h7=-G5CHt@Qg0y}?;(x2#7Xl}lriqBc_u)UssyhOA(@sa0>jcmGcs-7Iq|383tjz@{-!c)zRq#f+fZaPG6^U`IetZ-?Z zm5-LiYUT9<$T#E@rbGL()p(gWRO=!dzrqyj=RnzS?EZ3_mu+7D_WvVQy+ff~cMH2k z#G-2DO42`UzYn++|5Z%h{p|kL@ygMhW6*ve$?$!^+0kddRp03-$2Uy8<-~5`{Q2F_ zW>V6@L_{%M&DDCy(-%|`Pk zwt0c;Yp8Fuyuk9edHMVQn4tcVWO%=~>r-MEKBdA#?uuSB3DSMH8zW zH!}NJvzllUiNh~Tw+hmrJ{c6vW7s&tsbx=r3UV(ei?1U$%KcXKx@csTxYPSv3z{q!LXCYoEAx z1KYg7@x(SSNaq>0dBH9(U53RfjWq%9UP#=JtonU}s<*blwp-6tU$w>i{j@K~drbWi zv?p*pAum_5U;jAJm+xDeEpEm_bVw4WBgt_61O3r~H$#`j_pgjTh`QT;Xs0|OrHjmu zdA>c@;(ki@<=2%Qg!vx}W>lPC_}EB$GMQcQ_PbtK|DZ;=ald_Po0ItNHw5^i|xWH)wgJdABMq|)=8y@EjEn4pNI8DD`-ExLby&A{ft@nrJ(a1Oh>XWxW50Q z`}lqEK++X4-j&PMtBZa6{;&Pf>uU}?jNeutm9`wl_sV^t4fT&CBk}TY`=j~^SN<3= z_qC>klg`t-%W?ibGSM3&52|y{_V0ZAC!qeC$Pl!@XzdHqcyIM|=#S9$7gK+PX@1x~ z=#Q%2SFot6QNOOSYB(wOmAhh_7j)|hsPC=DOQF8ph3udx&HJ~7A1hwBU0x+`nQB=J zz;oYUHjsZc=ohB;1=IBr4O1ppx@$(_a)Ba2+P(L6P~S*0l0RzbGPf_{{xVaYCUJ3<|j#EUfC=4M_9+*pLtaAYtA)pj zSC>BLT+&vqdUPDu<6Zdwj5xAei46~Q$fDeyc_y`WYe9W%%b5AAf7>6S9WNNaFpWJB z&!?&1IoTqh-OXCB0M93&t?$47{8r=Te9-Q(@Yg%^3sUe>bE7+rwt2zKejv?tNk(Uf0&O=Qml~*KNgvka&XcE1(S56KMY*0MBE= z^9%&eg#i+aEk0^4(d8^m>P2%`ZVZbNya?$&&VBK?2m1tLhO+fTd0X*&G>gS?krC#w zedCq&VM$iZ(S~^bH?QYDItbIDoMF$`&mu?XDXhVwoBC4Y(N_DP%?nQp)5ENqMqM1Y zn3(t6z1Bwm&F2^=$7$Ja@&r$(iu}#yWwXy?%24uVsFW7-l7%p5@QDZvf7@4dg!6#0tj7ek(Q1I10x<@S9JDAk(NLX>|3O)9cp%;0fkGC*dO5 zRX`a-5yQ=|rvB2j?H2jnkTx-|5VBoQS>71B;rjak@^iE034!BNJwgp6hxQm9UOee6 zuo6#lwbV}gXeH6gt)7GWhg$nXkuoQz+Y?pOy+ZC25tzQ8hI~L7j>l&EqiE5Zm3f`Ae0~-qBm6Sip0|p% zF~1Ku!@6_{hke`r44#gXn|Gwu+iYGo+aJOI@$H>eHqACrULqlMvSgi@Lo}}_K1=<&K%T_g}lJ| z1?>ksZw1rg^V|Liv-LZYKB0cm%JBX42Zm=KQ?!axS|8SZNU!!a{@6~pW-@($H~(HP zJxxvBPn*rl|JVExl75lm->vSCGz7R-eU%);t5;;JQ!_;$)h`f7k)G9|BVF8cNP&G$ zaI<;&|C&ES%ga{xM@LhHUc6`Hogk8ZiTcThosN#^#AoQTkSjp+<)BW<$uQ; zE&p4M7x+Kz>t%OJdQw`$%TFi15IXZJ9j(6p>(6gBUf}<9w^NTJ`pCJme^OZ2}A7YLPiQ9F^O`WS%Yxu$Tdv;7c3vXpN8oJ3#Y`0RYXgJ4@*QEe3lrGI&;5YLI6MZDq+z%OB(V< zm><*j&|V~KJt9Qb@cx~W4V}Ul59p8J`#4O?hx*6#c}(-e{TDW}U0)9f^Vcw_xK`<0 z9U30C=!qzwDUMjU&-mg>^HV!ad4c_b-><>;nkuyC4pQgrSoLl`FOa~757UukSU#R@ zGR5x+)!%#tr!8})C-vd}?yIAvg;K&Icz0XQ@T%R_T)km^PE#akK8F6Jx22-_|r9pc5&>el_7A~ywf?ZyspwsT11Jj82#iy zBCS@-6Tg;IVLpHIF8q<9bEIxohtDI)us=xo(WXOQ6gOlIpK`4|dB;;<9iXgnAKSbj z^$#sCu>8&D1!+D&URG2?X~<6QX1E?fRAjZT`UBT_k-&c&qcneH!M4~LUroF6ptRl> zLYZgxAI?5a-EUht#If1-1#P?w=MUrs#y4(DldSER`3gzR?A@8Ntdea{?V`GKwy`W)?6E?x z$_d)j3Kbol={&g33sD)<$%gA3(d@>)SBQh-znlo`;3{Zs&^usDV82{9dug-%QDf7j zeu+zK(X-Ab+jK`=h@yx4`7HHhsRXS90otJ<=1x|-{-*UKP z({t`=dTK839u>8&D1<4;lUb3i6OMhDiTYZp{h&??$*^cYH7@SU&w=Z_T)$0dV%}9CNfG=} zn1x5I3@tC1p2tLMUmy>gZC{Yi*FjzmXLlOjETm_+xQFfjdh~=iuJf{b{_yilte?+Z zV5RQVrmV}yHZO4gW7{9W`@=Vz7o>O&@^a#EP1pI3Uk^?T5raMd8`2gVOb{vGmy_J208Jje^=so>|qWZJGh zM_VQgTHgi>u^!OU{`UJ4CF??o%S-%hHf~rRrZW6rmS~=vp?1E{RlJE<@yu+y-MD^# zot=DD_UHC9bGkc|k6bJ{brRdWK%Suf(eeWA*JksA6u&@T25sy@c#N*ZzbVW+by?EU z7}t5(5EYMq7t|~Jc3$A(h2G%^w7g&%zo6v>DSpAWeL;#}ATOi8Z8q$sv`Tyi^RkC+ z7qxJm7wM;0-utl4*wh=UoRsi?If89o;QYt7eSth++rB`53}x6K$V>9QpNvgB#BCdH zbP-W((muG(i=AWf$#VbQ1d}tjx({l*Uq#EyWmfjFKIJ9S&p+@?2IQD1;QWXBMQdN+ z|17Z03v6!#o~K&hs`>J0TElu)itjp1hrGc1YH^*HPxo7mk5cFfK9!OunZI^`AMN*z zn8v&Jtb;9)P!ZJKdp>%G2Hv24exuy_4^riDiW`28Gg;z=c)dokas%= z+q@vfyJ&fV{%*5*L5g=FFYx{@T;~N}F_a{{qJ4t@ruK5GlKBs`ykHvdqU8npyUpeW zDc*&=@B|zSA;{n$T*x>TF_qa%f$O{!-M+0epki8eoTxsSgkjVR+q}T}5A8QvUXbEl zZ2Kdmco*`*q;M1eYHm#7!)2R#(Y+I-xX#Pb(6!U_A9Sy;|G4YAUcVNAmKRLpU9`MF z9yZ&)AjP|ompnf5q9u_hn)hBYl(47JMBq9vpNN;L9?xH=NWXsCY@ejai1$E_*wf48ITf!(-VsCRw^8^HrU@i&`-1|Epoz9<=%4`Q0f`AFOV1beLAk&7qX*? zRG)-vowQ^B%q9}>lwq3}r1%9bFG%qVws}Faw~!b3eLAl5G9_Pr=7XY8sPtroVRLOr z3R+$;jbG66f)u}Cn-`?`1@Z#FPsep$+EkCqG7qx8CkYYn*S;f$+8^cql704G@4-zr zZ#s4AZ%Y|){zH3@mKUV|@nM@6-S~U1Rpw4?{OJcJC&He4!u~*B;P>gc&daAbcSjnX zKBC)<#EaSmCl6#W?3FA%fAW#mi(!6^TCNQw`-?W-MSC9^94{E}!uv75^1dgQ8RYor z)Hxx^{8chntTl@O>^5U%# zukR7a+d0{rQg`Io*Lqy%MX=n^lDX+qFjXC2I(Z8}Ct6-Gjd#)Vf)wv!n-`>b7xJ>R z)3C{2>Tu=MWg*Ua0#Pem=f!z6XQ$LnDoM4ognDC{r^fHxuNtW%=M7ahjFD=%TJ#&q z{-TX{(cY&D<5B33;QcQTmWw97J|WnnY5azZ{ktfSkC?u=XuvAfF@=g(L{|4v-_Kx| z9NJIOt`58)bb98+2zFD2P&I@~X?)sDb7cDPH@h-M`L9(}ym*{gPN&dw;_(HFB#_i2o9B`c%Qrp&A<+t`H_lT2yvB|Pz zM#~GP@h)0kkm6lz^MVxbLSD#CX+?Y;hYDwyX-w?`W^8bsmu9;!k6vDPyc~C`ku$Qr ziv}$(n8v$kc|nSIvCRuoybE~=)cp|_c#S+d>c)4PyS2)^xXz2j()trQuNM40ZL_iS z7k3VO^Z8t4DxoP`I?gjx-G6!k$^OE47sfA0{)i+Me>~bnQ|Mhiw^GFA@O?0TMUr9t zFy1{l{qiUW-}>Fj_&Qxn@q&BlsSU(VJ|g_F8Ai8UwI8}FP5e>jmGQR|PR)3Nnl-HvuFkW=1?Y;5G;wq{C!vbkq$t#QExXugj*`v!w5p;}1 zl?)#ScKdz7HC~Y77qq-Ue+T)1@>b`C;Zuyd#dyY(YdJfWx^IVm-{$3i@3(|JAlcik z&dcPmj%4u7h0=S1A?wx#46n9%`8zL2_GYW|V({~G>&Ay6u|hk-h9k3q&$oH`UtVDR zHIveCVrJ^xxnK2$u{EOI!_fY0bzY9^?-;Lna=_-8S9G&(qtY(4ykNSXMjP+K`Ht;) z7sf{}N515=5U|?cOncoDT)dHK72LHeF`tJ@d9 z`Q5+X^Q4XNQY6NWt(nWA)P>;w>k33+K=8 z`n6oO{Inr|OD9qB)K0T~M{2!oJc6T#=gexE77deVD3SK3puL9gk6=2~Kid0WV0kcp zf$JMg@2`XFFIXRx;r%bc&m8iaPQ>124I4?c2;){jikD$|P)5=x%#T)v-#5mt?Qzn+ zeIfxb+D)>r{wq1Qd4c;Eu>ELxf#q-W@^||P^^YV&UVc7R<{(pSBC;GSo7)BNSZLYNk0` z?SgGypud3nMav74ec9#(oxOqnsA;A0m7_0R(ArY(A-o1xE^PAx#}nJUz<74szM$g+ zjt}I8qMFHrm{vKJQKRp+#WBT{*3RV*>lf+On%BPCsvLZ+gQ-7)?~mYk!uDLre*NP> zU%qc?wzwG!(IH8gjwBs!MMRq?8{p+?L% z_gv=LSn{t=JawbTPv!)yuiTGasc7d~!;k`bnx%V@VC0@A!C$&GDQkP#DGoLD-i7(A zLVAz45ESb>FV2~W>KOD{Ijw$K(H3B@4(?9jj}RQkb$^uI;bG{mhR^J)yYb>zRo!u_ z9%~|FQu$FHR%f%F%N{G3@&fM*!gT$IX?{3f(7wQQBpL4aBgshR!T-ae?H}6bk=hH> zp?#UXC>qJeTlJ10V<>6h;JFl$nDx=OtTPGPM^11gE0GkS+6<}Q!@HsgTt2Yh~8#%%rZZ}Wn7ydW=YXJdm}-|UP?|F}W>DPU1P z@x(6TleIw#Ld#la*SNFNF|{w4u8(M#GP%-SGZL2z6baJqy|2Txe@Ol)QSpqqaZFvz z-lQBSJ|hze`Gcf&(b^A<1RH%5>AIS}=q-x-?21?{4WW{FBWmAq7VP=4(jjS8->kGM!K z@~5h&kq8s^SJVwH;BU2f*I52rm;6SjnT2nl?5dk?TKCcB=XCpB=B+C4bNd};CEZbX zaP%yj&&L-5dlQ@_6Lvvfda`)-EInFDr4=G*`y;B&9V~12>Q2Ihp}BBjg8@;`PM9C^ z5<*`sJWjm2^f~8}wsO^@YWKU*z+x$Aay^|#vsz1Nc*V@IpL zC)>Pi^YXXzbw;d`czYkXGk$y2c-k;4NNAgvZC?Jy%aycGcb^4jGTOX6m#9?{=whY(Pl#|XQ=Tf|1N@u+6Ggh(~2)aw1 zQ1R`O4^eB=a}(`F6I|ydS3R!Jyg=zl^mqp$-9yvVGaUHwic5(JgU0KMH)E$vxa??W zD?-19&|D^HLKD$6Yk2xbzUx#{yI$Ae&bQL?b#&nnXdkd zABW=h>CLeU_TEZ-mAs1*&!1fdpDRAMfBnoKnRIqcsa!to?p4<7k3!uhS)e>w z;vcc1`K(#=m#RreV!9~gXRGsa0bgn4n3v11k|BzmB0X9;H?@#VDbZQVD%H+6t8p6x zaK8@PQ>Y)Pzkk~wRq%YO|1-Ouok7|Vt8=q{7yU8yx!o*<-y?oeblkYzMY(>gk!G@y z-*T+GhIP@?IUo8j*dJIPOo#f|YW}F~7Uv3M7e~+-(RpPCO2SEN(ty>Uw~AUwW}_&D z8)J{+Ixhsyg#i+aEk0^4(d8^m>P6iQRHh&69=u3m9V1ROSX2D=YOph!$AtIAtzTM= z$8Fz3{{?w~<-zo=&P&8a1{u*wyvwfl+JF9Jd8}#v?m}3W&!Zgqu>*wqhp1|BotGlV zv!!2}t`}1^#S5G+Vu{>AF7Yaq^f{x9vzE*Lk?V$;LN3H@T(4im?Hu;W3{g9_BjMav z`k~>bf?56RA^4?fkcXq+m7aKoy#7`+ykzTR+VPKgW~=jZ-`18!zJJ`;@c7wkygV6C z*k7oxZ5gxmHuOhm^#|htwB;c^57$RrhmQSd7-#&{-?_lvrXj+-%?oBcAnALn@lsho z$jHw|dyL_}77^u7B9?7lwt4y6eqC{&$TcxHLc(j!Mi(aR92B;B+2-YMyd>~5mk{C4 zMl%r7jL6yc@7m^No0q@w;#;<_^@x2H3CV^>@F1mN>NYRiy!?$9<&R&T&(?3;@O)d5 zc=D%c;5IMYy!?%qVeZ5@QEewJ5*ixPp4&EZ+q`V^@;6@A4bulrv%9Y(;4K)F;)k_u z^Rms$-*~yblj+Zi#x>p7iP!QEvI%ApX&H@Cv37K=+-FXv<2iK2JpWo4)St z;Nt~-uN?~UsjBX>JB6%s=a`uc#aI7v-uoZ#lMv1~Y;|6=1ST&!(RrFbA*FClINO@r zSl?Gl;yp0b;kZ|qRgr@R*Lk6xlq@xL>{s>F9}rwSr}o9NCRn`4L@i%2EBi$L4r+7C za1DVK^VszxhBr>W^8MZg?MqCJy)pm8*`&&Ov5%J)Pe-1}ea%#9&h7taii2SH#L5Af zf2;GNxl{c5Vc$k2z97fxoNE3OX}vFmGSBWmoPCvvn4WNp99S4e7R@6MEEm27)z7uB7!jm?SY+{g48m}8OZ zL;4>d?M1TIBSK^i@82oe&?$WJfc^-cCqk+ZrbB-Q)3GhX_eYh(R4L2huMBHm>SYbj zO;KJg#kbfgxRB5??ZjTjNB;&>Uf}n%a6DmuOcmO52dQ&*ta>+}7f4{khv`T%EFaG{ znd0|^>TkY+)0R2Yllt&}DA~Tw2zP5v`g!iMk0x2R6;ahpY*VKDm<=Kp4lu>VJ%#l_ z-e5YEWjykh#yg}K`;z2hM;?Z;_C#xVmq!Tkvl#gu(`z%r`TLs5pO^FVR^i{+o9xT- zo3=Xx+Eb{HZ5gxm6SOaA_4j{mU!JhyHD#7WU;ZpfMHWDsxfk*Q?E|!*FhAPgoK1rwvc_vu72M? zfA9N!U1zRy&FTC3o<8&EeLZvL%slg&`?=?tb7uB(3UqJaspj*)t0Q~XnrD~d5z&!i z{s0Qz@dUqCsR-ZSg{OWiGdj_==)un;#s6t98FJO<4X)qmxfx(YxjtKELufBZ`-j#G zTtA_`!2Urxp3n>J=WNNtV~W?@qymJwo8$(F-3zSW2<-*d7qGv#@R3avt8~Kq7GcNox>XU#0T4 z13vOBbTMf$}vN_i=Lw!u>(2_u=xee`YK7MNB*_fZGH22gwVY_5_oV z;#o4k7aJ=xQW-;#mPh(N=mow{I7pveI(=@6^?zPR%ir9z#pIr&;;95D>!cXcG>gl1x2c*LV}eyhT!=LKaUi{{zY0IZ9DYhc7Hjf?ky_~vh zStZuT+RwsWVYsQSGP}^XDNJF~G_WCe_x{X)_9>Z#dkM8yh0Y&$>@8r@TAPRcn~3T%fl^s=Sa^j%e*jIf7y!@ZJ}6B~%_`7h9m5{1&Ik(Uwoo{|gP z%Jt)ppS_kFQbi-Qw?utG%PU|a?oWGZ^INDXzh$xS?hmpV5z(4tc>LkwN>EucwjDzw0bm~!=K9W|BKkdTx>%+I*M!QnMjw~Yfm%$Y(Ia{)2 z%{8shRHZZVqn#AS>>G}w5e!+LX4tlw8 zfTsCq(~rs01+lxea@$;q-3xpk4pzTl^$V{0MMOA|>?p(WFFyJ#%5F_}qA@R+7hGOA zw70of$P9YP3tY7FRXRe7dBMEk@)Fi2(c6Aq#X0u?!$)ex=TVp!%nL3r@cDk27t9MT zFX#7j&R(>ZQ26{(voR?4^+wDK<^`9Rn?^I+)u^cxJkIM&xiT*@VO}sVxV)SnQL>G? zPOo*9u6!ookU z9xe~(>)`LDxOP8xwe%i+df48#MlV&E;Lk@MNt^ z1!C$-`WFjiV1L5xM~dP6B+~L|+u{8H@AnK-_tvN%w#juFhcu~W5ZVjU{-N~(*H36K z_|ES_FXum)HF$}0M0JaN+3UO6;R~^Q`7U&7sOG0rjA&}eo1ot18A5x3^RLi5S}$<@ zg!Y2({4Vrz{J^>TxUHW)&^TXA3JM5eAa*aV+o^|nlDFH}_`56~f8of3)(bq};qfH2 z7x;fNLVLmY_n6Sj=L7ezzcQZGoeC(ls%=X0Cw4F1f_ewqx-Jb!+b$AI2O!b(LK3Ao&XB1@nT-OQ*d? zFzM4MO<}pOa>pB}Gchli7hGNRfRX<^}VD%gaM+-}yd|Y#LSF zpvd=@59%>5m=|1LIBp#BGga1XbpAM2qjPxM<8Pl_<`~A>9=3h?QswgHvnjm(BebWB z7QgFePL&Ni%XpFBp&7piueb4y;q^3p{@mW`kKU6KhgvLI6F&PpeWk&7{Yc9zK2x?k zyXhpwQoY@F{w=xA?8YL^Lix?7!Y@C+_E4)+8}=vC`d~YpuYm1@j^X@njXJZpgpN{) z(^vI@wB|Qtg!Y28e`vkH^%L3)zVo}#OD?Th#V@N+>$i$>u`&~5?ZocohQV)t)(4Lg zGAkP=`jJi>Q=7kb&1*Ja{T!pw4pZAZ{r^r$ScdwEAamMYC~ zVVTCB1hHkBQyOt&tr;G>#!Fp6_eFmQ7Q9A#^qVb{~RuBW%l7$2bZ*%AJ#=-$}gA@!43e!;xp@&fO-V_q;XxV$*D`tvZa zR86ZLWxYy!rSKT$1@nT-OQdz(2VOy^X8LTMXoDvMyQsU%Ev~+a67xUS_famGVGY*v zg!UvC&M=WaznEK~?LF7eVHt_G9){OP@OfmX5@PR~hv)=r-)wPRPExpv_WR)H)7&G{ zR`-?fzE?c3&+XA$OX)&SlM_Y07fD8AWpnZzn27!Pb;esZ&H7wqXjEVItQU>lMoDNd zNb@gfy};{rLVLk?z7Bfnw{-{;G_{K_E-93{An$aR*u9)1XEq$aU17&=u+^%kJzW;9 z7w7}V@O(t;1!=wxZGORbz7Bf%{>yg#lA=MmZ+~Ilp#8i7v3q%=Ytx%^=GO0II|2F4 z`d!R~_5#m;LVH1)uS4qv-}yS|rSj(hW7_1CcN$k$D{dd$%|`5Ac3(KF68W^Mi(z@V z^;Eu>Jz6i&2R#1??FGIcfY9R+zR$;mUPjGNKgwh0+nyou^g-eBHd~_i!g}yL^LWr; z%L%hwzRX`dgsx|ykN>v#Z=2r@blI4!;_leoLt>&@_beIv|1>tgJCEyn+MJ#tbVCDa z@C)bB#L0xo5iGx8^Dnr(aDQQ(+y3I@{xat?((ym#u=zSHzu?R-S`-V1^Givm3mMvD zvl|a;VEF~hFSzo{9@*Ll_kNd@3uj!5Fje@~s6BT{zDbTFpg`q;CwaIDu&N`B`1~8^>;>BNUtn!dF$R}ny@#^ zB;&?A`g)s~lZ8*5pISF?Pl{b;)?u_PHHeFVF{!;rWc# z3!L8}v=@BmccB--!2MyQ+5BX4*;0|?IlWtm-OCl>I|FuBI`4li2o0&buA~y$3q1b` z?FDIm7j1sQcYYUoVOMk6aIqk!WXG3)1{9S}*v{??Nwy!kbGM4<#HAc*auBmqH&&>|VM|3$2HysI+{(PQBPVd4dbO zKEke#a9tn$&fnRoVBcn)9p0f|JVVY4C(?$8lE~7!p0qp`@;{rWeQZ3zlDS<(DRoT*hYhbCo_*M;6`hw@=DNp(hXg=$HU7UA_1 zzA>DCk=K7#*P*+mBUR09zdoAMdAPOhw*7e})g!7q2V2b1dV%wEFoyk& z)(gB|C$txQ=j)&sxjrGg{veN)jfFzWHeDwBh~0}9wV+G#gEO3&sgJT%Uwar3+6$bI zA+#5y`8u@u1>gBP=!GlBnaT1P3H9hTGTHDJ3q4}@@;E$u#|uxdp6TyjJtc}2P|Vah%M6P)-MV@>N&3yu8%{B_ z`33rb=RcvnbT!J9%pf5*GJg(5w7c_i!8kRrB|c;`Vywf>{5u}H4 z9n)(fy=OPNRC_Go)urJzEWcp+1y_D)K035=?Yz-wxpS}mm7`X#F)x@GTwY`c$XWEP z`sS=nQh60(XBROqm=|1LVxx}H#|4?Zq%e|_J^ZNmi)71z?9z~=Z})D@3Z^kJbyE&xJAUZ?s+?Y-|22BKWrm* zFK1Q{pk&;5Knk%iU^^a0O*LVH1)-$m;M-}znWMcgTFli=3+qs>93 zZ`kbQCy3pP&<+vG()a1oL90)j&s?^f$F7gC>myv(M|CXHVw19}RFv_Ni5Bv&6EQEC z7hGQa*Y94n(x>o~{#7mVkpAET<^}VD%S&PqmD7GHMG|Dly0QUQg^MrlZfX2h*H8GyaQ>xv@6eU&K8jAM;t$TY%w*T-hj1UNuRIyg zGravnGSAWveAkb({LvV$%x30-wW{S?_acN|9uX~?u z_fpUC(cgQ=gU=Ml4jz8i=6m(BY)3e~U= z5xW<)M`|~3bUzG_Ot5`Bctp1htrzG6p8tgQf;7L2c09s&eiwSVr5|tXeMhKktT&~8 z&;Cyh#O{S*<}*iy;0S9#>I2wp1+Q^-i3bP|F<%& zwltdf6gBsSWa(-eCI}+cJJ1{S2*;y2hoj;*DU;4=g&9kSwY3aw?m3q+|L$}J=jW?) zdUkFJaD6bIT)s3sCK6f7|7K5z;GUeoX~&hTU(1gpb(@o-3Vyu()x4v`Ns; z_DI&*Cq^n}#O`G+HRtUM-oqh2TU%l$H17JkMmZnBKwOil`S}(9aVSMN_ zm4c?((D?52SF(%dw^_q>q!`Hy#mNPwJi&}-5h`IX20C}S*SQC8+?d`;CH>sy*cAbT zLva1@c`>jZDgN8NG;348?TaX#%zw#mR%b++_uuXXdbnvcvt5mvI>F<-zLYETA`@(f z@!#&{8TG@5N$eZuTE3;aT^8K7ih23xd>y{|=5P1nFB_9YUs-2(Uv5NI!hcc`^YTwG zFn=KBo4?)5BdIG<^*JvD*}p!GOJ%#bfO)~~1u5VB?Oxs-ocq~C^OXClk#K_2c1KZS z^8&BG;Pnx{^)AdO*!2-fb542mg${XI>OiU-4h5z8j7>{H)#Ua$<{X?g?wFT<<`>M% zKfMSnh1oZ;=2Gdr-06^?CjSQWf_cGpf4cHPmcw<~kSwXYqf$fGi_(}E%nL3rV^8A> z^yrz~yd+m<{u*ztB)vTu#h&`NA3tif9NV1Pzis{qT>nFB-}yd| zY#LSFpvd=@59(n%QkV6j;)l~FS{O2%JqwSnO&dZ!m|9qI(=Xb~U zj0RcPKayhB-Ja#YI@|Ey?xkP<{@HJrp0qj3G8JFg+>7`7ssDB_j_k$R_wVP5`Ozu=p1{&p`7p-&l~Z;Yg< z5u*3IDJiUpdHJUoeDlrU?qx!cb?4{;&zBYYl`s1nuH<80aC?RRr^bdBNo+ z^FR@+{!({rrmod?o%=(ib)k}h(K_b`yF|~L?A-ErH@@?`@c#jD{uR~-@b|m09Vv$E zhxe!XFPUVmtoo=vuzGEH<)zq#Gm0FX4VE7dHFGu&O7aA8!u8{Oe-VCO=zSc;Hwk7& zAF4|x39o$K9=_yrKjQZTr=Cr(lNZi<#1i}b?mNE=QSZ4c?7v;D?x?r-u=;QJ@|rV% z`U`tbpVd2KPQToPv(N)l{I`1vneE_T&>J$UWGWUsmFU&`-|hu^z&GFg?Ov`4jGv&| zZ0NYj?kVjWzds-5<)8HnzWL^F_rmjJ?4?Cm7A>9lx5e)Awnog$KfU0aZ~k^Ke8O3x z>lE*%id`RHGfp%1!o1-2f|PImb}#XYg2$=JE2dV`GHf{S)=?4K3p_tz{HN!4@x4BR z+lRJ(>6rWGF5YccJ*rMy>aWI5Pwdx6l#@}_;qi#IuQKOzBA<{>2LE3x1;c#--Y8pQv4xB*^Ab?BEeT}JniuO1$w0A zk=o(>F8u$I^ubBNN+wI5J&#Uik_KNcLRufb?KduYFKSOlr&RNbTbjKMF7n9P9!vQ+ zQg!*RXvlqsvs}bpzf^B6oKKx`nx^=*J$@-xT@S4n_1>gUx;p+w8=aE4# zSMDB3p%6G_EGYTCNHjv`AhCO4YFUtMD*bYO_DuR^>uE<`LVJPtlL+kv{{Mi``32wS zkwGuN>+Ks06;#|GQU3_L-*RJ)*uCg;|LiH7_T3@uP!y-yx5E{!7w7|?|Ah8}biWbp zc!cls$e40=(G+O>4@bB&?lH`}2MW{#W0?j=lQRd-!={a$33Y;j!b&X?Hpn*Vuy z1byQh%RD>tsknW!z~l8cc7vn}34A{fmq)4x;qqwX1m1tnzc`rA4cu21e=87ESJJ;& zAcJ|qyx_W?j?mN+bM+zl6h4mP`UV`-(`2z1Q9$&G`B|QRl#;QK^@bhqa7{m3$`Il(56OZl4)~KUX zIZr+nbDasNjc4uTakzKCSJgN!MWO|+55^9y{yfYpRnuxmS+CMwDLe+-VLYn(rRSh~ z0n5k0DQj9det0Fgk?}^Yg z?&s_M8*lONlS^@DC}lGjzG_l`hHBuQ*dwI%Yf&s5&MzgME@Wtr&2BuXfwcUSFwUXL zpsU)Cj|vopo>1KF5->f`mHcVf=*ZPqrhY2P#9qI!8;djxtA=gLt^n*j+r0JFPIlxUfO;4 zTpqlkqcw2uB<<=O3!P&>9t~a7GNu-sJf!o$r%~-s*Dvh;$10Otjpx;iSx+A-E8dS( zAHa5``lU?y-s9EXr;eQ()Y=~8rfd7&V?R%WgpTa@NjFjJ(UDJZeK2m~$YpG1KUe89 zb!4$!S_<*~puR<_0hx}SS8eo-49r>2?A+sZdnxdjsUP#ubB@BJPIbgyzew(??$PO7 z2$m7eSJHdO@EFT4Sbo8kUm8uQ%qN8%%Rk@0n{R!K&m8lDdBNqSwf{w~#*XERyk#BL zh4b?ym>0|oE-zDBA1S>eW)?ABCZ{eToB)h}b^{*lYaQ(L4Lw9j`YW=XGDoPS<2bF1e%If)FJnTRUV z`VGB=G|p&x`}oG>Ntwk-P|Lo8|V{#Pt5glUZp6roZK3T(Q?!WER#~Wog8TlRW9$M8_zFhd-WCg7k`1@Me-|uf8Eey`t zH181;ThPD6eD>de`LNx`F9RiTGW@&^34}J=;l7e7MMKBoi01*lP!Fi18M#E z*1KmjnD(Zv1iBe&41CMkH8)7w<-F>_DNd&4Y%5prT78t*y|`xW4R>y$6}BXJDO&i`UTV$;T!?=*b;vsH;ojqNj50{a54IzD(OvuHdzNFf znBJ`%+1VGdp8{T=c`2>(lg>f&=vo4&-3nYEjAaMNS@f*>=B!Opc@<)37hyY$eI{Vt0_e{1TuIihUK?bVqP#WxV-e+I)n+D+Qk=_6iQu?cRGuC!Mxz|Qr}Cv zRf#OgQ|NzQgXB!gehsT%{^_ zw@=Ue^ONMv+xDQHe}TW>hxz;v$uYJwY-zwLBp7b;(>oIh2 zvZC?1MFZQBVmN(6-TGr~)LonS<}oC>E*8X; z++DJ5kmeYr!n|N!aCs>d-dwtPDB*a(GnR6`6#7Wa3+4rvm#rixs%hU|yKG&zZNTEQ zk{sp*^McDu($V2#FH|#bT;#oSFWhsC3-f|`!R3YN+B1dWBX+~-6;F?CPk!(W^MZN7 z`M_(uiGIsvq|w1=W2hNHRc8Lg3F6spO9UDkjKi# zLLp_FE|Yzj7t9MTFI+LsOqRz;s7J4n$%eOB=wV(kFSxu=9k-wz%w2J#3T{}aQ-3dy zdBMEk@?vrzu{oo+Y?0|oE-&#Tg74PirRhn?%J}Y>oxaq*w1@nT-i|g}abOl+}TX)f>%m|bptH8WqUT}HYW-O*w zRid9#(K;0uzt`#<<^}VD%Zp$LXM)jWDF2c^`KF=RI zUr)1joj-)-7c9Tv$}dfcH@66f2T*W4ySbo9s z3$FZ0|oE-$rQ>050*%;{coCl$8D%qwGFFfX{gIF(YK zy!yO#yRpG-<)x<7W0)7r3ob7S@^9St?9((g-MVaA`i$F&!Imb}@!r6WN4HW1S?R6F z@O}O+eEucU^D*J_A;J1z^S?8s(Yi2p*Iqhl58IJq_&im4{bzL@x?4I@)!bUPsd$Ut zkB+Vn4}Ds}{(8J+goc+3X?@;;dI#FNE*Uu<o( z!M26=b6ls=M8NON)QL6bsR;L`By(A$^~292EswT6f%l)!$Go3u9vfc%T#Ly@h*5K& z$>z~pt;vgA9wfRp0=4;rp&I|!ynNRU?el%@;C=GvY?p^LZ87W*=w*6;*%KGp;nr-2 zoRY@WjLX85x#ZtiwZe{8d}JAN7Hox|hdy8omxuA+?xk!eiR=EM{`x0(~Xq55|AHmz%Y$=Er#6ow-oxnoP5CcNyGY*dJJo zUws3|BeebZpB|4~L|$0x=oOMvaij}*o?z<0yx`{n>G=O`UN+VQMO|1VS9u(_m=j}f zLXLUCyx_V%ioJK?dWgWrEi5dG8n)^yYnT_z3ob8r3wKFudl|QT$JnD051k3@|FGEo zBb@h-s%F3Lb6R9?a}2X*=u4B>f#nx0zu?L*ACq25?($o9u=P`a8hPrg6y^o!)kvzfqN2K?CzWT<%T29f#WWK&VifeB`FVg%MQaj&M?Yj~nkc))LOwMYo-N{8gdZ z$Gx0uF*BBR1%4hWhW(4QJlb}6zp=db>@QY_0AZW_qe(*_JxA-z&0c+8&)Qc@Q=^^Q zE${?iFYx{{l9$~ByS4V%IDE zvbApC)WxCjExZ-7!t-(l`1U7<_BIy_nL#gkfs0nYN=HcH=fnJ(3gQgA-vkLCvlTp7 zI&bZ~@^SfuDBtVQ&nY62Vk5-I;Y$f(d67zz2!F7G)pZGrTwZ&%l2LHZo50jKsF)x@G zTwY9z#v8rg>{i^{70o$t=fE}03+4rv7qgwuWg2%sJ6OjTar35tz;nzC<^`7*IYxqk$jwjw>ablVkpC9u1@nT-3&&=jm|zQikv*D0 zne7Rg1DF@g3ob9BR?$@MBx-xBpPFvj&*Hj-dBMEk@)8_Mcb(&uOb0syb-dO7Ep?a| z%nL3rN|)s=T1ASstJALSz3_2F1@nS=!R6((rbqHq!^||x6lMCyslppDFPIlxULI!r zpuV==R^C=&p=AF`wIB0>dBNqy>V@Ja%V{U2b4Oo3%An!K=6A8*GvNF^gZU!m6UyEb zp}#T;S?FjM`>_0iy5sG=iyx{WU`kGXIVy(8{RK5M1 z%bRF!%nRlPmzSEG%I*@v?skRA!|4yjLscC|tGOrI7qI`UVb{|*ucxm| z?9c4FFv-AttRsY?eaA4CU$FdwE5Gm*>6X3yPCok}|EJZ(Ko14X3+4rvmkZNx;!i#< zd*||H=ECqVbAHSV<^`7*Qtw=&0}CEKo((Tob~6boVO}sVxV$)89Gzr#k81tMxberv z*Acdu7t9MTFW!~$Ti#9xH9dP3Rr`4L2|eZo^McEZc+_3$9?q?jJDl^D_}&Lx#Jpf$ zaCy1md2!{J=N$9Rg#5Ek)?X7aFPIlxUQBuANjQSNSiA4NlQGE+5y!k>UT}F4w>ws6 ze1?a5&*=`nYgd`xVO}sVxV#*S6T7S&8fC3pZ}l_0X7V)V1@nT-i;klKm2IkGU@Mug z&S!&2%nNq^28Vi%M>Wg~<^`9RMM)27Qz@TNMIee<9@`e7&5cC!zFl zl6H4aOjDdDPVNQ8liTzZ zpJF7ZiQS7G*@Rlu_Q6BOh3(u1GkMtigt2-TXT5uZ++NUGeXdVifA`DG;y~Bw7YXvCU+%%#$eA8< zO|^3)yuu7z*2|f}7kK%GziKX0bxe|+?^9vlV!%_+B;@g7HO+;$ea&7rgwURJy+tGj zYF0TbnPq=le;H>)>u=!ra>tZxT<#nCPT@23>0_{-Ql=5g)~YBIq7LKC7Ct082;U!! z_WO4PsC!X+ij+Oq?$NE=xvf=mP3tpNDa{6r=!D=z27}fFzgDRT-`|C&ek(IN(Y5H| z`+abK@clf#%R?`2dp_p3lJZ`1$;fOCea`oi&|Z-C53LutezacDo)6H=vUWH<^+6_< zE0G&Zt=F_CiQUUr%A-_E)0bGU@%MBVeu`5GN?JJG?3{U}hB0n{oP?+DPv;lGj2k^h zl1X+pj_Q6@X?%|O`iILyFYtPMOW_`Z)Eejkiof)C%W@_RD> z@<#1fRVS8K2h+KM`>Nt^1!C$-`WFjih~3MuO>D7Y2s_V@`I;AR{S1u>?FF9yuz%5d zf$K->1#NzTUe13oYw!~1i0T&kve$RB!xv)ra#(S~_PfdJa_%+Dn!@=#Ux>{M%pYjI zWXM&YH@JSM=VpKr<@#)u4fKr^FFo9Tqc+dv<)Ka&UpJvwWY+Z4`%7+CjWWonz3lAD z5+rsnVlS2b-^%~u{%sXGE6Dd)m9MDuPM`j)?6moqDbSh&pnT?m%@KeWA9NODlEMx|~$i$>u`&~5?Zob7XkeT3qchth zl^(dHN5F1u11o|`IaM=IkM z`C?hndV%*B;r1fM(2L}*>K>iWg|S*CY8Ck|tv#I{ zce!zRgo={TUf}spXfOX7Z@~S=f3+iwN3ec@G2DI_LobwBqHlXGrnuv;M^&}op%)=` zFGB|&*>OHP5v$Y9AjX~dUIeWd=mVbruz%6!7sEaGOT2I0<%qZ?5XioF@D3c@wT5ihiHMqS@!JKy#UiKh<=m$%sxyB9NK-zBOe8y=7eUvP;r z({HIvJd@Z`MQyp0EJFU=nE8c2UGI*Rj~jj~N*H1F7haih(>6dl9!Txb3-n~o$EZtN zUOn{ebH%W<#D1%X*1q$79@#XixjnCNF+4xfdV%8|S}$npUFbzH zaDNzSHb2>1wp8SJPVW|C_Y(D4^R&*h&(XC}VXFt-xg3q1b`?d4zfEU0(!9gpy> zZ{hwxFYIbA8!i^al-ymiZII>|r6P7OY^h8gVi#&WH(W08lx3M*MC%3mfagE#U$prJ zdO(|B(AK-qOQG=Q(#1mw#{-_Rl=G#~M-sc2CwY4&f-3o>9cnu)+~VeXN=|JeOS0n$ zhz{n;OX%&&`qTApz{lFx*#of)m&L?`Y7%AHp(lJ}=%uSsre0}-xj5OGAKf~NL0TJ( zr@l^Sq#pNCpx-w9BVZ(w{>3YevCSVByIZ$%$THl)_xs@TMe^O9*6$guH#Cq$*6jS* z`CHJcXIQ?1Jm*=xmz!?rPh$K35uD$>-)P1rb!pvCT&06^NuJRGtru9Yz!>%~S}!nv zq4k2cet}-(`h@KIgFIF?778ibbeZfUb}zSRn@Y~al@{G=zJHl+{M!dYdx7HY)SrMCTe?BW*HgIz0gDJ1^R&J zKcT%K)i3yZL0i8-FI2}ZXa{pw+^B*Z7V6aB%M*Kk$u)}Scrf~?=!KT^+5?B$18BWK zAMpGqv=`_B?Ra!DKEUIZh4T)PEFSsMh%_I#y+|?iVsap{Iit61nd)tLH}9Yj(fxlK z<`=1DPt}&fth_AEsg?)1p`V3(&%AlIc%RSEhoxVYqTl&X*Sp#^LyLE2Jic|zFlgsy z@$(=Z52SYJC0e?AdDgJ9NQBGObVKElFP)B?l{`N2%iJ;lar?wfqC2G!$>t}r>MaG7 zk~eduLz|G+kJR4TY2-oiDRS`LWjTKx2}$me$!0r6b_!ZrrgjiDS3%$gT2)BnE91LkcIpeUd-=h3 zk&gBoXEpUbyDRff`TB(R0_zzP}Ep6!$$uge@s)wG(r>_Y5b z0=fHd-FnKuSti4X$pRRY~Hj|dU5>1a2)U3;k z31bt3p74#~c$BYyGbZKMo(f^b!2BG&7N^H|>79-_`ATzLNHn8YU8mQgSU8+tN;+N0 z&>oxJcu)i1?}N+l(@Wp18@GF4_=A|qp)R%_(V{utXy(9Obmu!tR=!vtBX%#O=gMY3 zGZ~p&uf5sseO!77tru9|!Wi~1S}!o4q4k2c-i2QLe^Q^nA*JF$W@K#pbuF2h*u6Mx zF$gr~TFRxGzM$xtt>i~&FR-2=v==zuq4k2c-i2OlniLYg8;ALq&HFeC)vyl{yO-!* zs%<5&A8t@qGbp@Tu=^HTFVF`({|W5{souqRJVIOVLNB-UlSO9 zh}{eC%h9*$(;p0N!n@))A8z4d<5sU?JeOXb7WU$J&>Lo5eCu6UufTi*y^tRWkB;}Orq(|!EHYd6N?>rYzAJ`YehST zzajiE7^0#|QNMBEK*hJe!o7ree|2CBW zzugP0hmi6cZ2#N6czsYDF|>#tDxC|S&N=^UM9rH-EdA-PQYUm9S(*on>HW zEL?V8{BQR%mC`6VHLk9{&|nfjhrl!h8Z_wD|>oAKLsv=mgWQ!1@L4^IzclVEyv1 z`Co+R1;O>`wM7WdKS_S9X+6V*H}DF4e$Tk!{djP zKhgf51p0$s@csQRTpzx_Z-Bqwh2s&i*Dptvi;m9d7wUILG`mxG9KK3uFL1no#{;bw z=o9nuXYw{@?e!rs1|p*X{v?b6m6>iAwC!F&RbC-h>MmpQrpYtikBJXv$DjXULG zJ5r4F`#OKcZ~TUbw+*Se&L;Sb`EBej4BHbk;~2i>$*uiA?yBq^8lI-8>rcr_XLF7& zW{l{7&p(7Q()PGN(_2b-f5hqZ&No$;?%5qF`TfL!j&qVJ)~vOq{ayqMv5!Zq^*c_= zj?KAW-FR;4&gy^)?H8MkXQ@=b3-Y>}Q!IHef z#6JJRW-@VmZ)cortLnJjE0xoB|J&nH=4D4g*6x*i6|K8A+$=~xfpk1zJCc|G^mt^$ z^{dI<<_Vp=TjyEwi#MZ*eLQ*+ab?btgz>u$sitg)T4%DN%LEIMW~#8>7JqezZ%THg3JkNw&B-0 zzsB?g8|YW1!2X2Wj}-r>$0NEki|%?0gQ4T2c}LIgboGS4|A6!1aC>3@!2N~C3%37n zd-*oN850(_b*HBuU3rvd`Kp3`puv2B%x)*%svV}>Z7YQKlK9x5AoG{^P4`{BFT+j+ zRS>(E;IA8kOoC};_d1__RTX?$+f-^iz~RVyx7~S>W31Qu^5OpB>jUZfh@L%1Aj=~= zap}1RX+}UD-p^x48jlh+6fDlh)W>in{d%T959k|mN=oU9s&_6w+qF-$XW9S{muzra>_2a&Z(}OPKQ=IK?CFcFa zJ|2Z6Ka%%Nqg(q;N`3JC`_==0TfKW$wYx`kz02J4_MIauo+mT1PUwrDs7&doRU(M-W8lV2t;}P6mI36W8aKwIC zcG=RWMX|QqaFZuo9>z%H70kc-flt=sN2tGyOqM3O-)Fc5^EF&QQVjbWX?e8m@Ot`x zo_X||)vv#XHKW63XMyZx7qc#2ld$OYjUCI@wrsyB;Qqn>K-!)^?FIH9QoZ}*?xy>8 zsv4%{8;)-)Gn$$S=K^R$-KxR$dU<`=lV zuz%q8{a^Fq!J9e#rTak3i^nc>*RJwfYV`J3+gFu2J<6zPcv|^Eh0tE2jEt{`SVe3s zb@lu%yszacv3ohLc3-h&Q|{hp#h&hNQGKCD7S4>URIKp!ej^Qc&|}tyUZ4jgKmTbj zaQlY3gVv45YD}XCc)nlgm7rrzmN#mpWPWS$*jM#*0LOc{e=tV!1kazBnUW`)B0id= zw}grmwEl`9b}t)Bww|iji@rSH;w0fLOczsm)4T0s;UG!riHNEOe}yi%f3QDbf5PK~ z4j@mv!>aBRA#^-#C z%Gvh`DRd-1{*_PR_aViwe^$4eUT6-Dxi{dPGjZh#-$7!pcULsmMAO~2vKGo2i5c7< z9ZnnlXuahamq6%`63^;qmD^x`fgWK0z;>kL|G({JCWKC!M=0v_4ey~SqdcbBR)gie zANJnS={#D}dxyz47Va;S57-X-<1-)61SP;9HYb^H$=f*8dR0H`X z_qx*t@7!odA1+$Y;^Xxp`~7M1Jf!}EKH&WDf7%QDevO0-H~*UqXE)9+u?FN*z5l4Q zw}1MFRSUPq1C^gDg`M#D!x*VQpqC9tgngYzb|gkIFPvE{ZxkhVFXr?;Ib777_mv(z z8gNLt`Q(USTIIJQ=j5#PdH=l{(|&(?JfiO$TU**Is#hjIyqhyQtq~qyc)VZ?mxtpK zoG*NyqWArD+^^noiz7=LL z^=fpl`3&bP;Qk=R@ccwt9&J0kKJpNt3>P~dSg7{e)XY3v^0566BeymqQgUm_uo?f~ zvHI|Qg4+xG2e!lG3Ag`Gdx76i_WEMyQb@>$?M0T%pS&y9Gz8{)G=t;b?Clb&shsey zC$tywbM0kg0n{ZfrQ#)g1=YO7?qx{4Ma4(=WWRD>Y)bjPI^LK5a>JU=of54n2eO+p zm?fYWc)Xzxe8;2zZ7-T1#4L+u_VlfWuuBx*(|mbcO~T|o`Hjk44Glr}rMgkLe=tV! z1kaxodw%tr+Xaj?(!X!H&Z{mFyO-3Tn~m#Jl|(H>Y^3W~xX1Rn*YEZfI}mp0*Q&XG z%D^14k4NzLH^NhSaV+@}Z&pi=Qf)oMTw}|0_sP3`^5Y!W^|ud^r;1vNoQwZ-Sk>z& z_sU4s_x%0%{@xpUd3%0WOg~#$E8Ed6;RRl9tHkbQ#$IXVqIB}{Z&U6aJ3mn`N$n`T zS30?N@@mxAQ>E8)mSBE?`2_Y4Y=`3kJYWBGeu3B1s}Wv14VB20PEk8KZ`U6B-1ua^ zVqw|uPBmqMoz3FTYC?ON7o1JJ%qjV#&qvs1ywB-h_gi3pAjPnMk(Ni>4(pdEZN>pv zU%Y4>hpo?S-_W9_>MEqRan)^bmW6szPT-sz^a8&hZvX%F@rX1)YDzL*K6sf!EL?1} zU+7f{iEUG9y9JK4X((xJGQCV_FOjqvXXuX%H9wHA3e|`{e~;Mn%U8L)yW{7tbaAjs z?G8Vb`4;92=mU%K`@KE<{Vv-6gXbsO^&x#8=9k1d+o&5YiAK9iPQEdl&{f8~;O7CU zzyCHbLOVn#OW&tU2dzGBK6BY_9`k~E!Sy_kIu>cMNm*4Y%J|4c3;EZHm>0|oE-(J; zcduIMQ}{{$sup=je{ccwf_cH^B{7J~X}^@C5re^VSN%-kc+3mt1(z2?FCmRHn%+LX zF?mvE@zP~Ua!hn2?FVKmg19W3&IzX=)pJ-oZeM>}y=(c5LHPI(Y3$mg{xa(B`YAYn zg75q;=I5V&{?lI2UVp>u>EPeAnHq=6Y4>#N2kyAv$d8Rj|2*Dk{r{)Epxu7x#qUF` z^Df_q>0%}02RPKN7=n@(PB%MeUa4V>8z3j)sY9DzknRTvX58p8l1#F*aa8xKO5=0H zcmLpgKm0ud{QfP0m(?6H=4{@q)M$^#sM*2s7wPx^NZaQUeE4>i-;?>5H)_ACI4xI9t}y}f4#yn@G@*uB90hcWc@w|nV5^^DzW^!94uowKsu7Dln~{T#4=pa&#B zus>m}>n$QNP_xQe$t?TZ`pY;YY{xf-`2}t-lVz3zL+{O^80)ubjXk2{ZuckjPSnOn zr5kU1pCTuoiSPHpoZj;%?6F=gy2L5gH~c6k3971 z-hTS6VfvKh@F4-NBM%Af1s*Thzi7R{^`rHI)<5*JtQ}5IeUOReO60~;>ox63V)wGi ztM}9PZ%;&I7cPn|?^)q@vbHl59y?!GR<$F_>)y?*Kb>FD*1OOjk{4YD&r7nwcQiKt zZkyOee&f|ncKR!2eK+|VvRZx}+C&-+*N1Nm>s<%axqPq?-3uK7hOGQg_ z@)Z+vF3WT8)YVQfE)d!aJpW<;qxAyUkJby?`~tn4|6tbOCC(AmE%Ifr?`DTD#O_65 z=>9OTjL`U1gI!kCvFA1sn-^G5qxFLC`>~+^rH9*Z)aIGIJk;sp>n8My%$k0Bf62|N zQ3e^cmz`Z%g2e8{g__;=RM{($uSb1n2T0u#Jaxlz6s4zWUTJp~uf(nQ{ps<@pillp z)-&l9uGWHMVt%Rou>bLmp%>_B=*H2Hv$b5FY()i$r`1)`u33&WcZ{$HT}zIw6d=9T zi0}8oaI{)=NK=^s280J%?<jmw21ij?anpOO=3blT#C>JX;G1iXn zd=@<3aDQPtp=0Pp%fxY1_<__dS=ZYdVx}MV5!wqpzv2F%^#a$A)(hJ42zs#%p>6ML z*T3#~hs5Hs95X+$d*P04-BKHJo=)_!s(jvUs(Wa?K>zS~650#C_XCi|BeeGepqE{F zT_!Fi%q(Zvb_A_OkIE9emnWVjNB0%((^{{87NEa*#}7h#fya~3Uf};-(dHLeufgp_ zilGE6=S^9&xh-Izkox#@o97O5NVA8(-k zy$^g}mUN+~$%!K0izK75vN?GUOvL_w`&W+7?h4oPFICtspBjp_W+k*2=nEcSv|iwN zht><)`UQIFw{-{;G_{K_E-93{An$aR*uC5>X=Hz8m0$njp6Oh=u~-3GFVF{!3GD@r zcWAw!tzV#*@4sx-0`>{;*vRKBWFbg{;Kx<$BPM*sC+w8CFNGi9D4d6+`O< z`he#@>|eCw5&SpsjaD%Et}A6(x+Y`U|hjxM>@}{>L|l zUZ7X?tXbLggHQJelK0ESU-W9EyuR&$Q_(G&{L+0t-Y?$Xgzxvk<#V)7M6K9sZt!!O zST53z<2ByV*W1LLEPUep)VgWQnlQ0@F-mv3l(8U6pHflZ{xYoFgV0`}FWA3my}*2i z)(hHt7kc^TS1FSIE~;tIh5Ra>)3VOQ?j<^8$G))}na1O%FGX2pzSBYL1^R$7p}oNT zfz}J!dKY>T4BQ_^n$1r(mn{`Jp3}R9*u7Bxn%3pGdh^!Kx59yY#3(5V?FF9yg!Y0| z??O*V;}INx;r1fM&~FN=5mLPizaPm9+IkmyDHPsZx_Btzc)&B3a=sM$NMiS5GF+lH;}oH4ow~E~ zxj(zpz1u$Kq)QRsR8qo=*@`#(>-pYrd_i0927Ii2ojnk{a9K<|s3uXC9eTnyhT{>; zKgw+!MKURM-;{OECft&H7<}gWE=768;ON*cHl^dOQB?STA6y>(-ut(pRnM?|1$oZ1 zdM`KK(4WNq|A5~!b4H3e0hY{p>}xq!&c&hi0zJVP_Agp5Fn^%+g0_BvUgY|O?D~T| zRyGz2Dcf|J>?3wBM^=Kn-NJ-^?8}&$DzNw#O=vH0d?K_Lm_N{ZL0i8-FI+LsOqRz; zs7J4n$%eOB=n=b@`sJauj@9+cPs}AWH$r;v$=D% z`6bd*Fh9e31Z};mT{EK4nQ~ zE!V&@C3CZUj;QZI>jip(G3;-&USK{$>jiDS3%$gT2)Bn zE91LkcIpeUd)Ye9cs_DB?cGVn%;R)&wiAT*0_zz!_jsJG7{j$# z_lrfyML%TWbs_C-3L0{JzYi|IPcMD5ZrtvH;SXXahq~B$M2qHlqnQJD(Vg!oS@~jp zjM%++X@9>e6?1`APmA_AZRSTVv|gYm7{mTW>jmaBv|iBGyU>gOPwMkGq*Oe}jErr+ zt|c=QyBGRmIfdIi-+NV5JZ+QAwC4%!1=cf!_5#N{v|eC7h1-i1LoYT>3JKqh!~DzU zeH?{q*oTPS%l+#lWe&HSshIfa`=j*&eZcb{_BY!6f>iI~J078}ccGVC`tioz zcZ9medQ|PAw8b1|kxvkqd`7R1RUH3uj1^R&JKcT%K)w}q5L0j)aFO6ah zUNXsVrp6WCSk^7pHW9m*?aG@U*iDnUdXnIWT^vS^emTuNDc)E9E)fTrfYw zdIZ+HupQ=Dy>X4<3b~Jync9^R!-srTM1&-Ga+JbxJ059@>FT_x5@zPt9VIeXfcpPhUzHu3D`RVtSHhcx4J z>3rJ$Z|4PRy^F;E zR`)MN&ZpZ9v^yqeZUki=woI}_%L~%{gYy-we}VO(^)J|7PxGYOEG;x=54Q!zv3=nt z(m>)7+6T(8zpxzJGCaSIZ-!TyS1(aBJDKEQs;lE;JTJYbDhiiJ*#zlWEtg*eLHi?( z7xXV%jh8WwdUuKVW#-rb#~p*0yr1KF!SnLB|M98maD;K+EbS9J5mhf&k=2NQ9&p#Q z#>|;rDC>aC*n?+2(7zzb@Oi*|0cAnJ1^WY=;>$+E1v@&jVmS2(O3sMtlAX)CcnyxL!j#F9@!;pnfD7 zp8pb(>R8xzEcPbbgW)9e2RsV6{ypq=+1b^r7oTT1$@uwyzM|=hZC>DbL3^X+1?tE1 zg5CcK!hF{=k<49Cxs=0O$#?3>sV{Zd<^}p2Z1V#3<9XR!US7I19F6X(T1YJ?p)@(M zd`IGay!Bq!E8&#lst3x6E~IXDJVN`vH{=iU0^fH)`u+&M{{ZzP$?*MM7>{s0e+i${ zy<%hU!uBYET;aram2=qU1;z_#Z?wE1`4>Dd===?gN9h{M^|`Nu($Y!CM759Ib-^|- za6GZi3)1@xcwVr}ORr(M>f6`%>e8eGAJ_bGp;jAeHT=5wX4tcJ&+@_uHYQBt5%ec; zJRvVOc`qjSe<|{>%#$)@CFPKTamBXEj0tXHce$_jhKxXxcy!G=8G3SHp zHf4X#4LJx=@*Q>)>WgEnh`oECG~#jdbU>MOeJOBOFe3{9%Z;|SUDp2ltZwk5czrkzS&Z z|G~@VX1ZH!Br_o*y?}xm=awHi(4?vQU^uhlLV`>kmAMO26ACe5?kx1sL zH2a4oiyTznLpMAFNAmd9Fd8i{Nc$N=66C(uo$^8xyeGY8c`S;M z+7HW-{7Xx(+0`Pqh$=RJ|r2*zu@}*%f-lskgv%$C-|1FYggvK?ESxvM=u;4 zd3S$a39sznB=jvv(?%K(SdPTYKOK*(SpT$oSf$g*xOZP7vGa|_^>`%VG8|N!uQ<5v z&BncE2eEI^|DyFTaD4x5GK@!P`;Tcn!t{FBJ{XT`8eXxgou_&6+Op;NiBCMQ@VuZ~ zPe6NbHC{?}<@EA`qcj7ri$*G4vt6n$jf^MNCvN|Fjh$_rnz|EH|AOiIh?Y5rJIgaW zX{lI=DD!SZ6SOyyj1-Uhb9tE-!J9rbD4Rn%)}MPV$LYV$}Y_9QJsu>V?DUGke#J` z^!IdNaoO3z%!pIuj+_Lo?2EJ1+!c@qBpLE@U?0uN_K*sHAxZzt^gkb4aXsIK|Idiq z?vd0IbYXjxSE^6)hd$K*e?YSDRxkgj;}Kf>!u*AKBuJ`=wt3rlhp=`ZTeAXuKLKrh z|MvU08ZYO98AcwxAki&OAxJNX?lHpivbFMEwDT4EmqWc%o|L5JCAp^7@B8&#`S85p zdHLJ>nC5mzYnh0vXJ#U-nkEl>kKlR1^YS-d;Qznyyx@8H8!y@XwVjq9>!Kc7#V_}{ zzn;Q8+cyO#r8#-`J)Bn+=Ndx_sm-gU14~b z{+3^6V$ThY{lg@w!mxd#)y)r*Em@)s3GTRFD+otCuf9V{$FcOGzUWW+p8WUw1Vp#m z|7_BH%uP7iG>v+>JeXOSZaRF}_1RD05SQecKFTLP&aa9#o0rXgA2V9w_44e6sv;p) zBO}79GyVJd$xjd}O;;Rx^DOM*ttGqA9oX8jwiRPwAbdZCSCT}Y+lfwcL?A2 zgwKQWHGE@IZXd1`l)aaqqyElGMNY!mwwO6nxa4Dg&dp2mCwRCAR#u{0)^>%FbnVWO zLd%Pb*pP4X<&1Gr`Ju|gVo44kJScC5emLP9x_xINYl)#3u0KDzkp27V#V&e*&wD>t z?G~Gm4bh?8*1Z_~cv$dIeX~9N1g6g$Vf=wI^!J+`k04LfF`D01)9i$@E{W^;2p9Ed z8Lj_$c>Iu~%7$&7u14A2s#R^TSVlzF(w&!s-8EV@NVeZq|uTXR~?P?05v< zcZmB`ncz1UK`VUU_DvI0DbcNCde>9`TxTR7^s_c+XFY?Km#rR;mvV-5V<9ilU&D9<-?xJ0@P2$e!fgGHWKU>cv@(2t)X13H znxa*n^8R5{V^*#IrPfaRRpVcQ3_^Rjbu=|Ewr@5s|84OI+85?OupG);JsxQYbFcU- zJ3XphK2w{XBN5&_M;1k)c!8c`o{2-@;Ec#-^YY&okKp)Y%F9-dNBk*A(i+(LX2@i( zvaAk0vqajDgZ9MBe~%|y?fnKse9v2r{cQ2p$nBP>Uf;razW zKZ5N&Pv>=2D(Jov<;I6!oFq4EIGAa#m4Ef+YR-E1M~sXp8ts0aYtRY*>VWk5S2ydv z$U8B1K>v~u&>{Z7Z=+Ce<21b!%{z6Z{=stCA6SlU8ScLjbRAvzK^?yFuDwLOnJBS1 z&DPT*|Lnc#M~3FY9RvKUNW8%I!TuoeqQ|`5w)Xzj6oNk~6p0};Jn(*~A4!J1!1JPz z{`U!=7s37`ogYvn^SRryo!*kLnIPf~$3i#c1=pW9GT)8Sc*R+q{5?D@eO6hV2#FUs zUeLe5@!o2@Kz^V-wmL8NBTf5Sf~Hif7<)WhMDE0YAy=eWn!dXGI#+LZ;iot`B>O-< zAV1KaP(FW4=;*gMt1MN!q&6)3C+J~0rZV&|@czbv0|iOUM`QJku01|Ee^dKhqoopo z=ju!($>6So6O{e%dQ4@q5d!)LeC!VjH6xnTZqU}Ltf}@c=)OP(N%xlp!z6YGJh7k25e{iy$qtTvMCG zbzYS7n$Osc?-Km``Jy7pNcd0p+E~`)}6e8NL$hcJ*`Tt0A_e zofatdtsbM3RCv|hlf{ecypUEgA8)zF6@BoMzYSSP{6|tPqY-Mh?%w4tZXlG?etgvf&Q?E3Bz_4*EupT`6GuO zX|wGp!L&Yjeb?7&v%9ZCm+BtO&WTOmo?+G%YU9gq(+hJbzW!LXTMfPs4ev*iG4*#y z`jE=u{>#0MVrLEp562r<`p+h2h4f;Z7o`57=l6@gBxzr|=e=I^Q8)cCgQ!xG*+q@w8bF{ob{n+LO>c^CqE5X#AUpqB!INm2P zOO)Qlh3mXryH0Fu)>|w?71Aoo%6p;;EidqWOeA}w)vg`Itf8t3M?^)_uR5)0Fb5lIKPF-o-t2rA z?f;M9ctKvEe>1)NW6meU-uS3@RWHq~yxoz8?$YVunK`8@in|l8y!=ofrZW6rmPDbK zp>~m<9l=ryIHZMr?6Rm$i%3ompn8qXc zegmewJiWWHyN#FZ!@3uJL=^ieKV0X<-l_cf%R3B2<5M1e2eiHI(DGuP`ecmq;FV=mBjX&umirbRCx1sfV_IWW} zxtBe`t0escTcMDSoB|RLNaZ=I+EFXEDue+}zm|*C;@IGMZ@A9OHYKt(EyGVmy1ccM z3WeA6vCRuo{(_bl7;mu63)GJ(FYx>>T<3*QDUAHltIjbYSM8;AWwS}NykMH|qU8m~ zJ8bg;^<&Bl?>&J~qHHeWxoq)>iJSo{T<4|i`t=K6RZVJ+k~W8sGyd?!HZMr?6D=>8 z=DV22BbXmy$_ulCE1_LMOzFd=E6oyn#wc)|7yhtS$z6>XudPkq^jvFRy@!?;O!Hl| zyuk6qwtvAi--Y>0p&(`1qF93F-3-QxgDJETxXw#E*@}*aYm%mWWyFTx^thb4 zkbC#={$cKOkmE;XSF%dEJ%s-+f%-6&;rrej zycWG9GLPO-S z@&dn4$8}z|^CwZai`F}9$8Jm~5%E@Gn-`?~1uZW~`3oFxO#KUtcbM`5zfZ??UMA#U zo@`V)5_W3*mEpVk&=j=1V4A<6w*3pH`3v+f@cVRJ=jDSM{~4Acwg&Q0sX^@< zCs4BUU(|lgchVviJPqe(i@x(SS@cT&Eekem;;P>gc&P#iow-fD! zFQnIZlg(=vAKy=ZSyidkYg?m?h4i;a`?}0FJKsfn9vK`j$P45(q02f^Tlvg$JNDX! zloA@5^J{wr_N@%|@2lOlf}! z1%J$x2NSOI^2;rbEXLzjW~tbVhM!N=PNL-n(|i{#FEBsBHZM>=51V*(0^c?7nmPm%F8+Wx?x4BqcQZ`BGgEXDIegvf7!ck z#Agy3_N+)@g8#U=_&&6}V4Cluwt0d15vIJb#9g@5Ei=*ZVl-97V#>i4*Le|n zX=uUH)*eFLB$!3nA#?~WFPP@LXnBF-iEUmm&39ouaw}G*Dad-glao4ShPy(!64!Zg z`;os*)|Fc3ydtsANRIeuPU84T=dk02N_~sDX@U4nf1d&Ed8%-}Ltdc&amlF`o#7U7 z?qbv~FQ=L8cihLWV^D8CS-|t6#8Lj70Mv)6%&(qCc|PvYw~_ZEhGIQTy~0IvY|*>! zancxfm9F$#D&smY2lEQnCPcXFTm1bKr}VFIqU8nCd>1V*FdxM>FHk=cKaiI@3)_uv zipzNt>*!wjvi5WruJe)`lxHHH^&sSokKyNS6NP87%?nb#i5^Mf%jv|i&g8% zgde)0cgp8|9Qocb592y76t?f{Ro+}Z&Lp+{iB)Wpep^M=K`R$S*rdT}j5&bNb*>BDsFtiiVLu8tR-$b*JW+qW}hbpf@q(1UpydU|JIDu=w>mG3?J?@+quB`#`P-EH zu7~}^^YZuenvwkNR_A5>`vsX0*SX5OBB5(m`ivQPUjEJtlE2yNyy!14f%^c>VN{SmUhGB>YZ#5zoti`WMI}(tLpaWvlU0>soM|`>5FVya&FT zQ`1(%cwX?l{O$ioPs*l_Epc4sXmD-to*&B5!#@xBPhQYI5122YEC{$@e?XIstg<6Y z%L&)xQ9y^CMfbUUjEZRLVIH>LtYjVRk%o3FI&oMRknIY zy!wD`UXb25Ldy%(kLP7`dEwJnaTed5r*OOVMCy*C+>>^dgy!2s=ALx?az0okxT|Ed z;}P2Tcj0`2yukf7Ous+EG=G8b@4|S5>-md)2)Ch@i9NB%lGZy~#aef4^8(`q9AC7& zAo&+OFX;RYj7M$D)frCy^ueo(0~`b`p4`~x1&$}Sd4W9O{R=ui;P^mZsA`#SkJwGrp^TI3Yf+t`1}ZtCv1;R-iyioUyA%I^Q25!NjYR- zIg$+DZ-KlNsKH`8rPx0W&G1^(|7)Ab*w z*TeCGyuflK8SdXA$w>O(|Af)@5AFR(?S$46bkginOjFFB{(Hkdr;6^HIw@Z^uK8R3(|OR^>P@G z(DoP8c!cTouzfHdSx?u;Ura22>)JnKJ@Utt3+5m2e!Ps?`s1JG1?_l2URD)jgWs2I zi^ytSr)$4AFaK@1%c8{pI#HwkZbHkUd38+v3#RKMTIL+?EYIwurD7$b%)1RunD!4T z9t~+cx-@t-{e!ageXp>UjGo11(t`u>`v-2%KG<}a~&KOf0CMfT|Gv2?nZnhxQ5JmMxd5K33iBo`$f zeAV=Aj&Q5xyCp{mCQ=;7STgMi+Oj%U)5Zc*XG_bTd(?{v7o;DKP@4HPT9C^@9O!1u z6B?|s4RJkhHa-&fwMEQZXm^WFhu(+BNW2`_M{}}0q{3fF(myl(&&O6=&v$QC#Zxu@ z;%m*QiKk?s#-0>f!cYmYv7go%5Csw%@hG z=P#J?fHZ%$TK;m=%Wmb5*W51Og#1fRmR}O^yx@8H+xvA!Y%&CUg1mQs4u30Ym>YZq z&kLTHzwu&|88PlJwVvP0^C2MSQ7`MkqO$v6HD;xzO~;QpoK8!F|G&kQC#3yd=+BX! zXT$5E44((U`g@(!V+Hs{G=s%f_9Q!)M5YC#HcPfy__ur&iInPW^@r=h`=9-?MVNm$ zQAF3Clw7kigY`if+6TrXxF2%r*WHa5slV2CO+D~vO*WN+`u=GduBUg5yA7XBx&8c9 z_VX{7l+C{e-=ul+>honk()Vr8jJ4;Dah;cFiPy`s7pjVcSdEMbtIqWIJsa@iZvSy( zhC!JkSg|F-^@VV`)a1jMv*i^U&ow14{x~1<)vwn6*2RU{9#08s#P@&Tcy4uGR3BWZ z^|-(Pt^t>(*ZpLjj`LSF+53_X9eZzDqiZVKTZrqtu!IHOq0J4kvv4wbDVSiB9ArY; zkVDF+cyXsxQHgpu-wUezYHH8xqt5;Ajq8&!Up4xOCW`Oq9$iRm3RYCR<@aqC~9e}?`P z&L?O;7!P1Mls7#deeljXF899rN(I%VKAW+K@Ppyn#gE(9S)y85Tm;3d0mF!f6r?XNu=A}^j#s-^KmUjFUzDA3lHR(^2Q-|(nnEkWUFA2>gt zz3?(->ung1(Ap2?18DUj-4EAC+#CXvEu*{J2YcoYe$WtO!SjL{4@majYP?i85A7CW zrxRcd)FR!nK+1~e1<%Xh_Umpw=ZH+dDaWdtOY6dFe2ok3ejW6eNb4P~uQJ+M84@e3 z9RH1o2cK222Qr&~uIkD;6Gn{sW4m$^rM@XNHo1k=7d<6F=;Qjw?GK@!k*}C)j zkvTdh-yirK_)JHQc0K*y&dcyk#gDUftX@n-1xfm6<(^$PA8qRzWe&XlG`5PH=ynU9 zm;dyyke9ua63n~eM?)p3{S%g}IA}<cgRB@5a7 z_XS^Czb?OOK&QY`U6o{z^sailIS26rnaks**3f?<5}Elu+kwZ4+hS zN-#4g+V`bkeVZ*q|6-XkB4l9i7ibw4M0WJ9Yt@@nHI=TM8#Tk+o{R3~;pd?JAP_6Opf&LfQ-e=$+PbT3d=M%;E1#g?bRFdER`mNh(&qX#RE?Ok}{I~Oxz8t!cMSL#Vs=PDo z!3nj3pE};TxAQJkuy2e9<)@Z8)J1BsOC?hGQ8{)_sw8V(ftaB_W_g{DI#_q29)6dMBE9>hOLf8TJS1 zdbH(meZ+aI>sf@23(rB~{x3CJ9~aYXJuULj-kW}8XfE6_z`u$qFR(vIyy!7+x2?T@ zHHF|$3PoZF4G+8@)BZwUU_3(l-zU5t%A?iI50Wieq74b|xLzv=KLFcTB=fo3vYp~!b@H+_HlCd2btm6=m@5~Kzm`jKKgIx1@eJ3f3_MgcVq{- zE}Ymqtl&1A;4>aT3da|ohl=Tb9pnc|?mOqu?3m1Mx}l|}Xn(){e|;~AbU!SI{ssEC zo^In@0{bzSo|=`&o3m2)F2>*WtTA(D7s@&yGxp$_57dXL9K?G1mc$#9zS=uK$rzVh z*HqS2`zXqG5Gq9{1SQdFb>Lb&g1o^0ZD5-hr1*lC7pNaCFHj#^UY6CuXty6{V7wMV zT4uSXHi_%Jd?8n)Sem}N`#M)|cj2cvITJ$X8*|aNolbWJ616?eKW?^vxxpA`GB@J$ znj?0fW)Wji1E%8xuRr))?V-KGLH?4Qt6INCSK^_6dAD05wk{-7L~ZU_mGGF;OCiB~ z#ENv9{XQCur`=ocM?-y>%Fgv9iYoS>eyDZw@I@c?skS$o`}RowNF#SlL+Q|Bfh4Z; zGGY~5av_-cz|Z+NFB=0c=wh1}r1^@L7pNaCFHj#^UX0(HG@vwSXN1Tqd>>zu+=#6WNfFwg+t^`wee(lt_ z;dr0GEKzzF7q0X2C#l-#e}4IS%s<_v((aqvELvXR{Dd;JH(LJ!_v_K}0`dC#T-9N&=Te)5FoZoUXZ}(>BySxlV^weWBnly5uEMr->1dzr9sT}eG|EG85(({J| z^4`;)E@MX}_Y+_L^`|yl;cGIFPdpFjs*p+~l76Ies;E0_zQ@y4D|NQau?w zXx;TxP}_KF-RRw#Ag;YH1@qnCH8iS9azZC;S_7qq-Ue}uFEHMr z7t!(p z`9PYlXnBF-i`KuO&37R$g@Tl2i((0ycQY6(4yMpX;5skqd53=mRvnbEuj?{%kDKe& z4HNY0v*VU*HBoHRm7?z5?0mN@N~tDF^hIPHpV=Sok-Z6UzG5mvUS9FGH*ZX@x0+7&N4W7I(VZc zPDu8f{Atzv4PJ}h5t&MooQx)K_wykOxX#O?7854%tLp(rQFz-U2bzh&_t@qI z#wTcRw7ekYFPQol7~f!fkz~jVYm764xiZ1_vFpTAVeib;ah;coIZVlSLJbuT%gxf$ zU4E&KmKVqe(tJhB3mjjx{snFR0(qg(G^75WyW&m})cm{QY`YAu^OCC*zbA6+NzqGH z=e0=tI#IN|KtAC7hw~FHFK~R(@&eaWu)Rn!@(YUzG+Y>-z29Ur6JD zR1SGL@as80m*CpX@%W~T7E;A`xgKd8I{nr!Y~jp74|D1kr`A2W^li+St9+);EOttW z|3uP{R8AVzoxS>Icf6SzJG2HlBm z%N1WNxY6iNHXLlew6p^TD$};0de`k`zCt*xX#N@COaDH zL6+Cs!)>n3JLPL&n-`eRKzpO*1;#tHyuf@2wiii;yqu%28&;G$8biM=LXE_j@&T^% za^Rir`5|ikuRTv!u5w$&iK68N@_{s8(eeVv7cDO^A41{-mP1}x;x1h3mYHaHF`BAk zG3DTj>%83CH+1{w5EiZ6<(ei>e--W!m6)V#eWWC%4F!Ono^L`HHn*Eai(ksr9z`<8H#s@#J=u_S*c_q{|+go$ngHyIJe!g(S(-N^rSz7ymNNrt=-xs~3Np6~EG?;ib8L zF7=IsQQhL}oTXtZ+sWA3MI`-5tI)p=8uoo%4_ zm~W(rtV7C8T<67}O6#63>ryVow6&~P_Nf4D^8)i3Xm7N&+V$>soQ07q(Ypjc2FdU$6@6iDP+8#cDI>d{x@#f~m^c z=^h5kSEJu=IeUKNuhvwBHUw02N?yI~& z_Ms|Uo?_J8cD|FYv|r?>+-DZffk%h-J`7sT*=bm#Z`S5(2G3{1^!q%ql@80q_%3N# z@qtyc6AJ`Om4;;}6*L5+Dl)D0&HA?CIxn+X-LszDQr>RLKMx<&9IeGQUZDR%%L}I8 zk3gQcIxh)n>&f&C z5AnSG=XuRX#frPKZ><$teUraJFMA;K-_8p>kGSgeUQr(zMw*ysF(jwtUROijp}f`o z%P@E7fuf{Cr$^p?PwkFp8Uv05&_2tvF6vekH5`KWLpD7tRx z@fghm$FXlO@Vwx8`Tze{4!^gT)5%ot6)B?0xf3F^Z+q?}{&~RV_)jO~y%qPZj8^~1 z$N0Pm_&h+{id!jS+wjgZwz1l$cdwb@dOTuTrcXPSeSAdh0PQq~W17OxzGugGm$skv zD;lsh95%U(>GJ@%9)kG=%wN!+{{r>F`~|L`Fg?Ex)BP8C{!2)zV`1B|*qdw*hLg-6 z@F>9b7i>S0jAT!w`!Owt{$>37@QdEgjn{oXM01@N zyD$`RTKpY_^5x$Jb)%1U%>R^bc05A+{x0MX@`CpJBTWCN1>fI=@d(%R7sb;>iZdF8 z8r=`tJhpe8aKSb&FkZm%Mav74f5G#D&fmazG&qv4`lza4m2I`|B;hNzbZqki#}nJU zAid9k=LNgGC~jy)`Bxa13)`3N`gxk~@^ixD(>)EI%zi7>87%D?&oGTg(4WBZguK|~ zy_nqprO3ZBPs)^)ltTuVBgshb*EK#Edt&!$AJ5!drXXcEu^NjW%1_UF6c&a(tk&PD zaI2Wx9j#>|uAZ5Ruxgq->^(B1@#xav)$|X}QVb>5lmjlXex&jcTJ>@B=}6n!Yi2YA zth8jM8|n5mERzheCLQlO!yho>dOTWfV!tRgKIh>=dU@&o>Nh#+ek;;T6!JfK+1yOG zE!|qilox1UOxJ&yUJvVo`3o#ZlHv0JBpFE`{GTw|{-M1eslBiq#-r3@mo3lH)<)I` zD;JZ~7p3lKc%oJKaGTq~s|=N?Pe1;z|2tv2KMwalV0&W58`V#6YdmCil^!@9N}UMH zkz^$QQYgw+_f1yxo%2OC^@|D?@!MwTBQy?uNjX=Mue#FL-4o~eV zV+DD)AbPxi!TXoLJwKu`SoBc;{XJx2EKl(ghnp9S*J$$>nEyh5L6ti>WdC$G7mv=K z-#_-9_CUHG-VbH?|7o~BD|7L9`evWc)mKrKwe9MAGTiDHq)B8QiYaKdw$W5RR)*I@ z{YWy5*Y}nzsR&NaF6mY3F8+}g6NdIg(g(}`>HH<=3t^yP5VaJK^QD^VAO|&1G5V1+ z6XTV?+YEXC*zg>J{e$*^{ek0+v_7I`&f(7T%uZS=RwBy0+t38{A<0Pbh<$yK+PGCe zTzMPI8NX)Ul2FmGL#NcQ3KW`r*xAY2(iZvY!u0!+;p#5M*ZY2T{=V6t%geMFzMM{X zgy_SDgf;`$pN0MqQ-1^Pi|u#>*VEA74Sr*Z360yy;iXPf z5v5YGYIHGJqf?lZeNO85o&J}%hhY1lj1;e+J=&xQkFPVFzufRSXWTQ%&;a^ts2@p& z_D8xNZ8=;|FWn=0@J4`-En8k;`m+u8584CT z3(A|#3*;607nnaOK5>|<%F+2{PC0sWWn6&p>q8s*=@F(uUd}AXg{J2o@Os!EBpKT0 zZu|BbM!whPlgjr_kGTH8`TtLADm;>XN0!TzQR3y{9`!Zk;8D@tS0(%Sn7k~HDP7Mw z1pNyfA7~$F&wrX17(c3B8K@{NH}}#>O5RDdwL9*(%KOo@+$zBD?VSLHzP-V){ZK~Y z3ECs6)?QfYy3Y==K}uQv2c_h2{z3gnGPFO^^=QjsJhDu9y+Li7Psmak{rz2+oY^o7g)cYfA-0n{rw#;$uI7DWg|eplgl!v;F%(S zY%`xn!jF%luzyfS`o0AA|K44RUDjuP{QPUED9ee)1#q306_qvNH20mm3#D~Lv>uI( zRQcZe@UieaL7Dc0>gGEqdtm>dJ)k`yKXAO@^-OBN82Dr_5eK{^t;$TL4@SBk-Vf`8 z@d!STSoJ@!=hto09K!oynXb?KIC5;?W*&{GFPwMbX}cD1+aF#J>qC;EefFwonDo7o zqd2%MR(~|^PbIFekFGO@f1jH$FO|Q?b&SV@I_TNhM@uSYR_>6WrCzTys`f(v0>=m1 z2bLp^|7P<7;|IwOgWl6VA5!lBFdqxQOeQ9J&MBC~&1juAwx>OSKzIR(2PB@LJ+$+D zM_oIfeYeSpM1(H5k4(BH<$F>af-Qgqe zDVgO0ztBR!(x+5!j@XsFnq zRa1?WZ*!X+k3Izaep7MVjQ`oNU40P^zwQ01&_;Fn;=Zw|x_-s4vAc?;|hk__i3 z()DP|VLVFzpnEr~-+PDSh^4`P!gmVd>}BC)lWP}UqQ2;r-N;#j{sp!d+6R`y@r3Q) zY+m4crh?6f#yzFHD*ccbsiUy>%7nOBi&*Mp7EM6H?yk{LT5R*uxuFxNcWRg+Gy7Ah z6z5wJT<3)*nKy=N#L>isD|gV~a?h%~8=nH{s{8j@#_fyJ+?S;xFL1meADG6Y&E^H> z8@x~6$n&v=YJ4yM&U*36u&G8+NnOdw%%nocUq|h?8)BUoTcW+x1m8_>M1*pM%+{P2 z$8}zk=B`BDe3ztisPtmJ$*=RLp}&B9;APCd&w%fHqqQHLpJ??V-4EjtAG;8FS$mp9 z;Og@>0|%RVJTI8>fMoBj#!CaEgvg|nJOz1tM3R|IZ4#arJTHHHfA`M%Ll+B;Z2=O0 zUJE^@J^mZd3!az1@sbos;UpmLs6(e!?56QTFdokfo|nJza>1KV$w1|nk6%olxJkT3 zd9pME4MC^qOl2UedFy4t6r}i!FaJAVTP=Sv&!7|3943lgdoonM{d3b4Tn}TqUx(-C zKl%Bmc|p6Lg6pH84eA$4VinYfKWp4$f7HT-k4OJG-e~#%r+Go!e#lF}`&egAzsG4J zr4yoi&RWo!5IWzOi?;1_x+{>V?P>lIt$%_0Ww8A>7~@RlMtoj##O~89Vk~NaRGDXzpo>d8tIlUATyhp4^r`hkL!Fbxe^?o$ehg3f-cdjQmCFZ!@gHRL5BphNtD-$tR{#%X#dns@5(ek2*Kzd+It%ONig1~wJ9=+^Ts{6k1Iq_9 zXpFuLT-PZp95~WNq-09RTR*z)T6INQd{)2jAg1-f>w{QN-;#Jk(pP)uCmG|C>zc}% zY9B?}4nn2qgrFoktqxp|N1o~pjh{A@jGhym5aVV&^BCK_!103iMav7+zuCON`e1(` zFUx9SwA+s}FkXuwEwfxxo5Xcq$h-$W?H^1RlKO2YvV3@j>&aC6@H6QjotkHAI4+zi z{a^1(L3^R~FKF{!I9`w!nD3tVByC_L910HkvsmvtmX;YZsYhil>{M;+8Y9>B^58tw zhp7znU3;UsZ;#}UG;+r@lnyNxNa8v#mG9b~UNbahHNX7!tb#WEZ*21d`GWRG%L~-M z*}TB|V1FPl#_vs8w zFHrwx^8)LG{aJdv|7KmD;VZFjS3h^Y8e&V@X@OGT>M=S=g;(7@S-iN;i|cmgD|+QM zLSGd9X1@`+CwxC!EJ8pjUCgWB`8_u?Dqyqo-M4Myx)pxS(YeHXW#)zZ8=?I%l_4*1 zKSj-XoJ>frgXNY-OQPG33u2>t1?bnU9jE+?C;P|()%IdqAH2RUquok&!^h5eJgi<| zx1@(yyQ}wRQ|CDv22u;j+Oj1j`QE!s~S3v2}X+FmU8n~5;1zu zk88ZZ_^{c$!1|DQxe`p>`L$EyhU0w#vqb4#TyVb}-j5_B@rramrsdGT?2GN7stY!z z5l)ns$@8ZON6QQB50qhh(fSt{Z#J73SRd>U^e>!wJ%+BOyBH0a*aO$1$E0wbmvpaE zMgBs5)%B)~yBd`2Ke5dV(tJeA3;Z5!vw4Bv8zAv=jPrHxx$fUVlEV3?)Zfx2;yN!P z`jrbJS@p&e`tsY|>`ypyy;1mKQ})Ty*3)wM3^94gX6L(T|7Qco3-SVa3LxmetU~@I z+w!ja0h$fTmgSO)sJmgI5yDpp)H_~8ctU-c%J6?#5`|ud+C_eL1Y@yMIeGRBxc>cg zjbp|`!8)#`$}7uy!?BjTvCRuoJVMJ0^k19J3#{Vjs$DWD{RfS}1NU<8%qv zd3jjc!dzpK-}ExvXf91xqyQ~1kPj$B`=aFq<`bLE3#Lxp+Y zZRfRcofm@dYHRLiJlc*e?^-yN?DH7gydcd-w7kH0gKb`5JVwf2ATN8aaO!g$;R@xn z_aVA7T(}$8dASkzGuCD12HooDb)n~yL?UQ;fqWp%N3^`a@xwMR(0?GE_W^ksGu3~R z$9!;q=F#Voh0A-d;5skcqbnk7{D}9G4-%9Cojbo;<74O(v@g=NF7G zXrDLoG8EBMkIiV($c3_uW!=K~|GjWLAuo`pT!{p2v*HosS86g0MPc_sm5le_mJo5} zUQX#0nCbDIgZeO)siN+z`5sSGt<>4Z+qUF1s>}X$pmo<%L2cuyb)$D{g1CM@gHD>$ z)y&_*v?-NMov%Vadt#dx$QQIfT3(<(+iYH7eXu`}m%)H4p|rPAt%t4is}JZ)IpaDn z(ZTHe<2PUEPUv5avUu_K99mu=A5ez&Mav6}cbm-%tPl1F^1^#hAe1PZi+CC1~Ew zV5~TpLK}hWycmv@s?In)khe_bs4Bk0>_nOLapBNN6uE-vMBQDj563n;-z|$$s)-VP z5n0D)_J@09ZvvdJn97hBIKJ||KY|dTtU3tuF zIoB@7q2&eUD^P~^Mav8HUz^PftPl1F@*@3}&t@plbA_~!@3d8qAwRD3a%LsyvwJAt zPyWoAsRFaXXl(NW;}f(mT3(Ry7i{|%82?~@ATO*j&J5oDT11RH=J#k!F67K zbo*U;7yRw>V}%>X>gO_8(DDNLfb$>P7cDPv{5G2xcpf6`5A-jFqDgI;1LeyUjbWeJ zzVl7vIxlV$KkuAziXG)P zM!hbiSh6o=Li~RKQhP|Fy0cf`?2b26V`uk!`sLo}WSfmFvzgNV5(@s9DGw%G=Vf9q ze{$%a9cP&<{E6ew6p^TD$};0de`k`zCt* zxX#PY33}s*L(~r^>0fBlNMHGdZC+qL1MQ2J7Z~q0n-`cb!TvyA&e7KmD@q-Wq2Csv zMq*6)0M~hu=)0EM9K63Lj$w&oH=zhGT3#R@Nb?abFL3-en-`cbA@RZzci~dE%tXVB z(Nqf7y1{sVr80w ztk*j^sZ(aSE0im7ofmz<)-L79g28qHKTq#(>UrNU(m&z!|FAJ686`LCM5nXa`L5x+ zn`N&adx&HzoF}5wjr4##VJbsj@-=*8Qf?ov6qLP}pQHZH>E=W60lBW85U;l%&dRk6 zC>!2c>-@ptn(N*k=Wp;lAMyW0pDlC*1OeJsWquzd}Kw-3(Rk!4DF4U7wFG6n-^Fg><{GSSLaPtcD8}y zW4@6hvJNRXah(_166urv2Yw95$$4E#Hc^|$HZL%rf%Zkq3ygQ0%?r$zV1FPl1h1R+ zhshO5CRq_$8Kg~Q;W{smZV;5)-zFA1T=rGY&`0AAT3#R@Nb?abFL3-en-`cbA@O29 zM_~LpQ;m&$+e^(ynhgrL&Wl!D%cnwB_jMa5zeV2X>pp0CfqcOE5ABPV7dU>K%?nb# z3;j!r2%Wd&)B352llA5ei*>EI&ddJOl##g-v!@!JBz>l&C>@UNI>|@LzTinLf4ePt z#{nfw^Ie#)Kz{>yF(}(!o?;&}Z?>1Rk;&kgE-XiqVSSL71HYd0a|y299FK3hXdzX6 z_qk>ATcwO2Lyh0Qn}*vNeD^NqcSy+UmEqgLy{qOjfgn787}gK#gXLl?9hQmlUDC4R z1FK{w76_Iq4a-g{Xb47CWLoQ+^=-p-Ufws~&m7nl;kj7%?AREAk_)c!0{s_SUf}$I zJRr$iofq12Xye}=5& z-_8phe<&mIwAFc`EW9QuuzsX?r?F3;>>&lhe>*QzDJ{pQCeEJy-E0{9TB7eecy&$Xr%8FQ(7?IkjIm}+{6mKSJGxL$(xN1N}$`HnV!IZekZNce=vz{N*PB+8QM z3~cYeJ>R8%I}@<>vOkKGEL%TJ=hOCoJ1ZKHX-Z-7z_HBPi>zWs)UY zUXbP=oUds83#<>Vf5G;8nkUs}X`wlLxGgY_?F%=N1`?0ZK2V1Jh2_|m;dx|yGrY>Y zdWo9Z$s`9;T^%3edFeG(QMf$HCP>F>x%?ss+8=4WpnutFyo_jM+E(035!;4$ma&c1KD~R* z4Aawh}FTY8dl#4&T%`^nU5VKi&6UtbvbFh;eIFd$M8H4m=D71p?^nv z{tMIx^B1`Pi*$Y+TyH`BNHRSCB_!3cus~4YVILY|= zf4-vWifvxt`Wo6BEiX_%o|nJ-M`(W}8Rom5iDd4A%B39MO1@K1PJOAvHZRcM!1kf# z1?tE1vbnsxbZIym-Bq=aT24Y~a$@<;`Ob%8RnE@W$7+5J9Pu8D*z9==8p?? zQ&IHuOH3KopE|UZR2sXtVH%I1KY`;3+hddWVsihNBLB)fDN|Nb4jEXEBqP0F2m8Bh zyvy%K>;4#*>v1nS4)s0$rn%fTB^8%jPuneMK$|u`r19v|;MMdG&Qc5|)|3M-uzsZS z5L)$d^XW+2+G}Ps1gx}Vr5ow?G%S-0u_hhwI>R3@;(9!aC9pe3qG~=7EuHn?Ub6pD z>V7NIOBC`yc-h=cw=LaT#*`OmU!?Uk+Uw!{(7(WPBpE&rK$4O4!T(QVY7eL%?fp<6 zk__jYNam?D`-dfq98}*!H#`GJ^7$2N!yU>m`@FNdV|8^f8Z9qK`x!Cgjp`@3H6F6M zN)Mb4rA|a@KP*S`FQx16NK}tK&MUbedzDX2B> zW$*uWJbK~a$h-UVN_b@lC!udanl>CCBpHbpI6wZcg6bQ&4=?n@+gzR|cI zkF=8a7tK>9|If~D#)}*Ra|^tG!TXoLJwK{xc*UxAp611C%a-FOKJmPQ@fvMBLh=t= zy&UE*X#0z4{(|ZCuzk=!m+H#tH3J4IfpyTGdpRiScxd}ZbK7nFOrNDk6^x$nAjw%dLgY>KSQfY)V#p+1yz1EwdeIw zXMejp^e^`<_UH04Eru_r(;XrDupyz%1M5dBhxtpa-p@yJPLVyjdMusprKUr;9*^GJ zNm4Qf97>&L)!aFm5u>)%;?X7f&%N^NJ*MXV_s^_&UCi|5(j$Gy()m(Z=B+>5%*wA1 zR02gCx6=Nc3_G2#((CkGPfWdgp$jgUR=@a`ITvLm~if5!HuhzkG z$crMg`3`|TZ>7{_wLn?}=5<`pcbRKz#G+1*&F`iAQk$EqN-^Yer#vZ1%S&=it>5?SyYk_A!SnLB^|ZO&(OM?r>Y14c ztES1r-XnNk@Vxwu7x@1#JTG`&{>Do-e{HAb$GWJ8R`JVyF1adrUhus9jTiX8I6NZ1($@@O-J&A;GIG(XmHASj}hud6M*Q zSM1N|c&?yb7BgCPF9dXIAb*etBw1;n(v1)g*|+N>pMK`<*l)7c&V#2sJN@#>{n3g3 zBQ4|{Oh%mZ$K8aNSgNF z2fjr0#F42`oH!LNXg%hZWpr6MV)4NPA5thK$dzmE1_GrCw?EAwm1TH{=7#a6C3U9>M%&_JD4u z8C^u+ti!r+1{H1oyC~grSB>0{oXz}y?A>=fR`35faLNuLWQ&sQtx~p(h{#GtWy`1( zk!*#s_eyqU6p@*kkuoDGB{H)r%I5d`^V9WxJnr+jANSq3y{|v7$911`pL3n(d0nsT zTxYxs`>+t(1#TZ$Mv6aMy+1lNmF&osL6u7MfZ@~0(F}~=rwaN2%V7Ke?*0gTo`g$} zq>q&AYmyv8#=&H7g75u%*F0rLnUAuDS~F*Hv9y8P2bPh%Z1w&~**oo3-@seekU74i z64Yl><(^iF@Ly23@s3wEdo+AH3G9!+_5(eD_gjJW;PS9PLT~(z)Sh7bVp<008(ZkJ z+A?)3GP@&RwB*+Zn6>rLte%?*rWI!5F+6q3p!0Wo!L|PA&O84CQN}T6(u8`sBWpGm z;PKe%{gI9c&q{#0b9DW(QvLl$QcNK2L4EwuJwLXZ7w~)9m!El7e#q>O zu0E2MBPRDSAKmtWzyHj`Pmsc zq7cUb8MC`{ouk<@V?C#o>h|g@m5GDnBXInW#gQmK>C01|G?j0X(CY7 zaC|$a*~819aKNV)j4!D-yADVAZx$PED$+Rb?9c|6M=FEukMw&?>%r?UwLR3HY;wEB zl9a2&*=NzUy9yJvFEamCSfvprY zn&QCqqgw|1BXIj#LIaH7j}KBNZ8&U@P$(?~CJB)hHP@||h@S6WOd))Z?*DLe~cHw$|bbMXOptIlLyRf@o$v=<{~eAWaNSD{XWP&bU7PWimm*HG4D{sK z_5zM)vF!z1|L^vaE7NdJ*YnPM-#|l>_3yPd;QlPdv3oTZn$#TXbMe2%U$@Z@Rx zZ|x-Y5tW+0{(L@M_d@iH@!-qL`xCg#0xl4Tro36|-C)l?FDVr9w2vnJ_NveC?vGxz zPo1vxZ%uf-omF;0B)jI5!pEB)D>Rh4Hj-JAYBTQTWBD9&so7G{O6!!R3+4U_3?o zJ*M^G^_QT{r&spUx?S?L`=E9&KlDAey&&x$re47H|86fx{SoNpG3EKH4XaS=7I~SZ zBQsMyxbEf5!R05SDU{`(PbxVlKADQcH7{WN_}yNR`XkVbT?l2*P>+u1r8{^Q_hjhy z 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�%mD*Zq;Nx8uUH_td6%Jt!3*rSAFGgH) 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 V{a>*}zaDzxDZ1KX{9@u!%Y<}mV+OTxa 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

%5<4aOCXkm)&5!g*)LD3a*4lr>_$)Bkq4X`Q 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%0DQQ=~HL*J+Ug{LF<0uOivd^&RXwvwv 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�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%0A9Y1q=f!zNzV#i~PF?T(1$sgnW8KSh+41Z;>%lNe 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­-?UL9Xjh#vYoX>@AfR` zr>A)LQvG~n{G`3+BX^4T@}9*Juc3#v?)S!8zW9$&el$(-%?YbYIY3ty{iXX-%Bbd& zvi9eZ4 z_mtl8sCIc9%)`1+HF-dj{XG5ILLK<{utxg-B6*3KO+K^ZaEbQ#e%c?EX0ZvMgDS+b znqyxJIp$aKnC?4w*x>nw%uO9XKh^x+*J~X78~*!9HPU`Xq~Blbarpg5cay$YUwd(v z&v;my&TXo067OE%^#J(#;@!&*C0l7%EnVY__U9(=n%>)hcQ4Qf%p1IWVH56mV0!S> zg42z5c*^lB7v8-f&5t1E57yVCj9J=a4H>F?PKY_kH7szC;oS?&6C^({kFf6L=PA{N z({lF=KL7CQ;C)Xsk9RL<=Z~=N<$l|-klfzO8{CFZnr$U{a{#Ruc>WG+`1gpmKZ5tC z(Dp}g|1NyKNb>>Ei%9712+}+Ovgth8+vATu(Ghxo#E>QuPdDslb6()_XEUqrKX~^7 z{Sm#a-e31c<;iTxrIc?1AA~%q+xJJ}-3#;q^9JwvqBoTAHhyODJ!?ausx61Be?$>ZGQy!@51~*nh$_p3Pow3&dH=0ggjs? z<4~?Q4f4}4jCvtKjynBKEh+bCrM_$!Q^ePIUN=2gi99Wn#DDmzE z`hax_>U!#7&{jBis3CHP8T1!;d2QvP6lJ-VUgyma$>flbXzIgXaE?9zDm0`mmP56mO1 zd$|+zQSx(_P;5l}dDRyV+&*~sf_8r$*1gcr=X?{7pTBM^6FQjrRl)3Udx8Bm{Ch;( zAHn?vX!|30e;Phtr2Q|@OF@5p-AH!5AXQb()tb!()`Z?4jRn@6CgnZJQh32^%aip< zig@<|{Sm#a?vGTJYVx0%oZ%xm(=7E#=@>cQy+9u@Z}6TkvzJdZQ_AhwBK(1br-nZ` z3h!Q!_D3P*57yVCtt?^(e=k_GAN=wrv%hhL3-4ZFo*?;wd4zQ@exedmB(D^UzC7=8 z9Z}2E!@C!>`|Ggog~?l)MPSCfah~S+bBT{$sQV+>4Mt3tp?~fRATMOc&cJE(W%xSU6KIMcqUkKd`^hflvx<6_x z4Cvj*ljhI-sA$_cElPL1dx1V+-rzl73|`ix$EoFf(3+Lmcsy!w9p1el?Tx|C!K1bB+5utm5{-6iEdohjZ75|#|VsDXc?Wt7Rz`J5)-r6rdmRt`QjRO?{)o`?<<7~gGyUFq8}=UwyWMIR(*XS-pU`pH(7iqp3=- zWk9jmfguK8wL5Ku-X9&5 z%FfNbWW~D|=mX{r-t)y`lUe?)o@&9M98qo?5`PK2dqJ8XLCPPjuSd~7>z=s;kckOB z?bk5(*AK?K7nmnVeqbJ9-HULmw5CUmwJ_DZx~f=>UO3*ppq)R$x|dv?XP#f{M~coD zOE(`f4y*dxUf}*I`1gpmKZ5tC(Dp}g|1NyKNb>>EOF{Oj0bkvRA|;1P=H?@8KNEU? z6guya#Tl-+zp^jpTA^8*7v8-SxSM;N1(_`6H}*xkEQdUL);Kxi4!bX6SBi23jw$A40mm zg|)aVM{xfx%nzjb0O+NRH>=Jpxg{vYPDwq7>zWLq_eb((3lE3mBGY<9Z8CQz zvfjbF7wC`ZWp#hV5@>jMU56H%2jvYWidVvsc=rN*z`VhGzC_T)h`s$2A*1?BYoS(2 zvmEbUkmg5_@(1hdk#b5-?MG7UJAu+=j z&CvNzC3yFOcK!(KUbaM+*Uc+PcP8DsX=hJ5M2pr7?1zx9Z=vmv;Qnj0{Sn;13-beM zJ^*@=a8INXVQJ88348i#le5xyLhp}~eAqSIG&VJMxLO__=w)?(6ltgB zB3QGHa&|USxwUXbQTkn#uX>(S$> z!4gU-zVOBfyE$%$1=Ra@v3CA~MvIZQtP+J8NNWSL6Os>c+RrTuC9y8OJh zL-6l)t@B5e4it~bro99c4IO={uQdwq`%2EHXWu`4(mZ3Ea>CRce0*5L{k!lu(tLn& zGFf z-saH2yBDlw-n~E{FmLdlFF!~G{Vz&$)A*i=_`~Zk_8RYAkmg5_@(1hd(Qo-4 z)nWZBqjN#DUeu&D^mz9I^90Ec%pt#MWln*@g^C)5Ow#vu=PJ9e;oS@LNA$9~KRPGyCGu-HsgqIp(eW=u)j@do z0)4=|!F#?;mwGl9EgdtZezW0Y#C07_yn8{KA3@3=tglDw=2$v!_3n=%Z~iXo@cOPO z-o3y)LGlCh2sAI;^3!)SJP`ChSvc2?cQ0t?kFf6L#g_&3#;X-EmvVjX^A|MF zp!EX#A*AbDX!|3${~B$71m^)@ejv>UKraOh!%T|YZE0L=Y#VhfC0Pl*KMGb`Zltx7 z?f!a#BgkcOL>cd1pg*FQ)%}riYRJNv%dev4CTYGN#hG%vdx1V+-rzl7ZrJ4QlRl*> z!&^;K7MQ&LGTyx)&5t1E57yTsp*KOvzkR+xGUhbtE~c15eZ3BA=PyWpU>;%J%iW6; z>9Q-F=Je(jm)tJ1i{U+A(9R!W-Am%+{EPW#?0;nPQYc=yJt*D8tyRTrl~t1&QE3qN ziuK5UJ%6P4JjUyIn(0I9!z4-l?opp)^PtWJdQLUVBJK2vfD01eS)g3-m|yvikg`v;0Xsc^CsVhuMTa+e300ynBH@ zVBX+8UsBX}hF%+H9$5YsI>PnroFm@7AkB{;N&lA@)}i$R`yr(3TWI?uxc?e$e+2jMLLW%;0nm$z7geF~ zri9pziML*&2kuu8dcFwVAiX`Kyu)%^?y;TeO+Qre?gjcIdRg5cZOgc$CcO7-S>T^& z(qB}*NAT_i`haRe-3!wE2vYtatw)63A9ax5Ss~r` z*;wq0zV{?qIqLh3SUZ0~@&oe-$qS*MzbF^WKQES-v`f<{-5XAx?Tq()VV4gNRsSU= zEOe`h$t3?mBJ_Y%W8I5UR?T#FiLagaaC~Z?=?-bMUSL0jbbSkLe+2hmqwSC2JOK28 zG#>!H?2qM}H}0u5GWzT^n8UjH3Zdr<*F^?FDT8&Pt(yc?Bwfdv@$LosBYIigADtoP zJ2EI_WHG_l_V7lqb1~k%Kp!w~@SZPSpG2f*U3!$ICT(w!hhlMhnIo{=y;j2O0yLk69 zspCnaXP%s%9DFMIx3PB|^ng@j-HZEEYUA_8Z?_&Z3{;zcouQ+pfBLbCebJpO@?0&H zit_J}ULWG|qceXPUDMk}g7?phYQ2W9hx`Mx_a*JL!grV2I1JOuCE@Y4*8l7M-s;LS zVGhMdHc|33*r*w?coDt)`}@Dv_ZMqk=6;`Dvdi6|6Th(X+F@sxHPH*v%l|ho;XKKE zQ@i4epTo(YY8;jijp&T5NHt4+Q$=IPOBShQHD>F$)_GX?_lK09Car!R;Wvl$*^|Dh z(_MY=B9qE9X{U?3q}N-kyXTW$Wg*SO!hi1?sR@1Qf(Kd6j&H1PeJR1Vj7&F38cDBJ zo*PY_NSPRcKM(5(icJiDj#|;@EK6nBD0kn6$3qfCY4Yo;mx{z~-pwUZ)WYM}IMw{* zYRP+E1b?GqoA+3hT~yzpXJIyZ`u?|{F=FMsgnqtD?ISU!?RleLLF?m8aqR&0-}VBp z_rli~trz(C|JS^j9q7!tGd0nFPHz<>k-?} z<@jbk9g>6D(Q}E#j1p+qBeb7ihju-hdBxG8WDz98;`bz^IbUHDXQ{>`?u%jh$J4q^ zxXnsi2t8lUi&S5GMMi7-}VC63%DMk^#ULN|C$#M3f&ame1W^UjEos- zs(+XX-ODA`f;Y(<*lUy|4y~I|?kWA-UXa!!v|iwPMD+6Cu18fid_limoPxBnZy)cIC3+!x`M2vYH7A!|wrEPyK1r;O5mb=Q zA$lQt`8O{TO{ChMuXFW&MP_~ZAjKt2^g{IVZ(g>KU;f%YAIP7Tb6jalx1}%93(?EJ zd9l^m)Z4_#lVIVRZs*g=?pjrOMmgyLtJYgNmOX=C4|1Tr{sQ}FSi{eAg2&cqr_wjfe+wXBYBdW00`DeKQ1wJ37`i|T-hpxlleFlC^%+GISbh(k?R@kyP z!FOBaV5(i@jst|gU#k2dY0}KDN=06}%{m>{QjU1{g0z1Q?_NX~vl!>9ZP=62IonNw z^QH0b1$tO(-e5gnN-H`1BO(-h1Trm#l)sbB61}WGe_3nZVBL#3=X})0boGj*0xD<8 zk(if6FRQ(*HE*!)rI|seNzpFreaPul-Qm2?dx>8D-3wCQVBL#HMshHdAcIVElJ(Q9 zS_)d7xOSV1GN03D?Z|C*vMKoZus&PiQ`VdQF1k`aHA_PIK`uOwRKKfx zDdg8O(^TqD{Z`E9g)i)n40#$h?(}~5C(~nF`{Jp6;Yg1MkHdZt9{<}l+|R)7TXZ5~ z-Ij|9PA+fXb8}1K-OGlr5(ZfdL9gXCgjKUT&d9Cx^~buGt4u8}ww%Kyol~4fRaj^BmL5WsA&l;ka)#op3%^R$HX?&<=8v6W-{rHx%9ZW~P zjEP=Wds%DVVBJeqf~jm-mh-sZ^6Vu~wt}NXFaPcZDQ~du#dJFp+0hP3+dQ(+i`5!N zKLYxhSbp4a9v* z@&S)y-OKfIOS7p9qlS%4wg>WP&&T223w;0Anm1VY;(m-Q_SVEVs_cgY%jNB&szfiV z&tKM>H(2+gdr;iVapbn2*(lriJwc^PqLc@AER7H>c0eopx}&e<^e2jmslj9g>*dM?3W&9{aERBc$u6YweG+ zZaY$zmYy-zy)3@PKP4yR5XCQr{HLUog-q=Uc}>#VFfU-8NaK~-bj^q+_F{&AT3e4H zJdRYysGe&vsIhh9R9b&ebAFu%?2qEwjPLd-xA=RNan3zVU|&FbJb3(neg8;;Pu!mC zLJdR1PW=XE<>y&=_X2&w_Y0}Ux|cx1^(&V9Xn!fw?U4`-%iWE4FVMqU^9Ji)#Q2}z zlG$BtwEJD#gL}fJB1A8%&tKM>H(2-bHD268LUg{^BIhjsc*)cqqL1f;*_)awXti$@yg;}qsZ>c9^ zH%K)n?E0_!Bc$(-7xsG@P_$R|!3Bn@=pmNtY4H9L{5+2hdCnFWD`n0fJL=i*^PT?w zg>=cXoKUS(=1HP0`vi9~!@Pj??YR5XHb<#y``f2^Wvxp7@p+f<=V5)w(dMMrhStMp zRnJW@UyaU${Sl#mo=2gXNPwSpe;4DU%!A!!zoqf+h2jKl@G^_YyqtD!hPu`Mo6rMN zjdd?ir6;m#EeC>04eQi|=7l=(?ge^SYu;ep%cb$VU1MDCceFg$-5ipWPa=9*eg3l6 zyurE`mI|#+Du;6I-tIA=X^L6iMf9@T%UbgW>t2#sZ*$ISQt97v|J7d|r@BP+^6y@d z@&@Z(+DG$*&km}nthXu(c9d0&9I_^f4W-#-HpKUAII)NG1flgu+S}`Gvs$T|Y4^Hq zc*~NN%}C><**!FPImw7Hx<)c{*3pG>0?1N$P-?5j>7m*IT8JeagBr zMiNqT{GP!p?Hw7;^Rtb4gDqi++xmn_^$EQ{GLN8MXnmFyT`jxss?x$wQM`Kzu#^&9 ziV`x?_5Udqw=RJ)t1ef1^Yy}t$BlWFG^SMP%m7S zcwyowz59W;FbmPk>hqVi<_*@pC`j~HY1I7mWHdgi=A$%~O!Tta%UbgW>t2%1#z>kK zf7{K-_vb;H@nI99mw)$yls8!SGPS&HHs)nVa;|!Ci?>+RM)g2}JarDlW5@bO{Y!h)ni zy%!$0r|Rq3^=R9@lkdVL#cmC3Jiq+T<%3a?S8kG*u2%uSA))t2@wStd&wHv(Gu7IJ zE|v6m;@!*8ksJM2U%2=g&rWrF%h8u0`N5kPQNB&PbsaMepC0`*XTT=mjdw5b{fA!g zo-ZT*8`&kVYFE7v-v5YMPS*%gi0IN|{N#dx3cY^9Ju;{`}ZyeP6!v z$cmoF7M?h6x=q<-S83Og{9al2=6lEKGk*Vde^lW8!PVaUM%8go1G2;26~E#8wbuUV zPmSHWtV?o-RAbgx9{-_5M?yB4`um8nRYO3kM4*prAAEdR2aIeF+u#%qhnS>wpegTB}$CY`=h4*_80YsTfgtN zU-8^+S~-k&FECG#{6KG5_hQx5Mz$}>AotH?7+;c}_cGqS!1o_|!F#^Q9e?ogbd{Ut zeJ{zAB{uxlc=rPH1^NkA`7B_hz%_Wlb1KDuEQk^w$9le$dtMevzijuUQQ)xY5g+9# zyn8{)54?LRA@B0E;hI764Z@f`vvoKlN5zhG z_!YUiIBlRF6DFC}OGDcq!TUS#{jf}>XVqg0%F_O{eO-QD+aY*-t^HB#q;`3ou3@tI z@O#huEhlTVCVyxBNiXsh&f%dLR${4uj}L2?x4}HD3ssW`G}+J7pDomZ$C2`9y}A2F z2EC`$@hhLDx;9;GraN>xHLv_GZ;Wj}EqA?%I-&PR*VbzdN{O3v2KFDMyL{QN1Mgm7 zo*?;wp0Mu4B~Oh_VY{Q~%60j-3rvZR@a_e^|IiEG^F@yRp5^Jb$q~O}swUgHD=P8s z1?CI%Gwq@&afLd~>QKZnxrnwmgYY=k^TnN-i!PX!`i$*(O2tEwkW+Z~f|MV4_i`dB zE%B%9-4(lQmKoy53?lLF1?C0J8@zj=&8!sLSxs_&^SwaMWu~4y;`a&v`+iL538|KU zVD`SGomTknQX7Y1TDc_B&m$fG|NHan+ApLda zS@&yj&|PF6h}8O_nlaWWD&e^FVFiBQ?ne9>=ao^q~mifQ!1^&Il*B@dad7ISfy=a?O&-|4c7eqjabi@ z{Trhd`eGCEz2yUr*-Kke;oS?|-v#dsK@${JkQmoYVs)(h-6VgCYOf3*D({Japf z{gK1`qqo@$tf9`|eBFBQ6pq2?i&VpW>5+=|sXjJw-|csd$FovV_Eh|x0(&{__oX5Ac*K? zwHKHtFwfv|tb3tNW>FKXx>xs%vq~n1^}smZy_AlRi&XCut+zbJYff2jmk&K4)mZoP zDb%iSqOOxAlE%GAV9d+_?_Ro_E4bH|sMrrM^t z_f+e!?xkR7eRla@kB2?KxVvA;-r)i33D)mNs_YKy2As3nwf?y3*Z7bQeE#4%#rVBF zw!NpP+O?XLmeVk*{1pXI8mnb;J6Ff?T4^kMA98y+69Z z7a3C{JuLdzF~*97n_mR$USQYPq3&h7{`q`SH4g!=U*`2;NrRra7r6CxsC%K8`_AG< z%I4<2zD=oBC#WCmUSQYPq3-3?q2$7!RuAfoWD6* zw`S@%pI4jc99zb^7ufZ6sCyB5$tx>0-fMO%DCx)KpXNJj%?nr$VEZH3^>v^Z+i<#$ z{thiKr!W$WR5=#DwcZ~U+I?s&KFlt`VWjTHZRnnbbuX~%>rnTybXrM@^g>75TtvkI z)v?1La4&G{>rnTS{6e~ zm(14Z>#*(xc6}Y{Uc9xJ1KDDdQ*xg+{}}k&nT&gZTVIE|7mkrnIoZxew8zh=wTlb% z-Nd>V*!6X&dwE6k{hl=AVT0pON($}5xl6I`1$KQM>RxR2y0F;R_ij;0bl!AjbW1tb zy}+)oL*0u{Q8>N)4)aZQo2mk-q%K204*>fi@cGVa_ebF8C9wU`;p>@CKR)`7p6oX#&@2vZz@%~S!%-%vp%~y=6YrQ{eqU~E&ypZ$P%gv{G;t*HCYS)*w z=B4U7uj&(u`Q|UjXmhNtKG_Gmo&hy4$+U~KTZIgAIi~~7=qTT&<6i#t0@f3-o`J_v zuP=9f`ct;~kL&UBnq-8UT!vonz1HtXW}S(Z-4kCbsy-AJ8Vz3lAK%vj`T%3py`-h` zn`_*lh<`D-u#~UR!yRc(Od>*&6P# z_~>9kt8p>by<8IF__^zPe?5=Y=jV;%$2>s~Sic{ckhAEF1ytIxYcpAW>d2C%`B-7$ z@;q)|plbg+xlqOhLi>Hde1b7}e*%x!ds3RykU5q;W(n8n%$gnnkAuGtz8-KsO_Q=& zXhCk@x1;_OSy>FpQ5Wc+8!~r&E4p}7-XmJnj}1IO7{jiw(}^~mzW&-U!SUt1!=Uh~ z;Q`z85rW2cNu_1QQa19J&c?UvruH3b^>we{n8{6Kn*;wop%}~up`V964t~G)^ONU# z9~xa-zH28SPpj3%f^{#j>+4YW(#|wBYkOI~r)aBdLg^9tHrxx``a0CTv{BqQ@N@We zXIp=${NP&}2CRF5U0;W~m)Cc8e6kEO+TPcHIY6fPPy^Pzfb&^mzrPN3FGea6EcR9n z%O2iqUP zuCD{Vd|k3#bX3r;@E<6CG-yAqz1I7qCb5Eq>|O7TNOwdS%I~Gq!nzmO^>wIwDHsjo zzv!7~o5hvf>lPl?j(dSyUx&IEelLNDjC~STb!SKGE^n6~#kv>R^>wIwiTm2Uen6zJ zt#KiOp|jL79qV3T*Vm!$Wr?9uIkT{MzNdlpvL0XlAlALWuCGJgOS-qytn_=2$`c{SfX2Zhal?LvHxtaHDW!Og?jQ-yUeG5hkLX-u`eVmxq{cb{iNFX(|#jCy_9rhfSs_1nHZ z+^nBP_uVLN#JU%7y|(7%2c-?;!0{X!E{m6HO@{?hTcTPxk%CQXO^!vmf2lpSPCJmT|)~4>%9X`InX|nMb z*1drDqa3+9Q*E!XPkupqREv|<=LqE+buYW+%?~)LXy{(Ca{iTScy}Z21#bTl>Rwm{ z`p+>wcw)@qL_0ib^Mw=ZUSRhhq3-40Z(9AA_Z0V9h@O*vImh)K>t4Y1G{o*dLfy-R zz2cmM^xadRf4X<>_(1a)>t0~@AEEB$e!G59UeDEyPQ%tl+elv@gY^Q=-@zE1FT(am z;PWZi{s?ye5$HuQSU7?#pKsk%zEt$s!`=;Ry+5K)7fjeN>}2M`SMb@$q-!4QUSRhh zq3&fs;nD9>&y;U`ANk#=I*vx-Uf}j0q3%WVYvP-P>4gt0FN?)<^K=Zb?ge)L5$ayd z?-(&BahxZk@e45;Zoe*rbuX~{k5Kp0)KSJHhCDn(l z9xtOC`ghQZ((1-MS#2-i^PSc1kHF7MVEZH3{YRh|_G7N34n+xNQGaclq_>Pxul4>& zEmkY{LHljaa`Uil6+V}(ueC+-Dq{}Jk5WN*<{ zH){T}D#@kVAVx>_0_$F2_aC9|MVpbSvgC4k{%GUIwtGulJXrSvyZ;DvFYD{`H<0iC zO*go-aD_ja0eZa@`1$`@oA1KzKSJG$hNiY$SFRv$G}~?u`s!MF*!lwc0H5!yc7Ft} zkA&@y!1bu$>m?L}UW!F%pUg<6oCBNN@Jby7SYqP{-K!0tan z-OIBeiinBD?!>a}v4=K8qqJD}0pC|taaO>@!cl8s(*vDPyYz30TH0o|NcpUtF@b!TG7pd@3z3fd-=a-{w`{J)_UmK^`Oz&f(a@+ZA znItQv@c%eJ`1fGf*CiYj-q&$DvW9F^>(BkVao^?oh3p1GJmx5ig_O>9o!PV2`=fhj zs%Lvl1ANu4y}g-pI_@6Uy}+)oL)}Y~=9dV)odTJTuKR}>kBM93Uf|Z(q3)%f>O1LG zS|RdUa)3Ju0fi;^$Xhptb2i7Ux&Jv*z2FfKfmXX zi%4)$tUbr&g>^5m>+4YWLiac4+rEUqVdj#-Lz!O=8m+b$u)hZT5!n6+Twe#Kw>+SThx0Hro1#I!O-eUSQYPq3%UdzOJxb z@4`;f3$G-4<@L#NFL3MYQ1|lts>3Eq>D^leK9X|R@did=-3#pcI@G;vV-i)Hoik-q z8+e`B-?Yq$buX~%>rnUNBO)e2`dseuz_a&`BTD(2SoZ?Ez7BOSj2?%W_@>V^{iS*K zOze|8bbkc)L*VnB)$WhL^>wiQ5$yUp&+4YW(o}q{N0vL?chkei+nrS?FX3L`*4Lr#=gd~Y4L5+>oMTg-8U?vK`beQ|F!wu^09FT7u?f^zW5U?k{)P>i}4 zjxiU?jL*MG@89XQZBfiq!+L$;{*k?hPh`RSd(ul?E7_8uuxpvOZ?uPPDcqnPs@JAk zhjlM9q1lzee-`^fxP24Y@7zkpx|j7A<7}14M_P>_Me-fVl`Ih&j;610-Dsa9B?gs+%2_6Sy@aKy>J~~>RxlwK4c52;; zuBZRw{{ex&556Ao{x|p5h2MVcePx;UA*Gi$JR8&HnCVG6Bql0DI4oOCL^8m?55}nc^0gHXg}W4bFGK7r4gK|2?cITBjL~buX~{k5KoLr&{jz<;BQjmy!do)OACuSKAA?ehPd)!uCht z^C{T=2zLJw=%pyze$ZPZSFlvQbmnh_`RBFX9|iwCm&Fk-ceJW6CbZZn-5u**VD}%P z?j>?pcjHOziE9zHXMfvAWp(3T;PxM(?q&Dz@`6QLc=2FR=TMQ1>EyvYOsii1}zKvze6Ez3FkRdx715gu0j54MXI0 z2Ye}Iv!-Ldrsmy)^#b-o;Pai;?vKFzN3i`7?EWLrOT~_?Mx*4`>nWDJQ{YR*KiP#V$ z`er^tQt^+l7vY~olNTd?j0cK;FTUIeETKQRo4 zWLLLesQc>DTZ(lru=|ft_pWwE6GJ=Y2eIx2+)o0o{{+2* zG3s6-Emh9%s@qQa`*);Zi@cFO?&aV8YM=+Oo`J_v_foC9d+Yc(T|n0Fy*F=ja7tm_ z3+(AShNLr9Q=Lo^?>zEZ%SvxoOzdVp&#WY!SC}%lHJsY)Xav) zc9~wxe>}};4W1v2VfP>9A3RQ0>#>z?Q>t@svYE!zyou=n;o!^r-{-C0Q|FpFwATBh z#eC^g{kI=?x-i7n$GP!zVBHJs{v*`AoEhIC@zR^&@_v(TFH;r!xo|IV`;Sofa*Cm* zUacv|hBHU$UFR1WUaWh8-G79-mlM5I#h!M-a5yiT{Rq~*!0tan-HYZjTlB{*ttm^VM-J{VzRA7XUcmKsU_S!eAA!%O zVEZH3{YRje3xSW0`e<#M4&(E@y_-S#&|2@0suHB7YVCdmGrf>!7%O_|hIKEn`;Sof zLbbt|cgn=dq&8h8II%P#8TSIW{|I$2KS_7_UOB);<9#7we#g1*Em-#gyZ;DvFS9b; zio;rdqchiO-Kogx=&o?ZD!0tan-OGjYka1lv zL0OM_-GrMz3ff`4fc+5od}p=$BXIu_Y<~p1{|NNL(7lz$PqycW#-85gUoYl%uJ!(i zGNlj`;8l462P=QY!(`z3!5DV` zkyM+F>Hdv^Np$klU+4uDoG(Tl&Y%!5&==hQ_3_?FnFDLRKkC}_t|83xQlg4WcEcxw zj{#Ws0=xeRbuYqZn;sQWhEd-v?QeWPua$v&f!lwCx|f&Pi?kIV5~talr)us!^xT4V zFR=TM2zg1l{zfX&f4SITS!vTH`q!G^{g6-$-k%BmJnZrIdvXW2F}vO?xmhwHC*#;a z$G^X5g{*Yeg3k%(0-iSh^we9^iQf`j3hbMy}<52 zLfuO-{po{pY3_aj&0YHEXsz{D+Y7kf4y=!`{So+l3bsFj-G2mnS$=8XTzu$=dos

i^B(Pq< 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