Crop, rotate and trim album art

This commit is contained in:
Grigory Chudov
2018-07-03 19:59:19 -04:00
parent 53dadd858a
commit dd1358f8dc
5 changed files with 703 additions and 521 deletions

View File

@@ -352,9 +352,7 @@
<None Include="Resources\wv.ico" /> <None Include="Resources\wv.ico" />
<None Include="Resources\wave.ico" /> <None Include="Resources\wave.ico" />
<None Include="Resources\tta.ico" /> <None Include="Resources\tta.ico" />
<Content Include="user_profiles_enabled"> <Content Include="user_profiles_enabled" />
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5"> <BootstrapperPackage Include="Microsoft.Net.Client.3.5">

View File

@@ -557,6 +557,7 @@ namespace JDP
this.Invoke((MethodInvoker)delegate() this.Invoke((MethodInvoker)delegate()
{ {
frmChoice dlg = new frmChoice(); frmChoice dlg = new frmChoice();
dlg.config = _profile._config;
if (_choiceWidth != 0 && _choiceHeight != 0) if (_choiceWidth != 0 && _choiceHeight != 0)
dlg.Size = new Size(_choiceWidth, _choiceHeight); dlg.Size = new Size(_choiceWidth, _choiceHeight);
if (_choiceMaxed) if (_choiceMaxed)
@@ -941,6 +942,7 @@ namespace JDP
if (_batchPaths.Count <= 1 && _batchProcessed == 0 && action == CUEAction.Encode && checkBoxEditTags.Checked) if (_batchPaths.Count <= 1 && _batchProcessed == 0 && action == CUEAction.Encode && checkBoxEditTags.Checked)
{ {
frmChoice dlg = new frmChoice(); frmChoice dlg = new frmChoice();
dlg.config = _profile._config;
if (_choiceWidth != 0 && _choiceHeight != 0) if (_choiceWidth != 0 && _choiceHeight != 0)
dlg.Size = new Size(_choiceWidth, _choiceHeight); dlg.Size = new Size(_choiceWidth, _choiceHeight);
if (_choiceMaxed) if (_choiceMaxed)
@@ -971,6 +973,19 @@ namespace JDP
entry.Metadata.CopyMetadata(dlg.ChosenRelease.metadata); entry.Metadata.CopyMetadata(dlg.ChosenRelease.metadata);
} }
} }
if (dlgRes != DialogResult.Cancel)
{
if (cueSheet.AlbumArt.Count == 0 && cueSheet.Metadata.AlbumArt.Count > 0)
{
var ms = new MemoryStream();
var image = cueSheet.Metadata.AlbumArt.Find(x => x.primary) ?? cueSheet.Metadata.AlbumArt[0];
if (cueSheet.CTDB.FetchFile(image.uri, ms))
{
var blob = new TagLib.ByteVector(ms.ToArray());
cueSheet.AlbumArt.Add(new TagLib.Picture(new TagLib.ByteVector(blob)));
}
}
}
dlg.Close(); dlg.Close();
} }
else if (_profile._config.advanced.CacheMetadata) else if (_profile._config.advanced.CacheMetadata)
@@ -2238,6 +2253,7 @@ namespace JDP
} }
CueSheet.UseLocalDB(_localDB); CueSheet.UseLocalDB(_localDB);
frmChoice dlg = new frmChoice(); frmChoice dlg = new frmChoice();
dlg.config = _profile._config;
if (_choiceWidth != 0 && _choiceHeight != 0) if (_choiceWidth != 0 && _choiceHeight != 0)
dlg.Size = new Size(_choiceWidth, _choiceHeight); dlg.Size = new Size(_choiceWidth, _choiceHeight);
if (_choiceMaxed) if (_choiceMaxed)

View File

@@ -240,11 +240,13 @@ namespace JDP
resources.ApplyResources(this, "$this"); resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.tableLayoutPanel1); this.Controls.Add(this.tableLayoutPanel1);
this.KeyPreview = true;
this.Name = "frmChoice"; this.Name = "frmChoice";
this.ShowIcon = false; this.ShowIcon = false;
this.ShowInTaskbar = false; this.ShowInTaskbar = false;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmChoice_FormClosing); this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmChoice_FormClosing);
this.Load += new System.EventHandler(this.frmChoice_Load); this.Load += new System.EventHandler(this.frmChoice_Load);
this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.frmChoice_KeyPress);
this.Resize += new System.EventHandler(this.frmChoice_Resize); this.Resize += new System.EventHandler(this.frmChoice_Resize);
this.tableLayoutPanel1.ResumeLayout(false); this.tableLayoutPanel1.ResumeLayout(false);
this.tableLayoutPanel1.PerformLayout(); this.tableLayoutPanel1.PerformLayout();

View File

@@ -12,347 +12,493 @@ using CUETools.CTDB;
namespace JDP namespace JDP
{ {
public partial class frmChoice : Form public partial class frmChoice : Form
{ {
public frmChoice() public frmChoice()
{ {
InitializeComponent(); InitializeComponent();
} }
public CUESheet CUE; public CUESheet CUE;
public CUEConfig config;
private bool ctdb; private bool ctdb;
private CTDBMetadataSearch metadataSearch; private CTDBMetadataSearch metadataSearch;
private enum CropAlign
{
None, TopLeft, BottomRight
};
private RotateFlipType imageRotation = RotateFlipType.RotateNoneFlipNone;
private CropAlign cropAlign = CropAlign.None;
private int trimEdge = 0;
public void LookupAlbumInfo(bool cache, bool cue, bool ctdb, CTDBMetadataSearch metadataSearch) public void LookupAlbumInfo(bool cache, bool cue, bool ctdb, CTDBMetadataSearch metadataSearch)
{ {
this.ctdb = ctdb; this.ctdb = ctdb;
this.metadataSearch = metadataSearch; this.metadataSearch = metadataSearch;
var releases = CUE.LookupAlbumInfo(cache, cue, false, CTDBMetadataSearch.None); var releases = CUE.LookupAlbumInfo(cache, cue, false, CTDBMetadataSearch.None);
this.Choices = releases; this.Choices = releases;
if (ctdb || metadataSearch != CTDBMetadataSearch.None) if (ctdb || metadataSearch != CTDBMetadataSearch.None)
backgroundWorker1.RunWorkerAsync(null); backgroundWorker1.RunWorkerAsync(null);
} }
private void frmChoice_Load(object sender, EventArgs e) private void frmChoice_Load(object sender, EventArgs e)
{ {
buttonOk.Select(); buttonOk.Select();
} }
private void AddItem(object i) private void AddItem(object i)
{ {
if (i is CUEToolsSourceFile) if (i is CUEToolsSourceFile)
{ {
CUEToolsSourceFile sf = i as CUEToolsSourceFile; CUEToolsSourceFile sf = i as CUEToolsSourceFile;
ListViewItem item = new ListViewItem(sf.path, 0); ListViewItem item = new ListViewItem(sf.path, 0);
item.Tag = sf; item.Tag = sf;
listChoices.Items.Add(item); listChoices.Items.Add(item);
} }
else if (i is TagLib.IPicture) else if (i is TagLib.IPicture)
{ {
TagLib.IPicture pic = i as TagLib.IPicture; TagLib.IPicture pic = i as TagLib.IPicture;
ListViewItem item = new ListViewItem(pic.Description, -1); ListViewItem item = new ListViewItem(pic.Description, -1);
item.Tag = pic; item.Tag = pic;
listChoices.Items.Add(item); listChoices.Items.Add(item);
} }
else if (i is CUEMetadataEntry) else if (i is CUEMetadataEntry)
{ {
CUEMetadataEntry entry = i as CUEMetadataEntry; CUEMetadataEntry entry = i as CUEMetadataEntry;
ListViewItem item = new ListViewItem(entry.ToString(), entry.ImageKey); ListViewItem item = new ListViewItem(entry.ToString(), entry.ImageKey);
item.Tag = entry; item.Tag = entry;
listChoices.Items.Add(item); listChoices.Items.Add(item);
if (entry.ImageKey == "freedb") if (entry.ImageKey == "freedb")
{ {
// check if the entry contains non-iso characters, // check if the entry contains non-iso characters,
// and add a second one if it does // and add a second one if it does
CUEMetadata copy = new CUEMetadata(entry.metadata); CUEMetadata copy = new CUEMetadata(entry.metadata);
if (copy.FreedbToEncoding()) if (copy.FreedbToEncoding())
{ {
entry = new CUEMetadataEntry(copy, entry.TOC, entry.ImageKey); entry = new CUEMetadataEntry(copy, entry.TOC, entry.ImageKey);
item = new ListViewItem(entry.ToString(), entry.ImageKey); item = new ListViewItem(entry.ToString(), entry.ImageKey);
item.Tag = entry; item.Tag = entry;
listChoices.Items.Add(item); listChoices.Items.Add(item);
} }
} }
} }
else else
{ {
ListViewItem item = new ListViewItem(i.ToString(), -1); ListViewItem item = new ListViewItem(i.ToString(), -1);
item.Tag = i; item.Tag = i;
listChoices.Items.Add(item); listChoices.Items.Add(item);
} }
} }
public IEnumerable<object> Choices public IEnumerable<object> Choices
{ {
set set
{ {
foreach (object i in value) foreach (object i in value)
AddItem(i); AddItem(i);
if (CUE != null) if (CUE != null)
{ {
textBox1.Hide(); textBox1.Hide();
pictureBox1.Hide(); pictureBox1.Hide();
tableLayoutPanelMeta.Show(); tableLayoutPanelMeta.Show();
tableLayoutPanel1.SetRowSpan(listChoices, 2); tableLayoutPanel1.SetRowSpan(listChoices, 2);
tableLayoutPanel1.PerformLayout(); tableLayoutPanel1.PerformLayout();
} }
else else
{ {
textBox1.Show(); textBox1.Show();
pictureBox1.Hide(); pictureBox1.Hide();
tableLayoutPanelMeta.Hide(); tableLayoutPanelMeta.Hide();
tableLayoutPanel1.SetRowSpan(textBox1, 3); tableLayoutPanel1.SetRowSpan(textBox1, 3);
tableLayoutPanel1.PerformLayout(); tableLayoutPanel1.PerformLayout();
} }
if (listChoices.Items.Count > 0) if (listChoices.Items.Count > 0)
listChoices.Items[0].Selected = true; listChoices.Items[0].Selected = true;
} }
} }
public int ChosenIndex public int ChosenIndex
{ {
get get
{ {
return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Index : -1; return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Index : -1;
} }
} }
public object ChosenObject public object ChosenObject
{ {
get get
{ {
return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Tag : null; return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0].Tag : null;
} }
} }
public CUEMetadataEntry ChosenRelease public CUEMetadataEntry ChosenRelease
{ {
get get
{ {
object o = ChosenObject; object o = ChosenObject;
return o != null && o is CUEMetadataEntry ? o as CUEMetadataEntry : null; return o != null && o is CUEMetadataEntry ? o as CUEMetadataEntry : null;
} }
} }
private ListViewItem ChosenItem private ListViewItem ChosenItem
{ {
get get
{ {
return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0] : null; return listChoices.SelectedItems.Count > 0 ? listChoices.SelectedItems[0] : null;
} }
} }
private void frmChoice_FormClosing(object sender, FormClosingEventArgs e) private void frmChoice_FormClosing(object sender, FormClosingEventArgs e)
{ {
if (backgroundWorker1.IsBusy) if (backgroundWorker1.IsBusy)
{ {
e.Cancel = true; e.Cancel = true;
return; return;
} }
CUEMetadataEntry ri = ChosenRelease;
if (e.CloseReason != CloseReason.None || DialogResult != DialogResult.OK || ri == null || CUE == null)
return;
CUE.CopyMetadata(ri.metadata);
}
private void AutoResizeList(ListView list, int mainCol) TagLib.IPicture picture = ChosenObject as TagLib.IPicture;
{ if (e.CloseReason == CloseReason.None && DialogResult == DialogResult.OK
list.SuspendLayout(); && pictureBox1.Image != null && picture != null
int widthAvailable = list.ClientSize.Width - 2 * SystemInformation.BorderSize.Width - SystemInformation.VerticalScrollBarWidth; && (cropAlign != CropAlign.None || imageRotation != RotateFlipType.RotateNoneFlipNone || trimEdge != 0))
for (int i = 0; i < list.Columns.Count; i++) {
if (i != mainCol) using (MemoryStream encoded = new MemoryStream())
{ {
list.Columns[i].AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent); pictureBox1.Image.Save(encoded, System.Drawing.Imaging.ImageFormat.Jpeg);
widthAvailable -= list.Columns[i].Width + SystemInformation.BorderSize.Width; picture.Data = new TagLib.ByteVector(encoded.ToArray());
} picture.MimeType = "image/jpeg";
if (list.Columns[mainCol].Width != widthAvailable) }
list.Columns[mainCol].Width = widthAvailable; }
list.ResumeLayout(false);
}
private void listChoices_SelectedIndexChanged(object sender, EventArgs e) CUEMetadataEntry ri = ChosenRelease;
{ if (e.CloseReason != CloseReason.None || DialogResult != DialogResult.OK || ri == null || CUE == null)
object item = ChosenObject; return;
if (item != null && item is TagLib.IPicture) CUE.CopyMetadata(ri.metadata);
{ // TODO: copy album art
TagLib.IPicture picture = item as TagLib.IPicture;
using (MemoryStream imageStream = new MemoryStream(picture.Data.Data, 0, picture.Data.Count)) }
try { pictureBox1.Image = Image.FromStream(imageStream); }
catch { } private void AutoResizeList(ListView list, int mainCol)
textBox1.Hide(); {
pictureBox1.Show(); list.SuspendLayout();
tableLayoutPanelMeta.Hide(); int widthAvailable = list.ClientSize.Width - 2 * SystemInformation.BorderSize.Width - SystemInformation.VerticalScrollBarWidth;
tableLayoutPanel1.SetRowSpan(pictureBox1, 2); for (int i = 0; i < list.Columns.Count; i++)
} if (i != mainCol)
else if (item != null && item is CUEToolsSourceFile) {
{ list.Columns[i].AutoResize(ColumnHeaderAutoResizeStyle.ColumnContent);
textBox1.Text = (item as CUEToolsSourceFile).contents.Replace("\r\n", "\n").Replace("\r", "\n").Replace("\n", "\r\n"); widthAvailable -= list.Columns[i].Width + SystemInformation.BorderSize.Width;
} }
else if (item != null && item is CUEMetadataEntry) if (list.Columns[mainCol].Width != widthAvailable)
{ list.Columns[mainCol].Width = widthAvailable;
CUEMetadataEntry r = (item as CUEMetadataEntry); list.ResumeLayout(false);
dataGridViewTracks.SuspendLayout(); }
dataGridViewTracks.Rows.Clear();
foreach (CUETrackMetadata track in r.metadata.Tracks) private void listChoices_SelectedIndexChanged(object sender, EventArgs e)
{ {
int no = dataGridViewTracks.Rows.Count; object item = ChosenObject;
dataGridViewTracks.Rows.Add( if (item != null && item is TagLib.IPicture)
(no + 1).ToString(), {
track.Title, imageRotation = RotateFlipType.RotateNoneFlipNone;
r.TOC[no + r.TOC.FirstAudio].StartMSF, cropAlign = CropAlign.None;
r.TOC[no + r.TOC.FirstAudio].LengthMSF trimEdge = 0;
); ResetPictureBox();
} textBox1.Hide();
dataGridViewTracks.ResumeLayout(); pictureBox1.Show();
dataGridViewMetadata.Rows.Clear(); tableLayoutPanelMeta.Hide();
dataGridViewMetadata.Rows.Add("Artist", r.metadata.Artist); tableLayoutPanel1.SetRowSpan(pictureBox1, 2);
dataGridViewMetadata.Rows.Add("Album", r.metadata.Title); }
dataGridViewMetadata.Rows.Add("Date", r.metadata.Year); else if (item != null && item is CUEToolsSourceFile)
dataGridViewMetadata.Rows.Add("Genre", r.metadata.Genre); {
dataGridViewMetadata.Rows.Add("Disc Number", r.metadata.DiscNumber); textBox1.Text = (item as CUEToolsSourceFile).contents.Replace("\r\n", "\n").Replace("\r", "\n").Replace("\n", "\r\n");
dataGridViewMetadata.Rows.Add("Total Discs", r.metadata.TotalDiscs); }
dataGridViewMetadata.Rows.Add("Disc Name", r.metadata.DiscName); else if (item != null && item is CUEMetadataEntry)
dataGridViewMetadata.Rows.Add("Label", r.metadata.Label); {
CUEMetadataEntry r = (item as CUEMetadataEntry);
dataGridViewTracks.SuspendLayout();
dataGridViewTracks.Rows.Clear();
foreach (CUETrackMetadata track in r.metadata.Tracks)
{
int no = dataGridViewTracks.Rows.Count;
dataGridViewTracks.Rows.Add(
(no + 1).ToString(),
track.Title,
r.TOC[no + r.TOC.FirstAudio].StartMSF,
r.TOC[no + r.TOC.FirstAudio].LengthMSF
);
}
dataGridViewTracks.ResumeLayout();
dataGridViewMetadata.Rows.Clear();
dataGridViewMetadata.Rows.Add("Artist", r.metadata.Artist);
dataGridViewMetadata.Rows.Add("Album", r.metadata.Title);
dataGridViewMetadata.Rows.Add("Date", r.metadata.Year);
dataGridViewMetadata.Rows.Add("Genre", r.metadata.Genre);
dataGridViewMetadata.Rows.Add("Disc Number", r.metadata.DiscNumber);
dataGridViewMetadata.Rows.Add("Total Discs", r.metadata.TotalDiscs);
dataGridViewMetadata.Rows.Add("Disc Name", r.metadata.DiscName);
dataGridViewMetadata.Rows.Add("Label", r.metadata.Label);
dataGridViewMetadata.Rows.Add("Label#", r.metadata.LabelNo); dataGridViewMetadata.Rows.Add("Label#", r.metadata.LabelNo);
dataGridViewMetadata.Rows.Add("Country", r.metadata.Country); dataGridViewMetadata.Rows.Add("Country", r.metadata.Country);
dataGridViewMetadata.Rows.Add("Release Date", r.metadata.ReleaseDate); dataGridViewMetadata.Rows.Add("Release Date", r.metadata.ReleaseDate);
dataGridViewMetadata.Rows.Add("Barcode", r.metadata.Barcode); dataGridViewMetadata.Rows.Add("Barcode", r.metadata.Barcode);
dataGridViewMetadata.Rows.Add("Comment", r.metadata.Comment); dataGridViewMetadata.Rows.Add("Comment", r.metadata.Comment);
if (pictureBox1.ImageLocation == null)
{
if (pictureBox1.Image != null) pictureBox1.Image.Dispose();
pictureBox1.Image = null;
}
pictureBox1.ImageLocation = null;
if (r.metadata.AlbumArt.Count > 0)
{
pictureBox1.Show();
var image = r.metadata.AlbumArt.Find(x => x.primary) ?? r.metadata.AlbumArt[0];
pictureBox1.ImageLocation = image.uri150;
} else
{
pictureBox1.Hide();
}
} }
else else
{ {
dataGridViewMetadata.Rows.Clear(); dataGridViewMetadata.Rows.Clear();
dataGridViewTracks.Rows.Clear(); dataGridViewTracks.Rows.Clear();
textBox1.Text = ""; textBox1.Text = "";
} }
} }
private void pictureBox1_DoubleClick(object sender, EventArgs e) private void pictureBox1_DoubleClick(object sender, EventArgs e)
{ {
pictureBox1.SizeMode = pictureBox1.SizeMode == PictureBoxSizeMode.Zoom ? pictureBox1.SizeMode = pictureBox1.SizeMode == PictureBoxSizeMode.Zoom ?
PictureBoxSizeMode.CenterImage : PictureBoxSizeMode.Zoom; PictureBoxSizeMode.CenterImage : PictureBoxSizeMode.Zoom;
} }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{ {
e.Result = CUE.LookupAlbumInfo(false, false, this.ctdb, this.metadataSearch); e.Result = CUE.LookupAlbumInfo(false, false, this.ctdb, this.metadataSearch);
} }
private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{ {
foreach (object i in (e.Result as List<object>)) foreach (object i in (e.Result as List<object>))
AddItem(i); AddItem(i);
} }
private void frmChoice_Resize(object sender, EventArgs e) private void frmChoice_Resize(object sender, EventArgs e)
{ {
AutoResizeList(listChoices, 0); AutoResizeList(listChoices, 0);
} }
private void dataGridViewMetadata_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) private void dataGridViewMetadata_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{ {
var te = e.Control as DataGridViewTextBoxEditingControl; var te = e.Control as DataGridViewTextBoxEditingControl;
if (te != null) if (te != null)
{ {
// te.AutoCompleteMode = AutoCompleteMode.None; // te.AutoCompleteMode = AutoCompleteMode.None;
te.AutoCompleteMode = AutoCompleteMode.Suggest; te.AutoCompleteMode = AutoCompleteMode.Suggest;
te.AutoCompleteSource = AutoCompleteSource.CustomSource; te.AutoCompleteSource = AutoCompleteSource.CustomSource;
te.AutoCompleteCustomSource.Clear(); te.AutoCompleteCustomSource.Clear();
foreach (ListViewItem item in listChoices.Items) foreach (ListViewItem item in listChoices.Items)
{ {
var r = item.Tag as CUEMetadataEntry; var r = item.Tag as CUEMetadataEntry;
switch (dataGridViewMetadata.CurrentCell.RowIndex) switch (dataGridViewMetadata.CurrentCell.RowIndex)
{ {
case 0: case 0:
foreach (CUETrackMetadata track in r.metadata.Tracks) foreach (CUETrackMetadata track in r.metadata.Tracks)
te.AutoCompleteCustomSource.Add(track.Artist); te.AutoCompleteCustomSource.Add(track.Artist);
te.AutoCompleteCustomSource.Add(r.metadata.Artist); te.AutoCompleteCustomSource.Add(r.metadata.Artist);
break; break;
case 1: te.AutoCompleteCustomSource.Add(r.metadata.Title); break; case 1: te.AutoCompleteCustomSource.Add(r.metadata.Title); break;
case 2: te.AutoCompleteCustomSource.Add(r.metadata.Year); break; case 2: te.AutoCompleteCustomSource.Add(r.metadata.Year); break;
case 3: te.AutoCompleteCustomSource.Add(r.metadata.Genre); break; case 3: te.AutoCompleteCustomSource.Add(r.metadata.Genre); break;
case 4: te.AutoCompleteCustomSource.Add(r.metadata.DiscNumber); break; case 4: te.AutoCompleteCustomSource.Add(r.metadata.DiscNumber); break;
case 5: te.AutoCompleteCustomSource.Add(r.metadata.TotalDiscs); break; case 5: te.AutoCompleteCustomSource.Add(r.metadata.TotalDiscs); break;
case 6: te.AutoCompleteCustomSource.Add(r.metadata.DiscName); break; case 6: te.AutoCompleteCustomSource.Add(r.metadata.DiscName); break;
case 7: te.AutoCompleteCustomSource.Add(r.metadata.Label); break; case 7: te.AutoCompleteCustomSource.Add(r.metadata.Label); break;
case 8: te.AutoCompleteCustomSource.Add(r.metadata.LabelNo); break; case 8: te.AutoCompleteCustomSource.Add(r.metadata.LabelNo); break;
case 9: te.AutoCompleteCustomSource.Add(r.metadata.Country); break; case 9: te.AutoCompleteCustomSource.Add(r.metadata.Country); break;
case 10: te.AutoCompleteCustomSource.Add(r.metadata.ReleaseDate); break; case 10: te.AutoCompleteCustomSource.Add(r.metadata.ReleaseDate); break;
case 11: te.AutoCompleteCustomSource.Add(r.metadata.Barcode); break; case 11: te.AutoCompleteCustomSource.Add(r.metadata.Barcode); break;
case 12: te.AutoCompleteCustomSource.Add(r.metadata.Comment); break; case 12: te.AutoCompleteCustomSource.Add(r.metadata.Comment); break;
} }
} }
} }
} }
private void dataGridViewMetadata_CellEndEdit(object sender, DataGridViewCellEventArgs e) private void dataGridViewMetadata_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{ {
ListViewItem item = ChosenItem; ListViewItem item = ChosenItem;
CUEMetadataEntry r = ChosenRelease; CUEMetadataEntry r = ChosenRelease;
var label = dataGridViewMetadata.Rows[e.RowIndex].Cells[1].Value as string; var label = dataGridViewMetadata.Rows[e.RowIndex].Cells[1].Value as string;
if (label != null && item != null && r != null) if (label != null && item != null && r != null)
{ {
switch (e.RowIndex) switch (e.RowIndex)
{ {
case 0: case 0:
foreach (CUETrackMetadata track in r.metadata.Tracks) foreach (CUETrackMetadata track in r.metadata.Tracks)
if (track.Artist == r.metadata.Artist) if (track.Artist == r.metadata.Artist)
track.Artist = label; track.Artist = label;
r.metadata.Artist = label; r.metadata.Artist = label;
break; break;
case 1: r.metadata.Title = label; break; case 1: r.metadata.Title = label; break;
case 2: r.metadata.Year = label; break; case 2: r.metadata.Year = label; break;
case 3: r.metadata.Genre = label; break; case 3: r.metadata.Genre = label; break;
case 4: r.metadata.DiscNumber = label; break; case 4: r.metadata.DiscNumber = label; break;
case 5: r.metadata.TotalDiscs = label; break; case 5: r.metadata.TotalDiscs = label; break;
case 6: r.metadata.DiscName = label; break; case 6: r.metadata.DiscName = label; break;
case 7: r.metadata.Label = label; break; case 7: r.metadata.Label = label; break;
case 8: r.metadata.LabelNo = label; break; case 8: r.metadata.LabelNo = label; break;
case 9: r.metadata.Country = label; break; case 9: r.metadata.Country = label; break;
case 10: r.metadata.ReleaseDate = label; break; case 10: r.metadata.ReleaseDate = label; break;
case 11: r.metadata.Barcode = label; break; case 11: r.metadata.Barcode = label; break;
case 12: r.metadata.Comment = label; break; case 12: r.metadata.Comment = label; break;
} }
item.Text = r.ToString(); item.Text = r.ToString();
} }
} }
private void dataGridViewMetadata_KeyDown(object sender, KeyEventArgs e) private void dataGridViewMetadata_KeyDown(object sender, KeyEventArgs e)
{ {
CUEMetadataEntry r = ChosenRelease; CUEMetadataEntry r = ChosenRelease;
if (e.KeyCode == Keys.Delete && r != null) if (e.KeyCode == Keys.Delete && r != null)
{ {
var ee = new DataGridViewCellEventArgs(1, dataGridViewMetadata.CurrentCellAddress.Y); var ee = new DataGridViewCellEventArgs(1, dataGridViewMetadata.CurrentCellAddress.Y);
dataGridViewMetadata.Rows[ee.RowIndex].Cells[1].Value = ""; dataGridViewMetadata.Rows[ee.RowIndex].Cells[1].Value = "";
dataGridViewMetadata_CellEndEdit(sender, ee); dataGridViewMetadata_CellEndEdit(sender, ee);
} }
} }
private void dataGridViewTracks_CellEndEdit(object sender, DataGridViewCellEventArgs e) private void dataGridViewTracks_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{ {
CUEMetadataEntry ri = ChosenRelease; CUEMetadataEntry ri = ChosenRelease;
var label = dataGridViewTracks.Rows[e.RowIndex].Cells[e.ColumnIndex].Value as string; var label = dataGridViewTracks.Rows[e.RowIndex].Cells[e.ColumnIndex].Value as string;
if (ri != null && label != null) if (ri != null && label != null)
ri.metadata.Tracks[e.RowIndex].Title = label; ri.metadata.Tracks[e.RowIndex].Title = label;
} }
/* private void frmChoice_KeyPress(object sender, KeyPressEventArgs e)
private void listTracks_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) {
{ TagLib.IPicture picture = ChosenObject as TagLib.IPicture;
if (e.KeyCode == Keys.Enter) if (e.KeyChar == 'r' && picture != null)
{ {
if (listTracks.FocusedItem.Index + 1 < listTracks.Items.Count) // && e.editing switch (imageRotation)
{ {
listTracks.FocusedItem.Selected = false; case RotateFlipType.RotateNoneFlipNone:
listTracks.FocusedItem = listTracks.Items[listTracks.FocusedItem.Index + 1]; imageRotation = RotateFlipType.Rotate90FlipNone;
listTracks.FocusedItem.Selected = true; break;
listTracks.FocusedItem.BeginEdit(); case RotateFlipType.Rotate90FlipNone:
} imageRotation = RotateFlipType.Rotate180FlipNone;
} break;
} case RotateFlipType.Rotate180FlipNone:
* */ imageRotation = RotateFlipType.Rotate270FlipNone;
} break;
case RotateFlipType.Rotate270FlipNone:
imageRotation = RotateFlipType.RotateNoneFlipNone;
break;
}
ResetPictureBox();
return;
}
if (e.KeyChar == 'c' && picture != null)
{
switch (cropAlign)
{
case CropAlign.None:
cropAlign = CropAlign.TopLeft;
break;
case CropAlign.TopLeft:
cropAlign = CropAlign.BottomRight;
break;
case CropAlign.BottomRight:
cropAlign = CropAlign.None;
break;
}
ResetPictureBox();
return;
}
if (e.KeyChar == 't' && picture != null)
{
if (trimEdge == 0) trimEdge = 1;
else trimEdge <<= 1;
if (trimEdge > 1024) trimEdge = 0;
ResetPictureBox();
return;
}
}
private void ResetPictureBox()
{
TagLib.IPicture picture = ChosenObject as TagLib.IPicture;
if (pictureBox1.Image != null) pictureBox1.Image.Dispose();
pictureBox1.Image = null;
pictureBox1.ImageLocation = null;
using (MemoryStream imageStream = new MemoryStream(picture.Data.Data, 0, picture.Data.Count))
try
{
var image = Image.FromStream(imageStream);
if (imageRotation != RotateFlipType.RotateNoneFlipNone)
image.RotateFlip(imageRotation);
if (cropAlign == CropAlign.None && trimEdge == 0)
{
pictureBox1.Image = image;
return;
}
var width = image.Width;
var height = image.Height;
var sz = Math.Min(width, height);
Rectangle dstRect =
cropAlign == CropAlign.None ?
Rectangle.FromLTRB(0, 0, width - 2 * trimEdge, height - 2 * trimEdge) :
Rectangle.FromLTRB(0, 0, sz - 2 * trimEdge, sz - 2 * trimEdge);
Rectangle srcRect =
cropAlign == CropAlign.None ?
Rectangle.FromLTRB(trimEdge, trimEdge, width - trimEdge, height - trimEdge) :
cropAlign == CropAlign.TopLeft ?
Rectangle.FromLTRB(trimEdge, trimEdge, sz - trimEdge, sz - trimEdge) :
//cropAlign == CropAlign.BottomRight ?
Rectangle.FromLTRB(width - sz + trimEdge, height - sz + trimEdge, width - trimEdge, height - trimEdge);
var mode = System.Drawing.Drawing2D.InterpolationMode.Default;
if (dstRect.Width > config.maxAlbumArtSize || dstRect.Height > config.maxAlbumArtSize)
{
dstRect =
cropAlign != CropAlign.None ?
Rectangle.FromLTRB(0, 0, config.maxAlbumArtSize, config.maxAlbumArtSize) :
width > height ? Rectangle.FromLTRB(0, 0, config.maxAlbumArtSize, (height - 2 * trimEdge) * config.maxAlbumArtSize / (width - 2 * trimEdge))
: Rectangle.FromLTRB(0, 0, (width - 2 * trimEdge) * config.maxAlbumArtSize / (height - 2 * trimEdge), config.maxAlbumArtSize);
mode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
}
Bitmap b = new Bitmap(dstRect.Width, dstRect.Height);
pictureBox1.Image = b;
using (Graphics g = Graphics.FromImage((Image)b))
{
g.InterpolationMode = mode;
g.DrawImage(image, dstRect, srcRect, GraphicsUnit.Pixel);
}
image.Dispose();
}
catch { }
}
/*
private void listTracks_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
if (listTracks.FocusedItem.Index + 1 < listTracks.Items.Count) // && e.editing
{
listTracks.FocusedItem.Selected = false;
listTracks.FocusedItem = listTracks.Items[listTracks.FocusedItem.Index + 1];
listTracks.FocusedItem.Selected = true;
listTracks.FocusedItem.BeginEdit();
}
}
}
* */
}
} }

View File

@@ -112,23 +112,26 @@
<value>2.0</value> <value>2.0</value>
</resheader> </resheader>
<resheader name="reader"> <resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="buttonOk.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="buttonOk.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="buttonOk.Location" type="System.Drawing.Point, System.Drawing"> <data name="buttonOk.Location" type="System.Drawing.Point, System.Drawing">
<value>631, 3</value> <value>947, 5</value>
</data>
<data name="buttonOk.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="buttonOk.Size" type="System.Drawing.Size, System.Drawing"> <data name="buttonOk.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 29</value> <value>232, 43</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="buttonOk.TabIndex" type="System.Int32, mscorlib"> <data name="buttonOk.TabIndex" type="System.Int32, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
@@ -139,7 +142,7 @@
<value>buttonOk</value> <value>buttonOk</value>
</data> </data>
<data name="&gt;&gt;buttonOk.Type" xml:space="preserve"> <data name="&gt;&gt;buttonOk.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;buttonOk.Parent" xml:space="preserve"> <data name="&gt;&gt;buttonOk.Parent" xml:space="preserve">
<value>tableLayoutPanel2</value> <value>tableLayoutPanel2</value>
@@ -154,185 +157,187 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="listChoices.Location" type="System.Drawing.Point, System.Drawing"> <data name="listChoices.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 3</value> <value>4, 5</value>
</data>
<data name="listChoices.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="listChoices.Size" type="System.Drawing.Size, System.Drawing"> <data name="listChoices.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 144</value> <value>1183, 221</value>
</data> </data>
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64"> <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABY ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAc
KAAAAk1TRnQBSQFMAgEBCQEAAUwBAAFMAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA KAAAAk1TRnQBSQFMAgEBCQEAAWQBAAFkAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABMAMAAQEBAAEgBgABMBIAAwsBDwMUARsDHAEpAyEBMgEwAU0BLwGmASMBZgEgAdEBIwFmASAB0QEz AwABMAMAAQEBAAEgBgABMBIAAwsBDwMUARsDHQEpAyIBMgFPAVIBTwGmAUoBXwFJAdEBSgFfAUkB0QM8
AUIBMgFmBAABMwFCATIBZgEjAWYBIAHRASMBZgEgAdEBIwFmASAB0QEjAWYBIAHRATABUAEvAakDIQEz AWYEAAM8AWYBSgFfAUkB0QFKAV8BSQHRAUoBXwFJAdEBSgFfAUkB0QFPAVIBTwGpAyMBM8AAAwYBCAMK
wAADBgEIAwoBDgMPARUDEgEZASQBZAEhAcwBIQHVARAB/wEhAacBFgHvATIBUQEyAZkEAAEyAVEBMgGZ AQ4DEAEVAxIBGQFMAV4BSwHMAR4B1QENAf8BMwGRAS0B7wFNAU4BTQGZBAABTQFOAU0BmQEzAZEBLQHv
ASEBpwEWAe8BIQHVARAB/wEhAdUBEAH/ASEB1QEQAf8BJAFvASAB0QMTARrQAAEnAW4BIQHMASQBzQET AR4B1QENAf8BHgHVAQ0B/wEeAdUBDQH/AUoBYwFJAdEDEwEa0AABTgFfAUsBzAEhAc0BEAH/AUoBXgFJ
Af8BIQFhASAB0QEhASUBIQEzBAABIQElASEBMwEhAWEBIAHRASEBzAEQAf8BIQHMARAB/wEhAcwBEAH/ AdEDIwEzBAADIwEzAUoBXgFJAdEBHgHMAQ0B/wEeAcwBDQH/AR4BzAENAf8BTQFmAUkB0cQAASsBLAEr
AScBdwEgAdHEAAEpATEBKQFDATABbgEqAbgBMAFuASoBuAEpATEBKQFDASgBdQEhAcwBKAHEARcB/wEi AUMBUQFbAVABuAFRAVsBUAG4ASsBLAErAUMBTgFiAUsBzAElAcQBFAH/AUoBXQFJAdEDPAFmBAADPAFm
AWABIAHRATIBQAEyAWYEAAEyAUABMgFmASEBYAEgAdEBIQHBARAB/wEhAcEBEAH/ASEBwQEQAf8BKAF8 AUoBXQFJAdEBHgHBAQ0B/wEeAcEBDQH/AR4BwQENAf8BTQFmAUkB0cQAAVIBWQFQAbIBSwHGAToB/wFJ
ASAB0cQAATIBbgEsAbIBTgHGAT0B/wFAAa0BMgHzASkBdwEhAcwBJgGDAR0B2QEiAbcBEQH/AScBlgEc AZoBOwHzAU4BYgFLAcwBRwFrAUQB2QEfAbcBDgH/ATgBhQEvAe8BRwFdAUcB0wFLAVkBSwHMAUcBXQFH
Ae8BIgFiASAB0wEhAVcBIQHMASEBYgEgAdMBIwGUARkB7wEjAbcBEgH/ASIBtgERAf8BIQG2ARAB/wEo AdMBNAGDAS4B7wEgAbcBDwH/AR8BtgEOAf8BHgG2AQ0B/wFNAWYBSQHRxAABTgFkAUsBzAFKAcUBOQH/
AX0BIAHRxAABKQF5ASEBzAFNAcUBPAH/AUMBuwEyAf8BTAHEATsB/wFCAb0BMQH/ASEBqwEQAf8BIwGs AUABuwEvAf8BSQHEATgB/wE/Ab0BLgH/AR4BqwENAf8BIAGsAQ8B/wEkAa8BEwH/ASQBrwETAf8BIwGv
ARIB/wEnAa8BFgH/AScBrwEWAf8BJgGvARUB/wEmAZsBHAHvASIBeQEgAdEBIgF5ASAB0QEjAZoBGQHv ARIB/wE4AYcBLwHvAUoBZgFJAdEBSgFmAUkB0QE0AYYBLgHvAU0BZgFJAdHEAAFSAVoBUAGyAVIBzQFB
ASkBfwEgAdHEAAEzAXIBLAGyAVUBzQFEAf8BRQGzATYB8wEqAX0BIQHMATEBjAEmAdkBMwGwASIB/wEi Af8BTAGfAT0B8wFOAWQBSwHMAU0BbwFHAdkBMAGwAR8B/wEfAaIBDgH/AR4BoQENAf8BHgGhAQ0B/wEl
AaIBEQH/ASEBoQEQAf8BIQGhARAB/wEoAagBFwH/ASMBewEgAdMBMgFHATIBZgEhAScBIQEzATIBYAEy AagBFAH/AUoBZwFHAdMDPAFmAyMBMwFNAU4BTQGZAzwBZsQAASsBLAErAUMBUQFcAVABuAFRAVwBUAG4
AZkBMwFHATIBZsQAASoBMwEpAUMBMgF2ASoBuAEyAXYBKgG4ASoBMwEpAUMBKwF/ASEBzAFPAccBPgH/ ASsBLAErAUMBTgFmAUsBzAFMAccBOwH/ATsBtwEqAf8BMQGtASAB/wEnAaQBFgH/AS4BqgEdAf8BSwFi
AT4BtwEtAf8BNAGtASMB/wEqAaQBGQH/ATEBqgEgAf8BIQFzASEBzOQAASsBgQEhAcwBUgHKAUEB/wFE AUsBzOQAAU4BZgFLAcwBTwHKAT4B/wFBAbwBMAH/AUEBvAEwAf8BQQG8ATAB/wFJAcQBOAH/AUsBZwFL
AbwBMwH/AUQBvAEzAf8BRAG8ATMB/wFMAcQBOwH/AScBfgElAdMBMgFHATIBZgEhAScBIQEzATIBYAEy AdMDPAFmAyMBMwFNAU4BTQGZAzwBZtQAAU4BZgFLAcwBVAHPAUMB/wFGAcEBNQH/AUYBwQE1Af8BRgHB
AZkBMwFIATIBZtQAASwBgwEhAcwBVwHPAUYB/wFJAcEBOAH/AUkBwQE4Af8BSQHBATgB/wFLAcMBOgH/ ATUB/wFIAcMBNwH/AUsBlQFCAe8BSgFmAUoB0QFKAWYBSgHRAUsBlAFCAe8BTgFmAUsBzNQAAU4BZgFL
AUUBrwE5Ae8BJgF8ASQB0QEmAXwBJAHRAUQBrgE5Ae8BLAGDASEBzNQAASwBhgEhAcwBZAHcAVMB/wFc AcwBYQHcAVAB/wFZAdQBSAH/AVgB0wFHAf8BVwHSAUYB/wFRAcwBQAH/AUsBxgE6Af8BUwHOAUIB/wFc
AdQBSwH/AVsB0wFKAf8BWgHSAUkB/wFUAcwBQwH/AU4BxgE9Af8BVgHOAUUB/wFfAdcBTgH/AV0B1QFM AdcBSwH/AVoB1QFJAf8BTgFmAUsBzNQAAU0BUAFNAZkBTwFpAUsBzAFPAWkBSwHMAU8BaQFLAcwBTwFp
Af8BLAGGASEBzNQAATgBbAEyAZkBLQGIASEBzAEtAYgBIQHMAS0BiAEhAcwBLQGIASEBzAE3AZsBKwHZ AUsBzAFNAXQBSQHZAVcB0gFGAf8BTQF0AUcB2QFPAWkBSwHMAU8BaQFLAcwBTQFQAU0BmeQAASsBLAEr
AVoB0gFJAf8BMwGWASYB2QEtAYgBIQHMAS0BiAEhAcwBOAFsATIBmeQAASoBNAEpAUMBLQGJASEBzAFl AUMBTwFpAUsBzAFiAd0BUQH/AU8BaQFLAcwBKwEsASsBQ+wAAVIBXgFQAbgBXAGvAUwB8wFdAdgBTAH/
Ad0BVAH/AS0BiQEhAcwBKgE0ASkBQ+wAATQBgQEqAbgBWQHLAUkB8wFgAdgBTwH/AVgBywFJAfMBNAGB AVsBrwFMAfMBUgFeAVABuOwAAVIBXgFQAbgBbgHpAV0B/wFpAeQBWAH/AW0B6AFcAf8BUgFeAVABuOwA
ASoBuOwAATUBggEqAbgBcQHpAWAB/wFsAeQBWwH/AXAB6AFfAf8BNQGCASoBuOwAASoBNAEpAUMBNgF/ ASsBLAErAUMBUgFcAVABsgFPAWkBSwHMAVIBXAFQAbIBKwEsASsBQ9gAAx0BKgNDAXcDHQEqOAADJwE7
ASwBsgEvAY4BIQHMATYBfwEsAbIBKgE0ASkBQ9gAAx0BKgNDAXcDHQEqOAADJwE7A04BlAJeAVwBzgFw A04BlAJeAVwBzgFqAWMBWQHrAWoBYwFZAesCXgFcAc4DTgGUAgAB4gH/AgAB4gH/JAABYAFoAXAB/wFg
AWcBWQHrAXABZwFZAesCXgFcAc4DTgGUAgAB4gH/AgAB4gH/JAABYwFrAXMB/wFjAWsBcwH/AWMBawFz AWgBcAH/AWABaAFwAf8BYAFoAXAB/xwAA8cB/wNsAf8DbQH/A8cB/wPGAf8DxgH/A8cB/wPHAf8DxgH/
Af8BYwFrAXMB/xwAA8cB/wNvAf8DcAH/A8cB/wPGAf8DxgH/A8cB/wPHAf8DxgH/A8cB/wPHAf8DxwH/ A8cB/wPHAf8DxwH/A8cB/wPHAf8MAAMdASkDQgF0Av8B8AH/A0IBdAMdASksAAMKAQ0DTgGWAY8BcwFN
A8cB/wPHAf8MAAMdASkDQgF0Av8B8AH/A0IBdAMdASksAAMKAQ0DTgGWAZgBdgFNAfoB4QHNAbkB/wHx AfoB4QHNAbkB/wHxAeABzgH/AfkB5wHWAf8B+AHmAdQB/wHwAd0BzAH/AeEBzQG5Af8CAAHiAf8CAAHi
AeABzgH/AfkB5wHWAf8B+AHmAdQB/wHwAd0BzAH/AeEBzQG5Af8CAAHiAf8CAAHiAf8DCgENGAABYwFr Af8DCgENGAABYAFoAXAB/wM3Af8DNwH/AR4CLgH/AwUB/wMFAf8DAAH/AwUB/xAAA20B/wMAAf8DFAH/
AXMB/wM6Af8DOgH/ASECMQH/AwgB/wMIAf8DAAH/AwgB/xAAA3AB/wMBAf8DFwH/AzIB/wMBAf8DDAH/ Ay8B/wMAAf8DCQH/A8cB/wPGAf8DxgH/A8cB/wPHAf8DxwH/A8YB/wPHAf8DxwH/A8cB/wQAAxwBKANA
A8cB/wPGAf8DxgH/A8cB/wPHAf8DxwH/A8YB/wPHAf8DxwH/A8cB/wQAAxwBKANAAXEC/wHwAf8C6QHa AXEC/wHwAf8C6QHaA/8B8QH/A0ABcQMcASgkAAMKAQ0DVwG4AdkBvwGlAf8B/gHyAeQC/wHnAc8B/wH8
A/8B8QH/A0ABcQMcASgkAAMKAQ0DVwG4AdkBvwGlAf8B/gHyAeQC/wHnAc8B/wH8AdsBuwH/AfkB0wGy AdsBuwH/AfkB0wGyAf8B9gHQAawB/wH0AdEBrgH/AfYB2AG7Af8CAAHiAf8CAAHiAf8DVwG4AwoBDRAA
Af8B9gHQAawB/wH0AdEBrgH/AfYB2AG7Af8CAAHiAf8CAAHiAf8DVwG4AwoBDRAAAzoB/wG9AsYB/wFj AzcB/wG9AsYB/wFgAWgBcAH/AzcB/wEWAh4B/wMFAf8DBQH/AwAB/wMAAf8DBQH/DwAB/wPDDf8DLwH/
AWsBcwH/AzoB/wEZAiEB/wMIAf8DCAH/AwAB/wMAAf8DCAH/DAADAgH/A8MN/wMyAf8DDAH/A8cB/wPG AwkB/wPHAf8DxgH/A8cB/wPGAf8DxgH/A8cB/wPHAf8DxwH/A8cB/wMcAScDQAFvAv8B8AH/AesB3QGx
Af8DxwH/A8YB/wPGAf8DxwH/A8cB/wPHAf8DxwH/AxwBJwNAAW8C/wHwAf8B6wHdAbEB/wH3AcEBKgH/ Af8B9wHBAScB/wHtAd8BswP/AfIB/wNAAW8DHAEnIAADTgGWAdkBvwGlAv8B+AHrAv8B6wHRAv8B4QHD
Ae0B3wGzA/8B8gH/A0ABbwMcAScgAANOAZYB2QG/AaUC/wH4AesC/wHrAdEC/wHhAcMB/wH+AdsBugH/ Af8B/gHbAboB/wH7AdYBsgH/AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/
AfsB1gGyAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8IAAEZ AgAB4gH/CAABFgIeAf8DNwH/AWABaAFwAf8BvQLGAf8BYAFoAXAB/wEWAh4B/wMFAf8DBQH/AwAB/wMA
AiEB/wM6Af8BYwFrAXMB/wG9AsYB/wFjAWsBcwH/ARkCIQH/AwgB/wMIAf8DAAH/AwAB/wMAAf8DCAH/ Af8DAAH/AwUB/wsAAf8DwxH/AwAB/wPHAf8DxgH/A8cB/wPHAf8DxwH/A8cB/wPHAf8DxwH/A8cB/wNA
CAADAQH/A8MR/wMCAf8DxwH/A8YB/wPHAf8DxwH/A8cB/wPHAf8DxwH/A8cB/wPHAf8DQAFuAv8B8AH/ AW4C/wHwAf8C6QHaAf8B5wGrAREB/wHnAasBEQH/AecBqwERAf8B6gHbAbAD/wH0Af8DQAFuAxwBJxgA
AukB2gH/AecBqwEUAf8B5wGrARQB/wHnAasBFAH/AeoB2wGwA/8B9AH/A0ABbgMcAScYAAMmATgBrAGH AyYBOAGpAYcBSAH9Av4B+gL/AfkB6QL/Ae8B2AL/AecBzQL/AeEBwgH/AfwB3AG7Af8CAAHiAf8CAAHi
AUsB/QL+AfoC/wH5AekC/wHvAdgC/wHnAc0C/wHhAcIB/wH8AdwBuwH/AgAB4gH/AgAB4gH/AgAB4gH/ Af8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8CAAHiAf8EAAEWAh4B/wEeAi4B/wM3Af8DNwH/
AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/AgAB4gH/BAABGQIhAf8BIQIxAf8DOgH/AzoB/wFjAWsBcwH/ AWABaAFwAf8BYAFoAXAB/wEeAi4B/wEWAh4B/wMFAf8DAAH/AwAB/wMAAf8DAAH/ARYCHgH/BAADbQH/
AWMBawFzAf8BIQIxAf8BGQIhAf8DCAH/AwAB/wMAAf8DAAH/AwAB/wEZAiEB/wQAA3AB/wMMAf8DUwH/ AwkB/wNQAf8DrAH/A60B/wPDAf8DAAH/AxUB/wMAAf8DAAH/AwAB/wMAAf8DFQH/A8cB/wPHAf8DxwH/
A6wB/wOtAf8DwwH/AwIB/wMYAf8DAQH/AwIB/wMCAf8DAQH/AxgB/wPHAf8DxwH/A8cB/wMcAScDPwFt AxwBJwM/AW0C/wHxAf8B5wHXAasB/wHXAZYBAAH/AdcBlgEAAf8B1wGWAQAB/wHoAdgBrgP/AfUB/wM/
Av8B8QH/AecB1wGrAf8B1wGWAQAB/wHXAZYBAAH/AdcBlgEAAf8B6AHYAa4D/wH1Af8DPwFtAxwBJxQA AW0DHAEnFAADTgGWAeIBzgG6Af8B9wHeAcYC/wHpAdEC/wH2AeIC/wHyAd0C/wHwAd0B/wH4AeoB2QH/
A04BlgHiAc4BugH/AfcB3gHGAv8B6QHRAv8B9gHiAv8B8gHdAv8B8AHdAf8B+AHqAdkB/wH4AeYB1AH/ AfgB5gHUAf8B+wHfAccB/wH1Ac8BqwH/AgAB4gH/AgAB4gH/AfgB3QHDAf8B4gHOAboB/wNOAZYEAAMF
AfsB3wHHAf8B9QHPAasB/wIAAeIB/wIAAeIB/wH4Ad0BwwH/AeIBzgG6Af8DTgGWBAADCAH/ARkCIQH/ Af8BFgIeAf8BFgIeAf8BHgIuAf8BHgIuAf8DBQH/AQ0BWAFgAf8BDQFYAWAB/wMAAf8DAAH/AwAB/wMA
ARkCIQH/ASECMQH/ASECMQH/AwgB/wEQAVsBYwH/ARABWwFjAf8DAAH/AwAB/wMAAf8DAAH/AwAB/wMA Af8DAAH/AwAB/wQAA8cB/wNtAf8DCQH/AwAB/wMABf8DAAH/AwkB/wOTCf8DiQH/AxUB/wMVAf8DxgH/
Af8EAAPHAf8DcAH/AwwB/wMBAf8DAgX/AwIB/wMMAf8Dkwn/A4kB/wMYAf8DGAH/A8YB/wPHAf8EAAMb A8cB/wQAAxsBJgM/AWwC/wHyAf8B5QHUAakB/wHNAYkBAAH/Ac0BiQEAAf8BzQGJAQAB/wHoAdcBrwP/
ASYDPwFsAv8B8gH/AeUB1AGpAf8BzQGJAQAB/wHNAYkBAAH/Ac0BiQEAAf8B6AHXAa8D/wH3Af8DPwFs AfcB/wM/AWwDGwEmEAACXgFbAdAB7wHgAdAB/wHnAb4BlgH/AecBvAGUAf8B8AHMAakB/wH+AewB2gH/
AxsBJhAAAl4BWwHQAe8B4AHQAf8B5wG+AZYB/wHnAbwBlAH/AfABzAGpAf8B/gHsAdoB/wHdAcQBrAH/ Ad0BxAGsAf8CZAFcAecCZAFcAecB3QHDAaoB/wH4Ad0BxAH/AgAB4gH/AgAB4gH/AfUB1gG4Af8B8QHf
AWkBZAFcAecBaQFkAVwB5wHdAcMBqgH/AfgB3QHEAf8CAAHiAf8CAAHiAf8B9QHWAbgB/wHxAd8BzwH/ Ac8B/wJeAVsB0AFgAWgBcAH/AwAB/wMFAf8DBQH/AwUB/wMFAf8BAAHGAdYB/wEAAcYB1gH/AQABxgHW
Al4BWwHQAWMBawFzAf8DAAH/AwgB/wMIAf8DCAH/AwgB/wEAAcYB1gH/AQABxgHWAf8BAAHGAdYB/wEA Af8BAAHGAdYB/wMAAf8DAAH/AwAB/wMAAf8DAAH/AWABaAFwAf8DxwH/A8cB/wPHAf8DxgH/AwAF/wMA
AcYB1gH/AwAB/wMAAf8DAAH/AwAB/wMAAf8BYwFrAXMB/wPHAf8DxwH/A8cB/wPGAf8DAQX/AwIB/wMY Af8DFRH/A8IB/wMAAf8DxwH/A8YB/wgAAxsBJgM+AWsC/wH0Af8B5wHWAawB/wHRAY4BAAH/AdEBjgEA
Ef8DwgH/AwIB/wPHAf8DxgH/CAADGwEmAz4BawL/AfQB/wHnAdYBrAH/AdEBjgEAAf8B0QGOAQAB/wHR Af8B0QGOAQAB/wHsAdsBswP/AfgB/wM+AWsDGwEmDAABagFkAVkB7AH1AeQB1QH/AekBvgGXAf8B6AG8
AY4BAAH/AewB2wGzA/8B+AH/Az4BawMbASYMAAFwAWQBWQHsAfUB5AHVAf8B6QG+AZcB/wHoAbwBlgH/ AZYB/wHnAbwBlAH/AfMB3gHKAf8BZgFhAVkB5gMUARsDFAEbAWYBYQFZAeYB9gHjAdMB/wIAAeIB/wIA
AecBvAGUAf8B8wHeAcoB/wFpAWQBWQHmAxQBGwMUARsBaQFkAVkB5gH2AeMB0wH/AgAB4gH/AgAB4gH/ AeIB/wHtAckBpAH/AfYB5AHSAf8BagFkAVkB7AFgAWgBcAH/AwAB/wMAAf8DAAH/AwAB/wENAVgBYAH/
Ae0ByQGkAf8B9gHkAdIB/wFwAWQBWQHsAWMBawFzAf8DAAH/AwAB/wMAAf8DAAH/ARABWwFjAf8BAAHG AQABxgHWAf8BAAHGAdYB/wEAAcYB1gH/AQABxgHWAf8BDQFYAWAB/wMAAf8DAAH/AwAB/wMAAf8BYAFo
AdYB/wEAAcYB1gH/AQABxgHWAf8BAAHGAdYB/wEQAVsBYwH/AwAB/wMAAf8DAAH/AwAB/wFjAWsBcwH/ AXAB/wNUAf8DVAH/A1UB/wNUAf8DAAX/AwAB/wMAAf8DLwH/A8MN/wMAAf8DVAH/A1QB/wwAAxsBJgM+
A1cB/wNXAf8DWAH/A1cB/wMBBf8DAgH/AwIB/wMyAf8Dww3/AwIB/wNXAf8DVwH/DAADGwEmAz4BawL/ AWsC/wH1Af8B6wHcAbMB/wHfAaEBBwH/Ad8BoQEHAf8B3wGhAQcB/wHxAeIBuwP/AfoB/wM+AWsDGwEm
AfUB/wHrAdwBswH/Ad8BoQEKAf8B3wGhAQoB/wHfAaEBCgH/AfEB4gG7A/8B+gH/Az4BawMbASYIAAFw CAABagFkAVkB7AH1AeQB1QH/AekBvwGZAf8B6QHAAZkB/wHpAcEBmgH/AfMB3QHJAf8BZgFhAVkB5gMU
AWQBWQHsAfUB5AHVAf8B6QG/AZkB/wHpAcABmQH/AekBwQGaAf8B8wHdAckB/wFpAWQBWQHmAxQBGwMU ARsDFAEbAWYBYQFZAeYB+AHoAdkB/wHyAdIBsgH/AfABzAGrAf8B8AHMAasB/wH2AeQB0wH/AWoBZAFZ
ARsBaQFkAVkB5gH4AegB2QH/AfIB0gGyAf8B8AHMAasB/wHwAcwBqwH/AfYB5AHTAf8BcAFkAVkB7AFj AewBYAFoAXAB/wMAAf8DAAH/AwAB/wMAAf8BDQFYAWAB/wEAAcYB1gH/AQABxgHWAf8BAAHGAdYB/wEA
AWsBcwH/AwAB/wMAAf8DAAH/AwAB/wEQAVsBYwH/AQABxgHWAf8BAAHGAdYB/wEAAcYB1gH/AQABxgHW AcYB1gH/AQ0BWAFgAf8DBQH/AwUB/wMFAf8DBQH/AWABaAFwAf8DVAH/A1QB/wNUAf8DVQH/AwAF/wMA
Af8BEAFbAWMB/wMIAf8DCAH/AwgB/wMIAf8BYwFrAXMB/wNXAf8DVwH/A1cB/wNYAf8DAgX/AwEB/wM0 Af8DMQH/AwkB/wMAAf8DAAH/AwAF/wMAAf8DVAH/A1UB/xAAAxsBJgM+AWoC/wH3Af8B8gHkAbsB/wHw
Af8DDAH/AwEB/wMCAf8DAQX/AwIB/wNXAf8DWAH/EAADGwEmAz4BagL/AfcB/wHyAeQBuwH/AfABuAEh AbgBHgH/AfABuAEeAf8B8AG4AR4B/wL4AfQD/wH7Af8DPgFqAxoBJQQAAl4BWwHQAfAB4QHRAf8B6gHE
Af8B8AG4ASEB/wHwAbgBIQH/AvgB9AP/AfsB/wM+AWoDGgElBAACXgFbAdAB8AHhAdEB/wHqAcQBoQH/ AaEB/wHpAcEBmwH/AekBwAGXAf8B8QHOAbIB/wHcAcMBqgH/AmQBXAHnAmQBXAHnAd0BxAGsAv8B/AHz
AekBwQGbAf8B6QHAAZcB/wHxAc4BsgH/AdwBwwGqAf8BaQFkAVwB5wFpAWQBXAHnAd0BxAGsAv8B/AHz Av8B9AHlAv8B7gHaAf8B/AHlAdEB/wHxAeEB0QH/Al4BWwHQAWABaAFwAf8DAAH/AwAB/wMAAf8DAAH/
Av8B9AHlAv8B7gHaAf8B/AHlAdEB/wHxAeEB0QH/Al4BWwHQAWMBawFzAf8DAAH/AwAB/wMAAf8DAAH/ AwUB/wEAAcYB1gH/AQABxgHWAf8BAAHGAdYB/wEAAcYB1gH/AwUB/wEWAh4B/wEWAh4B/wMFAf8DBQH/
AwgB/wEAAcYB1gH/AQABxgHWAf8BAAHGAdYB/wEAAcYB1gH/AwgB/wEZAiEB/wEZAiEB/wMIAf8DCAH/ AWABaAFwAf8DVAH/A1QB/wNVAf8DVAH/AwAF/wMJAf8DAAH/AxUB/wMxAf8DMQH/AwAF/wMAAf8DVAH/
AWMBawFzAf8DVwH/A1cB/wNYAf8DVwH/AwIF/wMMAf8DAgH/AxgB/wM0Af8DNAH/AwEF/wMBAf8DVwH/ A1QB/xQAAxoBJQM9AWkC/wH4Af8B9wHqAcMB/wH9AckBLwH/AfkB7AHHAf8C+wH3Af8C/AH5A/8B/AH/
A1cB/xQAAxoBJQM9AWkC/wH4Af8B9wHqAcMB/wH9AckBMgH/AfkB7AHHAf8C+wH3Af8C/AH5A/8B/AH/
Az0BaQMaASUDTgGWAeIBzgG6Af8B8QHSAbYB/wHrAcEBmwH/AesBvwGZAv8B5AHTAv8B6AHbAf8B8wHa Az0BaQMaASUDTgGWAeIBzgG6Af8B8QHSAbYB/wHrAcEBmwH/AesBvwGZAv8B5AHTAv8B6AHbAf8B8wHa
AccB/wH4AfEB5AL/AfgB7QL/AfcB6QL/Af4B8QL/AfwB7wL/AfwB8gH/AeIBzgG6Af8DTgGWBAADCAH/ AccB/wH4AfEB5AL/AfgB7QL/AfcB6QL/Af4B8QL/AfwB7wL/AfwB8gH/AeIBzgG6Af8DTgGWBAADBQH/
AwAB/wMAAf8DAAH/AwAB/wMIAf8BEAFbAWMB/wEQAVsBYwH/AwgB/wM6Af8DOgH/ARkCIQH/ARkCIQH/ AwAB/wMAAf8DAAH/AwAB/wMFAf8BDQFYAWAB/wENAVgBYAH/AwUB/wM3Af8DNwH/ARYCHgH/ARYCHgH/
ARkCIQH/BAADWAH/A1gB/wNYAf8DVwH/AwEJ/wOIAf8DGAH/AwEB/wMMAf8DAQX/AwIB/wNXAf8DVwH/ ARYCHgH/BAADVQH/A1UB/wNVAf8DVAH/AwAJ/wOIAf8DFQH/AwAB/wMJAf8DAAX/AwAB/wNUAf8DVAH/
GAADGgElAz0BaAL/AfoB/wL4AfQB/wL7AfcB/wLoAd4B/wLYAckB/wLoAd4D/wH+Af8DPQFoAyYBOAGs GAADGgElAz0BaAL/AfoB/wL4AfQB/wL7AfcB/wLoAd4B/wLYAckB/wLoAd4D/wH+Af8DPQFoAyYBOAGp
AYcBSwH9AfoB7QHhAf8B7AHHAaMC/wHsAdoF/wH3Ac0BtgH/AewBvQGXAv8B9AHcA/8B9wL/AfcB6AP/ AYcBSAH9AfoB7QHhAf8B7AHHAaMC/wHsAdoF/wH3Ac0BtgH/AewBvQGXAv8B9AHcA/8B9wL/AfcB6AP/
AfMD/wH5Af8C/gH5Af8BrAGHAUsB/QMmATgEAAM6Af8DAAH/AwAB/wMAAf8DCAH/AwgB/wEZAiEB/wM6 AfMD/wH5Af8C/gH5Af8BqQGHAUgB/QMmATgEAAM3Af8DAAH/AwAB/wMAAf8DBQH/AwUB/wEWAh4B/wM3
Af8BYwFrAXMB/wFjAq0B/wM6Af8DOgH/ARkCIQH/AzoB/wQAA1cB/wNXAf8DVwH/A1cB/wMCAf8DrA3/ Af8BYAFoAXAB/wFgAq0B/wM3Af8DNwH/ARYCHgH/AzcB/wQAA1QB/wNUAf8DVAH/A1QB/wMAAf8DrA3/
A8MB/wNGAf8DAgX/AwEB/wNXAf8DVwH/HAADGgElAz0BaAL/AfsB/wL8AfkB/wLLAbsB/wQAAssBvAP/ A8MB/wNDAf8DAAX/AwAB/wNUAf8DVAH/HAADGgElAz0BaAL/AfsB/wL8AfkB/wLLAbsB/wQAAssBvAP/
Af4B/wM9AWgEAANOAZYB2QG/AaUC/wH6AfAG/wH9AfMB/wHwAcEBowH/Ae4BxgGgAf8B/QHwAdED/wH+ Af4B/wM9AWgEAANOAZYB2QG/AaUC/wH6AfAG/wH9AfMB/wHwAcEBowH/Ae4BxgGgAf8B/QHwAdED/wH+
Av8B/QHwAv8B/QHxBf8B2QG/AaUB/wNOAZYMAAEZAiEB/wMAAf8DAAH/AwgB/wMIAf8BGQIhAf8BIQIx Av8B/QHwAv8B/QHxBf8B2QG/AaUB/wNOAZYMAAEWAh4B/wMAAf8DAAH/AwUB/wMFAf8BFgIeAf8BHgIu
Af8BYwFrAXMB/wG9AsYB/wFjAWsBcwH/ASECMQH/AzoB/wgAA1cB/wNYAf8DVwH/A1cB/wMYAf8DMgH/ Af8BYAFoAXAB/wG9AsYB/wFgAWgBcAH/AR4CLgH/AzcB/wgAA1QB/wNVAf8DVAH/A1QB/wMVAf8DLwH/
A60Z/wMBAf8DWAH/A1cB/yAAAxoBJQM9AWcC/wH8Af8C1AHKAf8CrwGfAf8C1AHLA/8B/gH/Az0BZwQA A60Z/wMAAf8DVQH/A1QB/yAAAxoBJQM9AWcC/wH8Af8C1AHKAf8CrwGfAf8C1AHLA/8B/gH/Az0BZwQA
AwoBDQNXAbgB2QG/AaUB/wH+Af0B/AL/AfEB5AH/AfIBygGuAf8B8gHSAa0B/wH5Ae0ByAP/AfcD/wH9 AwoBDQNXAbgB2QG/AaUB/wH+Af0B/AL/AfEB5AH/AfIBygGuAf8B8gHSAa0B/wH5Ae0ByAP/AfcD/wH9
Af8B/gH9AfwB/wHZAb8BpQH/A1cBuAMKAQ0QAAM6Af8DAAH/AwgB/wMIAf8BGQIhAf8BIQIxAf8DOgH/ Af8B/gH9AfwB/wHZAb8BpQH/A1cBuAMKAQ0QAAM3Af8DAAH/AwUB/wMFAf8BFgIeAf8BHgIuAf8DNwH/
AWMBawFzAf8BYwFrAXMB/wFjAWsBcwH/DAADVwH/A1cB/wNYAf8DVwH/A1cB/wMYAf8DAgH/AxgB/wOJ AWABaAFwAf8BYAFoAXAB/wFgAWgBcAH/DAADVAH/A1QB/wNVAf8DVAH/A1QB/wMVAf8DAAH/AxUB/wOJ
Ef8DAgH/A1gB/wNXAf8kAAMaASQDPQFnAv8B/gP/Af4D/wH+Bf8DPQFnCAADCgENA04BlgGYAXYBTQH6 Ef8DAAH/A1UB/wNUAf8kAAMaASQDPQFnAv8B/gP/Af4D/wH+Bf8DPQFnCAADCgENA04BlgGPAXMBTQH6
AeEBzQG5Af8B8QHiAdQB/wH5AewB3wH/AfsB8wHlAf8B9AHtAeQB/wHiAc4BuwH/AZgBdgFNAfoDTgGW AeEBzQG5Af8B8QHiAdQB/wH5AewB3wH/AfsB8wHlAf8B9AHtAeQB/wHiAc4BuwH/AY8BcwFNAfoDTgGW
AwoBDRgAASECMQH/ASECMQH/AwgB/wMIAf8DCAH/ARkCIQH/AzoB/wM6Af8QAANXAf8DVwH/A1cB/wNX AwoBDRgAAR4CLgH/AR4CLgH/AwUB/wMFAf8DBQH/ARYCHgH/AzcB/wM3Af8QAANUAf8DVAH/A1QB/wNU
Af8DVwH/A1cB/wNXAf8DGAH/AwEB/wMMAf8DUwH/A8IF/wMBAf8DWAH/A1cB/ygAAxoBJAM8AWYDPAFm Af8DVAH/A1QB/wNUAf8DFQH/AwAB/wMJAf8DUAH/A8IF/wMAAf8DVQH/A1QB/ygAAxoBJAM8AWYDPAFm
AzwBZgM8AWYDMQFNEAADJwE7A04BlAJeAVwBzgFwAWcBWQHrAXABZAFYAe8CXgFbAdkDTwGXAycBOygA AzwBZgM8AWYDMQFNEAADJwE7A04BlAJeAVwBzgFqAWMBWQHrAWgBYgFYAe8CXgFbAdkDTwGXAycBOygA
AWMBawFzAf8BYwFrAXMB/wFjAWsBcwH/AWMBawFzAf8cAANXAf8DVwH/A1cB/wNXAf8DWAH/A1cB/wNX AWABaAFwAf8BYAFoAXAB/wFgAWgBcAH/AWABaAFwAf8cAANUAf8DVAH/A1QB/wNUAf8DVQH/A1QB/wNU
Af8DVwH/A1cB/wMMAf8DAQH/AzIB/wMYAf8DWAH/EAADAgEDAxQBHAMwAUwDRAF5A1ABmgNQAaQDUAGa Af8DVAH/A1QB/wMJAf8DAAH/Ay8B/wMVAf8DVQH/EAADAgEDAxQBHAMwAUwDRAF5A1ABmgNQAaQDUAGa
A0QBeQMwAUwDFAEcAwMBBAgAA5YB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQ A0QBeQMwAUwDFAEcAwMBBAgAA5YB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wEN
AgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wEQAgAB/wQAAUMBzAL/ AgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wENAgAB/wQAAUABzAL/
ARACmQH/ARACmQH/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/ AQ0CmQH/AQ0CmQH/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/
AUMBzAL/AUMBzAL/AUMBzAL/EAADAgEDAxQBHAMwAUwDRAF5A1ABmgNQAaQDUAGaA0QBeQMwAUwDFAEc AUABzAL/AUABzAL/AUABzAL/EAADAgEDAxQBHAMwAUwDRAF5A1ABmgNQAaQDUAGaA0QBeQMwAUwDFAEc
AwMBBBAAAwQBBgMkATYDUwGwAWMCXgHlA18B+wGzAqkB/wNfAfsDYAHrA1oB0wNTAawDRwGCAygBPAMH AwMBBBAAAwQBBgMkATYDUwGwAWMCXgHlA18B+wGzAqkB/wNfAfsDYAHrA1oB0wNTAawDRwGCAygBPAMH
AQkEAAHMApkB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wPqAf8D6gH/A+oB/wGAAgAB/wPqAf8D6gH/ AQkEAAHMApkB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wPqAf8D6gH/A+oB/wGAAgAB/wPqAf8D6gH/
A+oB/wGAAgAB/wGAAgAB/wFDAgAB/wEQAgAB/wEQApkB/wMAAf8DBgH/AyoB/wMAAf8DAAH/AUMBzAL/ A+oB/wGAAgAB/wGAAgAB/wFAAgAB/wENAgAB/wENApkB/wMAAf8DAwH/AycB/wMAAf8DAAH/AUABzAL/
AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/AUMBzAL/CAADBAEG AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/AUABzAL/CAADBAEG
AyQBNgNTAbABYwJeAeUDXwH7AbMCqQH/A18B+wNgAesDWgHTA1MBrANHAYIDKAE8AwcBCQgAAwIBAwMx AyQBNgNTAbABYwJeAeUDXwH7AbMCqQH/A18B+wNgAesDWgHTA1MBrANHAYIDKAE8AwcBCQgAAwIBAwMx
AU8DXAHqAc8CtAL/At0C/wLiAv8C6AL/Au4C/wLzAf8DzwH/A18B8wNYAcYDTAGSAygBPAMDAQQBzAKZ AU8DXAHqAc8CtAL/At0C/wLiAv8C6AL/Au4C/wLzAf8DzwH/A18B8wNYAcYDTAGSAygBPAMDAQQBzAKZ
Af8BgAIAAf8BgAIAAf8BgAIAAf8D8QH/AYACAAH/AYACAAH/A/EB/wGAAgAB/wPxAf8BgAIAAf8BgAIA Af8BgAIAAf8BgAIAAf8BgAIAAf8D8QH/AYACAAH/AYACAAH/A/EB/wGAAgAB/wPxAf8BgAIAAf8BgAIA
Af8D8QH/AYACAAH/AYACAAH/ARACAAH/AwAB/wPMDf8DKgH/AwAB/wFDAcwC/wFDAcwC/wFDAcwC/wFD Af8D8QH/AYACAAH/AYACAAH/AQ0CAAH/AwAB/wPMDf8DJwH/AwAB/wFAAcwC/wFAAcwC/wFAAcwC/wFA
AcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wQAAwIBAwMxAU8DXAHqAc8CtAL/At0C/wLi AcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wQAAwIBAwMxAU8DXAHqAc8CtAL/At0C/wLi
Av8C6AL/Au4C/wLzAf8DzwH/A18B8wNYAcYDTAGSAygBPAMDAQQEAAMmATgDbQH3AfUCxwL/AtIC/wLY Av8C6AL/Au4C/wLzAf8DzwH/A18B8wNYAcYDTAGSAygBPAMDAQQEAAMmATgDbQH3AfUCxwL/AtIC/wLY
Av8C3QL/AuIC/wLoAv8C9AX/A/UB/wNkAfsDWAHGA0cBggMUARwBzAKZAf8BmQEAARAB/wGAAgAB/wGA Av8C3QL/AuIC/wLoAv8C9AX/A/UB/wNfAfsDWAHGA0cBggMUARwBzAKZAf8BmQEAAQ0B/wGAAgAB/wGA
AgAF/wGAAgAB/wGAAgAF/wGAAgAF/wGAAgAB/wGAAgAF/wGAAgAB/wGAAgAB/wEQAgAB/wMAAf8DzBH/ AgAF/wGAAgAB/wGAAgAF/wGAAgAF/wGAAgAB/wGAAgAF/wGAAgAB/wGAAgAB/wENAgAB/wMAAf8DzBH/
AwAB/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wFDAcwC/wQA AwAB/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wFAAcwC/wQA
AyYBOANtAfcB9QLHAv8C0gL/AtgC/wLdAv8C4gL/AugC/wL0Bf8D9QH/A2QB+wNYAcYDRwGCAxQBHAMH AyYBOANtAfcB9QLHAv8C0gL/AtgC/wLdAv8C4gL/AugC/wL0Bf8D9QH/A18B+wNYAcYDRwGCAxQBHAMH
AQkDXgHdAfUCzQL/As8C/wLNAv8C0gL/AtgC/wLdAv8C4gL/AvoJ/wP1Af8DXwHzA1MBrAMwAUwBzAKZ AQkDXgHdAfUCzQL/As8C/wLNAv8C0gL/AtgC/wLdAv8C4gL/AvoJ/wP1Af8DXwHzA1MBrAMwAUwBzAKZ
Af8BmQEAARAB/wGAAgAB/wGAAgAB/wGAAgAN/wGAAgAN/wGAAgAB/wGAAgAB/wGAAgAB/wEQAgAB/wEQ Af8BmQEAAQ0B/wGAAgAB/wGAAgAB/wGAAgAN/wGAAgAN/wGAAgAB/wGAAgAB/wGAAgAB/wENAgAB/wEN
ApkB/wMAAf8DVAH/A8AB/wPAAf8DzAH/AwAB/wMGAf8DAAH/AwAB/wMAAf8DAAH/AwYB/wFDAcwC/wFD ApkB/wMAAf8DUQH/A8AB/wPAAf8DzAH/AwAB/wMDAf8DAAH/AwAB/wMAAf8DAAH/AwMB/wFAAcwC/wFA
AcwC/wFDAcwC/wMHAQkDXgHdAfUCzQL/As8C/wLNAv8C0gL/AtgC/wLdAv8C4gL/AvoJ/wP1Af8DXwHz AcwC/wFAAcwC/wMHAQkDXgHdAfUCzQL/As8C/wLNAv8C0gL/AtgC/wLdAv8C4gL/AvoJ/wP1Af8DXwHz
A1MBrAMwAUwDPgFqAcYCsQL/AtkC/wLUAv8CzwL/As0C/wHUAdsC/wHXAeIC/wHkAeoR/wHSAswB/wNa A1MBrAMwAUwDPgFqAcYCsQL/AtkC/wLUAv8CzwL/As0C/wHUAdsC/wHXAeIC/wHkAeoR/wHSAswB/wNa
AdMDQwF3AcwCmQH/AZkBAAEQAf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIABf8BgAIABf8BgAIA AdMDQwF3AcwCmQH/AZkBAAENAf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIABf8BgAIABf8BgAIA
Af8BgAIAAf8BgAIAAf8BgAIAAf8BgAIAAf8BEAIAAf8BQwHMAv8BEAKZAf8DAAH/AwAB/wMABf8DAAH/ Af8BgAIAAf8BgAIAAf8BgAIAAf8BgAIAAf8BDQIAAf8BQAHMAv8BDQKZAf8DAAH/AwAB/wMABf8DAAH/
AwAB/wGkAqAJ/wOZAf8DBgH/AwYB/wFDAcwC/wFDAcwC/wM+AWoBxgKxAv8C2QL/AtQC/wLPAv8CzQL/ AwAB/wGkAqAJ/wOZAf8DAwH/AwMB/wFAAcwC/wFAAcwC/wM+AWoBxgKxAv8C2QL/AtQC/wLPAv8CzQL/
AdQB2wL/AdcB4gL/AeQB6hH/AdICzAH/A1oB0wNDAXcDVgG2Af8C4wH/AQABCwEMAf8BAAELAQwB/wEA AdQB2wL/AdcB4gL/AeQB6hH/AdICzAH/A1oB0wNDAXcDVgG2Af8C4wH/AQABCAEJAf8BAAEIAQkB/wEA
AQsBDAL/Ad4B5wH/AQABCwEMAv8B0QHzAf8BAAELAQwC/wH4Av8BSwJRAf8BAAELAQwB/wFLAlEB/wHM AQgBCQL/Ad4B5wH/AQABCAEJAv8B0QHzAf8BAAEIAQkC/wH4Av8BSAJOAf8BAAEIAQkB/wFIAk4B/wHM
ApkB/wFcAlUB6gNOAZQBzAKZAf8BmQEAARAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAF/wGA ApkB/wFcAlUB6gNOAZQBzAKZAf8BmQEAAQ0B/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAF/wGA
AgAF/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wEQAgAB/wFDAcwC/wFDAcwC/wFDAcwC/wFD AgAF/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wENAgAB/wFAAcwC/wFAAcwC/wFAAcwC/wFA
AcwC/wMABf8DAAH/AwYR/wPMAf8DAAH/AUMBzAL/AUMBzAL/A1YBtgH/AuMB/wFLAlEB/wEAAQsBDAH/ AcwC/wMABf8DAAH/AwMR/wPMAf8DAAH/AUABzAL/AUABzAL/A1YBtgH/AuMB/wFIAk4B/wEAAQgBCQH/
AUsCUQL/Ad4B5wH/AUsCUQH/AQABCwEMAf8BSwJRAv8B+AL/AQABCwEMAf8BAAELAQwB/wEAAQsBDAH/ AUgCTgL/Ad4B5wH/AUgCTgH/AQABCAEJAf8BSAJOAv8B+AL/AQABCAEJAf8BAAEIAQkB/wEAAQgBCQH/
AcwCmQH/AVwCVQHqA04BlANhAeIB/wLnAf8BAAELAQwC/wLeAv8C4AL/Ae8B/AH/AQABCwEMAv8B4gH8 AcwCmQH/AVwCVQHqA04BlANhAeIB/wLnAf8BAAEIAQkC/wLeAv8C4AL/Ae8B/AH/AQABCAEJAv8B4gH8
Af8BAAELAQwB/wH8AfAB+QH/AQABCwEMAf8BzAKZAf8BAAELAQwB/wHMApkB/wFtAmwB9wNRAaEBzAKZ Af8BAAEIAQkB/wH8AfAB+QH/AQABCAEJAf8BzAKZAf8BAAEIAQkB/wHMApkB/wFtAmwB9wNRAaEBzAKZ
Af8BmQEAARAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGA Af8BmQEAAQ0B/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGA
AgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wEQAgAB/wGZAkMB/wGZAkMB/wGZAkMB/wGZAkMB/wMA AgAB/wGAAgAB/wGAAgAB/wGAAgAB/wGAAgAB/wENAgAB/wGZAkAB/wGZAkAB/wGZAkAB/wGZAkAB/wMA
Bf8DAAH/AwAB/wMqAf8DzA3/AwAB/wGZAkMB/wGZAkMB/wNhAeIB/wLnAf8BAAELAQwC/wLeAf8BAAEL Bf8DAAH/AwAB/wMnAf8DzA3/AwAB/wGZAkAB/wGZAkAB/wNhAeIB/wLnAf8BAAEIAQkC/wLeAf8BAAEI
AQwC/wHvAfwB/wEAAQsBDAL/AeIB/AH/AQABCwEMAf8B/AHwAfkB/wEAAQsBDAH/AcwCmQH/AcwCmQH/ AQkC/wHvAfwB/wEAAQgBCQL/AeIB/AH/AQABCAEJAf8B/AHwAfkB/wEAAQgBCQH/AcwCmQH/AcwCmQH/
AcwCmQH/AW0CbAH3A1EBoQGeAowB/wHpAr4B/wEAAQsBDAH/AQABCwEMAf8B+QLWAv8B6QHzAf8BAAEL AcwCmQH/AW0CbAH3A1EBoQGeAowB/wHpAr4B/wEAAQgBCQH/AQABCAEJAf8B+QLWAv8B6QHzAf8BAAEI
AQwB/wEAAQsBDAH/AQABCwEMAf8B+QHoAewB/wEAAQsBDAH/AeYCugH/AeYCvQH/AeYCwAH/AaYClAH/ AQkB/wEAAQgBCQH/AQABCAEJAf8B+QHoAewB/wEAAQgBCQH/AeYCugH/AeYCvQH/AeYCwAH/AaYClAH/
A04BlDT/A/EB/wPqAf8DgAH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AwAF/wMAAf8DMgH/AwAB/wMA A04BlDT/A/EB/wPqAf8DgAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AwAF/wMAAf8DLwH/AwAB/wMA
Af8DAAH/AwAF/wMAAf8BmQJDAf8BmQJDAf8BngKMAf8B6QK+Af8BAAELAQwB/wHzAsUB/wH5AtYC/wHp Af8DAAH/AwAF/wMAAf8BmQJAAf8BmQJAAf8BngKMAf8B6QK+Af8BAAEIAQkB/wHzAsUB/wH5AtYC/wHp
AfMB/wEAAQsBDAL/AekB8wH/AQABCwEMAf8B+QHoAewB/wEAAQsBDAH/AQABCwEMAf8B5gK9Af8B5gLA AfMB/wEAAQgBCQL/AekB8wH/AQABCAEJAf8B+QHoAewB/wEAAQgBCQH/AQABCAEJAf8B5gK9Af8B5gLA
Af8BpgKUAf8DTgGUA10B0gHbAqgB/wEAAQsBDAH/AeoCtwH/AfMCzQL/Ae4B/AH/AQABCwEMAv8B0gH1 Af8BpgKUAf8DTgGUA10B0gHbAqgB/wEAAQgBCQH/AeoCtwH/AfMCzQL/Ae4B/AH/AQABCAEJAv8B0gH1
Af8BAAELAQwC/wH0AfwB/wEAAQsBDAL/AtgB/wEAAQsBDAL/AuIB/wNiAfYDQwF3BP8BmQEAARAJ/wGA Af8BAAEIAQkC/wH0AfwB/wEAAQgBCQL/AtgB/wEAAQgBCQL/AuIB/wNiAfYDQwF3BP8BmQEAAQ0J/wGA
AgAN/wGAAgAB/wGAAgAN/wGAAgAB/wGAAgAB/wOAAf8BmQJDAf8BmQJDAf8BmQJDAf8BmQJDAf8DAAX/ AgAN/wGAAgAB/wGAAgAN/wGAAgAB/wGAAgAB/wOAAf8BmQJAAf8BmQJAAf8BmQJAAf8BmQJAAf8DAAX/
AwAB/wMAAf8DBgH/AzIB/wMyAf8DAAX/AwAB/wGZAkMB/wGZAkMB/wNdAdIB2wKoAf8BAAELAQwB/wHq AwAB/wMAAf8DAwH/Ay8B/wMvAf8DAAX/AwAB/wGZAkAB/wGZAkAB/wNdAdIB2wKoAf8BAAEIAQkB/wHq
ArcB/wEAAQsBDAL/Ae4B/AH/AQABCwEMAv8B0gH1Af8BAAELAQwC/wH0AfwB/wEAAQsBDAL/AtgC/wLd ArcB/wEAAQgBCQL/Ae4B/AH/AQABCAEJAv8B0gH1Af8BAAEIAQkC/wH0AfwB/wEAAQgBCQL/AtgC/wLd
Av8C4gH/A2IB9gNDAXcDVgGxAdUCogH/AQABCwEMAf8BAAELAQwB/wEAAQsBDAL/AfYC/wFLAlEB/wEA Av8C4gH/A2IB9gNDAXcDVgGxAdUCogH/AQABCAEJAf8BAAEIAQkB/wEAAQgBCQL/AfYC/wFIAk4B/wEA
AQsBDAH/AUsCUQL/AeAB5wH/AUsCUQH/AQABCwEMAf8BSwJRAv8C3QH/A1oB5AMwAUwE/wGZAQABEAn/ AQgBCQH/AUgCTgL/AeAB5wH/AUgCTgH/AQABCAEJAf8BSAJOAv8C3QH/A1oB5AMwAUwE/wGZAQABDQn/
AYACAAn/AYACABH/AYACAAH/A/EB/wPqAf8DgAH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AwAJ/wOZ AYACAAn/AYACABH/AYACAAH/A/EB/wPqAf8DgAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AwAJ/wOZ
Af8DBgH/AwAB/wMAAf8DAAX/AwAB/wGZAkMB/wGZAkMB/wNWAbEB1QKiAf8BSwJRAf8BAAELAQwB/wFL Af8DAwH/AwAB/wMAAf8DAAX/AwAB/wGZAkAB/wGZAkAB/wNWAbEB1QKiAf8BSAJOAf8BAAEIAQkB/wFI
AlEC/wH2Av8BAAELAQwC/wHSAfUB/wEAAQsBDAL/AeAB5wH/AQABCwEMAf8BAAELAQwB/wEAAQsBDAL/ Ak4C/wH2Av8BAAEIAQkC/wHSAfUB/wEAAQgBCQL/AeAB5wH/AQABCAEJAf8BAAEIAQkB/wEAAQgBCQL/
At0B/wNaAeQDMAFMAzIBUAHDAr8S/wHsAfEC/wHbAecC/wHZAd4C/wLUAv8CzwL/As0C/wLSAf8BxgKt At0B/wNaAeQDMAFMAzIBUAHDAr8S/wHsAfEC/wHbAecC/wHZAd4C/wLUAv8CzwL/As0C/wLSAf8BxgKt
Af8DUwGsAxQBGwT/AZkBAAEQCf8BgAIACf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIABf8BgAIAAf8BgAIA Af8DUwGsAxQBGwT/AZkBAAENCf8BgAIACf8BgAIAAf8BgAIAAf8BgAIAAf8BgAIABf8BgAIAAf8BgAIA
Af8BgAIAAf8BEAIAAf8BmQJDAf8BmQJDAf8BmQJDAf8BmQJDAf8DAAH/A8AN/wPMAf8DPAH/AwAF/wMA Af8BgAIAAf8BDQIAAf8BmQJAAf8BmQJAAf8BmQJAAf8BmQJAAf8DAAH/A8AN/wPMAf8DOQH/AwAF/wMA
Af8BmQJDAf8BmQJDAf8DMgFQAcMCvxL/AewB8QL/AdsB5wL/AdkB3gL/AtQC/wLPAv8CzQL/AtIB/wHG Af8BmQJAAf8BmQJAAf8DMgFQAcMCvxL/AewB8QL/AdsB5wL/AdkB3gL/AtQC/wLPAv8CzQL/AtIB/wHG
Aq0B/wNTAawDFAEbBAADWgHAA/UK/wL+Av8C5wL/AuMC/wLeAv8C2QL/AtQC/wLPAf8B9QLHAf8DXwHj Aq0B/wNTAawDFAEbBAADWgHAA/UK/wL+Av8C5wL/AuMC/wLeAv8C2QL/AtQC/wLPAf8B9QLHAf8DXwHj
AyMBNAMCAQME/wGZAQABEAH/AYACAAX/AYACAAn/AYACAAn/AYACAAX/AYACAAH/A/EB/wPqAf8BEAIA AyMBNAMCAQME/wGZAQABDQH/AYACAAX/AYACAAn/AYACAAn/AYACAAX/AYACAAH/A/EB/wPqAf8BDQIA
Af8BmQJDAf8BmQJDAf8BmQJDAf8BmQJDAf8DBgH/AyoB/wPAGf8DAAH/AZkCQwH/AZkCQwH/BAADWgHA Af8BmQJAAf8BmQJAAf8BmQJAAf8BmQJAAf8DAwH/AycB/wPAGf8DAAH/AZkCQAH/AZkCQAH/BAADWgHA
A/UK/wL+Av8C5wL/AuMC/wLeAv8C2QL/AtQC/wLPAf8B9QLHAf8DXwHjAyMBNAMCAQMEAAMXASADYgHv A/UK/wL+Av8C5wL/AuMC/wLeAv8C2QL/AtQC/wLPAf8B9QLHAf8DXwHjAyMBNAMCAQMEAAMXASADYgHv
A/UG/wL4Av8C7AL/AucC/wLjAv8C3gL/AtkB/wH1As0B/wNtAfcDMAFNAwQBBgQABP8BmQIQCf8BgAIA A/UG/wL4Av8C7AL/AucC/wLjAv8C3gL/AtkB/wH1As0B/wNtAfcDMAFNAwQBBgQABP8BmQINCf8BgAIA
Af8BgAIACf8BgAIAAf8BgAIADf8BgAIAAf8BgAIAAf8DhgH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/ Af8BgAIACf8BgAIAAf8BgAIADf8BgAIAAf8BgAIAAf8DhgH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/
AZkCQwH/AwYB/wMAAf8DBgH/A5kR/wMAAf8BmQJDAf8BmQJDAf8EAAMXASADYgHvA/UG/wL4Av8C7AL/ AZkCQAH/AwMB/wMAAf8DAwH/A5kR/wMAAf8BmQJAAf8BmQJAAf8EAAMXASADYgHvA/UG/wL4Av8C7AL/
AucC/wLjAv8C3gL/AtkB/wH1As0B/wNtAfcDMAFNAwQBBgwAAxcBIANaAcADxgL/AvcC/wLyAv8C7AL/ AucC/wLjAv8C3gL/AtkB/wH1As0B/wNtAfcDMAFNAwQBBgwAAxcBIANaAcADxgL/AvcC/wLyAv8C7AL/
AucC/wLjAf8BxgKxAf8DXgHQAyQBNgMCAQMIAAT/AZkCEC3/A/EB/wPqAf8DhgH/AZkCQwH/AZkCQwH/ AucC/wLjAf8BxgKxAf8DXgHQAyQBNgMCAQMIAAT/AZkCDS3/A/EB/wPqAf8DhgH/AZkCQAH/AZkCQAH/
AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AwYB/wMAAf8DAAH/A1QB/wPMBf8DAAH/AZkCQwH/ AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AwMB/wMAAf8DAAH/A1EB/wPMBf8DAAH/AZkCQAH/
AZkCQwH/CAADFwEgA1oBwAPGAv8C9wL/AvIC/wLsAv8C5wL/AuMB/wHGArEB/wNeAdADJAE2AwIBAxgA AZkCQAH/CAADFwEgA1oBwAPGAv8C9wL/AvIC/wLsAv8C5wL/AuMB/wHGArEB/wNeAdADJAE2AwIBAxgA
AzIBUANRAaIDXQHSAYwCiQH/A2AB1ANUAaYDNwFaAwUBBxAACP8BzAKZLf8D8QH/A8AB/wQAAZkCQwH/ AzIBUANRAaIDXQHSAYwCiQH/A2AB1ANUAaYDNwFaAwUBBxAACP8BzAKZLf8D8QH/A8AB/wQAAZkCQAH/
AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AZkCQwH/AwAB/wMAAf8DKgH/ AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AZkCQAH/AwAB/wMAAf8DJwH/
AwYB/wGZAkMB/xQAAzIBUANRAaIDXQHSAYwCiQH/A2AB1ANUAaYDNwFaAwUBBxAAAUIBTQE+BwABPgMA AwMB/wGZAkAB/xQAAzIBUANRAaIDXQHSAYwCiQH/A2AB1ANUAaYDNwFaAwUBBxAAAUIBTQE+BwABPgMA
ASgDAAFAAwABMAMAAQEBAAEBBQABgAEBFgAD/wIAAYAHAAGABgAB8AGBBwABgQcAAQEHAAEBBwABAQcA ASgDAAFAAwABMAMAAQEBAAEBBQABgAEBFgAD/wIAAYAHAAGABgAB8AGBBwABgQcAAQEHAAEBBwABAQcA
AR8GAAHwAQEGAAHwAQEGAAHwAQEGAAHwAQEGAAH/AQcGAAH/AQcGAAH/AQcGAAH/AQcGAAHjAf8B8AEH AR8GAAHwAQEGAAHwAQEGAAHwAQEGAAHwAQEGAAH/AQcGAAH/AQcGAAH/AQcGAAH/AQcGAAHjAf8B8AEH
AfwBPwGAAQEBwQH/AcABAwHwAQ8CAAGAAf8BgAEBAeABBwMAAX8BgAEAAcABAwMAAT8CAAGAAQEDAAEf AfwBPwGAAQEBwQH/AcABAwHwAQ8CAAGAAf8BgAEBAeABBwMAAX8BgAEAAcABAwMAAT8CAAGAAQEDAAEf
@@ -349,7 +354,7 @@
<value>listChoices</value> <value>listChoices</value>
</data> </data>
<data name="&gt;&gt;listChoices.Type" xml:space="preserve"> <data name="&gt;&gt;listChoices.Type" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;listChoices.Parent" xml:space="preserve"> <data name="&gt;&gt;listChoices.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
@@ -364,7 +369,10 @@
<value>Courier New, 8pt</value> <value>Courier New, 8pt</value>
</data> </data>
<data name="textBox1.Location" type="System.Drawing.Point, System.Drawing"> <data name="textBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 153</value> <value>4, 236</value>
</data>
<data name="textBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="textBox1.Multiline" type="System.Boolean, mscorlib"> <data name="textBox1.Multiline" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
@@ -373,7 +381,7 @@
<value>Vertical</value> <value>Vertical</value>
</data> </data>
<data name="textBox1.Size" type="System.Drawing.Size, System.Drawing"> <data name="textBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 7</value> <value>1183, 10</value>
</data> </data>
<data name="textBox1.TabIndex" type="System.Int32, mscorlib"> <data name="textBox1.TabIndex" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
@@ -382,7 +390,7 @@
<value>textBox1</value> <value>textBox1</value>
</data> </data>
<data name="&gt;&gt;textBox1.Type" xml:space="preserve"> <data name="&gt;&gt;textBox1.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;textBox1.Parent" xml:space="preserve"> <data name="&gt;&gt;textBox1.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
@@ -400,13 +408,16 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="tableLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing"> <data name="tableLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 422</value> <value>4, 650</value>
</data>
<data name="tableLayoutPanel2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="tableLayoutPanel2.RowCount" type="System.Int32, mscorlib"> <data name="tableLayoutPanel2.RowCount" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
</data> </data>
<data name="tableLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing"> <data name="tableLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 35</value> <value>1183, 53</value>
</data> </data>
<data name="tableLayoutPanel2.TabIndex" type="System.Int32, mscorlib"> <data name="tableLayoutPanel2.TabIndex" type="System.Int32, mscorlib">
<value>30</value> <value>30</value>
@@ -415,7 +426,7 @@
<value>tableLayoutPanel2</value> <value>tableLayoutPanel2</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanel2.Type" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanel2.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanel2.Parent" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanel2.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
@@ -429,11 +440,17 @@
<data name="pictureBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="pictureBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="pictureBox1.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="pictureBox1.Location" type="System.Drawing.Point, System.Drawing"> <data name="pictureBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 166</value> <value>4, 256</value>
</data>
<data name="pictureBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="pictureBox1.Size" type="System.Drawing.Size, System.Drawing"> <data name="pictureBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 7</value> <value>1183, 73</value>
</data> </data>
<data name="pictureBox1.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms"> <data name="pictureBox1.SizeMode" type="System.Windows.Forms.PictureBoxSizeMode, System.Windows.Forms">
<value>Zoom</value> <value>Zoom</value>
@@ -445,7 +462,7 @@
<value>pictureBox1</value> <value>pictureBox1</value>
</data> </data>
<data name="&gt;&gt;pictureBox1.Type" xml:space="preserve"> <data name="&gt;&gt;pictureBox1.Type" xml:space="preserve">
<value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;pictureBox1.Parent" xml:space="preserve"> <data name="&gt;&gt;pictureBox1.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
@@ -456,7 +473,7 @@
<data name="tableLayoutPanelMeta.ColumnCount" type="System.Int32, mscorlib"> <data name="tableLayoutPanelMeta.ColumnCount" type="System.Int32, mscorlib">
<value>2</value> <value>2</value>
</data> </data>
<metadata name="dataGridViewTextBoxColumnTrackNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="dataGridViewTextBoxColumnTrackNo.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="dataGridViewTextBoxColumnTrackNo.HeaderText" xml:space="preserve"> <data name="dataGridViewTextBoxColumnTrackNo.HeaderText" xml:space="preserve">
@@ -468,13 +485,13 @@
<data name="dataGridViewTextBoxColumnTrackNo.Width" type="System.Int32, mscorlib"> <data name="dataGridViewTextBoxColumnTrackNo.Width" type="System.Int32, mscorlib">
<value>30</value> <value>30</value>
</data> </data>
<metadata name="dataGridViewTextBoxColumnTrackTitle.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="dataGridViewTextBoxColumnTrackTitle.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="dataGridViewTextBoxColumnTrackTitle.HeaderText" xml:space="preserve"> <data name="dataGridViewTextBoxColumnTrackTitle.HeaderText" xml:space="preserve">
<value>Title</value> <value>Title</value>
</data> </data>
<metadata name="dataGridViewTextBoxColumnTrackStart.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="dataGridViewTextBoxColumnTrackStart.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="dataGridViewTextBoxColumnTrackStart.HeaderText" xml:space="preserve"> <data name="dataGridViewTextBoxColumnTrackStart.HeaderText" xml:space="preserve">
@@ -486,7 +503,7 @@
<data name="dataGridViewTextBoxColumnTrackStart.Width" type="System.Int32, mscorlib"> <data name="dataGridViewTextBoxColumnTrackStart.Width" type="System.Int32, mscorlib">
<value>50</value> <value>50</value>
</data> </data>
<metadata name="dataGridViewTextBoxColumnTrackLength.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="dataGridViewTextBoxColumnTrackLength.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="dataGridViewTextBoxColumnTrackLength.HeaderText" xml:space="preserve"> <data name="dataGridViewTextBoxColumnTrackLength.HeaderText" xml:space="preserve">
@@ -496,19 +513,16 @@
<value>50</value> <value>50</value>
</data> </data>
<data name="dataGridViewTextBoxColumnTrackLength.Width" type="System.Int32, mscorlib"> <data name="dataGridViewTextBoxColumnTrackLength.Width" type="System.Int32, mscorlib">
<value>50</value> <value>65</value>
</data> </data>
<data name="dataGridViewTracks.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="dataGridViewTracks.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="dataGridViewTracks.Location" type="System.Drawing.Point, System.Drawing"> <data name="dataGridViewTracks.Location" type="System.Drawing.Point, System.Drawing">
<value>396, 2</value> <value>594, 3</value>
</data>
<data name="dataGridViewTracks.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
</data> </data>
<data name="dataGridViewTracks.Size" type="System.Drawing.Size, System.Drawing"> <data name="dataGridViewTracks.Size" type="System.Drawing.Size, System.Drawing">
<value>390, 233</value> <value>586, 295</value>
</data> </data>
<data name="dataGridViewTracks.TabIndex" type="System.Int32, mscorlib"> <data name="dataGridViewTracks.TabIndex" type="System.Int32, mscorlib">
<value>6</value> <value>6</value>
@@ -517,7 +531,7 @@
<value>dataGridViewTracks</value> <value>dataGridViewTracks</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTracks.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTracks.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTracks.Parent" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTracks.Parent" xml:space="preserve">
<value>tableLayoutPanelMeta</value> <value>tableLayoutPanelMeta</value>
@@ -525,7 +539,7 @@
<data name="&gt;&gt;dataGridViewTracks.ZOrder" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTracks.ZOrder" xml:space="preserve">
<value>0</value> <value>0</value>
</data> </data>
<metadata name="Item.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="Item.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="Item.HeaderText" xml:space="preserve"> <data name="Item.HeaderText" xml:space="preserve">
@@ -537,7 +551,7 @@
<data name="Item.Width" type="System.Int32, mscorlib"> <data name="Item.Width" type="System.Int32, mscorlib">
<value>50</value> <value>50</value>
</data> </data>
<metadata name="Value.UserAddedColumn" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="Value.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="Value.HeaderText" xml:space="preserve"> <data name="Value.HeaderText" xml:space="preserve">
@@ -547,13 +561,10 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="dataGridViewMetadata.Location" type="System.Drawing.Point, System.Drawing"> <data name="dataGridViewMetadata.Location" type="System.Drawing.Point, System.Drawing">
<value>2, 2</value> <value>3, 3</value>
</data>
<data name="dataGridViewMetadata.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
</data> </data>
<data name="dataGridViewMetadata.Size" type="System.Drawing.Size, System.Drawing"> <data name="dataGridViewMetadata.Size" type="System.Drawing.Size, System.Drawing">
<value>390, 233</value> <value>585, 295</value>
</data> </data>
<data name="dataGridViewMetadata.TabIndex" type="System.Int32, mscorlib"> <data name="dataGridViewMetadata.TabIndex" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
@@ -562,7 +573,7 @@
<value>dataGridViewMetadata</value> <value>dataGridViewMetadata</value>
</data> </data>
<data name="&gt;&gt;dataGridViewMetadata.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewMetadata.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewMetadata.Parent" xml:space="preserve"> <data name="&gt;&gt;dataGridViewMetadata.Parent" xml:space="preserve">
<value>tableLayoutPanelMeta</value> <value>tableLayoutPanelMeta</value>
@@ -574,13 +585,16 @@
<value>Fill</value> <value>Fill</value>
</data> </data>
<data name="tableLayoutPanelMeta.Location" type="System.Drawing.Point, System.Drawing"> <data name="tableLayoutPanelMeta.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 179</value> <value>4, 339</value>
</data>
<data name="tableLayoutPanelMeta.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="tableLayoutPanelMeta.RowCount" type="System.Int32, mscorlib"> <data name="tableLayoutPanelMeta.RowCount" type="System.Int32, mscorlib">
<value>1</value> <value>1</value>
</data> </data>
<data name="tableLayoutPanelMeta.Size" type="System.Drawing.Size, System.Drawing"> <data name="tableLayoutPanelMeta.Size" type="System.Drawing.Size, System.Drawing">
<value>788, 237</value> <value>1183, 301</value>
</data> </data>
<data name="tableLayoutPanelMeta.TabIndex" type="System.Int32, mscorlib"> <data name="tableLayoutPanelMeta.TabIndex" type="System.Int32, mscorlib">
<value>32</value> <value>32</value>
@@ -589,7 +603,7 @@
<value>tableLayoutPanelMeta</value> <value>tableLayoutPanelMeta</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanelMeta.Type" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanelMeta.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanelMeta.Parent" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanelMeta.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
@@ -606,11 +620,14 @@
<data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing"> <data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value> <value>0, 0</value>
</data> </data>
<data name="tableLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data>
<data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib"> <data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
<value>5</value> <value>5</value>
</data> </data>
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing"> <data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
<value>794, 460</value> <value>1191, 708</value>
</data> </data>
<data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib"> <data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
<value>29</value> <value>29</value>
@@ -619,7 +636,7 @@
<value>tableLayoutPanel1</value> <value>tableLayoutPanel1</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanel1.Type" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanel1.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;tableLayoutPanel1.Parent" xml:space="preserve"> <data name="&gt;&gt;tableLayoutPanel1.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
@@ -628,25 +645,28 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms"> <data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="tableLayoutPanel2" Row="4" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="textBox1" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="listChoices" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="pictureBox1" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="tableLayoutPanelMeta" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,100" /&gt;&lt;Rows Styles="Absolute,150,Percent,5,Percent,5,Percent,90,Absolute,40" /&gt;&lt;/TableLayoutSettings&gt;</value> <value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="tableLayoutPanel2" Row="4" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="textBox1" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="listChoices" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="pictureBox1" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="tableLayoutPanelMeta" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,100" /&gt;&lt;Rows Styles="Absolute,231,Percent,5,Percent,20,Percent,75,Absolute,62" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data> </data>
<metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="backgroundWorker1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>127, 17</value> <value>127, 17</value>
</metadata> </metadata>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>51</value> <value>51</value>
</metadata> </metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value> <value>9, 20</value>
</data> </data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>794, 460</value> <value>1191, 708</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 5, 4, 5</value>
</data> </data>
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing"> <data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>590, 495</value> <value>874, 731</value>
</data> </data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms"> <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterParent</value> <value>CenterParent</value>
@@ -658,60 +678,60 @@
<value>columnHeader1</value> <value>columnHeader1</value>
</data> </data>
<data name="&gt;&gt;columnHeader1.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader1.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;imageList1.Name" xml:space="preserve"> <data name="&gt;&gt;imageList1.Name" xml:space="preserve">
<value>imageList1</value> <value>imageList1</value>
</data> </data>
<data name="&gt;&gt;imageList1.Type" xml:space="preserve"> <data name="&gt;&gt;imageList1.Type" xml:space="preserve">
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackNo.Name" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackNo.Name" xml:space="preserve">
<value>dataGridViewTextBoxColumnTrackNo</value> <value>dataGridViewTextBoxColumnTrackNo</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackNo.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackNo.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackTitle.Name" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackTitle.Name" xml:space="preserve">
<value>dataGridViewTextBoxColumnTrackTitle</value> <value>dataGridViewTextBoxColumnTrackTitle</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackTitle.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackTitle.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackStart.Name" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackStart.Name" xml:space="preserve">
<value>dataGridViewTextBoxColumnTrackStart</value> <value>dataGridViewTextBoxColumnTrackStart</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackStart.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackStart.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackLength.Name" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackLength.Name" xml:space="preserve">
<value>dataGridViewTextBoxColumnTrackLength</value> <value>dataGridViewTextBoxColumnTrackLength</value>
</data> </data>
<data name="&gt;&gt;dataGridViewTextBoxColumnTrackLength.Type" xml:space="preserve"> <data name="&gt;&gt;dataGridViewTextBoxColumnTrackLength.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;Item.Name" xml:space="preserve"> <data name="&gt;&gt;Item.Name" xml:space="preserve">
<value>Item</value> <value>Item</value>
</data> </data>
<data name="&gt;&gt;Item.Type" xml:space="preserve"> <data name="&gt;&gt;Item.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;Value.Name" xml:space="preserve"> <data name="&gt;&gt;Value.Name" xml:space="preserve">
<value>Value</value> <value>Value</value>
</data> </data>
<data name="&gt;&gt;Value.Type" xml:space="preserve"> <data name="&gt;&gt;Value.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;backgroundWorker1.Name" xml:space="preserve"> <data name="&gt;&gt;backgroundWorker1.Name" xml:space="preserve">
<value>backgroundWorker1</value> <value>backgroundWorker1</value>
</data> </data>
<data name="&gt;&gt;backgroundWorker1.Type" xml:space="preserve"> <data name="&gt;&gt;backgroundWorker1.Type" xml:space="preserve">
<value>System.ComponentModel.BackgroundWorker, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.ComponentModel.BackgroundWorker, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmChoice</value> <value>frmChoice</value>
</data> </data>
<data name="&gt;&gt;$this.Type" xml:space="preserve"> <data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
</root> </root>