Packet desc & remote update (#13)

* Packet desc & remote update

* config: data remote update
This commit is contained in:
ksh 2021-06-15 01:16:06 +09:00 committed by GitHub
parent 4d80629bef
commit 712d8f5848
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 524 additions and 349 deletions

View file

@ -26,9 +26,10 @@ LANG=日本語
27=なし 27=なし
28=パケット・データが見つからないんです! {0} 28=パケット・データが見つからないんです! {0}
29=パケット情報: {0} "{1}" 29=パケット情報: {0} "{1}"
30=Webサービスにエラーが発生しました。 30=Webサービスにエラーが発生しました。
31=コンテンツ・データのアップデートが失敗しました。 31=コンテンツ・データのアップデートが失敗しました。
32=パケット・データのアップデートが失敗しまし。
33=パケット・アップデート: {0} "{1}"
99=Duty Content プラグイン {0} 99=Duty Content プラグイン {0}
@ -40,6 +41,9 @@ LANG=日本語
200=設定 200=設定
201=表示言語 201=表示言語
202=FFXIVがアクティブ状態じゃない場合、オーバレイを隠します 202=FFXIVがアクティブ状態じゃない場合、オーバレイを隠します
203=データ・アップデート
204=ロカール・データのみ使う
205=ネットでチェック&アップデートする
300=コンテンツ 300=コンテンツ
301=コンテンツ 301=コンテンツ

View file

@ -26,9 +26,10 @@ LANG=한국어(액토즈)
27=없음 27=없음
28=패킷 파일이 없어요! {0} 28=패킷 파일이 없어요! {0}
29=패킷 정보: {0} "{1}" 29=패킷 정보: {0} "{1}"
30=웹 요청중 에러 발생 30=웹 요청중 에러 발생
31=임무 데이터 업데이트중 에러 발생 31=임무 데이터 업데이트중 에러 발생
32=패킷 데이터 업데이트중 에러 발생
33=패킷을 업데이트 했습니다: {0} "{1}"
99=듀티 콘텐츠 플러그인 {0} 99=듀티 콘텐츠 플러그인 {0}
@ -40,6 +41,9 @@ LANG=한국어(액토즈)
200=설정 200=설정
201=표시 언어 201=표시 언어
202=FFXIV를 보고 있지 않을때 오버레이를 감춥니다 202=FFXIV를 보고 있지 않을때 오버레이를 감춥니다
203=데이터 업데이트
204=로컬 데이터만 사용합니다
205=인터넷으로 새 데이터를 확인하고 받습니다
300=임무 300=임무
301=콘텐츠 301=콘텐츠

View file

@ -26,9 +26,10 @@ LANG=한국어
27=없음 27=없음
28=패킷 파일이 없어요! {0} 28=패킷 파일이 없어요! {0}
29=패킷 정보: {0} "{1}" 29=패킷 정보: {0} "{1}"
30=웹 요청중 에러 발생 30=웹 요청중 에러 발생
31=임무 데이터 업데이트중 에러 발생 31=임무 데이터 업데이트중 에러 발생
32=패킷 데이터 업데이트중 에러 발생
33=새 패킷 업데이트: {0} "{1}"
99=듀티 콘텐츠 플러그인 {0} 99=듀티 콘텐츠 플러그인 {0}
@ -40,6 +41,9 @@ LANG=한국어
200=설정 200=설정
201=표시 언어 201=표시 언어
202=FFXIV를 보고 있지 않을때 오버레이를 감춥니다 202=FFXIV를 보고 있지 않을때 오버레이를 감춥니다
203=데이터 업데이트
204=로컬 데이터만 사용합니다
205=인터넷으로 새 데이터를 확인하고 받습니다
300=듀티 300=듀티
301=콘텐츠 301=콘텐츠

View file

@ -2,7 +2,7 @@
# packet # packet
Version=1210614 Version=1210614
Description=Created at Jun/14/2021 Description=Custom (Jun/14/2021)
OpFate=858 OpFate=858
OpDuty=271 OpDuty=271
OpMatch=220 OpMatch=220

View file

@ -1,8 +1,8 @@
# DutyPacket configuration # DutyPacket configuration
# packet # packet
Version=2005551 Version=2005552
Description=5.55 HotFix Description=5.55 HotFix (JP/NA/EU/OC)
OpFate=858 OpFate=858
OpDuty=271 OpDuty=271
OpMatch=220 OpMatch=220

View file

@ -0,0 +1,11 @@
# DutyPacket configuration
# packet
Version=4005400
Description=中文版 5.4 (无动作)
OpFate=0
OpDuty=0
OpMatch=0
OpInstance=0
OpSouthernBozja=0

View file

@ -2,7 +2,7 @@
# packet # packet
Version=3005400 Version=3005400
Description=한국판 5.4 Description=한국판 5.4 (동작안함)
OpFate=0 OpFate=0
OpDuty=0 OpDuty=0
OpMatch=0 OpMatch=0

View file

@ -28,6 +28,7 @@ namespace DutyContent
// //
public static string Language { get; set; } = ""; public static string Language { get; set; } = "";
public static bool DataRemoteUpdate { get; set; } = true; // true = use remote update
public static string BuildDataFileName(string header, string context, string ext) public static string BuildDataFileName(string header, string context, string ext)
{ {
@ -65,6 +66,7 @@ namespace DutyContent
sw.WriteLine("# config"); sw.WriteLine("# config");
sw.WriteLine("Language={0}", Language); sw.WriteLine("Language={0}", Language);
sw.WriteLine("DataRemoteUpdate={0}", DataRemoteUpdate);
sw.WriteLine(); sw.WriteLine();
Duty.InternalSaveStream(sw); Duty.InternalSaveStream(sw);
@ -83,6 +85,7 @@ namespace DutyContent
var db = new ThirdParty.LineDb(filename, Encoding.UTF8, false); var db = new ThirdParty.LineDb(filename, Encoding.UTF8, false);
Language = db["Language"]; Language = db["Language"];
DataRemoteUpdate = ThirdParty.Converter.ToBool(db["DataRemoteUpdate"], DataRemoteUpdate);
Duty.InternalReadFromDb(db); Duty.InternalReadFromDb(db);
} }
@ -146,7 +149,7 @@ namespace DutyContent
public class PacketConfig public class PacketConfig
{ {
// Packet // Packet
public string Version { get; set; } = "2005551"; public long Version { get; set; } = 2005551;
public string Description { get; set; } = "5.55 HotFix"; public string Description { get; set; } = "5.55 HotFix";
public ushort OpFate { get; set; } = 858; public ushort OpFate { get; set; } = 858;
public ushort OpDuty { get; set; } = 271; public ushort OpDuty { get; set; } = 271;
@ -174,8 +177,8 @@ namespace DutyContent
public PacketConfig(DateTime dt, PacketConfig right = null) public PacketConfig(DateTime dt, PacketConfig right = null)
{ {
// for custom // for custom
Version = $"1{dt:yyMMdd}"; Version = ThirdParty.Converter.ToLong($"1{dt:yyMMdd}");
Description = $"Created {dt}"; Description = $"Custom ({dt:d})";
if (right != null) if (right != null)
{ {
@ -220,6 +223,17 @@ namespace DutyContent
return true; return true;
} }
private void InternalParseString(ThirdParty.LineDb db)
{
Version = ThirdParty.Converter.ToLong(db["Version"]);
Description = db["Description"];
OpFate = ThirdParty.Converter.ToUshort(db["OpFate"], OpFate);
OpDuty = ThirdParty.Converter.ToUshort(db["OpDuty"], OpDuty);
OpMatch = ThirdParty.Converter.ToUshort(db["OpMatch"], OpMatch);
OpInstance = ThirdParty.Converter.ToUshort(db["OpInstance"], OpInstance);
OpSouthernBozja = ThirdParty.Converter.ToUshort(db["OpSouthernBozja"], OpSouthernBozja);
}
// //
public void Load(string filename = null) public void Load(string filename = null)
{ {
@ -227,14 +241,16 @@ namespace DutyContent
Save(filename); Save(filename);
var db = new ThirdParty.LineDb(filename, Encoding.UTF8, false); var db = new ThirdParty.LineDb(filename, Encoding.UTF8, false);
InternalParseString(db);
}
Version = db["Version"]; //
Description = db["Description"]; public static PacketConfig ParseString(string ctx)
OpFate = ThirdParty.Converter.ToUshort(db["OpFate"], OpFate); {
OpDuty = ThirdParty.Converter.ToUshort(db["OpDuty"], OpDuty); var pk = new PacketConfig();
OpMatch = ThirdParty.Converter.ToUshort(db["OpMatch"], OpMatch); var db = new ThirdParty.LineDb(ctx, false);
OpInstance = ThirdParty.Converter.ToUshort(db["OpInstance"], OpInstance); pk.InternalParseString(db);
OpSouthernBozja = ThirdParty.Converter.ToUshort(db["OpSouthernBozja"], OpSouthernBozja); return pk;
} }
} }

View file

@ -147,6 +147,10 @@
<None Include="Data\DcDuty-German.json" /> <None Include="Data\DcDuty-German.json" />
<None Include="Data\DcDuty-Japanese.json" /> <None Include="Data\DcDuty-Japanese.json" />
<None Include="Data\DcDuty-Korean.json" /> <None Include="Data\DcDuty-Korean.json" />
<None Include="Data\DcPacket-Custom.config" />
<None Include="Data\DcPacket-Global.config" />
<None Include="Data\DcPacket-LocalChina.config" />
<None Include="Data\DcPacket-LocalKorea.config" />
<None Include="packages.config" /> <None Include="packages.config" />
<None Include="Properties\Settings.settings"> <None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator> <Generator>SettingsSingleFileGenerator</Generator>

View file

@ -26,9 +26,10 @@ LANG=English
27=None 27=None
28=Packet file not found! {0} 28=Packet file not found! {0}
29=Packet info: {0} "{1}" 29=Packet info: {0} "{1}"
30=Error requesting web service 30=Error requesting web service
31=Error while updating duty/FATE Data 31=Error while updating duty/FATE Data
32=Error while updating packet info
33=Packet updated: {0} "{1}"
99=DutyContent Plugin {0} 99=DutyContent Plugin {0}
@ -40,6 +41,9 @@ LANG=English
200=Config 200=Config
201=Display Language 201=Display Language
202=Automatically hide overlay when client is in the background 202=Automatically hide overlay when client is in the background
203=Data update
204=Use local data only
205=Check && update using Internet
300=Duty 300=Duty
301=Contents 301=Contents

View file

@ -30,6 +30,9 @@ namespace DutyContent.Tab
private void InitializeComponent() private void InitializeComponent()
{ {
this.panel1 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel();
this.rdoDataUpdateRemote = new System.Windows.Forms.RadioButton();
this.rdoDataUpdateLocal = new System.Windows.Forms.RadioButton();
this.lblDataUpdate = new System.Windows.Forms.Label();
this.lblCurrentLang = new System.Windows.Forms.Label(); this.lblCurrentLang = new System.Windows.Forms.Label();
this.cboDispLang = new System.Windows.Forms.ComboBox(); this.cboDispLang = new System.Windows.Forms.ComboBox();
this.lblDispLang = new System.Windows.Forms.Label(); this.lblDispLang = new System.Windows.Forms.Label();
@ -41,6 +44,9 @@ namespace DutyContent.Tab
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right))); | System.Windows.Forms.AnchorStyles.Right)));
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.rdoDataUpdateRemote);
this.panel1.Controls.Add(this.rdoDataUpdateLocal);
this.panel1.Controls.Add(this.lblDataUpdate);
this.panel1.Controls.Add(this.lblCurrentLang); this.panel1.Controls.Add(this.lblCurrentLang);
this.panel1.Controls.Add(this.cboDispLang); this.panel1.Controls.Add(this.cboDispLang);
this.panel1.Controls.Add(this.lblDispLang); this.panel1.Controls.Add(this.lblDispLang);
@ -49,9 +55,43 @@ namespace DutyContent.Tab
this.panel1.Size = new System.Drawing.Size(776, 158); this.panel1.Size = new System.Drawing.Size(776, 158);
this.panel1.TabIndex = 0; this.panel1.TabIndex = 0;
// //
// rdoDataUpdateRemote
//
this.rdoDataUpdateRemote.AutoSize = true;
this.rdoDataUpdateRemote.Checked = true;
this.rdoDataUpdateRemote.Location = new System.Drawing.Point(251, 80);
this.rdoDataUpdateRemote.Name = "rdoDataUpdateRemote";
this.rdoDataUpdateRemote.Size = new System.Drawing.Size(43, 17);
this.rdoDataUpdateRemote.TabIndex = 7;
this.rdoDataUpdateRemote.TabStop = true;
this.rdoDataUpdateRemote.Text = "205";
this.rdoDataUpdateRemote.UseVisualStyleBackColor = true;
this.rdoDataUpdateRemote.CheckedChanged += new System.EventHandler(this.RdoDataUpdateRemote_CheckedChanged);
//
// rdoDataUpdateLocal
//
this.rdoDataUpdateLocal.AutoSize = true;
this.rdoDataUpdateLocal.Location = new System.Drawing.Point(251, 57);
this.rdoDataUpdateLocal.Name = "rdoDataUpdateLocal";
this.rdoDataUpdateLocal.Size = new System.Drawing.Size(43, 17);
this.rdoDataUpdateLocal.TabIndex = 6;
this.rdoDataUpdateLocal.Text = "204";
this.rdoDataUpdateLocal.UseVisualStyleBackColor = true;
this.rdoDataUpdateLocal.CheckedChanged += new System.EventHandler(this.RdoDataUpdateLocal_CheckedChanged);
//
// lblDataUpdate
//
this.lblDataUpdate.AutoSize = true;
this.lblDataUpdate.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lblDataUpdate.Location = new System.Drawing.Point(12, 54);
this.lblDataUpdate.Name = "lblDataUpdate";
this.lblDataUpdate.Size = new System.Drawing.Size(39, 20);
this.lblDataUpdate.TabIndex = 5;
this.lblDataUpdate.Text = "201";
//
// lblCurrentLang // lblCurrentLang
// //
this.lblCurrentLang.Location = new System.Drawing.Point(237, 37); this.lblCurrentLang.Location = new System.Drawing.Point(318, 37);
this.lblCurrentLang.Name = "lblCurrentLang"; this.lblCurrentLang.Name = "lblCurrentLang";
this.lblCurrentLang.Size = new System.Drawing.Size(150, 15); this.lblCurrentLang.Size = new System.Drawing.Size(150, 15);
this.lblCurrentLang.TabIndex = 4; this.lblCurrentLang.TabIndex = 4;
@ -62,7 +102,7 @@ namespace DutyContent.Tab
// //
this.cboDispLang.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cboDispLang.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cboDispLang.FormattingEnabled = true; this.cboDispLang.FormattingEnabled = true;
this.cboDispLang.Location = new System.Drawing.Point(170, 13); this.cboDispLang.Location = new System.Drawing.Point(251, 13);
this.cboDispLang.Name = "cboDispLang"; this.cboDispLang.Name = "cboDispLang";
this.cboDispLang.Size = new System.Drawing.Size(217, 21); this.cboDispLang.Size = new System.Drawing.Size(217, 21);
this.cboDispLang.TabIndex = 1; this.cboDispLang.TabIndex = 1;
@ -99,5 +139,8 @@ namespace DutyContent.Tab
private System.Windows.Forms.Label lblDispLang; private System.Windows.Forms.Label lblDispLang;
private System.Windows.Forms.ComboBox cboDispLang; private System.Windows.Forms.ComboBox cboDispLang;
private System.Windows.Forms.Label lblCurrentLang; private System.Windows.Forms.Label lblCurrentLang;
private System.Windows.Forms.RadioButton rdoDataUpdateRemote;
private System.Windows.Forms.RadioButton rdoDataUpdateLocal;
private System.Windows.Forms.Label lblDataUpdate;
} }
} }

View file

@ -1,12 +1,6 @@
using DutyContent.Interface; using System;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO; using System.IO;
using System.Linq;
using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
@ -66,6 +60,10 @@ namespace DutyContent.Tab
public void UpdateUiLocale() public void UpdateUiLocale()
{ {
lblDispLang.Text = MesgLog.Text(201); lblDispLang.Text = MesgLog.Text(201);
lblDataUpdate.Text = MesgLog.Text(203);
rdoDataUpdateLocal.Text = MesgLog.Text(204);
rdoDataUpdateRemote.Text = MesgLog.Text(205);
} }
public static List<string> MakeConfigLangList() public static List<string> MakeConfigLangList()
@ -112,5 +110,29 @@ namespace DutyContent.Tab
lblCurrentLang.Text = MesgLog.Text("LANG"); lblCurrentLang.Text = MesgLog.Text("LANG");
} }
private void InternalDataUpdate(bool value)
{
if (!DcConfig.PluginEnable)
return;
if (value && DcConfig.DataRemoteUpdate)
return;
if (!value && !DcConfig.DataRemoteUpdate)
return;
DcConfig.DataRemoteUpdate = value;
DcConfig.SaveConfig();
}
private void RdoDataUpdateLocal_CheckedChanged(object sender, EventArgs e)
{
InternalDataUpdate(false);
}
private void RdoDataUpdateRemote_CheckedChanged(object sender, EventArgs e)
{
InternalDataUpdate(true);
}
} }
} }

View file

@ -79,7 +79,6 @@ namespace DutyContent.Tab
this.txtLineToken = new System.Windows.Forms.TextBox(); this.txtLineToken = new System.Windows.Forms.TextBox();
this.chkUseNotifyLine = new System.Windows.Forms.CheckBox(); this.chkUseNotifyLine = new System.Windows.Forms.CheckBox();
this.panel3 = new System.Windows.Forms.Panel(); this.panel3 = new System.Windows.Forms.Panel();
this.lblCurrentPacketSet = new System.Windows.Forms.Label();
this.cboPacketset = new System.Windows.Forms.ComboBox(); this.cboPacketset = new System.Windows.Forms.ComboBox();
this.lblPacketSet = new System.Windows.Forms.Label(); this.lblPacketSet = new System.Windows.Forms.Label();
this.lblCurrentDataSet = new System.Windows.Forms.Label(); this.lblCurrentDataSet = new System.Windows.Forms.Label();
@ -305,7 +304,7 @@ namespace DutyContent.Tab
this.panel4.Controls.Add(this.lblLineToken); this.panel4.Controls.Add(this.lblLineToken);
this.panel4.Controls.Add(this.txtLineToken); this.panel4.Controls.Add(this.txtLineToken);
this.panel4.Controls.Add(this.chkUseNotifyLine); this.panel4.Controls.Add(this.chkUseNotifyLine);
this.panel4.Location = new System.Drawing.Point(6, 288); this.panel4.Location = new System.Drawing.Point(6, 269);
this.panel4.Name = "panel4"; this.panel4.Name = "panel4";
this.panel4.Size = new System.Drawing.Size(778, 143); this.panel4.Size = new System.Drawing.Size(778, 143);
this.panel4.TabIndex = 3; this.panel4.TabIndex = 3;
@ -414,7 +413,6 @@ namespace DutyContent.Tab
this.panel3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) this.panel3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right))); | System.Windows.Forms.AnchorStyles.Right)));
this.panel3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; this.panel3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel3.Controls.Add(this.lblCurrentPacketSet);
this.panel3.Controls.Add(this.cboPacketset); this.panel3.Controls.Add(this.cboPacketset);
this.panel3.Controls.Add(this.lblPacketSet); this.panel3.Controls.Add(this.lblPacketSet);
this.panel3.Controls.Add(this.lblCurrentDataSet); this.panel3.Controls.Add(this.lblCurrentDataSet);
@ -424,18 +422,9 @@ namespace DutyContent.Tab
this.panel3.Controls.Add(this.lblLogFont); this.panel3.Controls.Add(this.lblLogFont);
this.panel3.Location = new System.Drawing.Point(6, 6); this.panel3.Location = new System.Drawing.Point(6, 6);
this.panel3.Name = "panel3"; this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(778, 110); this.panel3.Size = new System.Drawing.Size(778, 91);
this.panel3.TabIndex = 2; this.panel3.TabIndex = 2;
// //
// lblCurrentPacketSet
//
this.lblCurrentPacketSet.Location = new System.Drawing.Point(110, 84);
this.lblCurrentPacketSet.Name = "lblCurrentPacketSet";
this.lblCurrentPacketSet.Size = new System.Drawing.Size(243, 15);
this.lblCurrentPacketSet.TabIndex = 14;
this.lblCurrentPacketSet.Text = "--";
this.lblCurrentPacketSet.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// cboPacketset // cboPacketset
// //
this.cboPacketset.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cboPacketset.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
@ -519,7 +508,7 @@ namespace DutyContent.Tab
this.panel2.Controls.Add(this.txtSoundInstance); this.panel2.Controls.Add(this.txtSoundInstance);
this.panel2.Controls.Add(this.chkEnableSound); this.panel2.Controls.Add(this.chkEnableSound);
this.panel2.Controls.Add(this.lblSoundInstance); this.panel2.Controls.Add(this.lblSoundInstance);
this.panel2.Location = new System.Drawing.Point(6, 190); this.panel2.Location = new System.Drawing.Point(6, 171);
this.panel2.Name = "panel2"; this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(778, 92); this.panel2.Size = new System.Drawing.Size(778, 92);
this.panel2.TabIndex = 1; this.panel2.TabIndex = 1;
@ -634,7 +623,7 @@ namespace DutyContent.Tab
this.panel1.Controls.Add(this.btnOverlayDimming); this.panel1.Controls.Add(this.btnOverlayDimming);
this.panel1.Controls.Add(this.lblOverlayTransparent); this.panel1.Controls.Add(this.lblOverlayTransparent);
this.panel1.Controls.Add(this.chkEnableOverlay); this.panel1.Controls.Add(this.chkEnableOverlay);
this.panel1.Location = new System.Drawing.Point(6, 122); this.panel1.Location = new System.Drawing.Point(6, 103);
this.panel1.Name = "panel1"; this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(778, 62); this.panel1.Size = new System.Drawing.Size(778, 62);
this.panel1.TabIndex = 0; this.panel1.TabIndex = 0;
@ -1011,7 +1000,6 @@ namespace DutyContent.Tab
private System.Windows.Forms.ColumnHeader columnHeader8; private System.Windows.Forms.ColumnHeader columnHeader8;
private System.Windows.Forms.CheckBox chkOverlayClickThru; private System.Windows.Forms.CheckBox chkOverlayClickThru;
private System.Windows.Forms.CheckBox chkShowDebug; private System.Windows.Forms.CheckBox chkShowDebug;
private System.Windows.Forms.Label lblCurrentPacketSet;
private System.Windows.Forms.ComboBox cboPacketset; private System.Windows.Forms.ComboBox cboPacketset;
private System.Windows.Forms.Label lblPacketSet; private System.Windows.Forms.Label lblPacketSet;
private System.Windows.Forms.Label lblPacketVersion; private System.Windows.Forms.Label lblPacketVersion;

View file

@ -22,7 +22,9 @@ namespace DutyContent.Tab
private bool _is_lock_fate; private bool _is_lock_fate;
private bool _is_packet_finder; private bool _is_packet_finder;
private DcContent.SaveTheQueenType _stq_type = DcContent.SaveTheQueenType.No; private DcContent.SaveTheQueenType _stq_type = DcContent.SaveTheQueenType.No;
private DcConfig.PacketConfig _new_packet; private DcConfig.PacketConfig _new_packet;
private List<string> _packet_names = new List<string>();
private Overlay.DutyOvForm _overlay; private Overlay.DutyOvForm _overlay;
@ -44,7 +46,6 @@ namespace DutyContent.Tab
{ {
// //
lblCurrentDataSet.Text = DcContent.DisplayLanguage; lblCurrentDataSet.Text = DcContent.DisplayLanguage;
lblCurrentPacketSet.Text = DcConfig.Packet.Description;
// //
var lang = MakeDutyLangList(); var lang = MakeDutyLangList();
@ -52,18 +53,23 @@ namespace DutyContent.Tab
foreach (var i in lang) foreach (var i in lang)
{ {
var n = cboDataset.Items.Add(i); var n = cboDataset.Items.Add(i);
if (i.Equals(DcConfig.Duty.Language)) if (i.Equals(DcConfig.Duty.Language))
cboDataset.SelectedIndex = n; cboDataset.SelectedIndex = n;
} }
// //
_packet_names.Clear();
var pks = MakePacketList(); var pks = MakePacketList();
foreach (var i in pks) for (var i = 0; i < pks.name.Count; i++)
{ {
var n = cboPacketset.Items.Add(i); var n = cboPacketset.Items.Add(pks.desc[i]);
if (i.Equals(DcConfig.Duty.PacketSet))
if (pks.name[i].Equals(DcConfig.Duty.PacketSet))
cboPacketset.SelectedIndex = n; cboPacketset.SelectedIndex = n;
_packet_names.Add(pks.name[i]);
} }
// //
@ -125,6 +131,10 @@ namespace DutyContent.Tab
case 3: rdoFatePreset4.Checked = true; break; case 3: rdoFatePreset4.Checked = true; break;
} }
UpdateFates(); UpdateFates();
//
if (cboPacketset.SelectedIndex >= 0)
RemotePacketUpdate(_packet_names[cboPacketset.SelectedIndex]);
} }
public void PluginDeinitialize() public void PluginDeinitialize()
@ -153,9 +163,10 @@ namespace DutyContent.Tab
return lst; return lst;
} }
public static List<string> MakePacketList() public static (List<string> name, List<string> desc) MakePacketList()
{ {
List<string> l = new List<string>(); List<string> l = new List<string>();
List<string> d = new List<string>();
DirectoryInfo di = new DirectoryInfo(DcConfig.DataPath); DirectoryInfo di = new DirectoryInfo(DcConfig.DataPath);
@ -163,9 +174,17 @@ namespace DutyContent.Tab
{ {
var s = fi.Name.Substring(9, fi.Name.Length - 9 - 7); var s = fi.Name.Substring(9, fi.Name.Length - 9 - 7);
l.Add(s); l.Add(s);
if (!File.Exists(fi.FullName))
d.Add(s);
else
{
var db = new ThirdParty.LineDb(fi.FullName, Encoding.UTF8, false);
d.Add(db.Get("Description", s));
}
} }
return l; return (l, d);
} }
public void RefreshLocale() public void RefreshLocale()
@ -566,6 +585,7 @@ namespace DutyContent.Tab
SaveConfig(); SaveConfig();
if (DcConfig.DataRemoteUpdate)
Updater.CheckNewVersion(); Updater.CheckNewVersion();
UpdateFates(); UpdateFates();
@ -577,17 +597,19 @@ namespace DutyContent.Tab
if (!DcConfig.PluginEnable) if (!DcConfig.PluginEnable)
return; return;
var l = (string)cboPacketset.SelectedItem; if (cboPacketset.SelectedIndex >= _packet_names.Count)
return;
var l = _packet_names[cboPacketset.SelectedIndex];
if (!string.IsNullOrWhiteSpace(l) && !l.Equals(DcConfig.Duty.PacketSet) && DcConfig.ReadPacket(l)) if (!string.IsNullOrWhiteSpace(l) && !l.Equals(DcConfig.Duty.PacketSet) && DcConfig.ReadPacket(l))
{ {
lblCurrentPacketSet.Text = DcConfig.Packet.Description;
SaveConfig(); SaveConfig();
if (!l.Equals(DcConfig.PacketConfig.DefaultSetNameCustom)) if (!l.Equals(DcConfig.PacketConfig.DefaultSetNameCustom))
{ {
// not custom, call Updater? // check update and save
RemotePacketUpdate(l);
} }
} }
} }
@ -1070,7 +1092,7 @@ namespace DutyContent.Tab
private void PacketFindClearUi(DcConfig.PacketConfig newpk) private void PacketFindClearUi(DcConfig.PacketConfig newpk)
{ {
// //
lblPacketVersion.Text = newpk.Version; lblPacketVersion.Text = newpk.Version.ToString();
txtPacketDescription.Text = newpk.Description; txtPacketDescription.Text = newpk.Description;
lstBozjaInfo.Items.Clear(); lstBozjaInfo.Items.Clear();
@ -1399,5 +1421,37 @@ namespace DutyContent.Tab
} }
} }
} }
private void RemotePacketUpdate(string name)
{
// need to resign using thread -> blocked by network troubles
if (!DcConfig.DataRemoteUpdate)
return;
var ns = Updater.CheckNewPacket(name);
if (!string.IsNullOrWhiteSpace(ns))
{
var pk = DcConfig.PacketConfig.ParseString(ns);
if (pk.Version > DcConfig.Packet.Version)
{
DcConfig.Packet.Version = pk.Version;
DcConfig.Packet.Description = pk.Description;
DcConfig.Packet.OpFate = pk.OpFate;
DcConfig.Packet.OpDuty = pk.OpDuty;
DcConfig.Packet.OpMatch = pk.OpMatch;
DcConfig.Packet.OpInstance = pk.OpInstance;
DcConfig.Packet.OpSouthernBozja = pk.OpSouthernBozja;
var nfn = DcConfig.BuildPacketFileName(name);
pk.Save(nfn);
MesgLog.I(33, pk.Version, pk.Description);
cboDataset.SelectedItem = pk.Description;
}
}
}
} }
} }

View file

@ -124,305 +124,305 @@
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADO ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADE
RQAAAk1TRnQBSQFMAgEBBAEAAVgBAQFYAQEBIAEAASABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAGA RQAAAk1TRnQBSQFMAgEBBAEAAWABAQFgAQEBIAEAASABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAGA
AwABQAMAAQEBAAEgBgABgP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A AwABQAMAAQEBAAEgBgABgP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A
/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A /wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A
/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AWgADNgRZAcQDVQHqAwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/ /wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AWgADNgRZAcQDVQHqAwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/
AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/ AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/
AwwB/wNdAeIDVAGuAykBPwgAAwcBCgNIAYUCDAGqAf8CBwGqAf8CBgGkAf8CBgGkAf8CBgGkAf8CBgGk AwsB/wNdAeIDVAGuAykBPwgAAwcBCgNIAYUCCwGqAf8CBgGqAf8CBQGkAf8CBQGkAf8CBQGkAf8CBQGk
Af8CBgGkAf8CBgGkAf8CBgGjAf8CBgGiAf8CBgGiAf8CBgGiAf8CBgGiAf8CBgGiAf8CBgGiAf8CBgGi Af8CBQGkAf8CBQGkAf8CBQGjAf8CBQGiAf8CBQGiAf8CBQGiAf8CBQGiAf8CBQGiAf8CBQGiAf8CBQGi
Af8CBgGiAf8CBgGiAf8CBgGiAf8CBgGjAf8CBgGkAf8CBgGkAf8CBgGkAf8CBgGkAf8CBgGkAf8CBgGk Af8CBQGiAf8CBQGiAf8CBQGiAf8CBQGjAf8CBQGkAf8CBQGkAf8CBQGkAf8CBQGkAf8CBQGkAf8CBQGk
Af8CBwGqAf8CDAGqAf8DSAGFAwcBCv8ABQADTgGXAy0B/wOyAf8DzQH/A90B/wPdAf8D3QH/A90B/wPd Af8CBgGqAf8CCwGqAf8DSAGFAwcBCv8ABQADTgGXAywB/wOyAf8DzQH/A90B/wPdAf8D3QH/A90B/wPd
Af8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPd Af8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPdAf8D3QH/A90B/wPd
Af8D3QH/A90B/wPIAf8DogH/Ax4B/wNGAYEEAANIAYUCBgGkAf8CBgGiAf8CBgGhAf8CBgGhAf8CBgGh Af8D3QH/A90B/wPIAf8DogH/Ax0B/wNGAYEEAANIAYUCBQGkAf8CBQGiAf8CBQGhAf8CBQGhAf8CBQGh
Af8CBgGhAf8CBgGhAf8CAwGgAf8CAwGeAf8CAwGbAf8CAwGZAf8CAwGZAf8CAwGXAf8CAwGVAf8CAwGV Af8CBQGhAf8CBQGhAf8CAgGgAf8CAgGeAf8CAgGbAf8CAgGZAf8CAgGZAf8CAgGXAf8CAgGVAf8CAgGV
Af8CAwGVAf8CAwGVAf8CAwGXAf8CAwGZAf8CAwGZAf8CAwGbAf8CAwGeAf8CAwGgAf8CBgGhAf8CBgGh Af8CAgGVAf8CAgGVAf8CAgGXAf8CAgGZAf8CAgGZAf8CAgGbAf8CAgGeAf8CAgGgAf8CBQGhAf8CBQGh
Af8CBgGhAf8CBgGhAf8CBgGhAf8CBgGiAf8CBgGkAf8DSAGFVwABAQMCBAMEBAEGAwQBBgMDAQQDAQEC Af8CBQGhAf8CBQGhAf8CBQGhAf8CBQGiAf8CBQGkAf8DSAGFVwABAQMCBAMEBAEGAwQBBgMDAQQDAQEC
AwABAYwAAzcBWgM5Af8D2wH/A4sB/wMjAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMM AwABAYwAAzcBWgM4Af8D2wH/A4sB/wMiAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wML
Af8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AyMB/wOH Af8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AyIB/wOH
Af8DzQH/AyUB/wMrAUICBgGkAf8CBgGiAf8CAwGdAf8CAQGYAf8CAQGXAf8CAQGXAf8CAQGXAf8CAQGX Af8DzQH/AyQB/wMrAUICBQGkAf8CBQGiAf8CAgGdAf8CAAGYAf8CAAGXAf8CAAGXAf8CAAGXAf8CAAGX
Af8CAAGRAf8CAAGPAf8CAAGMAf8CAAGKAf8CAAGKAf8CAAGIAf8CAAGGAf8CAAGGAf8CAAGGAf8CAAGG Af8CAAGRAf8CAAGPAf8CAAGMAf8CAAGKAf8CAAGKAf8CAAGIAf8CAAGGAf8CAAGGAf8CAAGGAf8CAAGG
Af8CAAGIAf8CAAGKAf8CAAGKAf8CAAGMAf8CAAGPAf8CAAGVAf8CAQGXAf8CAQGXAf8CAQGXAf8CAQGX Af8CAAGIAf8CAAGKAf8CAAGKAf8CAAGMAf8CAAGPAf8CAAGVAf8CAAGXAf8CAAGXAf8CAAGXAf8CAAGX
Af8CAQGYAf8CAwGdAf8CBgGiAf8CBgGkAf9QAAMCAQMDBgEIAw0BEgMaASQDIwEzAyEBMAMWAR4DCgEO Af8CAAGYAf8CAgGdAf8CBQGiAf8CBQGkAf9QAAMCAQMDBgEIAw0BEgMaASQDIwEzAyEBMAMWAR4DCgEO
AwQBBgMAAQGIAANZAcMDsgH/A4oB/wFJATcBHQH/AbkBkwEvAf8BzgGiATUB/wHOAaIBNQH/Ac4BogE1 AwQBBgMAAQGIAANZAcMDsgH/A4oB/wFIATYBHAH/AbkBkwEuAf8BzgGiATQB/wHOAaIBNAH/Ac4BogE0
Af8BzgGiATUB/wHOAaIBNQH/Ac4BogE1Af8BzgGiATUB/wHOAaIBNQH/Ac4BogE1Af8BzgGiATUB/wG9 Af8BzgGiATQB/wHOAaIBNAH/Ac4BogE0Af8BzgGiATQB/wHOAaIBNAH/Ac4BogE0Af8BzgGiATQB/wG9
AZUBLQH/AaMBgAEhAf8BvQGVAS0B/wHOAaIBNQH/Ac4BogE1Af8BzgGiATUB/wHOAaIBNQH/Ac4BogE1 AZUBLAH/AaMBgAEgAf8BvQGVASwB/wHOAaIBNAH/Ac4BogE0Af8BzgGiATQB/wHOAaIBNAH/Ac4BogE0
Af8BzgGiATUB/wHOAaIBNQH/Ac4BogE1Af8BzgGiATUB/wG5AZMBLwH/AVQBPwEgAf8DhQH/A6MB/wNU Af8BzgGiATQB/wHOAaIBNAH/Ac4BogE0Af8BzgGiATQB/wG5AZMBLgH/AVMBPgEfAf8DhQH/A6MB/wNU
AasCBgGjAf8CAwGaAf8CAAGRAf8CAAGNAf8CAAGNAf8CAAGKAf8CAAGGAf8CAAGBAf8CAAFTAf8CAAFR AasCBQGjAf8CAgGaAf8CAAGRAf8CAAGNAf8CAAGNAf8CAAGKAf8CAAGGAf8CAAGBAf8CAAFSAf8CAAFQ
Af8CAAFMAf8CAAFLAf8CAAFLAf8CAAFLAf8CAAFHAf8CAAFEAf8CAAFEAf8CAAFHAf8CAAFLAf8CAAFL Af8CAAFLAf8CAAFKAf8CAAFKAf8CAAFKAf8CAAFGAf8CAAFDAf8CAAFDAf8CAAFGAf8CAAFKAf8CAAFK
Af8CAAFLAf8CAAFMAf8CAAFRAf8CAAGAAf8CAAGGAf8CAAGGAf8CAAGKAf8CAAGNAf8CAAGNAf8CAAGR Af8CAAFKAf8CAAFLAf8CAAFQAf8CAAGAAf8CAAGGAf8CAAGGAf8CAAGKAf8CAAGNAf8CAAGNAf8CAAGR
Af8CAwGaAf8CBgGjAf9MAAMCAQMDBwEKAxcBIAMwAUwBRQJGAX4BTwJRAZwBTQJOAZYDQQFyAyoBQQMS Af8CAgGaAf8CBQGjAf9MAAMCAQMDBwEKAxcBIAMwAUwBRQJGAX4BTwJRAZwBTQJOAZYDQQFyAyoBQQMS
ARkDBQEHAwABAS8AAf8DAAH/AwAB/wMAAf8DAAH/RAADQQH5A8oB/wMhAf8BuQGPAS4B/wHVAaIBNgH/ ARkDBQEHAwABAS8AAf8DAAH/AwAB/wMAAf8DAAH/RAADQQH5A8oB/wMgAf8BuQGPAS0B/wHVAaIBNQH/
AdUBogE2Af8B1QGiATYB/wHVAaIBNgH/AdUBogE2Af8B1QGiATYB/wHVAaIBNgH/AdUBogE2Af8B1QGi AdUBogE1Af8B1QGiATUB/wHVAaIBNQH/AdUBogE1Af8B1QGiATUB/wHVAaIBNQH/AdUBogE1Af8B1QGi
ATYB/wHVAaIBNgH/AcQBlQEuAf8BiQFAARoB/wEVASQBKgH/AZQBRQEZAf8B0wGhATUB/wHVAaIBNgH/ ATUB/wHVAaIBNQH/AcQBlQEtAf8BiQE/ARkB/wEUASMBKQH/AZQBRAEYAf8B0wGhATQB/wHVAaIBNQH/
AdUBogE2Af8B1QGiATYB/wHVAaIBNgH/AdUBogE2Af8B1QGiATYB/wHVAaIBNgH/AdUBogE2Af8B1QGi AdUBogE1Af8B1QGiATUB/wHVAaIBNQH/AdUBogE1Af8B1QGiATUB/wHVAaIBNQH/AdUBogE1Af8B1QGi
ATYB/wHAAZMBMAH/AxoB/wPFAf8DTgHwAgQBmQH/AgABiwH/AgABUQH/AgABTQH/AgABRQH/AgABRQH/ ATUB/wHAAZMBLwH/AxkB/wPFAf8DTgHwAgMBmQH/AgABiwH/AgABUAH/AgABTAH/AgABRAH/AgABRAH/
AgABQAH/AgABPQH/AgABPAH/AgABOQH/AgABNQH/AgABNQH/AgABNAH/AgABMQH/AgABLQH/AgABLQH/ AgABPwH/AgABPAH/AgABOwH/AgABOAH/AgABNAH/AgABNAH/AgABMwH/AgABMAH/AgABLAH/AgABLAH/
AgABLQH/AgABLQH/AgABMQH/AgABNAH/AgABNQH/AgABNQH/AgABOQH/AgABPAH/AgABPwH/AgABRQH/ AgABLAH/AgABLAH/AgABMAH/AgABMwH/AgABNAH/AgABNAH/AgABOAH/AgABOwH/AgABPgH/AgABRAH/
AgABRQH/AgABRQH/AgABTQH/AgABUQH/AgABiwH/AgQBmQH/SAADAQECAwcBCQMYASIDOAFeAVMCVQGt AgABRAH/AgABRAH/AgABTAH/AgABUAH/AgABiwH/AgMBmQH/SAADAQECAwcBCQMYASIDOAFeAVMCVQGt
AV0CYQHiA20B9wNlAfQBXgJhAdoDUAGaAy0BRgMOARMDAwEELwAB/wMAAf8DAAH/AwAB/wMAAf9EAAMM AV0CYQHiA20B9wNlAfQBXgJhAdoDUAGaAy0BRgMOARMDAwEELwAB/wMAAf8DAAH/AwAB/wMAAf9EAAML
Af8DwgH/Aw4B/wHMAZUBMwH/AdUBmwE1Af8B1QGbATUB/wHVAZsBNQH/AdUBmwE1Af8B1QGbATUB/wHV Af8DwgH/Aw0B/wHMAZUBMgH/AdUBmwE0Af8B1QGbATQB/wHVAZsBNAH/AdUBmwE0Af8B1QGbATQB/wHV
AZsBNQH/AdUBmwE1Af8B1QGbATUB/wHVAZsBNQH/Ab8BiwErAf8BkwFAARgB/wEUASIBKwH/AQABKgGO AZsBNAH/AdUBmwE0Af8B1QGbATQB/wHVAZsBNAH/Ab8BiwEqAf8BkwE/ARcB/wETASEBKgH/AQABKQGO
Af8BQwEwARwB/wGVAUEBGAH/Ac8BlwEyAf8B1QGbATUB/wHVAZsBNQH/AdUBmwE1Af8B1QGbATUB/wHV Af8BQgEvARsB/wGVAUABFwH/Ac8BlwExAf8B1QGbATQB/wHVAZsBNAH/AdUBmwE0Af8B1QGbATQB/wHV
AZsBNQH/AdUBmwE1Af8B1QGbATUB/wHVAZsBNQH/AcUBkAExAf8DFAH/A8IB/wMMAf8CAgGRAf8BAAEB AZsBNAH/AdUBmwE0Af8B1QGbATQB/wHVAZsBNAH/AcUBkAEwAf8DEwH/A8IB/wMLAf8CAQGRAf8CAAGC
AYIB/wEAARgBhAH/AQIBIQGFAf8BAgEhAYAB/wECASMBgwH/AQIBIwGDAf8BAgEjAYMB/wECASMBUwH/ Af8BAAEXAYQB/wEBASABhQH/AQEBIAGAAf8BAQEiAYMB/wEBASIBgwH/AQEBIgGDAf8BAQEiAVIB/wEB
AQIBIwFTAf8BAgEjAVMB/wECASMBUwH/AQIBIwFOAf8BAgEgAUsB/wECASABSwH/AQIBIAFLAf8BAgEg ASIBUgH/AQEBIgFSAf8BAQEiAVIB/wEBASIBTQH/AQEBHwFKAf8BAQEfAUoB/wEBAR8BSgH/AQEBHwFK
AUsB/wECASABSwH/AQIBIAFLAf8BAgEgAUsB/wECASABUAH/AQIBIAFQAf8BAgEgAVAB/wECASABUAH/ Af8BAQEfAUoB/wEBAR8BSgH/AQEBHwFKAf8BAQEfAU8B/wEBAR8BTwH/AQEBHwFPAf8BAQEfAU8B/wEB
AQIBIQGDAf8BAgEjAYMB/wECASMBgwH/AQIBIwGDAf8BAgEjAYgB/wEAARgBhwH/AQABAQGDAf8CAgGR ASABgwH/AQEBIgGDAf8BAQEiAYMB/wEBASIBgwH/AQEBIgGIAf8BAAEXAYcB/wIAAYMB/wIBAZEB/0cA
Af9HAAEBAwYBCAMWAR4DOAFdA1UBtQNkAfEB8wH4AfwB/wHtA/8B8wP/AYYBlgGgAf4DXwHgA0gBhQMf AQEDBgEIAxYBHgM4AV0DVQG1A2QB8QHzAfgB/AH/Ae0D/wHzA/8BhAGUAZ4B/gNfAeADSAGFAx8BLAMF
ASwDBQEHLwAB/wMAAf8DAAH/AwAB/wMAAf9EAAMMAf8DtAH/AwwB/wHOAZABMgH/AdUBlAE0Af8B1QGU AQcvAAH/AwAB/wMAAf8DAAH/AwAB/0QAAwsB/wO0Af8DCwH/Ac4BkAExAf8B1QGUATMB/wHVAZQBMwH/
ATQB/wHVAZQBNAH/AdUBlAE0Af8B1QGUATQB/wHVAZQBNAH/AdQBkwE0Af8B0AGRATIB/wG0AVIBJQH/ AdUBlAEzAf8B1QGUATMB/wHVAZQBMwH/AdUBlAEzAf8B1AGTATMB/wHQAZEBMQH/AbQBUQEkAf8BigE3
AYoBOAEYAf8BCgEgATAB/wEAAQ4BTQH/AQABDgFIAf8BAAEVAU4B/wEtASYBIAH/AZIBOwEXAf8BuQGA ARcB/wEJAR8BLwH/AQABDQFMAf8BAAENAUcB/wEAARQBTQH/ASwBJQEfAf8BkgE6ARYB/wG5AYABJgH/
AScB/wHSAZIBMwH/AdUBlAE0Af8B1QGUATQB/wHVAZQBNAH/AdUBlAE0Af8B1QGUATQB/wHVAZQBNAH/ AdIBkgEyAf8B1QGUATMB/wHVAZQBMwH/AdUBlAEzAf8B1QGUATMB/wHVAZQBMwH/AdUBlAEzAf8BxQGL
AcUBiwEwAf8DEwH/A7QB/wMMAf8CAAGKAf8BAQEaAYcB/wETAYUBqQH/ASoBqwHUAf8BQwHRAd4B/wFI AS8B/wMSAf8DtAH/AwsB/wIAAYoB/wEAARkBhwH/ARIBhQGpAf8BKQGrAdQB/wFCAdEB3gH/AUcB1AHh
AdQB4QH/AUsB1AHhAf8BTQHUAeEB/wFNAdQB4QH/AUsB1AHhAf8BSAHUAeEB/wFIAdQB4QH/AUgB0wHg Af8BSgHUAeEB/wFMAdQB4QH/AUwB1AHhAf8BSgHUAeEB/wFHAdQB4QH/AUcB1AHhAf8BRwHTAeAB/wFH
Af8BSAHRAd4B/wFIAdEB3gH/AUgB0QHeAf8BSAHRAd4B/wFIAdEB3gH/AUgB0QHeAf8BSAHRAd4B/wFI AdEB3gH/AUcB0QHeAf8BRwHRAd4B/wFHAdEB3gH/AUcB0QHeAf8BRwHRAd4B/wFHAdEB3gH/AUcB0QHe
AdEB3gH/AUgB0QHeAf8BSAHRAd4B/wFIAdEB3gH/AUgB0QHhAf8BSAHUAeEB/wFIAdQB4QH/AUMB1AHh Af8BRwHRAd4B/wFHAdEB3gH/AUcB0QHeAf8BRwHRAeEB/wFHAdQB4QH/AUcB1AHhAf8BQgHUAeEB/wEq
Af8BKwGyAdgB/wEVAYUBrwH/AQEBGgGLAf8CAAGKAf9DAAEBAwUBBwMUARsDNQFWA1QBrwFaAl0B8AHz AbIB2AH/ARQBhQGvAf8BAAEZAYsB/wIAAYoB/0MAAQEDBQEHAxQBGwM1AVYDVAGvAVoCXQHwAfMB+AH8
AfgB/AH/AdQD/wHEAfwC/wHGAf4C/wHoA/8BZAF8AYIB+wFVAlYBsQMtAUUDBwEKLwAB/wMAAf8DAAH/ Af8B1AP/AcQB/AL/AcYB/gL/AegD/wFiAXkBgQH7AVUCVgGxAy0BRQMHAQovAAH/AwAB/wMAAf8DAAH/
AwAB/wMAAf9EAAMMAf8DpwH/AwwB/wHOAYcBMQH/AdUBiwEzAf8B1QGLATMB/wHLAYQBLwH/Ab0BUAEo AwAB/0QAAwsB/wOnAf8DCwH/Ac4BhwEwAf8B1QGLATIB/wHVAYsBMgH/AcsBhAEuAf8BvQFPAScB/wHE
Af8BxAGAASwB/wHAAVIBKgH/AZUBNgEXAf8BjQEzARgB/wExASQBIAH/AQABGAFFAf8CAAE7Af8BEwGR AYABKwH/AcABUQEpAf8BlQE1ARYB/wGNATIBFwH/ATABIwEfAf8BAAEXAUQB/wIAAToB/wESAZEBsgH/
AbIB/wFIAdUB5gH/AQABMQGJAf8BAAEDAUEB/wEAARwBPAH/AUcBKgEbAf8BkgE1ARcB/wGxAUkBIwH/ AUcB1QHmAf8BAAEwAYkB/wEAAQIBQAH/AQABGwE7Af8BRgEpARoB/wGSATQBFgH/AbEBSAEiAf8BwwGA
AcMBgAErAf8BwwGAASsB/wG6AU8BJwH/AdMBigEyAf8B1QGLATMB/wHFAYIBLwH/AxMB/wOnAf8DDAH/ ASoB/wHDAYABKgH/AboBTgEmAf8B0wGKATEB/wHVAYsBMgH/AcUBggEuAf8DEgH/A6cB/wMLAf8CAAGB
AgABgQH/AQUBJgGQAf8BJgGhAcIB/wEXAVABpAH/AQsBIgFRAf8BDAEiAYQB/wENASIBiAH/AQ4BIgGI Af8BBAElAZAB/wElAaEBwgH/ARYBTwGkAf8BCgEhAVAB/wELASEBhAH/AQwBIQGIAf8BDQEhAYgB/wEN
Af8BDgEiAYEB/wENASIBgQH/AQwBIgGBAf8BDAEiAVEB/wEMASIBUAH/AQwBIgFQAf8BDAEiAVAB/wEM ASEBgQH/AQwBIQGBAf8BCwEhAYEB/wELASEBUAH/AQsBIQFPAf8BCwEhAU8B/wELASEBTwH/AQsBIQFP
ASIBUAH/AQwBIgFQAf8BDAEiAVAB/wEMASIBUAH/AQwBIgFQAf8BDAEiAYEB/wEMASIBgQH/AQwBIgGB Af8BCwEhAU8B/wELASEBTwH/AQsBIQFPAf8BCwEhAU8B/wELASEBgQH/AQsBIQGBAf8BCwEhAYEB/wEL
Af8BDAEiAYEB/wEOASMBiAH/AREBJgGIAf8BDAEiAYQB/wELASIBUQH/ARcBUgGkAf8BJgGhAcMB/wEF ASEBgQH/AQ0BIgGIAf8BEAElAYgB/wELASEBhAH/AQoBIQFQAf8BFgFRAaQB/wElAaEBwwH/AQQBJQGR
ASYBkQH/AgABgQH/PwABAQMEAQYDEgEYAzIBUANSAakBWQJkAewBhgGWAaAB/gHZA/8BxAH8Av8BwwH7 Af8CAAGBAf8/AAEBAwQBBgMSARgDMgFQA1IBqQFZAmQB7AGEAZQBngH+AdkD/wHEAfwC/wHDAfsC/wHD
Av8BwwH7Av8B1wP/A6gB/QFXAlkBvwMyAVADCAELLwAB/wMAAf8DAAH/AwAB/wMAAf9EAAMMAf8DmwH/ AfsC/wHXA/8DqAH9AVcCWQG/AzIBUAMIAQsvAAH/AwAB/wMAAf8DAAH/AwAB/0QAAwsB/wObAf8DCwH/
AwwB/wHOAVQBLwH/AdUBgwExAf8BywFSAS0B/wGDASsBGAH/AT0BIwEbAf8BSwEmARkB/wFDASQBGgH/ Ac4BUwEuAf8B1QGDATAB/wHLAVEBLAH/AYMBKgEXAf8BPAEiARoB/wFKASUBGAH/AUIBIwEZAf8BEwEg
ARQBIQEsAf8BAAEbAUkB/wEAAQMBRQH/AQABIAFPAf8BQgHQAecB/wFNAd0B8QH/ATIBpwGxAf8BUwHh ASsB/wEAARoBSAH/AQABAgFEAf8BAAEfAU4B/wFBAdAB5wH/AUwB3QHxAf8BMQGnAbEB/wFSAeEB9wH/
AfcB/wEpAakBxQH/AQABBAE7Af8BAAEPAUwB/wEAAR4BQQH/ASUBIQEjAf8BSQElARkB/wFKASUBGQH/ ASgBqQHFAf8BAAEDAToB/wEAAQ4BSwH/AQABHQFAAf8BJAEgASIB/wFIASQBGAH/AUkBJAEYAf8BNwEi
ATgBIwEfAf8BlAEwARUB/wHTAYIBMAH/AcUBUAEtAf8DEgH/A5sB/wMMAf8CAAFTAf8BBgEnAYsB/wEf AR4B/wGUAS8BFAH/AdMBggEvAf8BxQFPASwB/wMRAf8DmwH/AwsB/wIAAVIB/wEFASYBiwH/AR4BnAG9
AZwBvQH/AQABDgE+Af8BAAEBAUoB/wECASgBmAH/AQEBKwGdAf8BAQEpAZ0B/wEBASgBnAH/AQEBKAGW Af8BAAENAT0B/wIAAUkB/wEBAScBmAH/AQABKgGdAf8BAAEoAZ0B/wEAAScBnAH/AQABJwGWAf8BAAEm
Af8BAAEnAZUB/wEDASUBkQH/AgABSgH/AgABQQH/AgABQQH/AgABQQH/AgABQQH/AgABQQH/AgABSAH/ AZUB/wECASQBkQH/AgABSQH/AgABQAH/AgABQAH/AgABQAH/AgABQAH/AgABQAH/AgABRwH/AQEBIAGS
AQIBIQGSAf8BAQEjAZQB/wEAARkBjQH/AQUBLwGYAf8BAAESAY4B/wEFAS8BnwH/AQEBHwGTAf8BAAEC Af8BAAEiAZQB/wEAARgBjQH/AQQBLgGYAf8BAAERAY4B/wEEAS4BnwH/AQABHgGTAf8BAAEBAUkB/wIA
AUoB/wIAATsB/wEAAQwBPAH/AR8BlwG0Af8BBgEmAYgB/wIAAVMB/zsAAQEDBAEGAxABFQMsAUMBTwJQ AToB/wEAAQsBOwH/AR4BlwG0Af8BBQElAYgB/wIAAVIB/zsAAQEDBAEGAxABFQMsAUMBTwJQAZsBWAJi
AZsBWAJiAekBhgGWAaAB/gHeA/8BxgH+Av8BwwH7Av8BwwH7Av8ByAP/AewD/wFkAX8BggH7AVUCVgGx AekBhAGUAZ4B/gHeA/8BxgH+Av8BwwH7Av8BwwH7Av8ByAP/AewD/wFiAXwBgQH7AVUCVgGxAy0BRQMH
Ay0BRQMHAQovAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/JAADDAH/A5MB/wMM AQovAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/JAADCwH/A5MB/wMLAf8BzAFL
Af8BzAFMAS0B/wHTAU8BLwH/Ac4BTAEtAf8BigEoARUB/wEAATABhAH/AQABKAGNAf8BAAEgAYgB/wEA ASwB/wHTAU4BLgH/Ac4BSwEsAf8BigEnARQB/wEAAS8BhAH/AQABJwGNAf8BAAEfAYgB/wEAARUBgQH/
ARYBgQH/AQQBSwGfAf8BRgHVAeYB/wGQAe8B/gH/ASkBmwG8Af8BNQELASIB/wGRAQcBIAH/ASQBIQE5 AQMBSgGfAf8BRQHVAeYB/wGQAe8B/gH/ASgBmwG8Af8BNAEKASEB/wGRAQYBHwH/ASMBIAE4Af8BPwHK
Af8BQAHKAeYB/wGQAe0B+gH/ATABtAHKAf8BAAExAZIB/wEAARgBgQH/AQABIQGHAf8BAAEyAZYB/wES AeYB/wGQAe0B+gH/AS8BtAHKAf8BAAEwAZIB/wEAARcBgQH/AQABIAGHAf8BAAExAZYB/wERASEBNAH/
ASIBNQH/AZMBKgEUAf8B0gFPAS8B/wHDAUgBKwH/AxEB/wOTAf8DDAH/AgABUwH/AQYBKAGLAf8BHwGd AZMBKQETAf8B0gFOAS4B/wHDAUcBKgH/AxAB/wOTAf8DCwH/AgABUgH/AQUBJwGLAf8BHgGdAb0B/wEA
Ab0B/wEAAQ4BRQH/AQABJwGVAf8BPAHWAekB/wE9AdcB8AH/ATwB0gHwAf8BPAHRAfAB/wE8AdEB7gH/ AQ0BRAH/AQABJgGVAf8BOwHWAekB/wE8AdcB8AH/ATsB0gHwAf8BOwHRAfAB/wE7AdEB7gH/ATgBzQHr
ATkBzQHrAf8BNgHFAecB/wEAAQsBigH/AgABSwH/AgABSwH/AgABSwH/AgABSwH/AgABTAH/AQABDQGM Af8BNQHFAecB/wEAAQoBigH/AgABSgH/AgABSgH/AgABSgH/AgABSgH/AgABSwH/AQABDAGMAf8BNgHB
Af8BNwHBAeIB/wExAcQB6AH/AQ8BigHPAf8BRQHhAfUB/wEAAUUBwwH/AUcB4QH1Af8BIgGiAdUB/wEA AeIB/wEwAcQB6AH/AQ4BigHPAf8BRAHhAfUB/wEAAUQBwwH/AUYB4QH1Af8BIQGiAdUB/wEAAQsBkgH/
AQwBkgH/AgABRwH/AQABDAFEAf8BHQGUAbQB/wEGASMBiAH/AgABUwH/OAADBAEFAw0BEgMoATwDSgGK AgABRgH/AQABCwFDAf8BHAGUAbQB/wEFASIBiAH/AgABUgH/OAADBAEFAw0BEgMoATwDSgGKAV4CYQHa
AV4CYQHaA6gB/QHiA/8BxgH+Av8BwwH7Av8BwwH7Av8ByQP/AekD/wOoAf0BXAJhAdwDRwGCAx0BKgMF A6gB/QHiA/8BxgH+Av8BwwH7Av8BwwH7Av8ByQP/AekD/wOoAf0BXAJhAdwDRwGCAx0BKgMFAQcvAAH/
AQcvAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/JAADDAH/A48B/wMMAf8ByQFJ AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/JAADCwH/A48B/wMLAf8ByQFIASsB/wHQ
ASwB/wHQAUwBLgH/AdABTAEuAf8BpgE0ARwB/wEaAR4BLAH/AQABSgGjAf8BMgGrAdIB/wGSAesB+AH/ AUsBLQH/AdABSwEtAf8BpgEzARsB/wEZAR0BKwH/AQABSQGjAf8BMQGrAdIB/wGSAesB+AH/AYkB6gH3
AYkB6gH3Af8BMQGiAbwB/wExAR4BNwH/AZoBEgE4Af8BvwElAYsB/wHBASoBkwH/AbsBIwGCAf8BggEL Af8BMAGiAbwB/wEwAR0BNgH/AZoBEQE3Af8BvwEkAYsB/wHBASkBkwH/AbsBIgGCAf8BggEKASkB/wEo
ASoB/wEpAToBVAH/AUABwwHbAf8BkwHwAfwB/wGGAeEB8wH/AR8BkQG5Af8BAAFFAZ8B/wFHAR8BFwH/ ATkBUwH/AT8BwwHbAf8BkwHwAfwB/wGGAeEB8wH/AR4BkQG5Af8BAAFEAZ8B/wFGAR4BFgH/AbwBQAEl
AbwBQQEmAf8B0AFMAS4B/wHAAUUBKgH/AxEB/wOPAf8DDAH/AgABUwH/AQYBKAGLAf8BHwGdAb0B/wEA Af8B0AFLAS0B/wHAAUQBKQH/AxAB/wOPAf8DCwH/AgABUgH/AQUBJwGLAf8BHgGdAb0B/wEAAQ0BSAH/
AQ4BSQH/AQABKQGfAf8BQwHiAfUB/wFKAewC/wFPAe4C/wFQAe4C/wFQAe4C/wFQAe4C/wEvAcAB6wH/ AQABKAGfAf8BQgHiAfUB/wFJAewC/wFOAe4C/wFPAe4C/wFPAe4C/wFPAe4C/wEuAcAB6wH/AQABCgGP
AQABCwGPAf8CAAFQAf8CAAFNAf8CAAFLAf8CAAFMAf8BAAEDAYIB/wERAU8BvgH/AUEB2gH4Af8BEQGY Af8CAAFPAf8CAAFMAf8CAAFKAf8CAAFLAf8BAAECAYIB/wEQAU4BvgH/AUAB2gH4Af8BEAGYAd8B/wEv
Ad8B/wEwAcQB8QH/ASQBtgHqAf8BHAGsAeUB/wE8AdYB+QH/ARYBnwHhAf8BHwGfAdMB/wEAARgBjAH/ AcQB8QH/ASMBtgHqAf8BGwGsAeUB/wE7AdYB+QH/ARUBnwHhAf8BHgGfAdMB/wEAARcBjAH/AQABCwFG
AQABDAFHAf8BGgGUAbQB/wEGASMBiAH/AgABUwH/JAADAQECAwMEBAQGBAgBCwMPARQDJAE2AUYCRwGA Af8BGQGUAbQB/wEFASIBiAH/AgABUgH/JAADAQECAwMEBAQGBAgBCwMPARQDJAE2AUYCRwGAAVgCXAHR
AVgCXAHRAWQBfwGDAfsB6QP/AcgD/wHDAfsC/wHDAfsC/wHMA/8B8AP/AWQBfwGDAfsBWQJdAdcDTAGS AWIBfAGCAfsB6QP/AcgD/wHDAfsC/wHDAfsC/wHMA/8B8AP/AWIBfAGCAfsBWQJdAdcDTAGSAysBQgMN
AysBQgMNARIDAwEELwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/yQAAwwB/wOP ARIDAwEELwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/yQAAwsB/wOPAf8DCwH/
Af8DDAH/AccBRwEsAf8BzgFKAS4B/wHOAUoBLgH/AaYBNAEdAf8CGgEoAf8BAAE6AZAB/wEZAYcBqQH/ AccBRgErAf8BzgFJAS0B/wHOAUkBLQH/AaYBMwEcAf8CGQEnAf8BAAE5AZAB/wEYAYcBqQH/AQsBIAE4
AQwBIQE5Af8BQAEEARsB/wGlARMBOwH/AcIBJgGMAf8BywE1AaQB/wHSAT0BsQH/AdQBPgG0Af8B0QE7 Af8BPwEDARoB/wGlARIBOgH/AcIBJQGMAf8BywE0AaQB/wHSATwBsQH/AdQBPQG0Af8B0QE6AbAB/wHK
AbAB/wHKATQBogH/Ab4BJAGEAf8BkgENATEB/wEyAQkBGwH/AQQBNAFSAf8BHgGKAawB/wEAAS8BiAH/ ATMBogH/Ab4BIwGEAf8BkgEMATAB/wExAQgBGgH/AQMBMwFRAf8BHQGKAawB/wEAAS4BiAH/AUUBHgEW
AUYBHwEXAf8BvQFAAScB/wHOAUoBLgH/Ab8BRAEqAf8DEQH/A48B/wMMAf8CAAFTAf8BBgEnAYsB/wEf Af8BvQE/ASYB/wHOAUkBLQH/Ab8BQwEpAf8DEAH/A48B/wMLAf8CAAFSAf8BBQEmAYsB/wEeAZwBuQH/
AZwBuQH/AQABDgFDAf8BAAEpAZ8B/wFDAeEB9QH/AUgB5wL/AUkB6AL/AUoB6AL/AUwB6gL/AVAB7gL/ AQABDQFCAf8BAAEoAZ8B/wFCAeEB9QH/AUcB5wL/AUgB6AL/AUkB6AL/AUsB6gL/AU8B7gL/AS4BwAHr
AS8BwAHrAf8BAAELAY4B/wIAAUoB/wIAAUkB/wIAAUgB/wIAAUgB/wEAAQQBgQH/AScBoQHUAf8BSAHm Af8BAAEKAY4B/wIAAUkB/wIAAUgB/wIAAUcB/wIAAUcB/wEAAQMBgQH/ASYBoQHUAf8BRwHmAv8BAAFA
Av8BAAFBAcEB/wFIAeYC/wEQAY8B1AH/ATUByQHxAf8BNQHJAfEB/wEQAY8B1QH/AT4B3AH1Af8BAgEn AcEB/wFHAeYC/wEPAY8B1AH/ATQByQHxAf8BNAHJAfEB/wEPAY8B1QH/AT0B3AH1Af8BAQEmAZgB/wEA
AZgB/wEAAQwBQgH/AR4BlAG0Af8BBgEjAYgB/wIAAVMB/xwAAwIBAwMGAQgDDQERAxcBIAMiATIDKgFA AQsBQQH/AR0BlAG0Af8BBQEiAYgB/wIAAVIB/xwAAwIBAwMGAQgDDQERAxcBIAMiATIDKgFAAywBQwMx
AywBQwMxAU4DRwGCAVkCXAHMAWQBbgFyAfoB7QP/AckD/wHDAfsC/wHDAfsC/wHNA/8B+AP/AVwBZQFt AU4DRwGCAVkCXAHMAWIBbQFxAfoB7QP/AckD/wHDAfsC/wHDAfsC/wHNA/8B+AP/AVwBYwFrAfgBXAJe
AfgBXAJeAc4BSAJJAYcDKwFCAxEBFwMEAQYDAAEBLwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIA Ac4BSAJJAYcDKwFCAxEBFwMEAQYDAAEBLwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/
Av8CAAL/AgAC/yQAAwwB/wOQAf8DDAH/AcUBRQErAf8BzAFIAS0B/wHMAUgBLQH/AaQBMQEcAf8BFwEa AgAC/yQAAwsB/wOQAf8DCwH/AcUBRAEqAf8BzAFHASwB/wHMAUcBLAH/AaQBMAEbAf8BFgEZASkB/wEA
ASoB/wEAATQBiQH/AQABOQGNAf8BIwETAS0B/wG8ARwBUQH/AcQBLAGcAf8B0QE8Aa8B/wHcAUgBwQH/ ATMBiQH/AQABOAGNAf8BIgESASwB/wG8ARsBUAH/AcQBKwGcAf8B0QE7Aa8B/wHcAUcBwQH/AeYBUAHN
AeYBUQHNAf8B6QFUAdIB/wHmAVIBzQH/Ad0BSQHBAf8B0AE8Aa8B/wHFAS0BmwH/AbMBGAFAAf8BAAEh Af8B6QFTAdIB/wHmAVEBzQH/Ad0BSAHBAf8B0AE7Aa8B/wHFASwBmwH/AbMBFwE/Af8BAAEgAUEB/wEE
AUIB/wEFAUABkAH/AQABKQGDAf8BRQEeARcB/wG7AT8BJgH/AcwBSAEtAf8BvQFCASkB/wMRAf8DkAH/ AT8BkAH/AQABKAGDAf8BRAEdARYB/wG7AT4BJQH/AcwBRwEsAf8BvQFBASgB/wMQAf8DkAH/AwsB/wIA
AwwB/wIAAVMB/wEGAScBiwH/AR8BmwG4Af8BAAENAUEB/wEAASEBkgH/ASwBuwHgAf8BMAG8AeYB/wEw AVIB/wEFASYBiwH/AR4BmwG4Af8BAAEMAUAB/wEAASABkgH/ASsBuwHgAf8BLwG8AeYB/wEvAb8B5gH/
Ab8B5gH/ATcBvwHkAf8BNwHBAecB/wE3AcUB6wH/ATIBvwHkAf8BAAEIAYQB/wIAAUgB/wIAAUgB/wIA ATYBvwHkAf8BNgHBAecB/wE2AcUB6wH/ATEBvwHkAf8BAAEHAYQB/wIAAUcB/wIAAUcB/wIAAUcB/wIA
AUgB/wIAAUgB/wIAAUsB/wEAAQUBhQH/AQABCwGNAf8BAAEGAYgB/wEAAQsBjwH/AQABBwGLAf8BAAEK AUcB/wIAAUoB/wEAAQQBhQH/AQABCgGNAf8BAAEFAYgB/wEAAQoBjwH/AQABBgGLAf8BAAEJAZQB/wEA
AZQB/wEAAQsBlgH/AQABCwGTAf8BAAELAZIB/wIAAUwB/wEAAQwBQQH/AR8BlAG0Af8BBgEjAYgB/wIA AQoBlgH/AQABCgGTAf8BAAEKAZIB/wIAAUsB/wEAAQsBQAH/AR4BlAG0Af8BBQEiAYgB/wIAAVIB/xcA
AVMB/xcAAQEDBAEFAwoBDgMaASUDMQFNA0QBeQFPAlABmwFTAlQBrANUAa4DVQG1AVoCXgHYA20B9wH0 AQEDBAEFAwoBDgMaASUDMQFNA0QBeQFPAlABmwFTAlQBrANUAa4DVQG1AVoCXgHYA20B9wH0A/8BygP/
A/8BygP/AcMB+wL/AcQB/AL/AdEH/wNtAfcBWAJbAcYDQwF4AyYBOAMQARUDBAEGAwABATMAAf8DAAH/ AcMB+wL/AcQB/AL/AdEH/wNtAfcBWAJbAcYDQwF4AyYBOAMQARUDBAEGAwABATMAAf8DAAH/AwAB/wMA
AwAB/wMAAf8DAAH/DgAC/wIAAv8CAAL/AgAC/wIAAv8kAAMMAf8DkgH/AwwB/wHDAUIBKgH/AcoBRQEs Af8DAAH/DgAC/wIAAv8CAAL/AgAC/wIAAv8kAAMLAf8DkgH/AwsB/wHDAUEBKQH/AcoBRAErAf8ByAFD
Af8ByAFEASsB/wGMASMBEgH/AQABGQE2Af8BAAE5AYwB/wEAAUUBnQH/AUABEQEtAf8BwgEmAZAB/wHN ASoB/wGMASIBEQH/AQABGAE1Af8BAAE4AYwB/wEAAUQBnQH/AT8BEAEsAf8BwgElAZAB/wHNATYBqwH/
ATcBqwH/Ad4BSwHEAf8B7wGHAdoB/wH7AZMB7AH/Af0BmAH0Af8B+wGTAewB/wHvAYcB2gH/Ad4BSwHE Ad4BSgHEAf8B7wGHAdoB/wH7AZMB7AH/Af0BmAH0Af8B+wGTAewB/wHvAYcB2gH/Ad4BSgHEAf8BzgE2
Af8BzgE3AawB/wG9ASMBhAH/AQ8BIwFDAf8BDQFMAZ0B/wEAASgBhAH/ATMBGgEcAf8BsAE3ASEB/wHK AawB/wG9ASIBhAH/AQ4BIgFCAf8BDAFLAZ0B/wEAAScBhAH/ATIBGQEbAf8BsAE2ASAB/wHKAUQBKwH/
AUUBLAH/AbsBPwEoAf8DEQH/A5IB/wMMAf8CAAFTAf8BBgEnAYoB/wEfAZcBtgH/AQABDAFBAf8CAAFK AbsBPgEnAf8DEAH/A5IB/wMLAf8CAAFSAf8BBQEmAYoB/wEeAZcBtgH/AQABCwFAAf8CAAFJAf8BAAEJ
Af8BAAEKAY8B/wEAAQwBlwH/AQABDAGXAf8BAAEMAY8B/wEAAQwBjwH/AQABDAGPAf8BAAEJAYgB/wIA AY8B/wEAAQsBlwH/AQABCwGXAf8BAAELAY8B/wEAAQsBjwH/AQABCwGPAf8BAAEIAYgB/wIAAUsB/wIA
AUwB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUoB/wIAAVAB/wIA AUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUkB/wIAAU8B/wIAAU8B/wIA
AVAB/wIAAVQB/wIAAYMB/wIAAYMB/wIAAVMB/wIAAUIB/wEAAQwBQQH/AR8BlAG0Af8BBgEjAYgB/wIA AVMB/wIAAYMB/wIAAYMB/wIAAVIB/wIAAUEB/wEAAQsBQAH/AR4BlAG0Af8BBQEiAYgB/wIAAVIB/xMA
AVMB/xMAAQEDBAEGAw8BFAMkATUBPwJAAW8DVgGzAVsCYQHhA2UB9AFaAWwBcQH6AVwBZQFtAfgDWQH1 AQEDBAEGAw8BFAMkATUBPwJAAW8DVgGzAVsCYQHhA2UB9AFYAWsBcAH6AVwBYwFrAfgDWQH1AU0BaAFv
AU4BaQFwAvoD/wHNA/8BwwH7Av8BxAH8Av8B1AP/AfMB+AH8Af8DWQH1AVYCWAHBA0ABcAMgAS4DCwEP AvoD/wHNA/8BwwH7Av8BxAH8Av8B1AP/AfMB+AH8Af8DWQH1AVYCWAHBA0ABcAMgAS4DCwEPAwQBBQMA
AwQBBQMAAQEbAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/ AQEbAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIA
AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wwAAwwB/wOWAf8DDAH/AcEBPwEq Av8CAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wwAAwsB/wOWAf8DCwH/AcEBPgEpAf8ByAFB
Af8ByAFCASsB/wHEAUABKQH/AYcBIAESAf8BAAEfAUkB/wENAUcBlwH/AQABQgGXAf8BgAEQATEB/wHG ASoB/wHEAT8BKAH/AYcBHwERAf8BAAEeAUgB/wEMAUYBlwH/AQABQQGXAf8BgAEPATAB/wHGASsBmgH/
ASwBmgH/AdUBQAG3Af8B6gGAAdIB/wH8AZYB8QL/AagB/gL/Aa8D/wGoAf4B/wH8AZYB8QH/AeoBgAHS AdUBPwG3Af8B6gGAAdIB/wH8AZYB8QL/AagB/gL/Aa8D/wGoAf4B/wH8AZYB8QH/AeoBgAHSAf8B1gE/
Af8B1gFAAbcB/wHFASoBkwH/ASYBHAE4Af8BCwFOAaAB/wEAATQBjQH/AREBGQEtAf8BjAEhAREB/wHH AbcB/wHFASkBkwH/ASUBGwE3Af8BCgFNAaAB/wEAATMBjQH/ARABGAEsAf8BjAEgARAB/wHHAUEBKgH/
AUIBKwH/AbkBPAEoAf8DEgH/A5YB/wMMAf8CAAFSAf8BBgElAYUB/wEcAZUBtAH/AQABDAFBAf8CAAFC AbkBOwEnAf8DEQH/A5YB/wMLAf8CAAFRAf8BBQEkAYUB/wEbAZUBtAH/AQABCwFAAf8CAAFBAf8CAAFS
Af8CAAFTAf8CAAGDAf8CAAGDAf8CAAFQAf8CAAFQAf8CAAFNAf8CAAFJAf8CAAFIAf8CAAFIAf8CAAFI Af8CAAGDAf8CAAGDAf8CAAFPAf8CAAFPAf8CAAFMAf8CAAFIAf8CAAFHAf8CAAFHAf8CAAFHAf8CAAFH
Af8CAAFIAf8CAAFIAf8CAAFIAf8CAAFIAf8CAAFIAf8CAAFKAf8CAAFQAf8CAAFQAf8CAAFQAf8CAAGD Af8CAAFHAf8CAAFHAf8CAAFHAf8CAAFHAf8CAAFJAf8CAAFPAf8CAAFPAf8CAAFPAf8CAAGDAf8CAAGD
Af8CAAGDAf8CAAFTAf8CAAFCAf8BAAEMAUEB/wEfAZQBtAH/AQYBIwGIAf8CAAFTAf8QAAMCAQMDCwEP Af8CAAFSAf8CAAFBAf8BAAELAUAB/wEeAZQBtAH/AQUBIgGIAf8CAAFSAf8QAAMCAQMDCwEPAyMBNAFE
AyMBNAFEAkUBfAFXAloBxQNtAfcB8wH4AfwB/wHxA/8B5wP/AeoD/wHvA/8B5AP/Ac0D/wHDAfsC/wHG AkUBfAFXAloBxQNtAfcB8wH4AfwB/wHxA/8B5wP/AeoD/wHvA/8B5AP/Ac0D/wHDAfsC/wHGAf4C/wHa
Af4C/wHaA/8B8wH4AfwB/wFkAmUB9AFWAlgBvAM9AWkDHQEqAwoBDQMDAQQjAAH/AwAB/wMAAf8DAAH/ A/8B8wH4AfwB/wFkAmUB9AFWAlgBvAM9AWkDHQEqAwoBDQMDAQQjAAH/AwAB/wMAAf8DAAH/AwAB/wMA
AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/ Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIA
AgAC/wIAAv8CAAL/AgAC/wwAAwwB/wOaAf8DDAH/Ab4BPgEpAf8BxQFAASoB/wGvATQBIQH/AUABGgEV Av8CAAL/AgAC/wwAAwsB/wOaAf8DCwH/Ab4BPQEoAf8BxQE/ASkB/wGvATMBIAH/AT8BGQEUAf8BAAEo
Af8BAAEpAYsB/wEkAYkBqwH/AQABMQFUAf8BqQEYAUIB/wHIATABoQH/AdoBRQG8Af8B8AGIAdwB/wH+ AYsB/wEjAYkBqwH/AQABMAFTAf8BqQEXAUEB/wHIAS8BoQH/AdoBRAG8Af8B8AGIAdwB/wH+AZ8B+gL/
AZ8B+gL/AbQD/wHCA/8BtAL/Af4BnwH6Af8B8AGIAdwB/wHbAUUBvQH/AckBLwGdAf8BTAERATAB/wEH AbQD/wHCA/8BtAL/Af4BnwH6Af8B8AGIAdwB/wHbAUQBvQH/AckBLgGdAf8BSwEQAS8B/wEGAUoBnQH/
AUsBnQH/ARMBUAGiAf8BAAEeAUkB/wGGAR8BEQH/AcMBPwEpAf8BtgE7AScB/wMSAf8DmgH/AwwB/wIA ARIBTwGiAf8BAAEdAUgB/wGGAR4BEAH/AcMBPgEoAf8BtgE6ASYB/wMRAf8DmgH/AwsB/wIAAVAB/wEF
AVEB/wEGASMBgwH/AR4BlAG0Af8BAAEMAUEB/wIAAUIB/wIAAVMB/wIAAYMB/wIAAYMB/wIAAVAB/wIA ASIBgwH/AR0BlAG0Af8BAAELAUAB/wIAAUEB/wIAAVIB/wIAAYMB/wIAAYMB/wIAAU8B/wIAAU8B/wIA
AVAB/wIAAUsB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIAAUgB/wIA AUoB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIA
AUgB/wIAAUgB/wIAAUwB/wIAAVAB/wIAAVAB/wIAAYMB/wIAAYMB/wIAAVMB/wIAAUIB/wEAAQwBQQH/ AUcB/wIAAUsB/wIAAU8B/wIAAU8B/wIAAYMB/wIAAYMB/wIAAVIB/wIAAUEB/wEAAQsBQAH/AR4BlAG0
AR8BlAG0Af8BBgEjAYgB/wIAAVMB/xAAAwMBBAMYASEDPQFpAVcCWQG/AWgBbgFyAfoB8QP/Ac4D/wHE Af8BBQEiAYgB/wIAAVIB/xAAAwMBBAMYASEDPQFpAVcCWQG/AWcBbQFxAfoB8QP/Ac4D/wHEAfwC/wHD
AfwC/wHDAfsC/wHDAfsC/wHDAfsC/wHDAfsC/wHDAfsC/wHGAf4C/wHeA/8BhgGWAaAB/gFOAl0B8AFV AfsC/wHDAfsC/wHDAfsC/wHDAfsC/wHDAfsC/wHGAf4C/wHeA/8BhAGUAZ4B/gFOAl0B8AFVAlcBtwM7
AlcBtwM7AWMDGgElAwkBDAMDAQQnAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/ AWMDGgElAwkBDAMDAQQnAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMA
AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wwAAwwB/wOf Af8OAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wwAAwsB/wOfAf8DCwH/
Af8DDAH/AbsBOwEoAf8BwAE8ASgB/wGGAR4BEAH/AQMBGAExAf8BAAE3AZQB/wErAZUBuQH/ARsBIgE9 AbsBOgEnAf8BwAE7AScB/wGGAR0BDwH/AQIBFwEwAf8BAAE2AZQB/wEqAZUBuQH/ARoBIQE8Af8BuAEa
Af8BuAEbAU8B/wHHATABoAH/AdkBRAG7Af8B7wGFAdoB/wH+AZ0B+gL/AbED/wG8A/8BsQL/Af4BnQH6 AU4B/wHHAS8BoAH/AdkBQwG7Af8B7wGFAdoB/wH+AZ0B+gL/AbED/wG8A/8BsQL/Af4BnQH6Af8B7wGF
Af8B7wGFAdoB/wHZAUQBvAH/AccBLwGfAf8BpAEVAT4B/wEGATsBiQH/ATEBlwG4Af8BAAEnAYoB/wE/ AdoB/wHZAUMBvAH/AccBLgGfAf8BpAEUAT0B/wEFAToBiQH/ATABlwG4Af8BAAEmAYoB/wE+ARgBFQH/
ARkBFgH/Aa0BMgEgAf8BswE4ASYB/wMSAf8DnwH/AwwB/wIAAVEB/wEGASMBgwH/AR8BlAG0Af8BAAEM Aa0BMQEfAf8BswE3ASUB/wMRAf8DnwH/AwsB/wIAAVAB/wEFASIBgwH/AR4BlAG0Af8BAAELAUAB/wEA
AUEB/wEAAQkBUwH/AQUBMwGsAf8BBgE4AbYB/wEEATYBsAH/AQABJQGiAf8BAAEPAY4B/wEAAQIBUwH/ AQgBUgH/AQQBMgGsAf8BBQE3AbYB/wEDATUBsAH/AQABJAGiAf8BAAEOAY4B/wEAAQEBUgH/AgABSQH/
AgABSgH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/ AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABSgH/
AgABSwH/AgABUAH/AgABUAH/AgABgwH/AgABgwH/AgABUwH/AgABQgH/AQABDAFBAf8BHgGUAbQB/wEG AgABTwH/AgABTwH/AgABgwH/AgABgwH/AgABUgH/AgABQQH/AQABCwFAAf8BHQGUAbQB/wEFASIBiAH/
ASMBiAH/AgABUwH/EAADBAEGAyMBMwFNAk4BlQNlAfQE/wHaA/8B2QP/AeAD/wHdA/8BzwP/AcUB/QL/ AgABUgH/EAADBAEGAyMBMwFNAk4BlQNlAfQE/wHaA/8B2QP/AeAD/wHdA/8BzwP/AcUB/QL/AcMB+wL/
AcMB+wL/AcMB+wL/AdMD/wGGAZYBoAH+AU4CXQHwAVUCVwG3AzoBYAMYASIDCAELAwIBAysAAf8DAAH/ AcMB+wL/AdMD/wGEAZQBngH+AU4CXQHwAVUCVwG3AzoBYAMYASIDCAELAwIBAysAAf8DAAH/AwAB/wMA
AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/
AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/DAADDAH/A6QB/wMMAf8BuQE4ASYB/wGgASoBGgH/AToBFgEU
Af8BAAEYAVAB/wEaAU8BogH/AQIBQAGSAf8BSAEIARkB/wG3ARsBUgH/AcIBLAGbAf8B0wE+AbMB/wHm
AVMBzwH/AfoBkQHrAv8BoAH8Av8BqAH+Av8BoAH8Af8B+gGRAesB/wHmAVMBzwH/AdMBPgG0Af8BwwEr
AZoB/wG2ARkBRgH/ARwBFAEoAf8BFgFRAaQB/wEAATUBkQH/AQABEAEsAf8BhAEcAQ4B/wGpATEBIQH/
AxIB/wOkAf8DDAH/AgABUgH/AQYBIwGFAf8BHwGUAbQB/wEAAQwBQQH/AQQBKQGSAf8BQwHkAfUB/wFI
AekC/wFBAeAB+AH/ASQBsQHfAf8BDAFBAbUB/wEAARABigH/AgABSgH/AgABSAH/AgABSAH/AgABSAH/
AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSQH/AgABTQH/AgABUgH/AQABAwGEAf8BAAEI
AY0B/wEAAQYBjAH/AQABAQGDAf8CAAFDAf8BAAEMAUEB/wEcAZUBtAH/AQYBJQGIAf8CAAFTAf8QAAME
AQYDIgEyAUwCTQGRA2QB8QOoAf0BfwGPAZ0B/gOoAf0BXwF2AYIB+wFfAXEBdwH8AecB8QH4Af8B1QP/
AcMB+wL/AcMB+wL/AeAD/wFfAWcBgAH7AVoCXQHTA0IBdAMaASUDBgEIAwEBAi8AAf8DAAH/AwAB/wMA
Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIA Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIA
Av8CAAL/AgAC/wIAAv8CAAL/DAADDAH/A6oB/wMMAf8BqQEuAR8B/wFCARcBFAH/ATMBlgG1Af8BTAHB Av8CAAL/AgAC/wIAAv8CAAL/DAADCwH/A6QB/wMLAf8BuQE3ASUB/wGgASkBGQH/ATkBFQETAf8BAAEX
AeQB/wGUAdgB6wH/AQABJgGIAf8BAAEZAToB/wGhAREBOQH/Ab8BJAGOAf8BygE0AaYB/wHaAUUBvAH/ AU8B/wEZAU4BogH/AQEBPwGSAf8BRwEHARgB/wG3ARoBUQH/AcIBKwGbAf8B0wE9AbMB/wHmAVIBzwH/
AegBgQHSAf8B9AGKAeEB/wH5AZAB6AH/AfQBigHhAf8B6AGBAdIB/wHaAUUBvQH/AcsBNAGlAf8BwAEj AfoBkQHrAv8BoAH8Av8BqAH+Av8BoAH8Af8B+gGRAesB/wHmAVIBzwH/AdMBPQG0Af8BwwEqAZoB/wG2
AYoB/wFSARABLQH/AQABFwFHAf8BEwFRAakB/wGcAeEB7wH/AT4BsAHWAf8BJgEfAScB/wGQASMBFgH/ ARgBRQH/ARsBEwEnAf8BFQFQAaQB/wEAATQBkQH/AQABDwErAf8BhAEbAQ0B/wGpATABIAH/AxEB/wOk
AxMB/wOqAf8DDAH/AgABUwH/AQYBIwGIAf8BHwGUAbQB/wEAAQwBQQH/AQABEwGKAf8BDQGMAc8B/wEN Af8DCwH/AgABUQH/AQUBIgGFAf8BHgGUAbQB/wEAAQsBQAH/AQMBKAGSAf8BQgHkAfUB/wFHAekC/wFA
AZMB3AH/AQ4BjwHVAf8BBAFLAcMB/wEAASUBpQH/AQABCQGJAf8CAAFPAf8CAAFIAf8CAAFIAf8CAAFI AeAB+AH/ASMBsQHfAf8BCwFAAbUB/wEAAQ8BigH/AgABSQH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/
Af8CAAFIAf8CAAFIAf8CAAFIAf8CAAFIAf8CAAFIAf8CAAFKAf8CAAFSAf8BAAENAY4B/wELAUMBuAH/ AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABSAH/AgABTAH/AgABUQH/AQABAgGEAf8BAAEHAY0B/wEA
ASEBmgHSAf8BGAGNAcsB/wECASoBpQH/AgABSwH/AQABDAFBAf8BHwGXAbYB/wEGAScBigH/AgABUwH/ AQUBjAH/AgABgwH/AgABQgH/AQABCwFAAf8BGwGVAbQB/wEFASQBiAH/AgABUgH/EAADBAEGAyIBMgFM
EAADAwEEAxYBHgM2AVkBTwJRAZwBVwJZAb8BWQJcAckBWgJdAcoBXAJeAc4BWAJfAeMBVwJiAfYB8AP/ Ak0BkQNkAfEDqAH9AX8BjQGbAf4DqAH9AV8BcwGBAfsBXgFwAXYB/AHnAfEB+AH/AdUD/wHDAfsC/wHD
AcMB+wL/AcMB+wL/Ad0D/wFpAXUBeQH8A1kBxwM3AVsDDwEUAwABAU8AAf8DAAH/AwAB/wMAAf8DAAH/ AfsC/wHgA/8BXwFkAX8B+wFaAl0B0wNCAXQDGgElAwYBCAMBAQIvAAH/AwAB/wMAAf8DAAH/AwAB/wMA
DgAC/wIAAv8CAAL/AgAC/wIAAv8kAAMMAf8DsAH/AwwB/wGvAS8BIgH/AVEBFgEOAf8BNAERARMB/wEv Af8DAAH/AwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/wIAAv8CAAL/AgAC/wIA
AUsBhQH/AbAB7gH3Af8BmwHjAe8B/wEAASkBkQH/AQABJQE+Af8BpQEVAUEB/wHAASgBlQH/AcsBNgGp Av8CAAL/AgAC/wwAAwsB/wOqAf8DCwH/AakBLQEeAf8BQQEWARMB/wEyAZYBtQH/AUsBwQHkAf8BlAHY
Af8B1gFBAbcB/wHeAUsBwgH/AeEBTQHGAf8B3gFLAcIB/wHWAUEBtwH/AcsBNgGoAf8BwwEnAZEB/wGB AesB/wEAASUBiAH/AQABGAE5Af8BoQEQATgB/wG/ASMBjgH/AcoBMwGmAf8B2gFEAbwB/wHoAYEB0gH/
AREBMwH/AQABLwGAAf8BBgFJAaUB/wG3AfMB+gH/AZYB2gHkAf8BJwEcASQB/wFHARUBEAH/AaMBKgEf AfQBigHhAf8B+QGQAegB/wH0AYoB4QH/AegBgQHSAf8B2gFEAb0B/wHLATMBpQH/AcABIgGKAf8BUQEP
Af8DEwH/A7AB/wMMAf8CAAFTAf8BBgEjAYgB/wEfAZQBtAH/AQABDAFBAf8BAAEhAY8B/wEtAccB6AH/ ASwB/wEAARYBRgH/ARIBUAGpAf8BnAHhAe8B/wE9AbAB1gH/ASUBHgEmAf8BkAEiARUB/wMSAf8DqgH/
ATQB0AHzAf8BNQHLAfIB/wErAbsB5gH/ARUBjQHMAf8BAQEsAaUB/wEAAQgBgQH/AgABSAH/AgABSAH/ AwsB/wIAAVIB/wEFASIBiAH/AR4BlAG0Af8BAAELAUAB/wEAARIBigH/AQwBjAHPAf8BDAGTAdwB/wEN
AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AgABSAH/AQABAQFSAf8BBwFBAbUB/wE2 AY8B1QH/AQMBSgHDAf8BAAEkAaUB/wEAAQgBiQH/AgABTgH/AgABRwH/AgABRwH/AgABRwH/AgABRwH/
AdAB8QH/AUYB6QH9Af8BQwHlAfsB/wEfAakB3AH/AQABEAGEAf8BAAENAUEB/wEfAZsBuAH/AQYBJwGL AgABRwH/AgABRwH/AgABRwH/AgABRwH/AgABSQH/AgABUQH/AQABDAGOAf8BCgFCAbgB/wEgAZoB0gH/
Af8CAAFTAf8QAAMCAQMDCgENAxwBJwMvAUkDPAFmA0QBegNIAYQBTgJPAZcBWQJcAcwBUwJkAfEE/wHD ARcBjQHLAf8BAQEpAaUB/wIAAUoB/wEAAQsBQAH/AR4BlwG2Af8BBQEmAYoB/wIAAVIB/xAAAwMBBAMW
AfsC/wHDAfsC/wHXA/8DqAH9A1sByAM3AVoDCwEPUwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIA AR4DNgFZAU8CUQGcAVcCWQG/AVkCXAHJAVoCXQHKAVwCXgHOAVgCXwHjAVcCYgH2AfAD/wHDAfsC/wHD
Av8CAAL/AgAC/yQAAwwB/wO2Af8DDAH/AbABLgEiAf8BsgEuASEB/wGfASUBGQH/AVIBFQEMAf8BGQER AfsC/wHdA/8BaAF0AXgB/ANZAccDNwFbAw8BFAMAAQFPAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/
ASAB/wGTAdQB6AH/AZYB3gHvAf8BAAE4AZYB/wERARwBMwH/AbgBGQFMAf8BvwEmAZMB/wHGAS8BoAH/ AgAC/wIAAv8CAAL/JAADCwH/A7AB/wMLAf8BrwEuASEB/wFQARUBDQH/ATMBEAESAf8BLgFKAYUB/wGw
AcsBNQGmAf8BzQE3AaoB/wHLATUBpgH/AcYBLwGgAf8BwAEmAZEB/wGdARQBPQH/AQABMQFLAf8BBgFI Ae4B9wH/AZsB4wHvAf8BAAEoAZEB/wEAASQBPQH/AaUBFAFAAf8BwAEnAZUB/wHLATUBqQH/AdYBQAG3
AagB/wGvAesB+AH/AUUBoAHDAf8BNwIQAf8BVAEVAQsB/wGtASwBHwH/AakBLAEhAf8DEwH/A7YB/wMM Af8B3gFKAcIB/wHhAUwBxgH/Ad4BSgHCAf8B1gFAAbcB/wHLATUBqAH/AcMBJgGRAf8BgQEQATIB/wEA
Af8CAAFTAf8BBgEjAYgB/wEeAZQBtAH/AQABDAFBAf8BAAEcAY4B/wEmAcMB5wH/AS0BzgHyAf8BLQHI AS4BgAH/AQUBSAGlAf8BtwHzAfoB/wGWAdoB5AH/ASYBGwEjAf8BRgEUAQ8B/wGjASkBHgH/AxIB/wOw
AfIB/wEjAbQB5gH/ARABigHKAf8BAAEqAZ8B/wEAAQQBTgH/AgABPwH/AgABPQH/AgABPQH/AgABPQH/ Af8DCwH/AgABUgH/AQUBIgGIAf8BHgGUAbQB/wEAAQsBQAH/AQABIAGPAf8BLAHHAegB/wEzAdAB8wH/
AgABPQH/AgABPQH/AgABPQH/AgABPQH/AgABPgH/AgABTAH/ARcBlQHLAf8BOwHpAf0B/wE9Ae4C/wE9 ATQBywHyAf8BKgG7AeYB/wEUAY0BzAH/AQABKwGlAf8BAAEHAYEB/wIAAUcB/wIAAUcB/wIAAUcB/wIA
Ae4C/wEvAdUB8AH/AQABHQGQAf8BAAEOAUEB/wEfAZwBuQH/AQYBJwGLAf8CAAFTAf8TAAEBAwcBCQMW AUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAUcB/wIAAVEB/wEGAUABtQH/ATUB0AHxAf8BRQHp
AR8DLwFJAUECQgFzAUwCTQGRAVACUgGjAVUCVwG6A18B4AFJAmIB9gHzA/8BwwH7Av8BwwH7Av8B3QP/ Af0B/wFCAeUB+wH/AR4BqQHcAf8BAAEPAYQB/wEAAQwBQAH/AR4BmwG4Af8BBQEmAYsB/wIAAVIB/xAA
AWkBdQF5AfwBVwJaAb0DMQFPAwkBDFMAAf8DAAH/AwAB/wMAAf8DAAH/DgAC/wIAAv8CAAL/AgAC/wIA AwIBAwMKAQ0DHAEnAy8BSQM8AWYDRAF6A0gBhAFOAk8BlwFZAlwBzAFTAmQB8QT/AcMB+wL/AcMB+wL/
Av8kAAMMAf8DuwH/AwwB/wGtASsBIQH/AbMBLQEiAf8BswEtASIB/wGoASgBHQH/AVEBEgELAf8BGQER AdcD/wOoAf0DWwHIAzcBWgMLAQ9TAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/
ASAB/wGRAdEB6gH/AVABugHdAf8BAAFBAZMB/wE6AQ4BKQH/AbgBFwFPAf8BvAEfAYcB/wHAASEBigH/ JAADCwH/A7YB/wMLAf8BsAEtASEB/wGyAS0BIAH/AZ8BJAEYAf8BUQEUAQsB/wEYARABHwH/AZMB1AHo
Ab8BIgGMAf8BwAEhAYoB/wG8AR4BhgH/AbQBFgFHAf8BDQEfATQB/wEAAUcBogH/AZ0B3gHxAf8BRQGg Af8BlgHeAe8B/wEAATcBlgH/ARABGwEyAf8BuAEYAUsB/wG/ASUBkwH/AcYBLgGgAf8BywE0AaYB/wHN
AcYB/wE5AQ8BEAH/AZYBHwEWAf8BsgEtASIB/wGzAS0BIgH/AaYBKQEgAf8DFAH/A7sB/wMMAf8CAAFT ATYBqgH/AcsBNAGmAf8BxgEuAaAB/wHAASUBkQH/AZ0BEwE8Af8BAAEwAUoB/wEFAUcBqAH/Aa8B6wH4
Af8BBgEjAYgB/wEaAZQBtAH/AQABDAFBAf8BAAEOAYUB/wEEAYIBygH/AQMBjgHXAf8BAwGKAdcB/wED Af8BRAGgAcMB/wE2Ag8B/wFTARQBCgH/Aa0BKwEeAf8BqQErASAB/wMSAf8DtgH/AwsB/wIAAVIB/wEF
AYYBzwH/AQMBSwHAAf8BAAEyAaoB/wEAARMBjAH/AgABOgH/AgABNAH/AgABNAH/AgABNAH/AgABNAH/ ASIBiAH/AR0BlAG0Af8BAAELAUAB/wEAARsBjgH/ASUBwwHnAf8BLAHOAfIB/wEsAcgB8gH/ASIBtAHm
AgABNAH/AgABNAH/AgABNgH/AgABOAH/AgABSAH/AQ0BgAHBAf8BMAHjAfsB/wE0Ae4C/wE0Ae4C/wEh Af8BDwGKAcoB/wEAASkBnwH/AQABAwFNAf8CAAE+Af8CAAE8Af8CAAE8Af8CAAE8Af8CAAE8Af8CAAE8
AcYB6gH/AQABFQGMAf8BAAEOAUMB/wEfAZ0BvQH/AQYBKAGLAf8CAAFTAf8TAAEBAwoBDQMqAUABTgJP Af8CAAE8Af8CAAE8Af8CAAE9Af8CAAFLAf8BFgGVAcsB/wE6AekB/QH/ATwB7gL/ATwB7gL/AS4B1QHw
AZcBWAJcAdEDXAHqA2cB8gNZAfUBXwF2AYIB+wHaAeoB9QH/AdgD/wHDAfsC/wHFAf0C/wHvA/8DYgH2 Af8BAAEcAZAB/wEAAQ0BQAH/AR4BnAG5Af8BBQEmAYsB/wIAAVIB/xMAAQEDBwEJAxYBHwMvAUkBQQJC
AVACUgGjAycBOgMHAQlTAAH/AwAB/wMAAf8DAAH/AwAB/w4AAv8CAAL/AgAC/wIAAv8CAAL/JAADDAH/ AXMBTAJNAZEBUAJSAaMBVQJXAboDXwHgAUkCYgH2AfMD/wHDAfsC/wHDAfsC/wHdA/8BaAF0AXgB/AFX
A8AB/wMMAf8BqQEpAR8B/wGvASoBIAH/Aa8BKgEgAf8BrwEqASAB/wGlASUBHAH/AU0BEAEJAf8BGgEj AloBvQMxAU8DCQEMUwAB/wMAAf8DAAH/AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/yQAAwsB/wO7
ATgB/wGYAdoB8QH/ASYBjwG8Af8BAAEsAUgB/wFJAQQBGgH/AT0BEAErAf8BLAEWATEB/wEsARYBMQH/ Af8DCwH/Aa0BKgEgAf8BswEsASEB/wGzASwBIQH/AagBJwEcAf8BUAERAQoB/wEYARABHwH/AZEB0QHq
ATABFQEwAf8BRQEMAScB/wEzAQcBGAH/AQABPAGQAf8BVAG8AeAB/wGEAbsB4QH/ASsBDQETAf8BkQEc Af8BTwG6Ad0B/wEAAUABkwH/ATkBDQEoAf8BuAEWAU4B/wG8AR4BhwH/AcABIAGKAf8BvwEhAYwB/wHA
ARMB/wGvASoBIAH/Aa8BKgEgAf8BrwEqASAB/wGiAScBHgH/AxQB/wPAAf8DDAH/AgABVAH/AQYBIwGL ASABigH/AbwBHQGGAf8BtAEVAUYB/wEMAR4BMwH/AQABRgGiAf8BnQHeAfEB/wFEAaABxgH/ATgBDgEP
Af8BHQGUAbQB/wEAAQgBPQH/AQABHAGMAf8BJQHaAesB/wEqAeQB9QH/ASoB4gH1Af8BJQHZAfMB/wEf Af8BlgEeARUB/wGyASwBIQH/AbMBLAEhAf8BpgEoAR8B/wMTAf8DuwH/AwsB/wIAAVIB/wEFASIBiAH/
AcIB6QH/ARABkwHRAf8BAAEsAaMB/wIAATEB/wIAASoB/wIAASoB/wIAASoB/wIAASoB/wIAASoB/wIA ARkBlAG0Af8BAAELAUAB/wEAAQ0BhQH/AQMBggHKAf8BAgGOAdcB/wECAYoB1wH/AQIBhgHPAf8BAgFK
ASoB/wIAAS0B/wIAAS0B/wIAATUB/wEAARsBkAH/AREBngHWAf8BJQHRAfAB/wEfAcMB6gH/AQYBTAG9 AcAB/wEAATEBqgH/AQABEgGMAf8CAAE5Af8CAAEzAf8CAAEzAf8CAAEzAf8CAAEzAf8CAAEzAf8CAAEz
Af8CAAFKAf8BAAEKAUMB/wEfAZ0BvQH/AQYBKAGOAf8CAAFUAf8TAAEBAw8BFAM7AWMDXgHYBP8B+wP/ Af8CAAE1Af8CAAE3Af8CAAFHAf8BDAGAAcEB/wEvAeMB+wH/ATMB7gL/ATMB7gL/ASABxgHqAf8BAAEU
AfMD/wHuA/8B4gP/AdED/wHGAf4C/wHEAfwC/wHWA/8B5wHxAfgB/wFXAlwB3wNEAXkDGAEiAwQBBlMA AYwB/wEAAQ0BQgH/AR4BnQG9Af8BBQEnAYsB/wIAAVIB/xMAAQEDCgENAyoBQAFOAk8BlwFYAlwB0QNc
Af8DAAH/AwAB/wMAAf8DAAH/DgAC/wIAAv8CAAL/AgAC/wIAAv8kAAMMAf8DxwH/AwwB/wGmASUBHgH/ AeoDZwHyA1kB9QFfAXMBgQH7AdoB6gH1Af8B2AP/AcMB+wL/AcUB/QL/Ae8D/wNiAfYBUAJSAaMDJwE6
AawBJgEfAf8BrAEmAR8B/wGsASYBHwH/AawBJgEfAf8BmgEeARcB/wFEAQ4BDAH/ATcBkAGyAf8BlgHS AwcBCVMAAf8DAAH/AwAB/wMAAf8DAAH/DgAC/wIAAv8CAAL/AgAC/wIAAv8kAAMLAf8DwAH/AwsB/wGp
AfEB/wEAAT8BogH/AQABOAGLAf8BAAFAAZMB/wEAAUYBmgH/AQABSAGcAf8BAAFFAZcB/wEAAUABkwH/ ASgBHgH/Aa8BKQEfAf8BrwEpAR8B/wGvASkBHwH/AaUBJAEbAf8BTAEPAQgB/wEZASIBNwH/AZgB2gHx
AQABMwGLAf8BIQGJAbsB/wGYAdgB8wH/ARsBKQE/Af8BTAEOAQkB/wGrASUBHgH/AawBJgEfAf8BrAEm Af8BJQGPAbwB/wEAASsBRwH/AUgBAwEZAf8BPAEPASoB/wErARUBMAH/ASsBFQEwAf8BLwEUAS8B/wFE
AR8B/wGsASYBHwH/AZ8BJAEdAf8DFAH/A8cB/wMMAf8CAAGFAf8BCgEqAY0B/wEfAZcBtAH/AQABBgE7 AQsBJgH/ATIBBgEXAf8BAAE7AZAB/wFTAbwB4AH/AYQBuwHhAf8BKgEMARIB/wGRARsBEgH/Aa8BKQEf
Af8CAAE8Af8BAAEgAYwB/wEAASIBkgH/AQABIgGSAf8BAAEgAZAB/wEAARsBhgH/AQABDgFOAf8CAAE+ Af8BrwEpAR8B/wGvASkBHwH/AaIBJgEdAf8DEwH/A8AB/wMLAf8CAAFTAf8BBQEiAYsB/wEcAZQBtAH/
Af8CAAEnAf8CAAEhAf8CAAEhAf8CAAEhAf8CAAEhAf8CAAEhAf8CAAEhAf8CAAEhAf8CAAEnAf8CAAEo AQABBwE8Af8BAAEbAYwB/wEkAdoB6wH/ASkB5AH1Af8BKQHiAfUB/wEkAdkB8wH/AR4BwgHpAf8BDwGT
Af8CAAEzAf8BAAEGAU4B/wEAARwBigH/AQABFAGFAf8CAAFHAf8CAAE0Af8BAAEHATwB/wEfAZwBuQH/ AdEB/wEAASsBowH/AgABMAH/AgABKQH/AgABKQH/AgABKQH/AgABKQH/AgABKQH/AgABKQH/AgABLAH/
AQoBKwGRAf8CAAGFAf8TAAEBAw0BEgM4AVwBWAJbAcsBhgGTAZwB/gHqA/8BzQP/AcQB/AL/AcMB+wL/ AgABLAH/AgABNAH/AQABGgGQAf8BEAGeAdYB/wEkAdEB8AH/AR4BwwHqAf8BBQFLAb0B/wIAAUkB/wEA
AcMB+wL/AcYB/gL/AdgD/wHzAfgB/AH/A10B8ANSAakDLgFHAwwBEAMCAQNTAAH/AwAB/wMAAf8DAAH/ AQkBQgH/AR4BnQG9Af8BBQEnAY4B/wIAAVMB/xMAAQEDDwEUAzsBYwNeAdgE/wH7A/8B8wP/Ae4D/wHi
AwAB/0QAAwwB/wPPAf8DDAH/AaMBIgEcAf8BqAEjAR0B/wGoASMBHQH/AagBIwEdAf8BqAEjAR0B/wGo A/8B0QP/AcYB/gL/AcQB/AL/AdYD/wHnAfEB+AH/AVcCXAHfA0QBeQMYASIDBAEGUwAB/wMAAf8DAAH/
ASMBHQH/AY0BFgERAf8BHwERARwB/wGMAdIB8wH/AcMB8AH4Af8B1QHuAfcB/wHgAfcB/AH/AecD/wHo AwAB/wMAAf8OAAL/AgAC/wIAAv8CAAL/AgAC/yQAAwsB/wPHAf8DCwH/AaYBJAEdAf8BrAElAR4B/wGs
A/8B5gH+Av8B3QHyAfoB/wHNAe0B9wH/AbUB7wH7Af8BRQGrAc8B/wE6AQoBDAH/AZYBGwEVAf8BqAEj ASUBHgH/AawBJQEeAf8BrAElAR4B/wGaAR0BFgH/AUMBDQELAf8BNgGQAbIB/wGWAdIB8QH/AQABPgGi
AR0B/wGoASMBHQH/AagBIwEdAf8BqAEjAR0B/wGdASEBGwH/AxUB/wPPAf8DDAH/AgQBigH/AQsBLQGY Af8BAAE3AYsB/wEAAT8BkwH/AQABRQGaAf8BAAFHAZwB/wEAAUQBlwH/AQABPwGTAf8BAAEyAYsB/wEg
Af8BIAGVAbYB/wEKATEBiAH/AQABCgE6Af8BAAEKAT8B/wEAAQoBPwH/AQABCgE/Af8BAAEKATkB/wEA AYkBuwH/AZgB2AHzAf8BGgEoAT4B/wFLAQ0BCAH/AasBJAEdAf8BrAElAR4B/wGsASUBHgH/AawBJQEe
AQoBOQH/AQABCgE5Af8BAAEKATQB/wEAAQQBMwH/AQABBAEzAf8BAAEEATMB/wEAAQQBMwH/AQABBAEz Af8BnwEjARwB/wMTAf8DxwH/AwsB/wIAAYUB/wEJASkBjQH/AR4BlwG0Af8BAAEFAToB/wIAATsB/wEA
Af8BAAEEATMB/wEAAQQBMwH/AQABBAEzAf8BAAEKATQB/wEAAQsBOgH/AQABDAE7Af8BAAEMATsB/wEA AR8BjAH/AQABIQGSAf8BAAEhAZIB/wEAAR8BkAH/AQABGgGGAf8BAAENAU0B/wIAAT0B/wIAASYB/wIA
AQwBQQH/AQABDAFBAf8BAAELAUAB/wEAAQoBOgH/AQgBMQGHAf8BHwGUAbUB/wELAS0BmAH/AgQBigH/ ASAB/wIAASAB/wIAASAB/wIAASAB/wIAASAB/wIAASAB/wIAASAB/wIAASYB/wIAAScB/wIAATIB/wEA
EwABAQMHAQoDJgE4A0oBiwFZAlwBzwFcAWUBbQH4AfMB+AH8Af8B8gP/AeYD/wHoA/8B+gP/AYYBlgGg AQUBTQH/AQABGwGKAf8BAAETAYUB/wIAAUYB/wIAATMB/wEAAQYBOwH/AR4BnAG5Af8BCQEqAZEB/wIA
Af4DYQHuA1UBsgM4AVwDFQEdAwUBBwMAAQFTAAH/AwAB/wMAAf8DAAH/AwAB/0QAAwwB/wPXAf8DDAH/ AYUB/xMAAQEDDQESAzgBXAFYAlsBywGEAZEBmgH+AeoD/wHNA/8BxAH8Av8BwwH7Av8BwwH7Av8BxgH+
AZ8BHwEbAf8BpAEgARwB/wGkASABHAH/AaQBIAEcAf8BpAEgARwB/wGkASABHAH/AZkBGwEXAf8BNAEI Av8B2AP/AfMB+AH8Af8DXQHwA1IBqQMuAUcDDAEQAwIBA1MAAf8DAAH/AwAB/wMAAf8DAAH/RAADCwH/
AQwB/wGvAdwB5AH/AeIB8AHyAf8BjQGkAa8B/wE4AT4BSgH/ASYBIgEwAf8BJwEjATEB/wEpASYBMwH/ A88B/wMLAf8BowEhARsB/wGoASIBHAH/AagBIgEcAf8BqAEiARwB/wGoASIBHAH/AagBIgEcAf8BjQEV
AUMBTwGGAf8BpQHAAcUB/wHvAvsB/wEvAYIBlwH/AUUBCQEIAf8BowEfARsB/wGkASABHAH/AaQBIAEc ARAB/wEeARABGwH/AYwB0gHzAf8BwwHwAfgB/wHVAe4B9wH/AeAB9wH8Af8B5wP/AegD/wHmAf4C/wHd
Af8BpAEgARwB/wGkASABHAH/AZkBHgEaAf8DFQH/A9cB/wMMAf8CBQGUAf8BCgEoAZsB/wErAaIBwwH/ AfIB+gH/Ac0B7QH3Af8BtQHvAfsB/wFEAasBzwH/ATkBCQELAf8BlgEaARQB/wGoASIBHAH/AagBIgEc
AT4BtwHNAf8BOgG5Ac0B/wE6AbkBzQH/ATgBuQHNAf8BNwG5Ac0B/wE3AbkBzQH/ATcBuQHNAf8BNwG5 Af8BqAEiARwB/wGoASIBHAH/AZ0BIAEaAf8DFAH/A88B/wMLAf8CAwGKAf8BCgEsAZgB/wEfAZUBtgH/
Ac0B/wE3AbkBzQH/ATcBuQHNAf8BNwG5Ac0B/wE3AbkBzQH/ATcBuQHNAf8BNwG5Ac0B/wE3AbkBzQH/ AQkBMAGIAf8BAAEJATkB/wEAAQkBPgH/AQABCQE+Af8BAAEJAT4B/wEAAQkBOAH/AQABCQE4Af8BAAEJ
ATcBuQHNAf8BNwG5Ac0B/wE6AbkBzQH/AToBvAHPAf8BOgG/AdIB/wE6Ab8B0gH/AToBvwHSAf8BOgG/ ATgB/wEAAQkBMwH/AQABAwEyAf8BAAEDATIB/wEAAQMBMgH/AQABAwEyAf8BAAEDATIB/wEAAQMBMgH/
AdIB/wE4AbwBzwH/ATcBuQHNAf8BNgG2AcgB/wEmAZ4BwAH/AQoBJwGbAf8CBQGUAf8UAAMEAQUDEQEX AQABAwEyAf8BAAEDATIB/wEAAQkBMwH/AQABCgE5Af8BAAELAToB/wEAAQsBOgH/AQABCwFAAf8BAAEL
AykBPwNEAXkBVQJWAbQBXAJhAdwDXwHzAVoBbAFxAfoBWgFsAXEB+gNdAe0BWwJeAdABUAJRAZ8DNgFZ AUAB/wEAAQoBPwH/AQABCQE5Af8BBwEwAYcB/wEeAZQBtQH/AQoBLAGYAf8CAwGKAf8TAAEBAwcBCgMm
AxgBIQMHAQoDAQECVwAB/wMAAf8DAAH/AwAB/wMAAf9EAAMMAf8D3wH/AwwB/wGcARwBGgH/AaEBHQEb ATgDSgGLAVkCXAHPAVwBYwFrAfgB8wH4AfwB/wHyA/8B5gP/AegD/wH6A/8BhAGUAZ4B/gNhAe4DVQGy
Af8BoQEdARsB/wGhAR0BGwH/AaEBHQEbAf8BoQEdARsB/wGbARoBGAH/AToBBwEKAf8BjwGWAaEB/wEo AzgBXAMVAR0DBQEHAwABAVMAAf8DAAH/AwAB/wMAAf8DAAH/RAADCwH/A9cB/wMLAf8BnwEeARoB/wGk
AQUBDQH/AUICBwH/AUUBBwEGAf8BgQEPAQ0B/wGBAQ8BDQH/AYEBDwENAf8BRAEHAQYB/wE/AQcBCAH/ AR8BGwH/AaQBHwEbAf8BpAEfARsB/wGkAR8BGwH/AaQBHwEbAf8BmQEaARYB/wEzAQcBCwH/Aa8B3AHk
ARwBEAEfAf8BTAFQAYgB/wFEAQcBBgH/AaABHAEaAf8BoQEdARsB/wGhAR0BGwH/AaEBHQEbAf8BoQEd Af8B4gHwAfIB/wGNAaQBrwH/ATcBPQFJAf8BJQEhAS8B/wEmASIBMAH/ASgBJQEyAf8BQgFOAYYB/wGl
ARsB/wGWARsBGQH/AxYB/wPfAf8DDAH/AgYBngH/AQcBDgGUAf8BFgEwAZ8B/wEpAVABrgH/ASwBVAGr AcABxQH/Ae8C+wH/AS4BggGXAf8BRAEIAQcB/wGjAR4BGgH/AaQBHwEbAf8BpAEfARsB/wGkAR8BGwH/
Af8BLAFUAasB/wEqAVQBqwH/ASkBVAGnAf8BKQFUAaYB/wEnAVEBpgH/ASMBTgGmAf8BIwFOAaIB/wEj AaQBHwEbAf8BmQEdARkB/wMUAf8D1wH/AwsB/wIEAZQB/wEJAScBmwH/ASoBogHDAf8BPQG3Ac0B/wE5
AU4BoQH/ASMBTgGhAf8BIwFOAaEB/wEjAU4BoQH/ASMBTgGhAf8BIwFOAaEB/wEjAU4BoQH/ASMBTgGh AbkBzQH/ATkBuQHNAf8BNwG5Ac0B/wE2AbkBzQH/ATYBuQHNAf8BNgG5Ac0B/wE2AbkBzQH/ATYBuQHN
Af8BJwFOAaIB/wEnAU4BpgH/ASoBUQGmAf8BLAFUAaYB/wEsAVQBpwH/ASwBVAGrAf8BKgFUAasB/wEp Af8BNgG5Ac0B/wE2AbkBzQH/ATYBuQHNAf8BNgG5Ac0B/wE2AbkBzQH/ATYBuQHNAf8BNgG5Ac0B/wE2
AVQBqwH/ASYBUAGuAf8BFAEwAZ8B/wEHAQ4BlAH/AgYBngH/FwABAQMEAQYDDAEQAxwBKAMxAU0DQgF1 AbkBzQH/ATkBuQHNAf8BOQG8Ac8B/wE5Ab8B0gH/ATkBvwHSAf8BOQG/AdIB/wE5Ab8B0gH/ATcBvAHP
A04BmQFTAlUBrQNSAakDSwGOATwCPQFnAykBPgMUARsDBwEJAwIBA1sAAf8DAAH/AwAB/wMAAf8DAAH/ Af8BNgG5Ac0B/wE1AbYByAH/ASUBngHAAf8BCQEmAZsB/wIEAZQB/xQAAwQBBQMRARcDKQE/A0QBeQFV
RAADTAHzA98B/wMjAf8BigIWAf8BmwEYARkB/wGbARgBGQH/AZsBGAEZAf8BmwEYARkB/wGbARgBGQH/ AlYBtAFcAmEB3ANfAfMBWAFrAXAB+gFYAWsBcAH6A10B7QFbAl4B0AFQAlEBnwM2AVkDGAEhAwcBCgMB
AZoBFwEYAf8BPwEEAQUB/wE5AQQBBwH/AUECBAH/AZkBFwEYAf8BmgEYARkB/wGbARgBGQH/AZsBGAEZ AQJXAAH/AwAB/wMAAf8DAAH/AwAB/0QAAwsB/wPfAf8DCwH/AZwBGwEZAf8BoQEcARoB/wGhARwBGgH/
Af8BmwEYARkB/wGaARcBGAH/AZIBFAEVAf8BQAIEAf8BNgEEAQgB/wFBAgQB/wGaARgBGQH/AZsBGAEZ AaEBHAEaAf8BoQEcARoB/wGhARwBGgH/AZsBGQEXAf8BOQEGAQkB/wGPAZYBoQH/AScBBAEMAf8BQQIG
Af8BmwEYARkB/wGbARgBGQH/AZsBGAEZAf8BUQEUARUB/wMrAf8D3QH/A04B8AILAaQB/wIGAZ4B/wIF Af8BRAEGAQUB/wGBAQ4BDAH/AYEBDgEMAf8BgQEOAQwB/wFDAQYBBQH/AT4BBgEHAf8BGwEPAR4B/wFL
AZQB/wIEAY8B/wIEAYwB/wIEAYYB/wIEAYIB/wIAAVMB/wIAAVMB/wIAAVAB/wIAAU0B/wIAAUsB/wIA AU8BiAH/AUMBBgEFAf8BoAEbARkB/wGhARwBGgH/AaEBHAEaAf8BoQEcARoB/wGhARwBGgH/AZYBGgEY
AUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAUsB/wIAAU0B/wIA Af8DFQH/A98B/wMLAf8CBQGeAf8BBgENAZQB/wEVAS8BnwH/ASgBTwGuAf8BKwFTAasB/wErAVMBqwH/
AVAB/wIAAVMB/wIAAVMB/wIEAYIB/wIEAYYB/wIEAYwB/wIEAY8B/wIFAZQB/wIGAZ4B/wILAaQB/xsA ASkBUwGrAf8BKAFTAacB/wEoAVMBpgH/ASYBUAGmAf8BIgFNAaYB/wEiAU0BogH/ASIBTQGhAf8BIgFN
AQEDAgEDAwYBCAMMARADFgEeAyIBMgMqAUADKQE+Ax8BLAMSARkDCgENAwQBBgMBAQJfAAH/AwAB/wMA AaEB/wEiAU0BoQH/ASIBTQGhAf8BIgFNAaEB/wEiAU0BoQH/ASIBTQGhAf8BIgFNAaEB/wEmAU0BogH/
Af8DAAH/AwAB/0QAA1cBvQO/Af8DlAH/ATcBFQEXAf8BigEUARoB/wGTARIBGQH/AZMBEgEZAf8BkwES ASYBTQGmAf8BKQFQAaYB/wErAVMBpgH/ASsBUwGnAf8BKwFTAasB/wEpAVMBqwH/ASgBUwGrAf8BJQFP
ARkB/wGTARIBGQH/AZMBEgEZAf8BkgESARgB/wGOARABFwH/AZIBEgEZAf8BkwESARkB/wGTARIBGQH/ Aa4B/wETAS8BnwH/AQYBDQGUAf8CBQGeAf8XAAEBAwQBBgMMARADHAEoAzEBTQNCAXUDTgGZAVMCVQGt
AZMBEgEZAf8BkwESARkB/wGTARIBGQH/AZMBEgEZAf8BkwESARkB/wGSARIBGAH/AY0BEAEWAf8BkgES A1IBqQNLAY4BPAI9AWcDKQE+AxQBGwMHAQkDAgEDWwAB/wMAAf8DAAH/AwAB/wMAAf9EAANMAfMD3wH/
ARkB/wGTARIBGQH/AZMBEgEZAf8BkwESARkB/wGTARIBGQH/AYABFQEaAf8BLAEUARYB/wO0Af8DtAH/ AyIB/wGKAhUB/wGbARcBGAH/AZsBFwEYAf8BmwEXARgB/wGbARcBGAH/AZsBFwEYAf8BmgEWARcB/wE+
A1QBrgIOAawB/wIOAakB/wIOAaYB/wIJAaYB/wIIAaYB/wIIAaMB/wIIAZ8B/wIGAZ4B/wIGAZcB/wIG AQMBBAH/ATgBAwEGAf8BQAIDAf8BmQEWARcB/wGaARcBGAH/AZsBFwEYAf8BmwEXARgB/wGbARcBGAH/
AZcB/wIGAZYB/wIGAZYB/wIGAY4B/wIGAY4B/wIGAY4B/wIGAY4B/wIGAY4B/wIGAY4B/wIGAY4B/wIG AZoBFgEXAf8BkgETARQB/wE/AgMB/wE1AQMBBwH/AUACAwH/AZoBFwEYAf8BmwEXARgB/wGbARcBGAH/
AY4B/wIGAZYB/wIGAZYB/wIGAZcB/wIGAZcB/wIGAZ4B/wIIAZ8B/wIIAaMB/wIIAaYB/wIJAaYB/wIO AZsBFwEYAf8BmwEXARgB/wFQARMBFAH/AyoB/wPdAf8DTgHwAgoBpAH/AgUBngH/AgQBlAH/AgMBjwH/
AaYB/wIOAakB/wIOAawB/yQAAwEBAgMDBAQEBgEIAwYBCAMEAQYDAwEEAwABAWcAAf8DAAH/AwAB/wMA AgMBjAH/AgMBhgH/AgMBggH/AgABUgH/AgABUgH/AgABTwH/AgABTAH/AgABSgH/AgABSgH/AgABSgH/
Af8DAAH/RAADNAFUAzsB/wPuAf8DkwH/AyIB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/ AgABSgH/AgABSgH/AgABSgH/AgABSgH/AgABSgH/AgABSgH/AgABSgH/AgABTAH/AgABTwH/AgABUgH/
AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DKwH/ AgABUgH/AgMBggH/AgMBhgH/AgMBjAH/AgMBjwH/AgQBlAH/AgUBngH/AgoBpAH/GwABAQMCAQMDBgEI
A7IB/wPqAf8DKwH/Ay0BRQIOAawB/wIOAawB/wIOAawB/wIOAawB/wIOAawB/wIOAawB/wIOAawB/wIK AwwBEAMWAR4DIgEyAyoBQAMpAT4DHwEsAxIBGQMKAQ0DBAEGAwEBAl8AAf8DAAH/AwAB/wMAAf8DAAH/
AagB/wIJAaQB/wIGAaIB/wIGAZ8B/wIGAZ8B/wIGAZwB/wIGAZwB/wIGAZwB/wIGAZwB/wIGAZwB/wIG RAADVwG9A78B/wOUAf8BNgEUARYB/wGKARMBGQH/AZMBEQEYAf8BkwERARgB/wGTAREBGAH/AZMBEQEY
AZwB/wIGAZwB/wIGAZwB/wIGAZ8B/wIGAZ8B/wIGAaIB/wIJAacB/wIKAagB/wIOAawB/wIOAawB/wIO Af8BkwERARgB/wGSAREBFwH/AY4BDwEWAf8BkgERARgB/wGTAREBGAH/AZMBEQEYAf8BkwERARgB/wGT
AawB/wIOAawB/wIOAawB/wIOAawB/wIOAawB//8ABQADSgGNAzoB/wPNAf8D+QH/A/sB/wP7Af8D+wH/ AREBGAH/AZMBEQEYAf8BkwERARgB/wGTAREBGAH/AZIBEQEXAf8BjQEPARUB/wGSAREBGAH/AZMBEQEY
A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/ Af8BkwERARgB/wGTAREBGAH/AZMBEQEYAf8BgAEUARkB/wErARMBFQH/A7QB/wO0Af8DVAGuAg0BrAH/
A/sB/wP7Af8D+wH/A/sB/wPrAf8DvQH/AyUB/wNIAYcEAANIAYUCDgGsAf8CDgGsAf8CDgGsAf8CDgGs Ag0BqQH/Ag0BpgH/AggBpgH/AgcBpgH/AgcBowH/AgcBnwH/AgUBngH/AgUBlwH/AgUBlwH/AgUBlgH/
Af8CDgGsAf8CDgGsAf8CDgGsAf8CDQGpAf8CCwGpAf8CCwGmAf8CBwGkAf8CBgGhAf8CBgGhAf8CBgGh AgUBlgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBjgH/AgUBlgH/
Af8CBgGhAf8CBgGhAf8CBgGhAf8CBgGhAf8CBgGhAf8CBwGkAf8CCwGmAf8CCwGpAf8CDQGrAf8CDgGs AgUBlgH/AgUBlwH/AgUBlwH/AgUBngH/AgcBnwH/AgcBowH/AgcBpgH/AggBpgH/Ag0BpgH/Ag0BqQH/
Af8CDgGsAf8CDgGsAf8CDgGsAf8CDgGsAf8CDgGsAf8CDgGsAf8DSAGF/wAJAAM3AVoDWQHDAysB/AMM Ag0BrAH/JAADAQECAwMEBAQGAQgDBgEIAwQBBgMDAQQDAAEBZwAB/wMAAf8DAAH/AwAB/wMAAf9EAAM0
Af8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DDAH/AwwB/wMM AVQDOgH/A+4B/wOTAf8DIQH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wML
Af8DDAH/AwwB/wMMAf8DDAH/AwwB/wMMAf8DVQHqA1QBrgMtAUUIAAMHAQoDSAGFAg4BrAH/Ag4BrAH/ Af8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMqAf8DsgH/A+oB/wMq
Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BqwH/Ag0BqgH/AgwBqgH/AgwBqAH/ Af8DLQFFAg0BrAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/AgkBqAH/AggBpAH/
AgwBpAH/AgwBpAH/AgwBpAH/AgwBpAH/AgwBqAH/AgwBqgH/Ag0BqgH/Ag4BqwH/Ag4BrAH/Ag4BrAH/ AgUBogH/AgUBnwH/AgUBnwH/AgUBnAH/AgUBnAH/AgUBnAH/AgUBnAH/AgUBnAH/AgUBnAH/AgUBnAH/
Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/Ag4BrAH/A0gBhQMHAQr/AAEAAUIBTQE+BwABPgMA AgUBnAH/AgUBnwH/AgUBnwH/AgUBogH/AggBpwH/AgkBqAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/Ag0BrAH/
ASgDAAGAAwABQAMAAQEBAAEBBgABBBYAA///AP8AAwABwAIAAQMEAAj/AYACAAEBBAAC/wH4AQcE/wgA Ag0BrAH/Ag0BrAH/Ag0BrAH//wAFAANKAY0DOQH/A80B/wP5Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7
Av8B8AEDBP8IAAL/AeABAQH/AcEC/wgAAv8BwAEBAf8BwQL/CAAC/wGAAQEB/wHBAv8IAAL/AQABAQH/ Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7Af8D+wH/A/sB/wP7
AcEC/wgAAf8B/gEAAQEB/wHBAv8IAAH/AfwBAAEBAf8CwQH/CAAB/wH8AQABAQH/AsEB/wgAAf8BgAEA Af8D+wH/A+sB/wO9Af8DJAH/A0gBhwQAA0gBhQINAawB/wINAawB/wINAawB/wINAawB/wINAawB/wIN
AQEB/wLBAf8IAAH+AgABAQH/AsEB/wgAAfgCAAEDAf8CwQH/CAAB8AIAAQcB4AEBAcABBwgAAfACAAEf AawB/wINAawB/wIMAakB/wIKAakB/wIKAaYB/wIGAaQB/wIFAaEB/wIFAaEB/wIFAaEB/wIFAaEB/wIF
AeABAQHAAQcIAAHwAgABPwHgAQEBwAEHCAAB8AIAAX8B4AEBAcABBwgAAfACAAH/AeABAQHAAQcIAAHw AaEB/wIFAaEB/wIFAaEB/wIFAaEB/wIGAaQB/wIKAaYB/wIKAakB/wIMAasB/wINAawB/wINAawB/wIN
AQABAQL/AsEB/wgAAfABAAEDAv8CwQH/CAAB8AEAAQMC/wLBAf8IAAHwAQABAwL/AsEB/wgAAfABAAED AawB/wINAawB/wINAawB/wINAawB/wINAawB/wNIAYX/AAkAAzcBWgNZAcMDKwH8AwsB/wMLAf8DCwH/
Av8CwQH/CAAB8AEAAQMC/wHBAv8IAAHwAQABAwL/AcEC/wgAAfgBAAEHAv8BwQL/CAAB+AEAAQ8C/wHB AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/AwsB/wMLAf8DCwH/
Av8IAAH8AQABHwL/AcEC/wgAAf8BgAF/Av8BwQL/CAAI/wGAAgABAQQACP8BwAIAAQMEAAj/Cw== AwsB/wMLAf8DCwH/AwsB/wNVAeoDVAGuAy0BRQgAAwcBCgNIAYUCDQGsAf8CDQGsAf8CDQGsAf8CDQGs
Af8CDQGsAf8CDQGsAf8CDQGsAf8CDQGsAf8CDQGrAf8CDAGqAf8CCwGqAf8CCwGoAf8CCwGkAf8CCwGk
Af8CCwGkAf8CCwGkAf8CCwGoAf8CCwGqAf8CDAGqAf8CDQGrAf8CDQGsAf8CDQGsAf8CDQGsAf8CDQGs
Af8CDQGsAf8CDQGsAf8CDQGsAf8CDQGsAf8DSAGFAwcBCv8AAQABQgFNAT4HAAE+AwABKAMAAYADAAFA
AwABAQEAAQEGAAEEFgAD//8A/wADAAHAAgABAwQACP8BgAIAAQEEAAL/AfgBBwT/CAAC/wHwAQME/wgA
Av8B4AEBAf8BwQL/CAAC/wHAAQEB/wHBAv8IAAL/AYABAQH/AcEC/wgAAv8BAAEBAf8BwQL/CAAB/wH+
AQABAQH/AcEC/wgAAf8B/AEAAQEB/wLBAf8IAAH/AfwBAAEBAf8CwQH/CAAB/wGAAQABAQH/AsEB/wgA
Af4CAAEBAf8CwQH/CAAB+AIAAQMB/wLBAf8IAAHwAgABBwHgAQEBwAEHCAAB8AIAAR8B4AEBAcABBwgA
AfACAAE/AeABAQHAAQcIAAHwAgABfwHgAQEBwAEHCAAB8AIAAf8B4AEBAcABBwgAAfABAAEBAv8CwQH/
CAAB8AEAAQMC/wLBAf8IAAHwAQABAwL/AsEB/wgAAfABAAEDAv8CwQH/CAAB8AEAAQMC/wLBAf8IAAHw
AQABAwL/AcEC/wgAAfABAAEDAv8BwQL/CAAB+AEAAQcC/wHBAv8IAAH4AQABDwL/AcEC/wgAAfwBAAEf
Av8BwQL/CAAB/wGAAX8C/wHBAv8IAAj/AYACAAEBBAAI/wHAAgABAwQACP8L
</value> </value>
</data> </data>
</root> </root>

View file

@ -107,6 +107,11 @@ namespace DutyContent.ThirdParty
return s.ToUpper().Equals("TRUE"); return s.ToUpper().Equals("TRUE");
} }
public static bool ToBool(string s, bool failret)
{
return string.IsNullOrEmpty(s) ? failret : s.ToUpper().Equals("TRUE");
}
public static float ToFloat(string s, float failret = 0.0f) public static float ToFloat(string s, float failret = 0.0f)
{ {
return float.TryParse(s, out float v) ? v : failret; return float.TryParse(s, out float v) ? v : failret;

View file

@ -21,5 +21,21 @@ namespace DutyContent
} }
}); });
} }
public static string CheckNewPacket(string name)
{
try
{
var ret = WebApi.Request($"https://raw.githubusercontent.com/kshman/DutyContent/main/Data/DcPacket-{name}.config");
return ret;
}
catch (Exception ex)
{
MesgLog.Ex(ex, 32);
return null;
}
}
} }
} }