Added Draw Settings side panel, which replaces Set Default Textures Form and allows to set textures, brightness and floor/ceiling heights to use when drawing sectors. Used settings are now saved in the map's .dbs file.

Location and active tab of all Edit Forms are now stored while GZDB is running.
Focus management between editing window and the rest of the interface should work better now.
Tag Explorer plugin: editing window was not updated properly when Edit forms were opened from Tag Explorer.
Tag Explorer plugin, UDMF: comment editing was incorrectly initialized in some cases.
This commit is contained in:
MaxED 2013-11-21 10:53:11 +00:00
parent c441c5640a
commit e8f52aecb9
58 changed files with 3022 additions and 2802 deletions

View file

@ -842,12 +842,6 @@
<Compile Include="Windows\SectorEditFormUDMF.Designer.cs"> <Compile Include="Windows\SectorEditFormUDMF.Designer.cs">
<DependentUpon>SectorEditFormUDMF.cs</DependentUpon> <DependentUpon>SectorEditFormUDMF.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Windows\SetDefaultTexturesForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Windows\SetDefaultTexturesForm.Designer.cs">
<DependentUpon>SetDefaultTexturesForm.cs</DependentUpon>
</Compile>
<Compile Include="Windows\StatusInfo.cs" /> <Compile Include="Windows\StatusInfo.cs" />
<Compile Include="Windows\TanColorTable.cs" /> <Compile Include="Windows\TanColorTable.cs" />
<Compile Include="Windows\ThingBrowserForm.cs"> <Compile Include="Windows\ThingBrowserForm.cs">
@ -1080,9 +1074,6 @@
<EmbeddedResource Include="Windows\SectorEditFormUDMF.resx"> <EmbeddedResource Include="Windows\SectorEditFormUDMF.resx">
<DependentUpon>SectorEditFormUDMF.cs</DependentUpon> <DependentUpon>SectorEditFormUDMF.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="Windows\SetDefaultTexturesForm.resx">
<DependentUpon>SetDefaultTexturesForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Windows\TextEditForm.resx"> <EmbeddedResource Include="Windows\TextEditForm.resx">
<SubType>Designer</SubType> <SubType>Designer</SubType>
<DependentUpon>TextEditForm.cs</DependentUpon> <DependentUpon>TextEditForm.cs</DependentUpon>

View file

@ -108,18 +108,11 @@ namespace CodeImp.DoomBuilder.Config
private float gzVertexScale2D; private float gzVertexScale2D;
private bool gzShowVisualVertices; private bool gzShowVisualVertices;
private int gzVisualVertexSize; private int gzVisualVertexSize;
private bool gzForceDefaultTextures;
private string lastUsedConfigName; private string lastUsedConfigName;
private bool gzMarkExtraFloors; private bool gzMarkExtraFloors;
private int maxRecentFiles; private int maxRecentFiles;
// These are not stored in the configuration, only used at runtime // These are not stored in the configuration, only used at runtime
private string defaulttexture;
private int defaultbrightness;
private int defaultfloorheight;
private int defaultceilheight;
private string defaultfloortexture;
private string defaultceiltexture;
private int defaultthingtype = 1; private int defaultthingtype = 1;
private float defaultthingangle; private float defaultthingangle;
private List<string> defaultthingflags; private List<string> defaultthingflags;
@ -194,17 +187,18 @@ namespace CodeImp.DoomBuilder.Config
public float GZVertexScale2D { get { return gzVertexScale2D; } internal set { gzVertexScale2D = value; } } public float GZVertexScale2D { get { return gzVertexScale2D; } internal set { gzVertexScale2D = value; } }
public bool GZShowVisualVertices { get { return gzShowVisualVertices; } internal set { gzShowVisualVertices = value; } } public bool GZShowVisualVertices { get { return gzShowVisualVertices; } internal set { gzShowVisualVertices = value; } }
public int GZVisualVertexSize { get { return gzVisualVertexSize; } internal set { gzVisualVertexSize = value; } } public int GZVisualVertexSize { get { return gzVisualVertexSize; } internal set { gzVisualVertexSize = value; } }
public bool GZForceDefaultTextures { get { return gzForceDefaultTextures; } internal set { gzForceDefaultTextures = value; } }
public string LastUsedConfigName { get { return lastUsedConfigName; } internal set { lastUsedConfigName = value; } } public string LastUsedConfigName { get { return lastUsedConfigName; } internal set { lastUsedConfigName = value; } }
public bool GZMarkExtraFloors { get { return gzMarkExtraFloors; } internal set { gzMarkExtraFloors = value; } } public bool GZMarkExtraFloors { get { return gzMarkExtraFloors; } internal set { gzMarkExtraFloors = value; } }
public int MaxRecentFiles { get { return maxRecentFiles; } internal set { maxRecentFiles = General.Clamp(value, 8, 25); } } public int MaxRecentFiles { get { return maxRecentFiles; } internal set { maxRecentFiles = General.Clamp(value, 8, 25); } }
public string DefaultTexture { get { return defaulttexture; } set { defaulttexture = value; } } //mxd. Left here for compatibility reasons...
public string DefaultFloorTexture { get { return defaultfloortexture; } set { defaultfloortexture = value; } } public string DefaultTexture { get { return General.Map != null ? General.Map.Options.DefaultWallTexture : "-"; } set { if(General.Map != null) General.Map.Options.DefaultWallTexture = value; } }
public string DefaultCeilingTexture { get { return defaultceiltexture; } set { defaultceiltexture = value; } } public string DefaultFloorTexture { get { return General.Map != null ? General.Map.Options.DefaultFloorTexture : "-"; } set { if(General.Map != null) General.Map.Options.DefaultFloorTexture = value; } }
public int DefaultBrightness { get { return defaultbrightness; } set { defaultbrightness = value; } } public string DefaultCeilingTexture { get { return General.Map != null ? General.Map.Options.DefaultCeilingTexture : "-"; } set { if(General.Map != null) General.Map.Options.DefaultCeilingTexture = value; } }
public int DefaultFloorHeight { get { return defaultfloorheight; } set { defaultfloorheight = value; } } public int DefaultBrightness { get { return General.Map != null ? General.Map.Options.DefaultBrightness : 196; } set { if(General.Map != null) General.Map.Options.DefaultBrightness = value; } }
public int DefaultCeilingHeight { get { return defaultceilheight; } set { defaultceilheight = value; } } public int DefaultFloorHeight { get { return General.Map != null ? General.Map.Options.DefaultFloorHeight : 0; } set { if(General.Map != null) General.Map.Options.DefaultFloorHeight = value; } }
public int DefaultCeilingHeight { get { return General.Map != null ? General.Map.Options.DefaultCeilingHeight : 128; } set { if(General.Map != null) General.Map.Options.DefaultCeilingHeight = value; } }
public int DefaultThingType { get { return defaultthingtype; } set { defaultthingtype = value; } } public int DefaultThingType { get { return defaultthingtype; } set { defaultthingtype = value; } }
public float DefaultThingAngle { get { return defaultthingangle; } set { defaultthingangle = value; } } public float DefaultThingAngle { get { return defaultthingangle; } set { defaultthingangle = value; } }
@ -300,11 +294,6 @@ namespace CodeImp.DoomBuilder.Config
gzMarkExtraFloors = cfg.ReadSetting("gzmarkextrafloors", true); gzMarkExtraFloors = cfg.ReadSetting("gzmarkextrafloors", true);
maxRecentFiles = cfg.ReadSetting("maxrecentfiles", 8); maxRecentFiles = cfg.ReadSetting("maxrecentfiles", 8);
//mxd. Sector defaults
defaultceilheight = cfg.ReadSetting("defaultceilheight", 128);
defaultfloorheight = cfg.ReadSetting("defaultfloorheight", 0);
defaultbrightness = cfg.ReadSetting("defaultbrightness", 192);
// Success // Success
return true; return true;
} }
@ -386,11 +375,6 @@ namespace CodeImp.DoomBuilder.Config
cfg.WriteSetting("lastusedconfigname", lastUsedConfigName); cfg.WriteSetting("lastusedconfigname", lastUsedConfigName);
cfg.WriteSetting("maxrecentfiles", maxRecentFiles); cfg.WriteSetting("maxrecentfiles", maxRecentFiles);
//mxd. Sector defaults
cfg.WriteSetting("defaultceilheight", defaultceilheight);
cfg.WriteSetting("defaultfloorheight", defaultfloorheight);
cfg.WriteSetting("defaultbrightness", defaultbrightness);
// Save settings configuration // Save settings configuration
General.WriteLogLine("Saving program configuration..."); General.WriteLogLine("Saving program configuration...");
cfg.SaveConfiguration(filepathname); cfg.SaveConfiguration(filepathname);
@ -552,10 +536,10 @@ namespace CodeImp.DoomBuilder.Config
bool foundone; bool foundone;
// Only possible when a map is loaded // Only possible when a map is loaded
if(General.Map == null) return; if(General.Map == null || General.Map.Options == null) return;
// Default texture missing? // Default texture missing?
if(defaulttexture == null || (!gzForceDefaultTextures && defaulttexture == "-")) //mxd if(!General.Map.Options.OverrideWallTexture || string.IsNullOrEmpty(General.Map.Options.DefaultWallTexture)) //mxd
{ {
// Find default texture from map // Find default texture from map
foundone = false; foundone = false;
@ -563,8 +547,8 @@ namespace CodeImp.DoomBuilder.Config
{ {
if(sd.MiddleTexture != "-") if(sd.MiddleTexture != "-")
{ {
defaulttexture = sd.MiddleTexture; General.Map.Options.DefaultWallTexture = sd.MiddleTexture;
if(General.Map.Data.GetTextureExists(defaulttexture)) if(General.Map.Data.GetTextureExists(General.Map.Options.DefaultWallTexture))
{ {
foundone = true; foundone = true;
break; break;
@ -582,7 +566,7 @@ namespace CodeImp.DoomBuilder.Config
if(s.StartsWith("STARTAN")) if(s.StartsWith("STARTAN"))
{ {
foundone = true; foundone = true;
defaulttexture = s; General.Map.Options.DefaultWallTexture = s;
break; break;
} }
} }
@ -591,13 +575,13 @@ namespace CodeImp.DoomBuilder.Config
if(!foundone) if(!foundone)
{ {
if(General.Map.Data.TextureNames.Count > 1) if(General.Map.Data.TextureNames.Count > 1)
defaulttexture = General.Map.Data.TextureNames[1]; General.Map.Options.DefaultWallTexture = General.Map.Data.TextureNames[1];
} }
} }
} }
// Default floor missing? // Default floor missing?
if(string.IsNullOrEmpty(defaultfloortexture)) if(!General.Map.Options.OverrideFloorTexture || string.IsNullOrEmpty(General.Map.Options.DefaultFloorTexture))
{ {
// Find default texture from map // Find default texture from map
foundone = false; foundone = false;
@ -606,8 +590,8 @@ namespace CodeImp.DoomBuilder.Config
// Find one that is known // Find one that is known
foreach(Sector s in General.Map.Map.Sectors) foreach(Sector s in General.Map.Map.Sectors)
{ {
defaultfloortexture = s.FloorTexture; General.Map.Options.DefaultFloorTexture = s.FloorTexture;
if(General.Map.Data.GetFlatExists(defaultfloortexture)) if(General.Map.Data.GetFlatExists(General.Map.Options.DefaultFloorTexture))
{ {
foundone = true; foundone = true;
break; break;
@ -623,7 +607,7 @@ namespace CodeImp.DoomBuilder.Config
if(s.StartsWith("FLOOR")) if(s.StartsWith("FLOOR"))
{ {
foundone = true; foundone = true;
defaultfloortexture = s; General.Map.Options.DefaultFloorTexture = s;
break; break;
} }
} }
@ -633,12 +617,12 @@ namespace CodeImp.DoomBuilder.Config
if(!foundone) if(!foundone)
{ {
if(General.Map.Data.FlatNames.Count > 1) if(General.Map.Data.FlatNames.Count > 1)
defaultfloortexture = General.Map.Data.FlatNames[1]; General.Map.Options.DefaultFloorTexture = General.Map.Data.FlatNames[1];
} }
} }
// Default ceiling missing? // Default ceiling missing?
if(string.IsNullOrEmpty(defaultceiltexture)) if(!General.Map.Options.OverrideCeilingTexture || string.IsNullOrEmpty(General.Map.Options.DefaultCeilingTexture))
{ {
// Find default texture from map // Find default texture from map
foundone = false; foundone = false;
@ -647,8 +631,8 @@ namespace CodeImp.DoomBuilder.Config
// Find one that is known // Find one that is known
foreach(Sector s in General.Map.Map.Sectors) foreach(Sector s in General.Map.Map.Sectors)
{ {
defaultceiltexture = s.CeilTexture; General.Map.Options.DefaultCeilingTexture = s.CeilTexture;
if(General.Map.Data.GetFlatExists(defaultceiltexture)) if(General.Map.Data.GetFlatExists(General.Map.Options.DefaultCeilingTexture))
{ {
foundone = true; foundone = true;
break; break;
@ -664,7 +648,7 @@ namespace CodeImp.DoomBuilder.Config
if(s.StartsWith("CEIL")) if(s.StartsWith("CEIL"))
{ {
foundone = true; foundone = true;
defaultceiltexture = s; General.Map.Options.DefaultCeilingTexture = s;
break; break;
} }
} }
@ -674,14 +658,14 @@ namespace CodeImp.DoomBuilder.Config
if(!foundone) if(!foundone)
{ {
if(General.Map.Data.FlatNames.Count > 1) if(General.Map.Data.FlatNames.Count > 1)
defaultceiltexture = General.Map.Data.FlatNames[1]; General.Map.Options.DefaultCeilingTexture = General.Map.Data.FlatNames[1];
} }
} }
// Texture names may not be null // Texture names may not be null
if(string.IsNullOrEmpty(defaulttexture)) defaulttexture = "-"; if(string.IsNullOrEmpty(General.Map.Options.DefaultWallTexture)) General.Map.Options.DefaultWallTexture = "-";
if(string.IsNullOrEmpty(defaultfloortexture)) defaultfloortexture = "-"; if(string.IsNullOrEmpty(General.Map.Options.DefaultFloorTexture)) General.Map.Options.DefaultFloorTexture = "-";
if(string.IsNullOrEmpty(defaultceiltexture)) defaultceiltexture = "-"; if(string.IsNullOrEmpty(General.Map.Options.DefaultCeilingTexture)) General.Map.Options.DefaultCeilingTexture = "-";
} }
#endregion #endregion

View file

@ -38,6 +38,8 @@ namespace CodeImp.DoomBuilder.Controls
// This finds the image we need for the given flat name // This finds the image we need for the given flat name
protected override Image FindImage(string imagename) protected override Image FindImage(string imagename)
{ {
timer.Stop(); //mxd
// Check if name is a "none" texture // Check if name is a "none" texture
if((imagename.Length < 1) || (imagename == "-")) if((imagename.Length < 1) || (imagename == "-"))
{ {
@ -52,6 +54,7 @@ namespace CodeImp.DoomBuilder.Controls
if(string.IsNullOrEmpty(texture.FullName) || texture is UnknownImage) DisplayImageSize(0, 0); //mxd if(string.IsNullOrEmpty(texture.FullName) || texture is UnknownImage) DisplayImageSize(0, 0); //mxd
else DisplayImageSize(texture.ScaledWidth, texture.ScaledHeight); //mxd else DisplayImageSize(texture.ScaledWidth, texture.ScaledHeight); //mxd
if(!texture.IsPreviewLoaded) timer.Start(); //mxd
// Set the image // Set the image
return texture.GetPreview(); return texture.GetPreview();
@ -64,7 +67,6 @@ namespace CodeImp.DoomBuilder.Controls
string result; string result;
// Browse for texture // Browse for texture
//result = FlatBrowserForm.Browse(this.ParentForm, imagename);
result = TextureBrowserForm.Browse(this.ParentForm, imagename, true); //mxd result = TextureBrowserForm.Browse(this.ParentForm, imagename, true); //mxd
if(result != null) return result; else return imagename; if(result != null) return result; else return imagename;
} }

View file

@ -29,9 +29,11 @@ namespace CodeImp.DoomBuilder.Controls
/// </summary> /// </summary>
private void InitializeComponent() private void InitializeComponent()
{ {
this.components = new System.ComponentModel.Container();
this.preview = new System.Windows.Forms.Panel(); this.preview = new System.Windows.Forms.Panel();
this.labelSize = new System.Windows.Forms.Label(); this.labelSize = new System.Windows.Forms.Label();
this.name = new CodeImp.DoomBuilder.Controls.AutoSelectTextbox(); this.name = new CodeImp.DoomBuilder.Controls.AutoSelectTextbox();
this.timer = new System.Windows.Forms.Timer(this.components);
this.preview.SuspendLayout(); this.preview.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
@ -78,6 +80,11 @@ namespace CodeImp.DoomBuilder.Controls
this.name.TabIndex = 2; this.name.TabIndex = 2;
this.name.TextChanged += new System.EventHandler(this.name_TextChanged); this.name.TextChanged += new System.EventHandler(this.name_TextChanged);
// //
// timer
//
this.timer.Interval = 1000;
this.timer.Tick += new System.EventHandler(this.timer_Tick);
//
// ImageSelectorControl // ImageSelectorControl
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@ -100,6 +107,7 @@ namespace CodeImp.DoomBuilder.Controls
protected System.Windows.Forms.Panel preview; protected System.Windows.Forms.Panel preview;
protected CodeImp.DoomBuilder.Controls.AutoSelectTextbox name; protected CodeImp.DoomBuilder.Controls.AutoSelectTextbox name;
private System.Windows.Forms.Label labelSize; private System.Windows.Forms.Label labelSize;
protected System.Windows.Forms.Timer timer;
} }
} }

View file

@ -152,6 +152,11 @@ namespace CodeImp.DoomBuilder.Controls
} }
} }
//mxd
private void timer_Tick(object sender, EventArgs e) {
Refresh();
}
#endregion #endregion
#region ================== Methods #region ================== Methods
@ -190,7 +195,7 @@ namespace CodeImp.DoomBuilder.Controls
//mxd //mxd
protected void DisplayImageSize(float width, float height) { protected void DisplayImageSize(float width, float height) {
if(!General.Settings.ShowTextureSizes || width == 0 || height == 0) { if(!General.Settings.ShowTextureSizes || !this.Enabled || width == 0 || height == 0) {
labelSize.Visible = false; labelSize.Visible = false;
return; return;
} }

View file

@ -123,6 +123,9 @@
<metadata name="name.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="name.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="timer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>

View file

@ -45,6 +45,8 @@ namespace CodeImp.DoomBuilder.Controls
// Initialize // Initialize
this.SetStyle(ControlStyles.FixedWidth, true); this.SetStyle(ControlStyles.FixedWidth, true);
this.SetStyle(ControlStyles.FixedHeight, true); this.SetStyle(ControlStyles.FixedHeight, true);
this.MouseEnter += new System.EventHandler(RenderTargetControl_MouseEnter); //mxd
} }
// Disposer // Disposer
@ -71,6 +73,11 @@ namespace CodeImp.DoomBuilder.Controls
if(OnKeyReleased != null) OnKeyReleased(this, e); if(OnKeyReleased != null) OnKeyReleased(this, e);
} }
//mxd
private void RenderTargetControl_MouseEnter(object sender, System.EventArgs e) {
this.Focus();
}
#endregion #endregion
#region ================== Methods #region ================== Methods

View file

@ -44,6 +44,8 @@ namespace CodeImp.DoomBuilder.Controls
// This finds the image we need for the given texture name // This finds the image we need for the given texture name
protected override Image FindImage(string imagename) protected override Image FindImage(string imagename)
{ {
timer.Stop(); //mxd
// Check if name is a "none" texture // Check if name is a "none" texture
if((imagename.Length < 1) || (imagename == "-")) if((imagename.Length < 1) || (imagename == "-"))
{ {
@ -61,6 +63,7 @@ namespace CodeImp.DoomBuilder.Controls
if(string.IsNullOrEmpty(texture.FullName) || texture is UnknownImage) DisplayImageSize(0, 0); //mxd if(string.IsNullOrEmpty(texture.FullName) || texture is UnknownImage) DisplayImageSize(0, 0); //mxd
else DisplayImageSize(texture.ScaledWidth, texture.ScaledHeight); //mxd else DisplayImageSize(texture.ScaledWidth, texture.ScaledHeight); //mxd
if(!texture.IsPreviewLoaded) timer.Start(); //mxd
// Set the image // Set the image
return texture.GetPreview(); return texture.GetPreview();

View file

@ -209,6 +209,7 @@ namespace CodeImp.DoomBuilder.Controls
this.typelist.UseMultiSelection = false; this.typelist.UseMultiSelection = false;
this.typelist.DoubleClick += new System.EventHandler(this.typelist_DoubleClick); this.typelist.DoubleClick += new System.EventHandler(this.typelist_DoubleClick);
this.typelist.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.typelist_AfterSelect); this.typelist.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.typelist_AfterSelect);
this.typelist.MouseEnter += new System.EventHandler(this.typelist_MouseEnter);
// //
// ThingBrowserControl // ThingBrowserControl
// //

View file

@ -289,6 +289,11 @@ namespace CodeImp.DoomBuilder.Controls
sizelabel.Left = sizecaption.Right + sizecaption.Margin.Right; sizelabel.Left = sizecaption.Right + sizecaption.Margin.Right;
} }
//mxd
private void typelist_MouseEnter(object sender, EventArgs e) {
typelist.Focus();
}
//mxd //mxd
private void bClear_Click(object sender, EventArgs e) { private void bClear_Click(object sender, EventArgs e) {
tbFilter.Clear(); tbFilter.Clear();

View file

@ -124,401 +124,401 @@
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABG ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAq
XAAAAk1TRnQBSQFMAgEBFAEAASwBAAEsAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA XAAAAk1TRnQBSQFMAgEBFAEAATQBAAE0AQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABYAMAAQEBAAEgBgABYP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wA3AAGUAYsBxQH/ AwABYAMAAQEBAAEgBgABYP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wA3AAGUAYsBxQH/
AYQBeAHEAf8BgQFvAcQB/wGAAW0BwwH/AXkBawHBAf8BeQFtAbYB/ykAAVIBlwH/AQABQwF6Af8BAAE8 AYQBdwHEAf8BgQFuAcQB/wGAAWwBwwH/AXgBagHBAf8BeAFsAbYB/ykAAVEBlwH/AQABQgF5Af8BAAE7
AW4B/wEAAToBawH/AQABNwFlAf8BAAEwAVgB/ygAAUYBXwFhAf8BNwFPAVEB/wExAUcBSQH/AS8BRQFH AW0B/wEAATkBagH/AQABNgFkAf8BAAEvAVcB/ygAAUUBXgFgAf8BNgFOAVAB/wEwAUYBSAH/AS4BRAFG
Af8BLQFBAUMB/wEpATcBOAH/KAABLQFRAWAB/wEhAUMBUQH/ARwBPQFKAf8BGwE8AUkB/wEaATgBRAH/ Af8BLAFAAUIB/wEoATYBNwH/KAABLAFQAV8B/wEgAUIBUAH/ARsBPAFJAf8BGgE7AUgB/wEZATcBQwH/
ARoBLwE3Af8gAAG5AbQB0gH/AZ8BlQHSAf8BngGUAdMB/wGcAZIB0gH/AZsBkQHSAf8BmQGOAdIB/wGV ARkBLgE2Af8gAAG5AbQB0gH/AZ8BlQHSAf8BngGUAdMB/wGcAZIB0gH/AZsBkQHSAf8BmQGOAdIB/wGV
AYoB0AH/AYsBgQHLAf8BgAFuAcUB/wFvAWkBkQH/GAABUwGUAcsB/wEAAWMBtQH/AQABYwG0Af8BAAFh AYoB0AH/AYsBgQHLAf8BgAFtAcUB/wFuAWgBkQH/GAABUgGUAcsB/wEAAWIBtQH/AQABYgG0Af8BAAFg
AbIB/wEAAWABrwH/AQABXgGrAf8BAAFaAaQB/wEAAU4BjgH/AQABPAFuAf8BKAFCAVcB/xgAAYoBnwGh AbIB/wEAAV8BrwH/AQABXQGrAf8BAAFZAaQB/wEAAU0BjgH/AQABOwFtAf8BJwFBAVYB/xgAAYoBnwGh
Af8BUQF1AXgB/wFQAXUBeAH/AU8BdAF3Af8BTQFyAXUB/wFLAXABcwH/AUgBawFuAf8BPwFcAV8B/wEw Af8BUAF0AXcB/wFPAXQBdwH/AU4BcwF2Af8BTAFxAXQB/wFKAW8BcgH/AUcBagFtAf8BPgFbAV4B/wEv
AUcBSQH/AT4CRQH/GAABdgGUAaEB/wEwAWQBegH/AS8BZQF6Af8BLgFjAXkB/wEtAWIBdwH/ASsBYAF1 AUYBSAH/AT0CRAH/GAABdQGUAaEB/wEvAWMBeQH/AS4BZAF5Af8BLQFiAXgB/wEsAWEBdgH/ASoBXwF0
Af8BKQFbAXAB/wEkAU8BYAH/ARwBPQFKAf8BNwFAAUUB/xQAAbwBtwHYAf8BqwGhAeIB/wGuAaMB6AH/ Af8BKAFaAW8B/wEjAU4BXwH/ARsBPAFJAf8BNgE/AUQB/xQAAbwBtwHYAf8BqwGhAeIB/wGuAaMB6AH/
AbABpAHsAf8BrwGkAesB/wGvAaQB6gH/Aa8BpAHqAf8BrQGhAegB/wGqAZ8B4gH/AZ0BkwHTAf8BgwF2 AbABpAHsAf8BrwGkAesB/wGvAaQB6gH/Aa8BpAHqAf8BrQGhAegB/wGqAZ8B4gH/AZ0BkwHTAf8BgwF1
AcYB/wFuAWgBkQH/EAABVQGbAdQB/wEAAXgB2wH/AQABgQHmAf8BAAGCAe0B/wEAAYEB7AH/AQABgQHq AcYB/wFtAWcBkQH/EAABVAGbAdQB/wEAAXcB2wH/AQABgQHmAf8BAAGCAe0B/wEAAYEB7AH/AQABgQHq
Af8BAAGBAeoB/wEAAYEB5AH/AQABdwHZAf8BAAFiAbMB/wEAAUMBgAH/AScBQQFWAf8QAAGNAagBqgH/ Af8BAAGBAeoB/wEAAYEB5AH/AQABdgHZAf8BAAFhAbMB/wEAAUIBgAH/ASYBQAFVAf8QAAGNAagBqgH/
AVsBkwGYAf8BWwGfAaUB/wFdAaUBqwH/AV0BowGpAf8BXAGiAagB/wFcAaIBqAH/AVoBngGjAf8BWQGT AVoBkwGYAf8BWgGfAaUB/wFcAaUBqwH/AVwBowGpAf8BWwGiAagB/wFbAaIBqAH/AVkBngGjAf8BWAGT
AZgB/wFQAXQBeAH/ATcBUAFSAf8BPgFEAUUB/xAAAXUBnAGsAf8BLQGBAaAB/wEmAYkBsQH/ASEBkQG9 AZgB/wFPAXMBdwH/ATYBTwFRAf8BPQFDAUQB/xAAAXQBnAGsAf8BLAGBAaAB/wElAYkBsQH/ASABkQG9
Af8BIgGPAboB/wEjAY0BuAH/ASMBjQG4Af8BJQGIAa8B/wErAYEBoAH/AS4BZAF6Af8BIAFEAVMB/wE2 Af8BIQGPAboB/wEiAY0BuAH/ASIBjQG4Af8BJAGIAa8B/wEqAYEBoAH/AS0BYwF5Af8BHwFDAVIB/wE1
AUABRAH/EAABrAGiAeMB/wGvAaQB6wH/AbUBqgHwAf8BtQGqAfAB/wG1AaoB8AH/AbUBqgHwAf8BsAGl AT8BQwH/EAABrAGiAeMB/wGvAaQB6wH/AbUBqgHwAf8BtQGqAfAB/wG1AaoB8AH/AbUBqgHwAf8BsAGl
Ae0B/wGxAaYB7wH/Aa0BogHnAf8BlwGNAc8B/wGZAY4B0QH/AYIBdQHGAf8RAAF5Ad4B/wEAAYEB7QH/ Ae0B/wGxAaYB7wH/Aa0BogHnAf8BlwGNAc8B/wGZAY4B0QH/AYIBdAHGAf8RAAF4Ad4B/wEAAYEB7QH/
AQABiQH6Af8BAAGJAfoB/wEAAYkB+gH/AQABiQH6Af8BAAGDAfAB/wEAAYUB9AH/AQABgQHkAf8BAAFa AQABiQH6Af8BAAGJAfoB/wEAAYkB+gH/AQABiQH6Af8BAAGDAfAB/wEAAYUB9AH/AQABgQHkAf8BAAFZ
AaUB/wEAAV4BqwH/AQABQgF5Af8QAAFbAZcBnAH/AV0BpAGqAf8BZAGsAbIB/wFkAawBsgH/AWQBrAGy AaUB/wEAAV0BqwH/AQABQQF4Af8QAAFaAZcBnAH/AVwBpAGqAf8BYwGsAbIB/wFjAawBsgH/AWMBrAGy
Af8BZAGsAbIB/wFeAaYBrAH/AV8BqQGvAf8BWwGdAaIB/wFKAWsBbgH/AUwBbwFyAf8BNgFOAVAB/xAA Af8BYwGsAbIB/wFdAaYBrAH/AV4BqQGvAf8BWgGdAaIB/wFJAWoBbQH/AUsBbgFxAf8BNQFNAU8B/xAA
ASwBggGkAf8BIgGPAbwB/wEdAZsBzQH/AR0BmwHNAf8BHQGbAc0B/wEdAZsBzQH/ASABkgHAAf8BHQGW ASsBggGkAf8BIQGPAbwB/wEcAZsBzQH/ARwBmwHNAf8BHAGbAc0B/wEcAZsBzQH/AR8BkgHAAf8BHAGW
AcYB/wEoAYcBrQH/ASsBXAFvAf8BLAFfAXQB/wEfAUMBUgH/DAABsgGnAeoB/wG1AasB7QH/AbQBqAHx AcYB/wEnAYcBrQH/ASoBWwFuAf8BKwFeAXMB/wEeAUIBUQH/DAABsgGnAeoB/wG1AasB7QH/AbQBqAHx
Af8BtQGqAfAB/wG1AaoB8AH/AbUBqgHvAf8BswGoAesB/wGmAZ0B0wH/AYIBdgHAAf8BYAFRAa4B/wMA Af8BtQGqAfAB/wG1AaoB8AH/AbUBqgHvAf8BswGoAesB/wGmAZ0B0wH/AYIBdQHAAf8BXwFQAa4B/wMA
Af8BmQGPAdAB/wGVAYoB0AH/AYEBcgG9Af8JAAGCAe8B/wEAAYgB+AH/AQABiQH6Af8BAAGJAfoB/wEA Af8BmQGPAdAB/wGVAYoB0AH/AYEBcQG9Af8JAAGCAe8B/wEAAYgB+AH/AQABiQH6Af8BAAGJAfoB/wEA
AYkB+gH/AQABiAH6Af8BAAGEAfEB/wEAAWoBwgH/AQABPwFzAf8BAAEVAScB/wMAAf8BAAFdAaoB/wEA AYkB+gH/AQABiAH6Af8BAAGEAfEB/wEAAWkBwgH/AQABPgFyAf8BAAEUASYB/wMAAf8BAAFcAaoB/wEA
AVoBpAH/AQABOQFoAf8IAAFgAaQBqgH/AWUBqQGvAf8BYgGtAbQB/wFkAawBsgH/AWQBrAGyAf8BZAGr AVkBpAH/AQABOAFnAf8IAAFfAaQBqgH/AWQBqQGvAf8BYQGtAbQB/wFjAawBsgH/AWMBrAGyAf8BYwGr
AbEB/wFiAaUBqgH/AVgCgQH/ATQBSQFLAf8BEgIZAf8DAAH/AUwBbwFyAf8BSAFrAW4B/wEwAUIBRAH/ AbEB/wFhAaUBqgH/AVcCgQH/ATMBSAFKAf8BEQIYAf8DAAH/AUsBbgFxAf8BRwFqAW0B/wEvAUEBQwH/
CAABJQGQAbsB/wEiAZcBxgH/ARkBnAHRAf8BHQGbAc0B/wEdAZsBzQH/AR4BmgHLAf8BJQGRAbwB/wE2 CAABJAGQAbsB/wEhAZcBxgH/ARgBnAHRAf8BHAGbAc0B/wEcAZsBzQH/AR0BmgHLAf8BJAGRAbwB/wE1
AWoBgQH/ASABPwFLAf8BCwEVARkB/wMAAf8BLAFfAXMB/wEpAVsBcAH/AR4BOQFDAf8IAAG1AaoB8gH/ AWkBgQH/AR8BPgFKAf8BCgEUARgB/wMAAf8BKwFeAXIB/wEoAVoBbwH/AR0BOAFCAf8IAAG1AaoB8gH/
Ab8BtQHzAf8BtwGsAfAB/wG1AaoB8AH/AakBoAHZAf8BiQGBAcQB/wFlAVYBswH/AV8BVgGNAf8DAAH/ Ab8BtQHzAf8BtwGsAfAB/wG1AaoB8AH/AakBoAHZAf8BiQGBAcQB/wFkAVUBswH/AV4BVQGNAf8DAAH/
AwAB/wFbAUwBqwH/Aa0BogHlAf8BpAGaAdcB/wGIAYAByAH/CQABigH9Af8BDwGSAv8BAAGLAf4B/wEA AwAB/wFaAUsBqwH/Aa0BogHlAf8BpAGaAdcB/wGIAYAByAH/CQABigH9Af8BDgGSAv8BAAGLAf4B/wEA
AYkB+gH/AQABcAHOAf8BAAFIAYMB/wEAAR0BNQH/AQABAQECAf8DAAH/AwAB/wEAAQ8BHAH/AQABgAHh AYkB+gH/AQABbwHOAf8BAAFHAYMB/wEAARwBNAH/AgABAQH/AwAB/wMAAf8BAAEOARsB/wEAAYAB4QH/
Af8BAAFrAcQB/wEAAUkBhQH/CAABZAGuAbUB/wFyAbUBuwH/AWcBrQGzAf8BZAGsAbIB/wFbAYYBigH/ AQABagHEAf8BAAFIAYUB/wgAAWMBrgG1Af8BcQG1AbsB/wFmAa0BswH/AWMBrAGyAf8BWgGGAYoB/wE7
ATwBVAFWAf8BGAEiASMB/wMBAf8DAAH/AwAB/wENAhIB/wFbAZoBoAH/AVYBgQGDAf8BOwFWAVgB/wgA AVMBVQH/ARcBIQEiAf8DAAH/AwAB/wMAAf8BDAIRAf8BWgGaAaAB/wFVAYEBgwH/AToBVQFXAf8IAAEZ
ARoBngHSAf8BGwGpAeIB/wEeAZ0BzwH/AR0BmwHNAf8BNAFzAYwB/wEkAUgBVgH/AQ4BHQEjAf8BAAIB AZ4B0gH/ARoBqQHiAf8BHQGdAc8B/wEcAZsBzQH/ATMBcgGMAf8BIwFHAVUB/wENARwBIgH/AwAB/wMA
Af8DAAH/AwAB/wEHAQ8BEgH/ASkBhQGqAf8BMQFuAYYB/wEiAUoBWgH/CAABvQGzAfMB/wHGAb0B9QH/ Af8DAAH/AQYBDgERAf8BKAGFAaoB/wEwAW0BhgH/ASEBSQFZAf8IAAG9AbMB8wH/AcYBvQH1Af8BugGw
AboBsAHwAf8BtQGqAfAB/wGVAYoBygH/AYABbgG8Af8BWAFJAaQB/wMAAf8DAAH/AwAB/wGEAXkBwQH/ AfAB/wG1AaoB8AH/AZUBigHKAf8BgAFtAbwB/wFXAUgBpAH/AwAB/wMAAf8DAAH/AYQBeAHBAf8BsgGn
AbIBpwHwAf8BqQGeAeIB/wGOAYIBzQH/CAABDAGRAv8BHAGYAv8BBAGNAv8BAAGJAfoB/wEAAVUBnAH/ AfAB/wGpAZ4B4gH/AY4BggHNAf8IAAELAZEC/wEbAZgC/wEDAY0C/wEAAYkB+gH/AQABVAGcAf8BAAE1
AQABNgFiAf8BAAEIAQ8B/wMAAf8DAAH/AwAB/wEAAUIBeAH/AQABhgH2Af8BAAF2AdcB/wEAAVEBlAH/ AWEB/wEAAQcBDgH/AwAB/wMAAf8DAAH/AQABQQF3Af8BAAGGAfYB/wEAAXUB1wH/AQABUAGUAf8IAAFu
CAABbwG0AboB/wGBAboBwAH/AWwBrwG1Af8BZAGsAbIB/wFHAWQBZgH/AS0BPgFAAf8BBwEJAQoB/wMA AbQBugH/AYEBugHAAf8BawGvAbUB/wFjAawBsgH/AUYBYwFlAf8BLAE9AT8B/wEGAQgBCQH/AwAB/wMA
Af8DAAH/AwAB/wE3AU0BTgH/AWABqwGxAf8BWQGSAZcB/wFBAWEBYwH/CAABGwGnAd4B/wElAa4B5AH/ Af8DAAH/ATYBTAFNAf8BXwGrAbEB/wFYAZIBlwH/AUABYAFiAf8IAAEaAacB3gH/ASQBrgHkAf8BHwGg
ASABoAHTAf8BHQGbAc0B/wEsAVYBZgH/ARwBNgFAAf8BBAEIAQoB/wMAAf8DAAH/AwAB/wEiAUIBTgH/ AdMB/wEcAZsBzQH/ASsBVQFlAf8BGwE1AT8B/wEDAQcBCQH/AwAB/wMAAf8DAAH/ASEBQQFNAf8BGwGY
ARwBmAHKAf8BKwGBAZ8B/wEmAVMBZQH/CAABwQG4AfQB/wHKAcIB9QH/AbsBsQHwAf8BtQGqAfAB/wG1 AcoB/wEqAYEBnwH/ASUBUgFkAf8IAAHBAbgB9AH/AcoBwgH1Af8BuwGxAfAB/wG1AaoB8AH/AbUBqgHv
AaoB7wH/AbUBqgHvAf8BbQFgAbcB/wMAAf8DAAH/AVcBSQGdAf8BqAGfAdcB/wGvAaQB6wH/Aa0BogHm Af8BtQGqAe8B/wFsAV8BtwH/AwAB/wMAAf8BVgFIAZ0B/wGoAZ8B1wH/Aa8BpAHrAf8BrQGiAeYB/wGR
Af8BkQGFAc4B/wgAARMBlAL/ASMBmwL/AQQBjQL/AQABiQH6Af8BAAGIAfoB/wEAAYgB+QH/AQABJwFH AYUBzgH/CAABEgGUAv8BIgGbAv8BAwGNAv8BAAGJAfoB/wEAAYgB+gH/AQABiAH5Af8BAAEmAUYB/wMA
Af8DAAH/AwAB/wEAAQMBBQH/AQABbwHLAf8BAAGBAewB/wEAAYEB4gH/AQABVAGaAf8IAAF0AbcBvQH/ Af8DAAH/AQABAgEEAf8BAAFuAcsB/wEAAYEB7AH/AQABgQHiAf8BAAFTAZoB/wgAAXMBtwG9Af8BgQG9
AYEBvQHCAf8BbAGvAbQB/wFkAawBsgH/AWQBqwGxAf8BZAGrAbEB/wEgAS0BLwH/AwAB/wMAAf8BAgID AcIB/wFrAa8BtAH/AWMBrAGyAf8BYwGrAbEB/wFjAasBsQH/AR8BLAEuAf8DAAH/AwAB/wEBAgIB/wFZ
Af8BWgGDAYcB/wFdAaMBqQH/AVoBmwGhAf8BRAFkAWcB/wgAAR4BqwHjAf8BKwGwAeUB/wEhAZ8B0QH/ AYMBhwH/AVwBowGpAf8BWQGbAaEB/wFDAWMBZgH/CAABHQGrAeMB/wEqAbAB5QH/ASABnwHRAf8BHAGb
AR0BmwHNAf8BHgGaAcsB/wEfAZkByQH/ARQBJwEvAf8DAAH/AwAB/wEBAgMB/wE1AXEBiQH/ASIBjwG6 Ac0B/wEdAZoBywH/AR4BmQHJAf8BEwEmAS4B/wMAAf8DAAH/AQACAgH/ATQBcAGJAf8BIQGPAboB/wEm
Af8BJwGGAawB/wEnAVYBaQH/CAABwAG3AfQB/wHPAcgB9gH/AcABtgHzAf8BtAGpAewB/wGyAagB6gH/ AYYBrAH/ASYBVQFoAf8IAAHAAbcB9AH/Ac8ByAH2Af8BwAG2AfMB/wG0AakB7AH/AbIBqAHqAf8BdAFn
AXUBaAG6Af8BOQEeAcQB/wGDAXgBwgH/AVQBRQGiAf8BbQFgAbcB/wG1AaoB7gH/AbUBqgHwAf8BqwGh AboB/wE4AR0BxAH/AYMBdwHCAf8BUwFEAaIB/wFsAV8BtwH/AbUBqgHuAf8BtQGqAfAB/wGrAaEB4wH/
AeMB/wGRAYYBzQH/CAABEgGUAv8BLQGgAv8BEAGTAv8BAAGFAfQB/wEAAYMB8AH/AQABLwFWAf8DAAH/ AZEBhgHNAf8IAAERAZQC/wEsAaAC/wEPAZMC/wEAAYUB9AH/AQABgwHwAf8BAAEuAVUB/wMAAf8BAAFA
AQABQQF3Af8BAAEDAQYB/wEAAScBRwH/AQABiAH4Af8BAAGJAfoB/wEAAXkB3QH/AQABVAGZAf8IAAFz AXYB/wEAAQIBBQH/AQABJgFGAf8BAAGIAfgB/wEAAYkB+gH/AQABeAHdAf8BAAFTAZkB/wgAAXIBtgG8
AbYBvAH/AYgBwQHGAf8BcwG1AbsB/wFjAacBrAH/AWEBpAGpAf8BJwE3ATkB/wMAAf8BNgFMAU4B/wED Af8BiAHBAcYB/wFyAbUBuwH/AWIBpwGsAf8BYAGkAakB/wEmATYBOAH/AwAB/wE1AUsBTQH/AQICAwH/
AgQB/wEgAS0BLwH/AWQBqgGwAf8BZAGsAbIB/wFaAZYBmwH/AUQBYwFmAf8IAAEdAaoB4wH/ATQBswHm AR8BLAEuAf8BYwGqAbAB/wFjAawBsgH/AVkBlgGbAf8BQwFiAWUB/wgAARwBqgHjAf8BMwGzAeYB/wEc
Af8BHQGpAeEB/wEkAZQBwAH/ASYBkAG6Af8BGAEvATkB/wMAAf8BIQFBAU4B/wEBAQMBBAH/ARQBJwEv AakB4QH/ASMBlAHAAf8BJQGQAboB/wEXAS4BOAH/AwAB/wEgAUABTQH/AQABAgEDAf8BEwEmAS4B/wEf
Af8BIAGYAcgB/wEdAZsBzQH/ASoBgQGkAf8BKAFVAWcB/wgAAbwBsQHzAf8B0wHMAfcB/wHMAcQB9gH/ AZgByAH/ARwBmwHNAf8BKQGBAaQB/wEnAVQBZgH/CAABvAGxAfMB/wHTAcwB9wH/AcwBxAH2Af8BuwGy
AbsBsgHqAf8BdQFoAboB/wMAAf8BkwGJAckB/wG3AasB8gH/AWwBXgG2Af8BlQGKAcoB/wG2AasB8QH/ AeoB/wF0AWcBugH/AwAB/wGTAYkByQH/AbcBqwHyAf8BawFdAbYB/wGVAYoBygH/AbYBqwHxAf8BtQGq
AbUBqgHwAf8BqwGhAeIB/wGYAY8BzAH/CAABCQGQAv8BMwGjAv8BJwGdAv8BAAGKAf0B/wEAAS8BVgH/ AfAB/wGrAaEB4gH/AZgBjwHMAf8IAAEIAZAC/wEyAaMC/wEmAZ0C/wEAAYoB/QH/AQABLgFVAf8DAAH/
AwAB/wEAAVMBlwH/AQABiwL/AQABJQFDAf8BAAFVAZwB/wEAAYsB/gH/AQABiQH6Af8BAAF4AdsB/wEA AQABUgGXAf8BAAGLAv8BAAEkAUIB/wEAAVQBnAH/AQABiwH+Af8BAAGJAfoB/wEAAXcB2wH/AQABWQGk
AVoBpAH/CAABbQGzAbkB/wGNAcMByAH/AYMBvwHEAf8BbQGoAa0B/wEnATcBOQH/AwAB/wFFAWEBYwH/ Af8IAAFsAbMBuQH/AY0BwwHIAf8BgwG/AcQB/wFsAagBrQH/ASYBNgE4Af8DAAH/AUQBYAFiAf8BZQGv
AWYBrwG1Af8BHwErASwB/wFHAWQBZgH/AWYBrwG1Af8BZAGsAbIB/wFaAZQBmAH/AUsBaQFsAf8IAAEb AbUB/wEeASoBKwH/AUYBYwFlAf8BZQGvAbUB/wFjAawBsgH/AVkBlAGYAf8BSgFoAWsB/wgAARoBpQHd
AaUB3QH/ATkBtQHmAf8BLgGxAeUB/wEtAZYBwAH/ARgBLwE5Af8DAAH/ASsBUwFjAf8BGgGfAdUB/wET Af8BOAG1AeYB/wEtAbEB5QH/ASwBlgHAAf8BFwEuATgB/wMAAf8BKgFSAWIB/wEZAZ8B1QH/ARIBJAEr
ASUBLAH/ASwBVgFmAf8BGwGeAdMB/wEdAZsBzQH/ASwBgQGgAf8BLgFaAWwB/wwAAdMBzQH3Af8B1gHQ Af8BKwFVAWUB/wEaAZ4B0wH/ARwBmwHNAf8BKwGBAaAB/wEtAVkBawH/DAAB0wHNAfcB/wHWAdAB9wH/
AfcB/wGpAaMBzAH/AV8BVgGNAf8BlAGKAcoB/wG2AasB8QH/AbUBqgHuAf8BpAGbAdIB/wGvAaUB5AH/ AakBowHMAf8BXgFVAY0B/wGUAYoBygH/AbYBqwHxAf8BtQGqAe4B/wGkAZsB0gH/Aa8BpQHkAf8BtQGq
AbUBqgHwAf8BtQGqAfAB/wGsAaIB5AH/EAABNQGjAv8BOQGlAv8BAAFpAcAB/wEAAQEBAgH/AQABVQGb AfAB/wG1AaoB8AH/AawBogHkAf8QAAE0AaMC/wE4AaUC/wEAAWgBwAH/AgABAQH/AQABVAGbAf8BAAGK
Af8BAAGKAf0B/wEAAYgB+AH/AQABZwG9Af8BAAGBAeQB/wEAAYkB+gH/AQABiQH6Af8BAAF6AeAB/xAA Af0B/wEAAYgB+AH/AQABZgG9Af8BAAGBAeQB/wEAAYkB+gH/AQABiQH6Af8BAAF5AeAB/xAAAY4BxAHI
AY4BxAHIAf8BkQHGAcoB/wFcAXcBeQH/AwEB/wFHAWMBZgH/AWUBrQG0Af8BZAGqAbAB/wFWAXkBgQH/ Af8BkQHGAcoB/wFbAXYBeAH/AwAB/wFGAWIBZQH/AWQBrQG0Af8BYwGqAbAB/wFVAXgBgQH/AV0BmgGf
AV4BmgGfAf8BZAGsAbIB/wFkAawBsgH/AVsBmQGeAf8QAAE6AbUB5wH/AT4BtgHnAf8BPgFlAXUB/wEA Af8BYwGsAbIB/wFjAawBsgH/AVoBmQGeAf8QAAE5AbUB5wH/AT0BtgHnAf8BPQFkAXQB/wMAAf8BKgFU
AgEB/wErAVUBZgH/ARwBnQHQAf8BIAGYAcgB/wE1AWgBgQH/AS0BhQGoAf8BHQGbAc0B/wEdAZsBzQH/ AWUB/wEbAZ0B0AH/AR8BmAHIAf8BNAFnAYEB/wEsAYUBqAH/ARwBmwHNAf8BHAGbAc0B/wEpAYMBpwH/
ASoBgwGnAf8QAAHdAdgB+QH/AdoB1QH4Af8BwgG7AeYB/wGwAaoB1QH/AcEBtwHyAf8BuwGyAe4B/wG5 EAAB3QHYAfkB/wHaAdUB+AH/AcIBuwHmAf8BsAGqAdUB/wHBAbcB8gH/AbsBsgHuAf8BuQGvAe8B/wG1
Aa8B7wH/AbUBqgHwAf8BtQGqAfAB/wG1AaoB8AH/AbUBqgHwAf8BvAG2AdwB/xAAAXcBwQL/AUEBqQL/ AaoB8AH/AbUBqgHwAf8BtQGqAfAB/wG1AaoB8AH/AbwBtgHcAf8QAAF2AcEC/wFAAakC/wEEAY4C/wEA
AQUBjgL/AQABdQHVAf8BEAGTAv8BAwGNAv8BAQGMAv8BAAGJAfoB/wEAAYkB+gH/AQABiQH6Af8BAAGJ AXQB1QH/AQ8BkwL/AQIBjQL/AQABjAL/AQABiQH6Af8BAAGJAfoB/wEAAYkB+gH/AQABiQH6Af8BUQGd
AfoB/wFSAZ0B3AH/EAABsQHXAdoB/wGXAckBzQH/AXgBpQGpAf8BYwGHAYoB/wF0AbQBugH/AW0BrQGy AdwB/xAAAbEB1wHaAf8BlwHJAc0B/wF3AaUBqQH/AWIBhwGKAf8BcwG0AboB/wFsAa0BsgH/AWoBrQGy
Af8BawGtAbIB/wFkAawBsgH/AWQBrAGyAf8BZAGsAbIB/wFkAawBsgH/AYsBrwGyAf8QAAGBAc8B7wH/ Af8BYwGsAbIB/wFjAawBsgH/AWMBrAGyAf8BYwGsAbIB/wGLAa8BsgH/EAABgQHPAe8B/wFDAbkB6AH/
AUQBuQHoAf8BPgGTAbYB/wE/AXMBiAH/ASEBpwHdAf8BJgGdAcwB/wEjAZwBzQH/AR0BmwHNAf8BHQGb AT0BkwG2Af8BPgFyAYgB/wEgAacB3QH/ASUBnQHMAf8BIgGcAc0B/wEcAZsBzQH/ARwBmwHNAf8BHAGb
Ac0B/wEdAZsBzQH/AR0BmwHNAf8BbQGiAbcB/xQAAeEB3QH6Af8B1gHQAfgB/wHTAcwB9wH/Ac4BxwH2 Ac0B/wEcAZsBzQH/AWwBogG3Af8UAAHhAd0B+gH/AdYB0AH4Af8B0wHMAfcB/wHOAccB9gH/AcUBvAH0
Af8BxQG8AfQB/wG8AbEB8gH/AbcBrQHwAf8BswGoAe4B/wGxAaYB7wH/Ab8BuAHhAf8YAAGBAcUC/wE6 Af8BvAGxAfIB/wG3Aa0B8AH/AbMBqAHuAf8BsQGmAe8B/wG/AbgB4QH/GAABgQHFAv8BOQGmAv8BMwGj
AaYC/wE0AaMC/wErAZ8C/wEZAZcC/wEIAY8C/wEAAYsB/gH/AQABhgH2Af8BAAGFAfQB/wFVAaIB4gH/ Av8BKgGfAv8BGAGXAv8BBwGPAv8BAAGLAf4B/wEAAYYB9gH/AQABhQH0Af8BVAGiAeIB/xgAAbUB2QHc
GAABtQHZAdwB/wGSAcYBygH/AY0BxAHIAf8BhgHAAcUB/wF5AbkBvwH/AW0BsgG4Af8BaAGtAbMB/wFi Af8BkgHGAcoB/wGNAcQByAH/AYYBwAHFAf8BeAG5Ab8B/wFsAbIBuAH/AWcBrQGzAf8BYQGpAa8B/wFe
AakBrwH/AV8BqQGwAf8BjQG2AbkB/xgAAYMB0QHwAf8BPgG3AecB/wE5AbUB5gH/ATIBsgHlAf8BIwGs AakBsAH/AY0BtgG5Af8YAAGDAdEB8AH/AT0BtwHnAf8BOAG1AeYB/wExAbIB5QH/ASIBrAHkAf8BHAGj
AeQB/wEdAaMB2QH/AR8BnAHOAf8BIAGXAcYB/wEcAZYBxwH/AWwBqQHCAf8gAAHDAboB9AH/AccBvwH1 AdkB/wEeAZwBzgH/AR8BlwHGAf8BGwGWAccB/wFrAakBwgH/IAABwwG6AfQB/wHHAb8B9QH/AcsBwwH1
Af8BywHDAfUB/wHFAbwB9AH/AbwBsQHzAf8BsQGmAe8B/ygAARgBlgL/AR4BmQL/ASUBnAL/ARkBlwL/ Af8BxQG8AfQB/wG8AbEB8wH/AbEBpgHvAf8oAAEXAZYC/wEdAZkC/wEkAZwC/wEYAZcC/wEIAZAC/wEA
AQkBkAL/AQABhQH0Af8oAAF4AbkBvgH/AYEBuwHAAf8BggG+AcMB/wF5AbkBvwH/AW0BswG5Af8BXwGp AYUB9AH/KAABdwG5Ab4B/wGBAbsBwAH/AYIBvgHDAf8BeAG5Ab8B/wFsAbMBuQH/AV4BqQGvAf8oAAEg
Aa8B/ygAASEBrAHkAf8BJwGuAeQB/wEtAbAB5QH/ASMBrAHkAf8BGwGlAd0B/wEdAZYBxgH//wD/ACoA AawB5AH/ASYBrgHkAf8BLAGwAeUB/wEiAawB5AH/ARoBpQHdAf8BHAGWAcYB//8A/wAqAAE1AUEBggH/
ATYBQgGCAf8BJgExAW8B/wEhASsBZgH/ASABKgFjAf8BHgEoAV0B/wEgASYBTAH/KAABkgFOAZIB/wGB ASUBMAFuAf8BIAEqAWUB/wEfASkBYgH/AR0BJwFcAf8BHwElAUsB/ygAAZIBTQGSAf8BgQE8AYEB/wF3
AT0BgQH/AXgBNwF4Af8BdgE1AXYB/wFwATQBcAH/AWABNAFgAf8pAAKQAf8BAAJ1Af8BAAJqAf8BAAJn ATYBdwH/AXUBNAF1Af8BbwEzAW8B/wFfATMBXwH/KQACkAH/AQACdAH/AQACaQH/AQACZgH/AQACYAH/
Af8BAAJhAf8BAAJUAf8oAAOlAf8DkQH/A4cB/wOFAf8DgQH/A3UB/yAAAYEBhgG8Af8BNwFIAaYB/wE2 AQACUwH/KAADpQH/A5EB/wOHAf8DhQH/A4EB/wN0Af8gAAGBAYYBvAH/ATYBRwGmAf8BNQFGAacB/wE0
AUcBpwH/ATUBRgGlAf8BNAFEAaMB/wEyAUIBoAH/ATABPwGZAf8BKgE3AYMB/wEgASoBZgH/AToBPQFP AUUBpQH/ATMBQwGjAf8BMQFBAaAB/wEvAT4BmQH/ASkBNgGDAf8BHwEpAWUB/wE5ATwBTgH/GAABvgGT
Af8YAAG+AZMBvgH/AbABVQGwAf8BsQFTAbEB/wGwAVEBsAH/Aa8BTwGvAf8BrAFNAawB/wGmAUoBpgH/ Ab4B/wGwAVQBsAH/AbEBUgGxAf8BsAFQAbAB/wGvAU4BrwH/AawBTAGsAf8BpgFJAaYB/wGTAUEBkwH/
AZMBQgGTAf8BeAE2AXgB/wFbAUYBWwH/GAABdwLJAf8BAAKtAf8BAAKtAf8BAAKrAf8BAAKoAf8BAAKk AXcBNQF3Af8BWgFFAVoB/xgAAXYCyQH/AQACrQH/AQACrQH/AQACqwH/AQACqAH/AQACpAH/AQACnQH/
Af8BAAKdAf8BAAKIAf8BAAJpAf8BOQJZAf8YAAPJAf8DuwH/A7sB/wO4Af8DtgH/A7UB/wOvAf8DngH/ AQACiAH/AQACaAH/ATgCWAH/GAADyQH/A7sB/wO7Af8DuAH/A7YB/wO1Af8DrwH/A54B/wOHAf8DaAH/
A4cB/wNpAf8UAAGAAYcBywH/ATgBTwHTAf8BOQFSAeEB/wE6AVQB6QH/AToBVAHnAf8BOQFTAeYB/wE5 FAABgAGHAcsB/wE3AU4B0wH/ATgBUQHhAf8BOQFTAekB/wE5AVMB5wH/ATgBUgHmAf8BOAFSAeYB/wE1
AVMB5gH/ATYBUAHhAf8BNQFNAdUB/wE2AUYBpgH/ASUBMAFyAf8BOQE8AU4B/xAAAccBlgHHAf8ByQFp AU8B4QH/ATQBTAHVAf8BNQFFAaYB/wEkAS8BcQH/ATgBOwFNAf8QAAHHAZYBxwH/AckBaAHJAf8B0wFs
AckB/wHTAW0B0wH/AdkBbwHZAf8B2AFwAdgB/wHXAW4B1wH/AdcBbgHXAf8B0gFqAdIB/wHKAWcBygH/ AdMB/wHZAW4B2QH/AdgBbwHYAf8B1wFtAdcB/wHXAW0B1wH/AdIBaQHSAf8BygFmAcoB/wGwAVIBsAH/
AbABUwGwAf8BggE8AYIB/wFbAUUBWwH/EAABeQLRAf8BAALRAf8BAALcAf8BAALkAf8BAALiAf8BAALh AYIBOwGCAf8BWgFEAVoB/xAAAXgC0QH/AQAC0QH/AQAC3AH/AQAC5AH/AQAC4gH/AQAC4QH/AQAC4QH/
Af8BAALhAf8BAALaAf8BAALQAf8BAAKsAf8BAAJ2Af8BOAJYAf8QAAPRAf8D0wH/A9oB/wPfAf8D3gH/ AQAC2gH/AQAC0AH/AQACrAH/AQACdQH/ATcCVwH/EAAD0QH/A9MB/wPaAf8D3wH/A94B/wPcAf8D3AH/
A9wB/wPcAf8D2QH/A9IB/wO6Af8DkgH/A2gB/xAAAToBUQHXAf8BOgFUAegB/wFCAVwB8AH/AUIBXAHw A9kB/wPSAf8DugH/A5IB/wNnAf8QAAE5AVAB1wH/ATkBUwHoAf8BQQFbAfAB/wFBAVsB8AH/AUEBWwHw
Af8BQgFcAfAB/wFCAVwB8AH/AToBVQHrAf8BPAFWAe8B/wE5AVIB3gH/ATIBQQGYAf8BMwFDAZ8B/wEk Af8BQQFbAfAB/wE5AVQB6wH/ATsBVQHvAf8BOAFRAd4B/wExAUABmAH/ATIBQgGfAf8BIwEuAW8B/xAA
AS8BcAH/EAABywFrAcsB/wHYAW8B2AH/AeABeQHgAf8B4AF5AeAB/wHgAXkB4AH/AeABeQHgAf8B2wFx AcsBagHLAf8B2AFuAdgB/wHgAXgB4AH/AeABeAHgAf8B4AF4AeAB/wHgAXgB4AH/AdsBcAHbAf8B3gFy
AdsB/wHeAXMB3gH/AdEBbAHRAf8BpQFMAaUB/wGrAU4BqwH/AYEBOwGBAf8RAALVAf8BAALjAf8BAALw Ad4B/wHRAWsB0QH/AaUBSwGlAf8BqwFNAasB/wGBAToBgQH/EQAC1QH/AQAC4wH/AQAC8AH/AQAC8AH/
Af8BAALwAf8BAALwAf8BAALwAf8BAALmAf8BAALpAf8BAALaAf8BAAKeAf8BAAKkAf8BAAJ0Af8QAAPV AQAC8AH/AQAC8AH/AQAC5gH/AQAC6QH/AQAC2gH/AQACngH/AQACpAH/AQACcwH/EAAD1QH/A98B/wPm
Af8D3wH/A+YB/wPmAf8D5gH/A+YB/wPgAf8D4QH/A9kB/wOwAf8DtQH/A5AB/wwAAT8BWAHlAf8BRQFe Af8D5gH/A+YB/wPmAf8D4AH/A+EB/wPZAf8DsAH/A7UB/wOQAf8MAAE+AVcB5QH/AUQBXQHrAf8BPQFY
AesB/wE+AVkB9AH/AUIBXAHwAf8BQgFcAfAB/wFCAVwB7wH/AUIBWgHlAf8BPwFQAa4B/wEmATABZwH/ AfQB/wFBAVsB8AH/AUEBWwHwAf8BQQFbAe8B/wFBAVkB5QH/AT4BTwGuAf8BJQEvAWYB/wEMAQ8BIQH/
AQ0BEAEiAf8DAAH/ATQBQwGdAf8BMAE/AZkB/wEkASwBXAH/CAAB1wF0AdcB/wHcAXoB3AH/AeIBdwHi AwAB/wEzAUIBnQH/AS8BPgGZAf8BIwErAVsB/wgAAdcBcwHXAf8B3AF5AdwB/wHiAXYB4gH/AeABeAHg
Af8B4AF5AeAB/wHgAXkB4AH/Ad8BeQHfAf8B2AF2AdgB/wGyAWIBsgH/AXgBPAF4Af8BOwEeATsB/wMA Af8B4AF4AeAB/wHfAXgB3wH/AdgBdQHYAf8BsgFhAbIB/wF3ATsBdwH/AToBHQE6Af8DAAH/AaoBTQGq
Af8BqgFOAaoB/wGmAUoBpgH/AW8BOQFvAf8JAALlAf8BAALuAf8BAALwAf8BAALwAf8BAALwAf8BAALv Af8BpgFJAaYB/wFuATgBbgH/CQAC5QH/AQAC7gH/AQAC8AH/AQAC8AH/AQAC8AH/AQAC7wH/AQAC5wH/
Af8BAALnAf8BAAK5Af8BAAJuAf8BAAIlAf8DAAH/AQACowH/AQACnQH/AQACZAH/CAAD3wH/A+QB/wPm AQACuQH/AQACbQH/AQACJAH/AwAB/wEAAqMB/wEAAp0B/wEAAmMB/wgAA98B/wPkAf8D5gH/A+YB/wPm
Af8D5gH/A+YB/wPlAf8D4AH/A8MB/wOLAf8DQwH/AwAB/wO0Af8DrwH/A4IB/wgAAUEBXAH0Af8BVgFu Af8D5QH/A+AB/wPDAf8DiwH/A0IB/wMAAf8DtAH/A68B/wOCAf8IAAFAAVsB9AH/AVUBbQH1Af8BRgFf
AfUB/wFHAWAB8AH/AUIBXAHwAf8BPAFPAcAB/wErATYBdQH/AREBFgEwAf8DAQH/AwAB/wMAAf8BCQEL AfAB/wFBAVsB8AH/ATsBTgHAAf8BKgE1AXQB/wEQARUBLwH/AwAB/wMAAf8DAAH/AQgBCgEYAf8BNwFQ
ARkB/wE4AVEB3AH/ATgBSwG4Af8BKAE0AYAB/wgAAeMBeQHjAf8B5gGLAeYB/wHgAYEB4AH/AeABeQHg AdwB/wE3AUoBuAH/AScBMwGAAf8IAAHjAXgB4wH/AeYBiwHmAf8B4AGBAeAB/wHgAXgB4AH/AbsBZgG7
Af8BuwFnAbsB/wGGAUIBhgH/AUcBIwFHAf8BGwERARsB/wMAAf8DAAH/ATMBGQEzAf8BzwFrAc8B/wG4 Af8BhgFBAYYB/wFGASIBRgH/ARoBEAEaAf8DAAH/AwAB/wEyARgBMgH/Ac8BagHPAf8BuAFdAbgB/wGL
AV4BuAH/AYsBPwGLAf8JAALyAf8BBAP/AQAC9AH/AQAC8AH/AQACxQH/AQACgQH/AQACMwH/AQACAQH/ AT4BiwH/CQAC8gH/AQMD/wEAAvQB/wEAAvAB/wEAAsUB/wEAAoEB/wEAAjIB/wMAAf8DAAH/AwAB/wEA
AwAB/wMAAf8BAAIbAf8BAALYAf8BAAK8Af8BAAKBAf8IAAPnAf8D8gH/A+cB/wPmAf8DyQH/A5gB/wNV AhoB/wEAAtgB/wEAArwB/wEAAoEB/wgAA+cB/wPyAf8D5wH/A+YB/wPJAf8DmAH/A1QB/wMGAf8DAAH/
Af8DBwH/AwAB/wMAAf8DNwH/A9YB/wPDAf8DmQH/CAABUgFqAfUB/wFlAYAB9gH/AU4BZgHvAf8BQgFc AwAB/wM2Af8D1gH/A8MB/wOZAf8IAAFRAWkB9QH/AWQBgAH2Af8BTQFlAe8B/wFBAVsB8AH/ATIBQAGM
AfAB/wEzAUEBjAH/ASEBKQFXAf8BBQEGAQ4B/wMAAf8DAAH/AwAB/wEoATIBawH/ATwBVwHxAf8BNAFM Af8BIAEoAVYB/wEEAQUBDQH/AwAB/wMAAf8DAAH/AScBMQFqAf8BOwFWAfEB/wEzAUsB1AH/ASoBOQGK
AdQB/wErAToBigH/CAAB5gGHAeYB/wHpAZcB6QH/AeEBgwHhAf8B4AF5AeAB/wGaAUwBmgH/AWsBNgFr Af8IAAHmAYcB5gH/AekBlwHpAf8B4QGDAeEB/wHgAXgB4AH/AZoBSwGaAf8BagE1AWoB/wEoARMBKAH/
Af8BKQEUASkB/wMAAf8DAAH/AwAB/wGBAT4BgQH/Ad8BdAHfAf8ByQFmAckB/wGZAUUBmQH/CQAD/wEQ AwAB/wMAAf8DAAH/AYEBPQGBAf8B3wFzAd8B/wHJAWUByQH/AZkBRAGZAf8JAAP/AQ8D/wEAAvkB/wEA
A/8BAAL5Af8BAALwAf8BAAKWAf8BAAJeAf8BAAIPAf8DAAH/AwAB/wMAAf8BAAJzAf8BAALsAf8BAALP AvAB/wEAApYB/wEAAl0B/wEAAg4B/wMAAf8DAAH/AwAB/wEAAnIB/wEAAuwB/wEAAs8B/wEAAo4B/wgA
Af8BAAKOAf8IAAPwAf8D+QH/A+sB/wPmAf8DqgH/A4EB/wMlAf8DAAH/AwAB/wMAAf8DkAH/A+IB/wPQ A/AB/wP5Af8D6wH/A+YB/wOqAf8DgQH/AyQB/wMAAf8DAAH/AwAB/wOQAf8D4gH/A9AB/wOkAf8IAAFa
Af8DpAH/CAABWwFyAfYB/wFuAYIB9wH/AU8BZwHuAf8BQgFcAfAB/wFCAVwB7wH/AUMBXQHuAf8BFwEd AXEB9gH/AW0BggH3Af8BTgFmAe4B/wFBAVsB8AH/AUEBWwHvAf8BQgFcAe4B/wEWARwBPwH/AwAB/wMA
AUAB/wMAAf8DAAH/AgIBBQH/AT0BUAG7Af8BOgFUAecB/wE3AVAB3gH/ASwBOwGQAf8IAAHnAY4B5wH/ Af8CAQEEAf8BPAFPAbsB/wE5AVMB5wH/ATYBTwHeAf8BKwE6AZAB/wgAAecBjgHnAf8B6wGfAesB/wHg
AesBnwHrAf8B4AGDAeAB/wHgAXkB4AH/Ad8BeQHfAf8B3gF5Ad4B/wFVASoBVQH/AwAB/wMAAf8BIAEQ AYMB4AH/AeABeAHgAf8B3wF4Ad8B/wHeAXgB3gH/AVQBKQFUAf8DAAH/AwAB/wEfAQ8BHwH/AbkBZQG5
ASAB/wG5AWYBuQH/AdgBcAHYAf8B0AFrAdAB/wGeAUYBngH/CAABCAP/ARcD/wEAAvkB/wEAAvAB/wEA Af8B2AFvAdgB/wHQAWoB0AH/AZ4BRQGeAf8IAAEHA/8BFgP/AQAC+QH/AQAC8AH/AQAC7wH/AQAC7wH/
Au8B/wEAAu8B/wEAAkQB/wMAAf8DAAH/AQACBQH/AQACwgH/AQAC4gH/AQAC2QH/AQACkwH/CAAD9AH/ AQACQwH/AwAB/wMAAf8BAAIEAf8BAALCAf8BAALiAf8BAALZAf8BAAKTAf8IAAP0Af8D/QH/A+sB/wPm
A/0B/wPrAf8D5gH/A+UB/wPlAf8DZwH/AwAB/wMAAf8DEAH/A8gB/wPeAf8D2AH/A6gB/wgAAVkBcAH1 Af8D5QH/A+UB/wNmAf8DAAH/AwAB/wMPAf8DyAH/A94B/wPYAf8DqAH/CAABWAFvAfUB/wF4AYwB9wH/
Af8BeQGMAfcB/wFYAW8B9AH/AUMBXAHnAf8BQQFaAeQB/wEcASQBTQH/AwAB/wEnATEBagH/AgIBBgH/ AVcBbgH0Af8BQgFbAecB/wFAAVkB5AH/ARsBIwFMAf8DAAH/ASYBMAFpAf8CAQEFAf8BFgEcAT8B/wFC
ARcBHQFAAf8BQwFdAe0B/wFCAVwB8AH/ATcBTwHYAf8BLgE8AY0B/wgAAecBjQHnAf8B7QGpAe0B/wHm AVwB7QH/AUEBWwHwAf8BNgFOAdgB/wEtATsBjQH/CAAB5wGNAecB/wHtAakB7QH/AeYBjAHmAf8B2gF3
AYwB5gH/AdoBeAHaAf8B1wF1AdcB/wFhATEBYQH/ASMBBwEjAf8BgQE9AYEB/wEiARABIgH/AVUBKgFV AdoB/wHXAXQB1wH/AWABMAFgAf8BIgEGASIB/wGBATwBgQH/ASEBDwEhAf8BVAEpAVQB/wHdAXcB3QH/
Af8B3QF4Ad0B/wHgAXkB4AH/AcwBaQHMAf8BnAFHAZwB/wgAAQYD/wEhA/8BBQP/AQAC6gH/AQAC5gH/ AeABeAHgAf8BzAFoAcwB/wGcAUYBnAH/CAABBQP/ASAD/wEEA/8BAALqAf8BAALmAf8BAAJSAf8DAAH/
AQACUwH/AwAB/wEAAnIB/wEAAgYB/wEAAkQB/wEAAu4B/wEAAvAB/wEAAtQB/wEAApMB/wgAA/MB/wQA AQACcQH/AQACBQH/AQACQwH/AQAC7gH/AQAC8AH/AQAC1AH/AQACkwH/CAAD8wH/BAAD8wH/A+IB/wPg
A/MB/wPiAf8D4AH/A3QB/wMAAf8DjgH/AxMB/wNnAf8D5AH/A+YB/wPUAf8DqAH/CAABTwFoAfUB/wGB Af8DcwH/AwAB/wOOAf8DEgH/A2YB/wPkAf8D5gH/A9QB/wOoAf8IAAFOAWcB9QH/AYEBkgH4Af8BcQGG
AZIB+AH/AXIBhgH3Af8BVAFqAeIB/wEcASQBTQH/AwAB/wEyAT8BhwH/AUMBXgH0Af8BFgEcATwB/wEz AfcB/wFTAWkB4gH/ARsBIwFMAf8DAAH/ATEBPgGHAf8BQgFdAfQB/wEVARsBOwH/ATIBQAGMAf8BQwFd
AUEBjAH/AUQBXgHzAf8BQgFcAfAB/wE3AU8B1AH/ATYBRAGTAf8IAAHlAYQB5QH/Ae4BrwHuAf8B6wGj AfMB/wFBAVsB8AH/ATYBTgHUAf8BNQFDAZMB/wgAAeUBhAHlAf8B7gGvAe4B/wHrAaMB6wH/AdgBhAHY
AesB/wHYAYQB2AH/AWEBMQFhAf8DAAH/AZYBSwGWAf8B4wGAAeMB/wFSASkBUgH/AZoBTAGaAf8B4gGA Af8BYAEwAWAB/wMAAf8BlgFKAZYB/wHjAYAB4wH/AVEBKAFRAf8BmgFLAZoB/wHiAYAB4gH/AeABeAHg
AeIB/wHgAXkB4AH/AckBaQHJAf8BoQFQAaEB/wkAAv4B/wEnA/8BGwP/AQAC8wH/AQACUwH/AwAB/wEA Af8ByQFoAckB/wGhAU8BoQH/CQAC/gH/ASYD/wEaA/8BAALzAf8BAAJSAf8DAAH/AQACkQH/AQAC9AH/
ApEB/wEAAvQB/wEAAkEB/wEAApYB/wEAAvQB/wEAAvAB/wEAAtEB/wEAAp4B/wgAA+4B/wgAA+cB/wN0 AQACQAH/AQAClgH/AQAC9AH/AQAC8AH/AQAC0QH/AQACngH/CAAD7gH/CAAD5wH/A3MB/wMAAf8DpgH/
Af8DAAH/A6YB/wPoAf8DYgH/A6oB/wPnAf8D5gH/A9MB/wOvAf8MAAGCAZMB+AH/AYcBmAH4Af8BTAFY A+gB/wNhAf8DqgH/A+cB/wPmAf8D0wH/A68B/wwAAYIBkwH4Af8BhwGYAfgB/wFLAVcBnwH/AwAB/wEy
AZ8B/wMBAf8BMwFAAYsB/wFDAV0B8gH/AUMBXQHtAf8BPwFPAaoB/wE/AVYB2AH/AUIBXAHwAf8BQgFc AT8BiwH/AUIBXAHyAf8BQgFcAe0B/wE+AU4BqgH/AT4BVQHYAf8BQQFbAfAB/wFBAVsB8AH/ATcBTwHa
AfAB/wE4AVAB2gH/EAAB7gGwAe4B/wHvAbUB7wH/AacBagGnAf8BGwERARsB/wGZAUwBmQH/AeEBegHh Af8QAAHuAbAB7gH/Ae8BtQHvAf8BpwFpAacB/wEaARABGgH/AZkBSwGZAf8B4QF5AeEB/wHdAXcB3QH/
Af8B3QF4Ad0B/wGwAV8BsAH/Ac0BcAHNAf8B4AF5AeAB/wHgAXkB4AH/Ac0BawHNAf8QAAEoA/8BLAP/ AbABXgGwAf8BzQFvAc0B/wHgAXgB4AH/AeABeAHgAf8BzQFqAc0B/xAAAScD/wErA/8BAAK4Af8DAAH/
AQACuAH/AQACAQH/AQAClQH/AQAC8gH/AQAC7gH/AQACtQH/AQAC2gH/AQAC8AH/AQAC8AH/AQAC1wH/ AQAClQH/AQAC8gH/AQAC7gH/AQACtQH/AQAC2gH/AQAC8AH/AQAC8AH/AQAC1wH/GAADwgH/AwYB/wOp
GAADwgH/AwcB/wOpAf8D5wH/A+QB/wPBAf8D2QH/A+YB/wPmAf8D1QH/EAABowGxAfoB/wGPAZ8B+QH/ Af8D5wH/A+QB/wPBAf8D2QH/A+YB/wPmAf8D1QH/EAABowGxAfoB/wGPAZ8B+QH/AWkBeQHVAf8BTgFd
AWoBegHVAf8BTwFeAbYB/wFbAXIB8QH/AVIBaQHqAf8BTgFlAewB/wFCAVwB8AH/AUIBXAHwAf8BQgFc AbYB/wFaAXEB8QH/AVEBaAHqAf8BTQFkAewB/wFBAVsB8AH/AUEBWwHwAf8BQQFbAfAB/wFBAVsB8AH/
AfAB/wFCAVwB8AH/AXgBhgHUAf8QAAHyAcEB8gH/AfEBvAHxAf8B0QGTAdEB/wG2AXYBtgH/AeQBjgHk AXcBhgHUAf8QAAHyAcEB8gH/AfEBvAHxAf8B0QGTAdEB/wG2AXUBtgH/AeQBjgHkAf8B3gGFAd4B/wHe
Af8B3gGFAd4B/wHeAYEB3gH/AeABeQHgAf8B4AF5AeAB/wHgAXkB4AH/AeABeQHgAf8BzgGWAc4B/xAA AYEB3gH/AeABeAHgAf8B4AF4AeAB/wHgAXgB4AH/AeABeAHgAf8BzgGWAc4B/xAAAZgD/wEzA/8BAAL5
AZgD/wE0A/8BAAL5Af8BAALMAf8BBQP/AQAC+AH/AQAC9gH/AQAC8AH/AQAC8AH/AQAC8AH/AQAC8AH/ Af8BAALMAf8BBAP/AQAC+AH/AQAC9gH/AQAC8AH/AQAC8AH/AQAC8AH/AQAC8AH/AXQC1AH/EAAD/AH/
AXUC1AH/EAAD/AH/BAAD6wH/A88B/wPzAf8D6wH/A+oB/wPmAf8D5gH/A+YB/wPmAf8D1QH/FAABrAG3 BAAD6wH/A88B/wPzAf8D6wH/A+oB/wPmAf8D5gH/A+YB/wPmAf8D1QH/FAABrAG3AfsB/wGIAZkB+AH/
AfsB/wGIAZkB+AH/AYEBkwH4Af8BdgGJAfcB/wFiAXgB9gH/AU8BaAHzAf8BSAFhAe8B/wFAAVoB7QH/ AYEBkwH4Af8BdQGJAfcB/wFhAXcB9gH/AU4BZwHzAf8BRwFgAe8B/wE/AVkB7QH/AToBVQHwAf8BeAGI
ATsBVgHwAf8BeQGIAd0B/xgAAfQByQH0Af8B7wG2Ae8B/wHuAa8B7gH/AewBpgHsAf8B6AGVAegB/wHk Ad0B/xgAAfQByQH0Af8B7wG2Ae8B/wHuAa8B7gH/AewBpgHsAf8B6AGVAegB/wHkAYQB5AH/AeABgQHg
AYQB5AH/AeABgQHgAf8B3QF2Ad0B/wHeAXIB3gH/AdQBmQHUAf8YAAGeA/8BLQP/AScD/wEfA/8BDgP/ Af8B3QF1Ad0B/wHeAXEB3gH/AdQBmQHUAf8YAAGeA/8BLAP/ASYD/wEeA/8BDQP/AQAC/AH/AQAC9AH/
AQAC/AH/AQAC9AH/AQAC7AH/AQAC6QH/AXkC2gH/KAAD9wH/A+0B/wPnAf8D4gH/A+EB/wPZAf8gAAFg AQAC7AH/AQAC6QH/AXgC2gH/KAAD9wH/A+0B/wPnAf8D4gH/A+EB/wPZAf8gAAFfAXUB9gH/AWcBgQH2
AXYB9gH/AWgBgQH2Af8BbwGEAfcB/wFiAXgB9gH/AU8BaAH1Af8BPAFWAe8B/ygAAegBkwHoAf8B6gGa Af8BbgGEAfcB/wFhAXcB9gH/AU4BZwH1Af8BOwFVAe8B/ygAAegBkwHoAf8B6gGaAeoB/wHrAaAB6wH/
AeoB/wHrAaAB6wH/AegBlQHoAf8B5QGEAeUB/wHeAXMB3gH/KAABDAP/ARMD/wEZA/8BDgP/AQAC/gH/ AegBlQHoAf8B5QGEAeUB/wHeAXIB3gH/KAABCwP/ARID/wEYA/8BDQP/AQAC/gH/AQAC6QH/KAAD9wH/
AQAC6QH/KAAD9wH/A/kB/wP9Af8D9wH/A+4B/wPhAf//AP8AKgADYAH/A1UB/wNQAf8DTwH/A00B/wNI A/kB/wP9Af8D9wH/A+4B/wPhAf//AP8AKgADXwH/A1QB/wNPAf8DTgH/A0wB/wNHAf8oAAGRAWoBGAH/
Af8oAAGRAWsBGQH/AXkBWAERAf8BbgFPAQ4B/wFrAU0BDgH/AWUBSAENAf8BVAE+AQ8B/ygAATMBXQEz AXgBVwEQAf8BbQFOAQ0B/wFqAUwBDQH/AWQBRwEMAf8BUwE9AQ4B/ygAATIBXAEyAf8BJQFNASUB/wEg
Af8BJgFOASYB/wEhAUgBIQH/ASABRgEgAf8BHwFBAR8B/wEeATYBHgH/KAACngFJAf8ClgEkAf8CkwEW AUcBIAH/AR8BRQEfAf8BHgFAAR4B/wEdATUBHQH/KAACngFIAf8ClgEjAf8CkwEVAf8CkgESAf8CjQEP
Af8CkgETAf8CjQEQAf8CdgETAf8gAAOZAf8DbQH/A20B/wNrAf8DagH/A2kB/wNlAf8DXAH/A1AB/wNR Af8CdQESAf8gAAOZAf8DbAH/A2wB/wNqAf8DaQH/A2gB/wNkAf8DWwH/A08B/wNQAf8YAAHGAakBZwH/
Af8YAAHGAakBaAH/AbQBggEZAf8BtAGBARgB/wGyAYEBGAH/Aa8BgQEXAf8BrAGBARYB/wGkAXYBFQH/ AbQBggEYAf8BtAGBARcB/wGyAYEBFwH/Aa8BgQEWAf8BrAGBARUB/wGkAXUBFAH/AY4BZgESAf8BbQFN
AY4BZwETAf8BbgFOAQ4B/wFUAUkBMAH/GAABgAGeAYAB/wE4AXUBOAH/ATcBdgE3Af8BNgF1ATYB/wE1 AQ0B/wFTAUgBLwH/GAABgAGeAYAB/wE3AXQBNwH/ATYBdQE2Af8BNQF0ATUB/wE0AXIBNAH/ATIBcAEy
AXMBNQH/ATMBcQEzAf8BMQFrATEB/wErAV0BKwH/ASEBRwEhAf8BOQFEATkB/xgAAsABmwH/ArIBXwH/ Af8BMAFqATAB/wEqAVwBKgH/ASABRgEgAf8BOAFDATgB/xgAAsABmwH/ArIBXgH/ArQBXAH/ArIBWQH/
ArQBXQH/ArIBWgH/ArEBVgH/ArEBUgH/Aq0BSwH/AqIBNQH/ApMBFAH/AmUBMwH/FAADnwH/A4EB/wOE ArEBVQH/ArEBUQH/Aq0BSgH/AqIBNAH/ApMBEwH/AmQBMgH/FAADnwH/A4EB/wOEAf8DiQH/A4gB/wOG
Af8DiQH/A4gB/wOGAf8DhgH/A4MB/wOBAf8DbAH/A1YB/wNQAf8QAAHRAbEBagH/AdkBnQEfAf8B5QGl Af8DhgH/A4MB/wOBAf8DawH/A1UB/wNPAf8QAAHRAbEBaQH/AdkBnQEeAf8B5QGlAR8B/wHtAawBIAH/
ASAB/wHtAawBIQH/AesBqgEhAf8B6gGoASAB/wHqAagBIAH/AeMBpAEeAf8B2QGcAR0B/wGzAYEBGAH/ AesBqgEgAf8B6gGoAR8B/wHqAagBHwH/AeMBpAEdAf8B2QGcARwB/wGzAYEBFwH/AYABWAEPAf8BUgFH
AYABWQEQAf8BUwFIATAB/xAAAYABqQGAAf8BOQGYATkB/wE0AagBNAH/ATEBswExAf8BMgGwATIB/wEy AS8B/xAAAYABqQGAAf8BOAGYATgB/wEzAagBMwH/ATABswEwAf8BMQGwATEB/wExAa4BMQH/ATEBrgEx
Aa4BMgH/ATIBrgEyAf8BMwGmATMB/wE3AZkBNwH/ATcBdQE3Af8BJQFQASUB/wE4AUQBOAH/EAACyQGg Af8BMgGmATIB/wE2AZkBNgH/ATYBdAE2Af8BJAFPASQB/wE3AUMBNwH/EAACyQGgAf8CywF5Af8C1AGB
Af8CywF6Af8C1AGBAf8C2gGDAf8C2AGCAf8C1wGCAf8C1wGCAf8C1AGBAf8CzAF2Af8CtAFbAf8CmQEj Af8C2gGDAf8C2AGCAf8C1wGCAf8C1wGCAf8C1AGBAf8CzAF1Af8CtAFaAf8CmQEiAf8CZQEwAf8QAAOB
Af8CZgExAf8QAAOBAf8DiQH/A5AB/wOQAf8DkAH/A5AB/wOKAf8DjAH/A4MB/wNmAf8DaQH/A1QB/xAA Af8DiQH/A5AB/wOQAf8DkAH/A5AB/wOKAf8DjAH/A4MB/wNlAf8DaAH/A1MB/xAAAdwBoAEfAf8B7AGq
AdwBoAEgAf8B7AGqASEB/wH2AbMBJgH/AfYBswEmAf8B9gGzASYB/wH2AbMBJgH/Ae8BrQEhAf8B8gGw ASAB/wH2AbMBJQH/AfYBswElAf8B9gGzASUB/wH2AbMBJQH/Ae8BrQEgAf8B8gGwASEB/wHiAaQBHwH/
ASIB/wHiAaQBIAH/AaQBdwEXAf8BqwGAARcB/wF5AVgBEAH/EAABOAGdATgB/wExAbEBMQH/AS8BwAEv AaQBdgEWAf8BqwGAARYB/wF4AVcBDwH/EAABNwGdATcB/wEwAbEBMAH/AS4BwAEuAf8BLgHAAS4B/wEu
Af8BLwHAAS8B/wEvAcABLwH/AS8BwAEvAf8BMAG2ATAB/wEuAbsBLgH/ATUBpAE1Af8BMwFrATMB/wE0 AcABLgH/AS4BwAEuAf8BLwG2AS8B/wEtAbsBLQH/ATQBpAE0Af8BMgFqATIB/wEzAW8BMwH/ASMBTgEj
AXABNAH/ASQBTwEkAf8QAALNAYEB/wLYAYIB/wLfAY0B/wLfAY0B/wLfAY0B/wLfAY0B/wLbAYMB/wLd Af8QAALNAYEB/wLYAYIB/wLfAY0B/wLfAY0B/wLfAY0B/wLfAY0B/wLbAYMB/wLdAYcB/wLSAYEB/wKt
AYcB/wLSAYEB/wKtAU8B/wKwAVIB/wKYAR8B/wwAA4kB/wOOAf8DkAH/A5AB/wOQAf8DjwH/A4sB/wNy AU4B/wKwAVEB/wKYAR4B/wwAA4kB/wOOAf8DkAH/A5AB/wOQAf8DjwH/A4sB/wNxAf8DUQH/Ay4B/wMA
Af8DUgH/Ay8B/wMAAf8DaAH/A2UB/wNOAf8IAAHrAawBJAH/AfIBsgEnAf8B+AG0ASQB/wH2AbMBJgH/ Af8DZwH/A2QB/wNNAf8IAAHrAawBIwH/AfIBsgEmAf8B+AG0ASMB/wH2AbMBJQH/AfYBswElAf8B9QGy
AfYBswEmAf8B9QGyASYB/wHsAawBJQH/Ab4BigEdAf8BcAFRAREB/wEmARwBBgH/AwAB/wGqAYABFwH/ ASUB/wHsAawBJAH/Ab4BigEcAf8BbwFQARAB/wElARsBBQH/AwAB/wGqAYABFgH/AaQBdQEUAf8BZAFK
AaQBdgEVAf8BZQFLARAB/wgAATQBsQE0Af8BMgG7ATIB/wErAcQBKwH/AS8BwAEvAf8BLwHAAS8B/wEv AQ8B/wgAATMBsQEzAf8BMQG7ATEB/wEqAcQBKgH/AS4BwAEuAf8BLgHAAS4B/wEuAb8BLgH/ATQBsgE0
Ab8BLwH/ATUBsgE1Af8BPgGAAT4B/wElAUkBJQH/AQwBGAEMAf8DAAH/ATQBbwE0Af8BMQFrATEB/wEi Af8BPQGAAT0B/wEkAUgBJAH/AQsBFwELAf8DAAH/ATMBbgEzAf8BMAFqATAB/wEhAUABIQH/CAAC2AGH
AUEBIgH/CAAC2AGHAf8C3AGPAf8C4QGLAf8C3wGNAf8C3wGNAf8C3gGNAf8C2AGKAf8CtQFvAf8CjwEh Af8C3AGPAf8C4QGLAf8C3wGNAf8C3wGNAf8C3gGNAf8C2AGKAf8CtQFuAf8CjwEgAf8CSAEAAf8DAAH/
Af8CSQEAAf8DAAH/Aq4BUgH/Aq0BSwH/AogBGQH/CAADkQH/A5wB/wORAf8DkAH/A3cB/wNZAf8DOAH/ Aq4BUQH/Aq0BSgH/AogBGAH/CAADkQH/A5wB/wORAf8DkAH/A3YB/wNYAf8DNwH/AwUB/wMAAf8DAAH/
AwYB/wMAAf8DAAH/AygB/wOBAf8DcwH/A1kB/wgAAfkBtgElAv8BvwEzAf8B+AG3ASgB/wH2AbMBJgH/ AycB/wOBAf8DcgH/A1gB/wgAAfkBtgEkAv8BvwEyAf8B+AG3AScB/wH2AbMBJQH/AcoBkwEeAf8BgQFc
AcoBkwEfAf8BgQFdARQB/wE0ASYBCAH/AgEBAAH/AwAB/wMAAf8BHAEUAQQB/wHgAaMBHwH/AcQBjgEa ARMB/wEzASUBBwH/AwAB/wMAAf8DAAH/ARsBEwEDAf8B4AGjAR4B/wHEAY4BGQH/AYQBXgERAf8IAAEr
Af8BhAFfARIB/wgAASwBxgEsAf8BMgHRATIB/wEwAcMBMAH/AS8BwAEvAf8BPgGHAT4B/wEqAVMBKgH/ AcYBKwH/ATEB0QExAf8BLwHDAS8B/wEuAcABLgH/AT0BhwE9Af8BKQFSASkB/wEQASEBEAH/AwAB/wMA
AREBIgERAf8DAAH/AwAB/wMAAf8BCQESAQkB/wE2AaEBNgH/AToBgQE6Af8BKAFWASgB/wgAAuIBjQH/ Af8DAAH/AQgBEQEIAf8BNQGhATUB/wE5AYEBOQH/AScBVQEnAf8IAALiAY0B/wLlAaEB/wLfAZIB/wLf
AuUBoQH/At8BkgH/At8BjQH/Ar8BdgH/ApgBMAH/AloBAAH/AhkBAAH/AwAB/wMAAf8CQAEAAf8C0QGB AY0B/wK/AXUB/wKYAS8B/wJZAQAB/wIYAQAB/wMAAf8DAAH/Aj8BAAH/AtEBgQH/ArsBawH/Ap4BLAH/
Af8CuwFsAf8CngEtAf8IAAOaAf8DpgH/A5UB/wOQAf8DYwH/A0sB/wMcAf8DAAH/AwAB/wMAAf8DVAH/ CAADmgH/A6YB/wOVAf8DkAH/A2IB/wNKAf8DGwH/AwAB/wMAAf8DAAH/A1MB/wONAf8DgQH/A14B/wgA
A40B/wOBAf8DXwH/CAAB/wG+AS8C/wHFAUIB/wH6AboBLAH/AfYBswEmAf8BmQFvARgB/wFgAUUBDwH/ Af8BvgEuAv8BxQFBAf8B+gG6ASsB/wH2AbMBJQH/AZkBbgEXAf8BXwFEAQ4B/wEOAQoBAQH/AwAB/wMA
AQ8BCwECAf8DAAH/AwAB/wMAAf8BdQFVARIB/wH0AbEBIwH/AdgBmwEcAf8BlQFrARMB/wgAAS8B0AEv Af8DAAH/AXQBVAERAf8B9AGxASIB/wHYAZsBGwH/AZUBagESAf8IAAEuAdABLgH/ATsB0wE7Af8BMQHG
Af8BPAHTATwB/wEyAcYBMgH/AS8BwAEvAf8BMgFjATIB/wEgAT4BIAH/AQUBCgEFAf8DAAH/AwAB/wMA ATEB/wEuAcABLgH/ATEBYgExAf8BHwE9AR8B/wEEAQkBBAH/AwAB/wMAAf8DAAH/ASYBSwEmAf8BLAG+
Af8BJwFMAScB/wEtAb4BLQH/ATcBlwE3Af8BLQFhAS0B/wgAAuUBnAH/AugBrQH/AuEBmAH/At8BjQH/ ASwB/wE2AZcBNgH/ASwBYAEsAf8IAALlAZwB/wLoAa0B/wLhAZgB/wLfAY0B/wKkAUgB/wKFARIB/wIz
AqQBSQH/AoUBEwH/AjQBAAH/AwAB/wMAAf8DAAH/ApIBJgH/At4BiAH/AssBdgH/AqUBOwH/CAADnwH/ AQAB/wMAAf8DAAH/AwAB/wKSASUB/wLeAYgB/wLLAXUB/wKlAToB/wgAA58B/wOqAf8DlQH/A5AB/wOP
A6oB/wOVAf8DkAH/A48B/wOPAf8DQQH/AwAB/wMAAf8DDgH/A3YB/wOIAf8DggH/A2EB/wgAAf8BwQE4 Af8DjwH/A0AB/wMAAf8DAAH/Aw0B/wN1Af8DiAH/A4IB/wNgAf8IAAH/AcEBNwL/AcgBSQH/AfkBuQEs
Av8ByAFKAf8B+QG5AS0B/wH2AbMBJgH/AfUBsgEmAf8B9AGyASYB/wFGATMBCwH/AwAB/wMAAf8BBQEE Af8B9gGzASUB/wH1AbIBJQH/AfQBsgElAf8BRQEyAQoB/wMAAf8DAAH/AQQBAwEAAf8BxwGRAR4B/wHr
AQAB/wHHAZEBHwH/AesBqgEhAf8B4gGjAR8B/wGaAW8BFAH/CAABNQHSATUB/wFBAdUBQQH/ATMBxQEz AaoBIAH/AeIBowEeAf8BmgFuARMB/wgAATQB0gE0Af8BQAHVAUAB/wEyAcUBMgH/AS4BwAEuAf8BLgG/
Af8BLwHAAS8B/wEvAb8BLwH/ATABvgEwAf8BFwEtARcB/wMAAf8DAAH/AQIBAwECAf8BPgGEAT4B/wEy AS4B/wEvAb4BLwH/ARYBLAEWAf8DAAH/AwAB/wEBAQIBAQH/AT0BhAE9Af8BMQGwATEB/wE0AaMBNAH/
AbABMgH/ATUBowE1Af8BLgFlAS4B/wgAAuYBpAH/AusBtAH/AuEBmAH/At8BjQH/At4BjQH/At4BjQH/ AS0BZAEtAf8IAALmAaQB/wLrAbQB/wLhAZgB/wLfAY0B/wLeAY0B/wLeAY0B/wJrAQUB/wMAAf8DAAH/
AmwBBgH/AwAB/wMAAf8CKQEAAf8CvQF1Af8C2AGCAf8C0QGBAf8CqAFAAf8IAAOeAf8DsQH/A54B/wON AigBAAH/Ar0BdAH/AtgBggH/AtEBgQH/AqgBPwH/CAADngH/A7EB/wOeAf8DjQH/A4oB/wNHAf8DAAH/
Af8DigH/A0gB/wMAAf8DVAH/AxAB/wNBAf8DjgH/A5AB/wOBAf8DYQH/CAAB/wHAATYC/wHMAVUC/wHB A1MB/wMPAf8DQAH/A44B/wOQAf8DgQH/A2AB/wgAAf8BwAE1Av8BzAFUAv8BwQE0Af8B7wGvASUB/wHr
ATUB/wHvAa8BJgH/AesBqwEkAf8BVQE9AQ0B/wMAAf8BdAFUARIB/wEGAQQBAAH/AUYBMwELAf8B8wGx AasBIwH/AVQBPAEMAf8DAAH/AXMBUwERAf8BBQEDAQAB/wFFATIBCgH/AfMBsQElAf8B9gGzASUB/wHc
ASYB/wH2AbMBJgH/AdwBnwEeAf8BmQFvARUB/wgAATMB0gEzAf8BSQHWAUkB/wEzAdABMwH/ATQBtgE0 AZ8BHQH/AZkBbgEUAf8IAAEyAdIBMgH/AUgB1gFIAf8BMgHQATIB/wEzAbYBMwH/ATQBsAE0Af8BGwE2
Af8BNQGwATUB/wEcATcBHAH/AwAB/wEmAUsBJgH/AQIBBAECAf8BFwEtARcB/wExAb0BMQH/AS8BwAEv ARsB/wMAAf8BJQFKASUB/wEBAQMBAQH/ARYBLAEWAf8BMAG9ATAB/wEuAcABLgH/ATYBnAE2Af8BLgFj
Af8BNwGcATcB/wEvAWQBLwH/CAAC5gGiAf8C7QG9Af8C5QGiAf8C2wGLAf8C2AGIAf8CegENAf8CSQEA AS4B/wgAAuYBogH/Au0BvQH/AuUBogH/AtsBiwH/AtgBiAH/AnkBDAH/AkgBAAH/ApIBIwH/AiwBAAH/
Af8CkgEkAf8CLQEAAf8CbAEGAf8C3QGNAf8C3wGNAf8CzQF6Af8CpwFCAf8IAAOZAf8DtgH/A60B/wOR AmsBBQH/At0BjQH/At8BjQH/As0BeQH/AqcBQQH/CAADmQH/A7YB/wOtAf8DkQH/A0cB/wMAAf8DYAH/
Af8DSAH/AwAB/wNhAf8DkwH/Az8B/wNjAf8DkQH/A5AB/wOBAf8DZQH/CAAB/wG8AS0C/wHOAVwC/wHJ A5MB/wM+Af8DYgH/A5EB/wOQAf8DgQH/A2QB/wgAAf8BvAEsAv8BzgFbAv8ByQFNAf8B8QG0AS4B/wFU
AU4B/wHxAbQBLwH/AVUBPQENAf8DAAH/AZQBbAEXAf8B+gG2AScB/wFCATABCgH/AZkBbwEYAf8B+QG1 ATwBDAH/AwAB/wGUAWsBFgH/AfoBtgEmAf8BQQEvAQkB/wGZAW4BFwH/AfkBtQEmAf8B9gGzASUB/wHZ
AScB/wH2AbMBJgH/AdkBnQEeAf8BoQF2ARkB/wgAAS4BzwEuAf8BTgHXAU4B/wFEAdUBRAH/ATwBtgE8 AZ0BHQH/AaEBdQEYAf8IAAEtAc8BLQH/AU0B1wFNAf8BQwHVAUMB/wE7AbYBOwH/ARsBNgEbAf8DAAH/
Af8BHAE3ARwB/wMAAf8BMQFgATEB/wEsAccBLAH/ARYBKwEWAf8BMgFjATIB/wEtAcYBLQH/AS8BwAEv ATABXwEwAf8BKwHHASsB/wEVASoBFQH/ATEBYgExAf8BLAHGASwB/wEuAcABLgH/ATcBmQE3Af8BNAFo
Af8BOAGZATgB/wE1AWkBNQH/CAAC5AGZAf8C7gHCAf8C7AG4Af8C2gGYAf8CegENAf8DAAH/AqEBRQH/ ATQB/wgAAuQBmQH/Au4BwgH/AuwBuAH/AtoBmAH/AnkBDAH/AwAB/wKhAUQB/wLiAZAB/wJnAQMB/wKk
AuIBkAH/AmgBBAH/AqQBSQH/AuEBkAH/At8BjQH/AswBegH/AqgBUAH/DAADuAH/A7sB/wNxAf8DBgH/ AUgB/wLhAZAB/wLfAY0B/wLMAXkB/wKoAU8B/wwAA7gB/wO7Af8DcAH/AwUB/wNhAf8DkQH/A44B/wNw
A2IB/wORAf8DjgH/A3EB/wODAf8DkAH/A5AB/wOBAf8QAAH/Ac4BXQL/AdABYgH/AbUBiQEkAf8CAQEA Af8DgwH/A5AB/wOQAf8DgQH/EAAB/wHOAVwC/wHQAWEB/wG1AYkBIwH/AwAB/wGYAW4BFwH/AfgBtAEl
Af8BmAFvARgB/wH4AbQBJgH/AfMBsQEmAf8BugGHAR0B/wHfAaIBIwH/AfYBswEmAf8B9gGzASYB/wHf Af8B8wGxASUB/wG6AYcBHAH/Ad8BogEiAf8B9gGzASUB/wH2AbMBJQH/Ad8BoQEeAf8QAAFOAdgBTgH/
AaEBHwH/EAABTwHYAU8B/wFSAdgBUgH/AUUBcwFFAf8DAAH/ATIBYwEyAf8BLgHEAS4B/wExAb0BMQH/ AVEB2AFRAf8BRAFyAUQB/wMAAf8BMQFiATEB/wEtAcQBLQH/ATABvQEwAf8BPAF3ATwB/wE4AaABOAH/
AT0BeAE9Af8BOQGgATkB/wEvAcABLwH/AS8BwAEvAf8BNwGfATcB/xAAAu8BxAH/AvAByAH/Aq4BdgH/ AS4BwAEuAf8BLgHAAS4B/wE2AZ8BNgH/EAAC7wHEAf8C8AHIAf8CrgF1Af8CGAEAAf8CpAFIAf8C4QGP
AhkBAAH/AqQBSQH/AuEBjwH/At0BjQH/ArQBbAH/AtABggH/At8BjQH/At8BjQH/As8BgQH/EAADygH/ Af8C3QGNAf8CtAFrAf8C0AGCAf8C3wGNAf8C3wGNAf8CzwGBAf8QAAPKAf8DwAH/A5UB/wOBAf8DngH/
A8AB/wOVAf8DgQH/A54B/wOVAf8DlAH/A5AB/wOQAf8DkAH/A5AB/wOhAf8QAAH/Ad0BjgL/AdMBawH/ A5UB/wOUAf8DkAH/A5AB/wOQAf8DkAH/A6EB/xAAAf8B3QGOAv8B0wFqAf8B7QG4ATgB/wHHAZgBKQH/
Ae0BuAE5Af8BxwGYASoB/wH+AcABNgH/AfcBuQEuAf8B9wG3ASwB/wH2AbMBJgH/AfYBswEmAf8B9gGz Af4BwAE1Af8B9wG5AS0B/wH3AbcBKwH/AfYBswElAf8B9gGzASUB/wH2AbMBJQH/AfYBswElAf8B2QG0
ASYB/wH2AbMBJgH/AdkBtAFnAf8QAAGKAeYBigH/AVgB2gFYAf8BSwGuAUsB/wFIAYQBSAH/ATcBzQE3 AWYB/xAAAYoB5gGKAf8BVwHaAVcB/wFKAa4BSgH/AUcBhAFHAf8BNgHNATYB/wE1AcEBNQH/ATMBwQEz
Af8BNgHBATYB/wE0AcEBNAH/AS8BwAEvAf8BLwHAAS8B/wEvAcABLwH/AS8BwAEvAf8BdQGzAXUB/xAA Af8BLgHAAS4B/wEuAcABLgH/AS4BwAEuAf8BLgHAAS4B/wF0AbMBdAH/EAAC8wHPAf8C8QHPAf8C1gGl
AvMBzwH/AvEBzwH/AtYBpQH/ArwBhQH/AuQBpAH/At4BmQH/At8BlgH/At8BjQH/At8BjQH/At8BjQH/ Af8CvAGFAf8C5AGkAf8C3gGZAf8C3wGWAf8C3wGNAf8C3wGNAf8C3wGNAf8C3wGNAf8C0AGhAf8UAAPP
At8BjQH/AtABoQH/FAADzwH/A7sB/wO2Af8DrgH/A6MB/wOXAf8DkQH/A40B/wOMAf8DpQH/GAAB/wHf Af8DuwH/A7YB/wOuAf8DowH/A5cB/wORAf8DjQH/A4wB/wOlAf8YAAH/Ad8BlQL/AdABYgL/Ac0BWwL/
AZUC/wHQAWMC/wHNAVwC/wHLAVIC/wHDAT8B/wH9AbsBLQH/AfcBtwEpAf8B8gGxASQB/wHyAa8BIgH/ AcsBUQL/AcMBPgH/Af0BuwEsAf8B9wG3ASgB/wHyAbEBIwH/AfIBrwEhAf8B4AG6AWgB/xgAAY8B5wGP
AeABugFpAf8YAAGPAecBjwH/AVMB2QFTAf8BTgHYAU4B/wFHAdYBRwH/AToB0wE6Af8BMAHMATAB/wEx Af8BUgHZAVIB/wFNAdgBTQH/AUYB1gFGAf8BOQHTATkB/wEvAcwBLwH/ATABwgEwAf8BLwG7AS8B/wEs
AcIBMQH/ATABuwEwAf8BLQG7AS0B/wF1AbwBdQH/GAAC9AHVAf8C8AHIAf8C7wHDAf8C7QG7Af8C6AGq AbsBLAH/AXQBvAF0Af8YAAL0AdUB/wLwAcgB/wLvAcMB/wLtAbsB/wLoAaoB/wLjAZkB/wLfAZIB/wLd
Af8C4wGZAf8C3wGSAf8C3QGKAf8C3QGHAf8C1gGkAf8gAAOiAf8DpgH/A6oB/wOjAf8DmQH/A4wB/ygA AYoB/wLdAYcB/wLWAaQB/yAAA6IB/wOmAf8DqgH/A6MB/wOZAf8DjAH/KAAB/wHDATwC/wHGAUQC/wHJ
Af8BwwE9Av8BxgFFAv8ByQFMAv8BwgE/Av8BvQEtAf8B8gGvASIB/ygAATgB0wE4Af8BPgHUAT4B/wFC AUsC/wHCAT4C/wG9ASwB/wHyAa8BIQH/KAABNwHTATcB/wE9AdQBPQH/AUEB1QFBAf8BOQHTATkB/wEt
AdUBQgH/AToB0wE6Af8BLgHPAS4B/wEuAbsBLgH/KAAC5wGoAf8C6gGwAf8C6wG1Af8C6AGqAf8C5AGZ Ac8BLQH/AS0BuwEtAf8oAALnAagB/wLqAbAB/wLrAbUB/wLoAaoB/wLkAZkB/wLdAYcB//8A/wAqAAIn
Af8C3QGHAf//AP8AKgACKAFQAf8CHgFDAf8CGgE+Af8CGQE8Af8CGAE5Af8CGAEuAf8oAAF4AQABUwH/ AU8B/wIdAUIB/wIZAT0B/wIYATsB/wIXATgB/wIXAS0B/ygAAXcBAAFSAf8BYAEAAUMB/wFWAQABPAH/
AWEBAAFEAf8BVwEAAT0B/wFVAQABOwH/AVABAAE4Af8BRgEAATEB/ygAAR8BQQFOAf8BFgE2AUMB/wES AVQBAAE6Af8BTwEAATcB/wFFAQABMAH/KAABHgFAAU0B/wEVATUBQgH/AREBMAE9Af8BEQEvATsB/wEQ
ATEBPgH/ARIBMAE8Af8BEQEtATgB/wESASYBLQH/KAADhQH/A3MB/wNrAf8DaQH/A2UB/wNcAf8gAAJg ASwBNwH/AREBJQEsAf8oAAOFAf8DcgH/A2oB/wNoAf8DZAH/A1sB/yAAAl8BhwH/AioBZAH/AikBZAH/
AYcB/wIrAWUB/wIqAWUB/wIqAWQB/wIpAWMB/wIoAWAB/wImAVwB/wIhAU8B/wIZAT4B/wIsATkB/xgA AikBYwH/AigBYgH/AicBXwH/AiUBWwH/AiABTgH/AhgBPQH/AisBOAH/GAABrAE6AYkB/wGPAQABYwH/
AawBOwGJAf8BjwEAAWQB/wGPAQABZAH/AY0BAAFjAf8BiwEAAWEB/wGIAQABXwH/AYIBAAFbAf8BcQEA AY8BAAFjAf8BjQEAAWIB/wGLAQABYAH/AYgBAAFeAf8BggEAAVoB/wFwAQABTQH/AVYBAAE7Af8BSAEb
AU4B/wFXAQABPAH/AUkBHAE7Af8YAAFYAXkBhgH/ASABUAFkAf8BHgFRAWUB/wEeAU8BZAH/AR0BTgFi AToB/xgAAVcBeAGGAf8BHwFPAWMB/wEdAVABZAH/AR0BTgFjAf8BHAFNAWEB/wEbAUwBXwH/ARoBSAFb
Af8BHAFNAWAB/wEbAUkBXAH/ARgBPwFPAf8BEgExAT4B/wEoATQBOAH/GAADtAH/A5cB/wOXAf8DlQH/ Af8BFwE+AU4B/wERATABPQH/AScBMwE3Af8YAAO0Af8DlwH/A5cB/wOVAf8DkwH/A5IB/wONAf8DgQH/
A5MB/wOSAf8DjQH/A4EB/wNrAf8DWgH/FAACXwGSAf8CKgGEAf8CJQGRAf8CIgGbAf8CIwGZAf8CIwGY A2oB/wNZAf8UAAJeAZIB/wIpAYQB/wIkAZEB/wIhAZsB/wIiAZkB/wIiAZgB/wIiAZgB/wIkAZAB/wIo
Af8CIwGYAf8CJQGQAf8CKQGEAf8CKgFlAf8CHQFFAf8CKwE4Af8QAAG1ATwBkAH/Aa0BAAF5Af8BtgEA AYQB/wIpAWQB/wIcAUQB/wIqATcB/xAAAbUBOwGQAf8BrQEAAXgB/wG2AQABgQH/AbwBAAGDAf8BuwEA
AYEB/wG8AQABgwH/AbsBAAGDAf8BugEAAYIB/wG6AQABggH/AbQBAAGBAf8BrAEAAXgB/wGOAQABYwH/ AYMB/wG6AQABggH/AboBAAGCAf8BtAEAAYEB/wGsAQABdwH/AY4BAAFiAf8BYQEAAUMB/wFHARsBOgH/
AWIBAAFEAf8BSAEcATsB/xAAAVUBgQGSAf8BGgFmAYUB/wETAW8BlAH/AQ4BdQGfAf8BDwF0AZ0B/wEQ EAABVAGBAZIB/wEZAWUBhQH/ARIBbgGUAf8BDQF0AZ8B/wEOAXMBnQH/AQ8BcgGbAf8BDwFyAZsB/wES
AXMBmwH/ARABcwGbAf8BEwFuAZMB/wEYAWYBhgH/AR4BUAFlAf8BFQE3AUQB/wEoATMBOAH/EAADugH/ AW0BkwH/ARcBZQGGAf8BHQFPAWQB/wEUATYBQwH/AScBMgE3Af8QAAO6Af8DrAH/A7IB/wO2Af8DtQH/
A6wB/wOyAf8DtgH/A7UB/wO0Af8DtAH/A7EB/wOrAf8DlgH/A3QB/wNaAf8QAAIqAYcB/wIiAZoB/wIf A7QB/wO0Af8DsQH/A6sB/wOWAf8DcwH/A1kB/xAAAikBhwH/AiEBmgH/Ah4BqAH/Ah4BqAH/Ah4BqAH/
AagB/wIfAagB/wIfAagB/wIfAagB/wIhAZ4B/wIfAaMB/wInAY8B/wInAVwB/wIoAWAB/wIcAUMB/xAA Ah4BqAH/AiABngH/Ah4BowH/AiYBjwH/AiYBWwH/AicBXwH/AhsBQgH/EAABsAEAAYAB/wG8AQABgwH/
AbABAAGAAf8BvAEAAYMB/wHGAQABigH/AcYBAAGKAf8BxgEAAYoB/wHGAQABigH/Ab4BAAGFAf8BwQEA AcYBAAGKAf8BxgEAAYoB/wHGAQABigH/AcYBAAGKAf8BvgEAAYUB/wHBAQABhwH/AbQBAAGBAf8BgwEA
AYcB/wG0AQABgQH/AYMBAAFbAf8BiAEAAV8B/wFgAQABQwH/EAABGQFpAYkB/wEOAXQBngH/AQkBgQGt AVoB/wGIAQABXgH/AV8BAAFCAf8QAAEYAWgBiQH/AQ0BcwGeAf8BCAGBAa0B/wEIAYEBrQH/AQgBgQGt
Af8BCQGBAa0B/wEJAYEBrQH/AQkBgQGtAf8BDAF3AaMB/wEKAXoBpwH/ARUBbQGRAf8BHQFKAVwB/wEd Af8BCAGBAa0B/wELAXYBowH/AQkBeQGnAf8BFAFsAZEB/wEcAUkBWwH/ARwBSwFfAf8BEwE1AUIB/xAA
AUwBYAH/ARQBNgFDAf8QAAOuAf8DtgH/A70B/wO9Af8DvQH/A70B/wO3Af8DuQH/A7EB/wOOAf8DkgH/ A64B/wO2Af8DvQH/A70B/wO9Af8DvQH/A7cB/wO5Af8DsQH/A44B/wOSAf8DcQH/DAACJAGZAf8CIgGi
A3IB/wwAAiUBmQH/AiMBogH/AhwBqwH/Ah8BqAH/Ah8BqAH/AiABpwH/AiUBmwH/AjABagH/Ah0BPgH/ Af8CGwGrAf8CHgGoAf8CHgGoAf8CHwGnAf8CJAGbAf8CLwFpAf8CHAE9Af8CCQEUAf8DAAH/AicBXgH/
AgoBFQH/AwAB/wIoAV8B/wImAVwB/wIbATgB/wgAAb0BAAGEAf8BxQEAAYkB/wHGAQABigH/AcYBAAGK AiUBWwH/AhoBNwH/CAABvQEAAYQB/wHFAQABiQH/AcYBAAGKAf8BxgEAAYoB/wHGAQABigH/AcYBAAGK
Af8BxgEAAYoB/wHGAQABigH/Ab8BAAGFAf8BmQEAAWsB/wFbAQABPwH/AR8BAAEVAf8DAAH/AYcBAAFe Af8BvwEAAYUB/wGZAQABagH/AVoBAAE+Af8BHgEAARQB/wMAAf8BhwEAAV0B/wGCAQABWgH/AVIBAAE5
Af8BggEAAVsB/wFTAQABOgH/CAABEQF1AZ0B/wEOAYABpwH/AQYBgQGxAf8BCQGBAa0B/wEJAYEBrQH/ Af8IAAEQAXQBnQH/AQ0BgAGnAf8BBQGBAbEB/wEIAYEBrQH/AQgBgQGtAf8BCQGBAasB/wERAXUBngH/
AQoBgQGrAf8BEgF2AZ4B/wEkAVUBaQH/ARYBMgE+Af8BBwERARUB/wMAAf8BHQFMAV8B/wEbAUkBXAH/ ASMBVAFoAf8BFQExAT0B/wEGARABFAH/AwAB/wEcAUsBXgH/ARoBSAFbAf8BEwEsATYB/wgAA7YB/wO7
ARQBLQE3Af8IAAO2Af8DuwH/A70B/wO9Af8DvQH/A7wB/wO4Af8DngH/A24B/wMzAf8DAAH/A5EB/wON Af8DvQH/A70B/wO9Af8DvAH/A7gB/wOeAf8DbQH/AzIB/wMAAf8DkQH/A40B/wNmAf8IAAIbAa0B/wIe
Af8DZwH/CAACHAGtAf8CHwG5Af8CIAGqAf8CHwGoAf8CMAF0Af8CIQFHAf8CDQEdAf8DAAH/AwAB/wMA AbkB/wIfAaoB/wIeAagB/wIvAXMB/wIgAUYB/wIMARwB/wMAAf8DAAH/AwAB/wIGAQ4B/wImAYwB/wIs
Af8CBwEPAf8CJwGMAf8CLQFvAf8CHwFKAf8IAAHIAQABjAH/AdcBAAGWAf8ByQEAAYwB/wHGAQABigH/ AW4B/wIeAUkB/wgAAcgBAAGMAf8B1wEAAZYB/wHJAQABjAH/AcYBAAGKAf8BowEAAXEB/wFnAQABSAH/
AaMBAAFyAf8BaAEAAUkB/wEqAQABHQH/AQEBAAEBAf8DAAH/AwAB/wEWAQABDwH/AbMBAAGBAf8BmwEA ASkBAAEcAf8DAAH/AwAB/wMAAf8BFQEAAQ4B/wGzAQABgQH/AZsBAAFrAf8BaAEAAUgB/wgAAQUBgQGz
AWwB/wFpAQABSQH/CAABBgGBAbMB/wEGAYoBvwH/AQoBgQGvAf8BCQGBAa0B/wEiAVwBdAH/ARkBOgFH Af8BBQGKAb8B/wEJAYEBrwH/AQgBgQGtAf8BIQFbAXMB/wEYATkBRgH/AQkBFgEcAf8DAAH/AwAB/wMA
Af8BCgEXAR0B/wMAAf8DAAH/AwAB/wEFAQwBDwH/ARYBbAGOAf8BIAFYAW8B/wEXATsBSgH/CAADvgH/ Af8BBAELAQ4B/wEVAWsBjgH/AR8BVwFuAf8BFgE6AUkB/wgAA74B/wPHAf8DvgH/A70B/wOkAf8DeAH/
A8cB/wO+Af8DvQH/A6QB/wN5Af8DQQH/AwUB/wMAAf8DAAH/AykB/wOvAf8DnwH/A3oB/wgAAh4BtwH/ A0AB/wMEAf8DAAH/AwAB/wMoAf8DrwH/A58B/wN5Af8IAAIdAbcB/wIfAcIB/wIhAa0B/wIeAagB/wIm
AiABwgH/AiIBrQH/Ah8BqAH/AicBVQH/AhkBNQH/AgMBCAH/AwAB/wMAAf8DAAH/Ah4BQQH/Ah4BpgH/ AVQB/wIYATQB/wICAQcB/wMAAf8DAAH/AwAB/wIdAUAB/wIdAaYB/wIoAYMB/wIhAVMB/wgAAdQBAAGU
AikBgwH/AiIBVAH/CAAB1AEAAZQB/wHhAQABnQH/Ac4BAAGPAf8BxgEAAYoB/wGBAQABVgH/AU4BAAE2 Af8B4QEAAZ0B/wHOAQABjwH/AcYBAAGKAf8BgQEAAVUB/wFNAQABNQH/AQsBAAEHAf8DAAH/AwAB/wMA
Af8BDAEAAQgB/wMAAf8DAAH/AwAB/wFfAQABQgH/AcMBAAGIAf8BqwEAAXcB/wF2AQABUgH/CAABBgGI Af8BXgEAAUEB/wHDAQABiAH/AasBAAF2Af8BdQEAAVEB/wgAAQUBiAG9Af8BBQGQAcgB/wEKAYIBsgH/
Ab0B/wEGAZAByAH/AQsBggGyAf8BCQGBAa0B/wEdAUQBVAH/ARMBKwE1Af8BAgEGAQgB/wMAAf8DAAH/ AQgBgQGtAf8BHAFDAVMB/wESASoBNAH/AQEBBQEHAf8DAAH/AwAB/wMAAf8BFgEzAT8B/wEHAYEBqwH/
AwAB/wEXATQBQAH/AQgBgQGrAf8BGQFlAYQB/wEYAUMBVAH/CAADxQH/A84B/wPBAf8DvQH/A4kB/wNi ARgBZAGEAf8BFwFCAVMB/wgAA8UB/wPOAf8DwQH/A70B/wOJAf8DYQH/AxoB/wMAAf8DAAH/AwAB/wNx
Af8DGwH/AwAB/wMAAf8DAAH/A3IB/wO6Af8DqgH/A4QB/wgAAh8BvAH/AiEBxwH/AiMBrAH/Ah8BqAH/ Af8DugH/A6oB/wOEAf8IAAIeAbwB/wIgAccB/wIiAawB/wIeAagB/wIfAacB/wIgAaUB/wIRASYB/wMA
AiABpwH/AiEBpQH/AhIBJwH/AwAB/wMAAf8CAQEDAf8CMAFyAf8CIwGZAf8CJgGNAf8CIwFXAf8IAAHa Af8DAAH/AgABAgH/Ai8BcQH/AiIBmQH/AiUBjQH/AiIBVgH/CAAB2gEAAZgB/wHnAQABoQH/Ac4BAAGP
AQABmAH/AecBAAGhAf8BzgEAAY8B/wHGAQABigH/AcYBAAGKAf8BxQEAAYoB/wE4AQABJwH/AwAB/wMA Af8BxgEAAYoB/wHGAQABigH/AcUBAAGKAf8BNwEAASYB/wMAAf8DAAH/AQMBAAECAf8BoQEAAW8B/wG7
Af8BBAEAAQMB/wGhAQABcAH/AbsBAAGDAf8BswEAAYEB/wF6AQABVQH/CAABBgGMAcIB/wEHAZQBzQH/ AQABgwH/AbMBAAGBAf8BeQEAAVQB/wgAAQUBjAHCAf8BBgGUAc0B/wELAYEBsQH/AQgBgQGtAf8BCQGB
AQwBgQGxAf8BCQGBAa0B/wEKAYEBqwH/AQsBgQGqAf8BDQEfASYB/wMAAf8DAAH/AQEBAgEDAf8BIgFa AasB/wEKAYEBqgH/AQwBHgElAf8DAAH/AwAB/wEAAQEBAgH/ASEBWQFwAf8BDgFzAZ0B/wETAWwBkAH/
AXEB/wEPAXQBnQH/ARQBbQGQAf8BGQFFAVcB/wgAA8kB/wPRAf8DwQH/A70B/wO8Af8DvAH/A1AB/wMA ARgBRAFWAf8IAAPJAf8D0QH/A8EB/wO9Af8DvAH/A7wB/wNPAf8DAAH/AwAB/wMLAf8DowH/A7UB/wOw
Af8DAAH/AwwB/wOjAf8DtQH/A7AB/wOHAf8IAAIfAbsB/wIiAc4B/wIgAbkB/wIkAZ4B/wImAZkB/wIW Af8DhwH/CAACHgG7Af8CIQHOAf8CHwG5Af8CIwGeAf8CJQGZAf8CFQEuAf8DAAH/Ah0BPwH/AgABAgH/
AS8B/wMAAf8CHgFAAf8CAQEDAf8CEgEnAf8CIQGkAf8CHwGoAf8CKQGHAf8CJAFVAf8IAAHZAQABlwH/ AhEBJgH/AiABpAH/Ah4BqAH/AigBhwH/AiMBVAH/CAAB2QEAAZcB/wHuAQABpgH/AdcBAAGWAf8BwgEA
Ae4BAAGmAf8B1wEAAZYB/wHCAQABhwH/Ab4BAAGFAf8BRAEAAS8B/wMAAf8BXgEAAUEB/wEFAQABAwH/ AYcB/wG+AQABhQH/AUMBAAEuAf8DAAH/AV0BAAFAAf8BBAEAAQIB/wE3AQABJgH/AcUBAAGJAf8BxgEA
ATgBAAEnAf8BxQEAAYkB/wHGAQABigH/Aa8BAAF6Af8BegEAAVUB/wgAAQYBiwHBAf8BBwGZAdQB/wEH AYoB/wGvAQABeQH/AXkBAAFUAf8IAAEFAYsBwQH/AQYBmQHUAf8BBgGJAb4B/wEPAXcBogH/AREBdAGd
AYkBvgH/ARABeAGiAf8BEgF1AZ0B/wEQASYBLwH/AwAB/wEWATQBQAH/AQECAwH/AQ0BHwEmAf8BDAGA Af8BDwElAS4B/wMAAf8BFQEzAT8B/wEAAgIB/wEMAR4BJQH/AQsBgAGpAf8BCAGBAa0B/wEXAWcBiQH/
AakB/wEJAYEBrQH/ARgBaAGJAf8BGgFEAVUB/wgAA8gB/wPWAf8DyAH/A7oB/wO3Af8DWwH/AwAB/wNx ARkBQwFUAf8IAAPIAf8D1gH/A8gB/wO6Af8DtwH/A1oB/wMAAf8DcAH/Aw0B/wNPAf8DuwH/A70B/wOt
Af8DDgH/A1AB/wO7Af8DvQH/A60B/wOHAf8IAAIeAbUB/wIjAdEB/wIhAckB/wIsAZ4B/wIWAS8B/wMA Af8DhwH/CAACHQG1Af8CIgHRAf8CIAHJAf8CKwGeAf8CFQEuAf8DAAH/AiUBUQH/AhwBrgH/AhABIwH/
Af8CJgFSAf8CHQGuAf8CEQEkAf8CJwFVAf8CHQGtAf8CHwGoAf8CKgGEAf8CKQFaAf8IAAHSAQABkgH/ AiYBVAH/AhwBrQH/Ah4BqAH/AikBhAH/AigBWQH/CAAB0gEAAZIB/wHzAQABqgH/AeoBAAGjAf8ByQEA
AfMBAAGqAf8B6gEAAaMB/wHJAQABjAH/AUQBAAEvAf8DAAH/AXgBAAFUAf8BygEAAY0B/wE1AQABJQH/ AYwB/wFDAQABLgH/AwAB/wF3AQABUwH/AcoBAAGNAf8BNAEAASQB/wGBAQABVQH/AckBAAGMAf8BxgEA
AYEBAAFWAf8ByQEAAYwB/wHGAQABigH/Aa0BAAF5Af8BggEAAVsB/wgAAQYBhwG7Af8BBwGcAdkB/wEH AYoB/wGtAQABeAH/AYIBAAFaAf8IAAEFAYcBuwH/AQYBnAHZAf8BBgGWAdAB/wEXAXgBoQH/AQ8BJQEu
AZYB0AH/ARgBeQGhAf8BEAEmAS8B/wMAAf8BHQFCAVIB/wEGAYIBtAH/AQ0BHQEkAf8BHQFEAVQB/wEH Af8DAAH/ARwBQQFRAf8BBQGCAbQB/wEMARwBIwH/ARwBQwFTAf8BBgGBAbMB/wEIAYEBrQH/ARgBZgGG
AYEBswH/AQkBgQGtAf8BGQFnAYYB/wEfAUgBWQH/CAADxAH/A9kB/wPTAf8DvgH/A1sB/wMAAf8DhgH/ Af8BHgFHAVgB/wgAA8QB/wPZAf8D0wH/A74B/wNaAf8DAAH/A4YB/wO/Af8DSwH/A4kB/wO+Af8DvQH/
A78B/wNMAf8DiQH/A74B/wO9Af8DrAH/A40B/wwAAiMB0wH/AiMB1gH/AjcBYgH/AwAB/wInAVQB/wIe A6wB/wONAf8MAAIiAdMB/wIiAdYB/wI2AWEB/wMAAf8CJgFTAf8CHQGrAf8CIAGkAf8CLwFmAf8CKQGL
AasB/wIhAaQB/wIwAWcB/wIqAYsB/wIfAagB/wIfAagB/wIoAYoB/xAAAfQBAAGqAf8B+AEAAa0B/wGY Af8CHgGoAf8CHgGoAf8CJwGKAf8QAAH0AQABqgH/AfgBAAGtAf8BmAEAAWkB/wMAAf8BgAEAAVUB/wHI
AQABagH/AQEBAAEBAf8BgAEAAVYB/wHIAQABjAH/AcUBAAGJAf8BlgEAAWkB/wG0AQABgQH/AcYBAAGK AQABjAH/AcUBAAGJAf8BlgEAAWgB/wG0AQABgQH/AcYBAAGKAf8BxgEAAYoB/wGxAQABgQH/EAABBgGd
Af8BxgEAAYoB/wGxAQABgQH/EAABBwGdAdkB/wEHAZ8B3QH/ASwBUQFfAf8DAAH/AR0BRAFUAf8BCAGB AdkB/wEGAZ8B3QH/ASsBUAFeAf8DAAH/ARwBQwFTAf8BBwGBAbEB/wELAYABqQH/ASMBUgFlAf8BGAFq
AbEB/wEMAYABqQH/ASQBUwFmAf8BGQFrAYwB/wEJAYEBrQH/AQkBgQGtAf8BFwFqAYwB/xAAA9oB/wPc AYwB/wEIAYEBrQH/AQgBgQGtAf8BFgFpAYwB/xAAA9oB/wPcAf8DnQH/AwQB/wOIAf8DvgH/A7sB/wOc
Af8DnQH/AwUB/wOIAf8DvgH/A7sB/wOcAf8DsQH/A70B/wO9Af8DrgH/EAACXwHUAf8CJQHaAf8COQGW Af8DsQH/A70B/wO9Af8DrgH/EAACXgHUAf8CJAHaAf8COAGWAf8COAFwAf8CIgG2Af8CJQGoAf8CIwGo
Af8COQFxAf8CIwG2Af8CJgGoAf8CJAGoAf8CHwGoAf8CHwGoAf8CHwGoAf8CHwGoAf8CWAGeAf8QAAHr Af8CHgGoAf8CHgGoAf8CHgGoAf8CHgGoAf8CVwGeAf8QAAHrAUcBuQH/Af4BAAGxAf8BzgEAAZAB/wGp
AUgBuQH/Af4BAAGxAf8BzgEAAZAB/wGpAQABdgH/AdcBAAGWAf8BzQEAAY8B/wHLAQABjgH/AcYBAAGK AQABdQH/AdcBAAGWAf8BzQEAAY8B/wHLAQABjgH/AcYBAAGKAf8BxgEAAYoB/wHGAQABigH/AcYBAAGK
Af8BxgEAAYoB/wHGAQABigH/AcYBAAGKAf8BvAE6AZUB/xAAAUwBsAHZAf8BBwGjAeIB/wEnAXYBlgH/ Af8BvAE5AZUB/xAAAUsBsAHZAf8BBgGjAeIB/wEmAXUBlgH/ASsBWwFvAf8BCgGIAbsB/wEPAYEBrAH/
ASwBXAFwAf8BCwGIAbsB/wEQAYEBrAH/AQ4BgQGtAf8BCQGBAa0B/wEJAYEBrQH/AQkBgQGtAf8BCQGB AQ0BgQGtAf8BCAGBAa0B/wEIAYEBrQH/AQgBgQGtAf8BCAGBAa0B/wFLAYcBnwH/EAAD4gH/A98B/wPB
Aa0B/wFMAYcBnwH/EAAD4gH/A98B/wPBAf8DqQH/A8gB/wPBAf8DwAH/A70B/wO9Af8DvQH/A70B/wO9 Af8DqQH/A8gB/wPBAf8DwAH/A70B/wO9Af8DvQH/A70B/wO9Af8UAAJfAdkB/wIiAdYB/wIiAdIB/wIh
Af8UAAJgAdkB/wIjAdYB/wIjAdIB/wIiAcwB/wIgAb8B/wIgAbIB/wIhAakB/wIhAaMB/wIeAaMB/wJX AcwB/wIfAb8B/wIfAbIB/wIgAakB/wIgAaMB/wIdAaMB/wJWAacB/xgAAfEBRwG+Af8B+QEAAa0B/wH0
AacB/xgAAfEBSAG+Af8B+QEAAa0B/wH0AQABqgH/Ae0BAAGlAf8B3wEAAZsB/wHRAQABkgH/AckBAAGM AQABqgH/Ae0BAAGlAf8B3wEAAZsB/wHRAQABkgH/AckBAAGMAf8BwwEAAYgB/wHBAQABhwH/AcIBOwGZ
Af8BwwEAAYgB/wHBAQABhwH/AcIBPAGZAf8YAAFNAbQB3gH/AQcBnwHdAf8BBwGcAdkB/wEHAZgB0wH/ Af8YAAFMAbQB3gH/AQYBnwHdAf8BBgGcAdkB/wEGAZgB0wH/AQUBjwHGAf8BBwGFAbgB/wEKAYEBrwH/
AQYBjwHGAf8BCAGFAbgB/wELAYEBrwH/AQwBegGnAf8BCQF6AagB/wFJAY0BqQH/GAAD5gH/A9wB/wPZ AQsBeQGnAf8BCAF5AagB/wFIAY0BqQH/GAAD5gH/A9wB/wPZAf8D1AH/A8wB/wPDAf8DvgH/A7oB/wO5
Af8D1AH/A8wB/wPDAf8DvgH/A7oB/wO5Af8DwQH/IAACHwG/Af8CIAHDAf8CIQHIAf8CIAG/Af8CHgG1 Af8DwQH/IAACHgG/Af8CHwHDAf8CIAHIAf8CHwG/Af8CHQG1Af8CHgGjAf8oAAHdAQABmgH/AeMBAAGe
Af8CHwGjAf8oAAHdAQABmgH/AeMBAAGeAf8B6AEAAaIB/wHfAQABmwH/AdIBAAGSAf8BwQEAAYcB/ygA Af8B6AEAAaIB/wHfAQABmwH/AdIBAAGSAf8BwQEAAYcB/ygAAQUBjgHFAf8BBQGRAcoB/wEGAZUBzgH/
AQYBjgHFAf8BBgGRAcoB/wEHAZUBzgH/AQYBjwHGAf8BBgGHAbsB/wEKAXoBpwH/KAADywH/A84B/wPR AQUBjwHGAf8BBQGHAbsB/wEJAXkBpwH/KAADywH/A84B/wPRAf8DzAH/A8QB/wO5Af//AP8AKgADPAH/
Af8DzAH/A8QB/wO5Af//AP8AKgADPQH/AzYB/wM0Af8DMwH/AzIB/wMwAf8oAAFsAUYBOQH/AVsBNgEq AzUB/wMzAf8DMgH/AzEB/wMvAf8oAAFrAUUBOAH/AVoBNQEpAf8BUgEvASQB/wFQAS4BIwH/AUsBLAEh
Af8BUwEwASUB/wFRAS8BJAH/AUwBLQEiAf8BPgEpASEB/ygAASMBPwEjAf8BGgE1ARoB/wEWATEBFgH/ Af8BPQEoASAB/ygAASIBPgEiAf8BGQE0ARkB/wEVATABFQH/ARUBLgEVAf8BFAErARQB/wETASQBEwH/
ARYBLwEWAf8BFQEsARUB/wEUASUBFAH/KAABTQFPASgB/wFBAUMBHQH/ATsBPgEZAf8BOgE8ARgB/wE3 KAABTAFOAScB/wFAAUIBHAH/AToBPQEYAf8BOQE7ARcB/wE2ATgBFgH/ASwBLQEWAf8gAAOCAf8DRgH/
ATkBFwH/AS0BLgEXAf8gAAOCAf8DRwH/A0cB/wNGAf8DRQH/A0QB/wNBAf8DOwH/AzQB/wNDAf8YAAGi A0YB/wNFAf8DRAH/A0MB/wNAAf8DOgH/AzMB/wNCAf8YAAGiAYEBbgH/AYcBTwE9Af8BiAFPATwB/wGG
AYEBbwH/AYcBUAE+Af8BiAFQAT0B/wGGAU8BPAH/AYQBTQE7Af8BggFLATkB/wGBAUgBNgH/AWsBPgEw AU4BOwH/AYQBTAE6Af8BggFKATgB/wGBAUcBNQH/AWoBPQEvAf8BUgEvASMB/wFCATYBMQH/GAABWgF2
Af8BUwEwASQB/wFDATcBMgH/GAABWwF3AVsB/wEmAVABJgH/ASUBUAElAf8BJQFPASUB/wEkAU4BJAH/ AVoB/wElAU8BJQH/ASQBTwEkAf8BJAFOASQB/wEjAU0BIwH/ASIBTAEiAf8BIAFIASAB/wEcAT4BHAH/
ASMBTQEjAf8BIQFJASEB/wEdAT8BHQH/ARYBMQEWAf8BKgEzASoB/xgAAYUBhwFfAf8BYQFlASoB/wFi ARUBMAEVAf8BKQEyASkB/xgAAYUBhwFeAf8BYAFkASkB/wFhAWQBKAH/AWABYwEoAf8BXgFiAScB/wFc
AWUBKQH/AWEBZAEpAf8BXwFjASgB/wFdAWEBJwH/AVkBXQElAf8BTQFQASAB/wE7AT4BGQH/ATgBOQEs AWABJgH/AVgBXAEkAf8BTAFPAR8B/wE6AT0BGAH/ATcBOAErAf8UAAOIAf8DWAH/A14B/wNjAf8DYgH/
Af8UAAOIAf8DWQH/A18B/wNkAf8DYwH/A2EB/wNhAf8DXgH/A1gB/wNHAf8DNwH/A0MB/xAAAbABgQFu A2AB/wNgAf8DXQH/A1cB/wNGAf8DNgH/A0IB/xAAAbABgQFtAf8BsAFaAT0B/wHCAVoBNwH/Ac0BWwE1
Af8BsAFbAT4B/wHCAVsBOAH/Ac0BXAE2Af8BygFcATcB/wHJAVsBNgH/AckBWwE2Af8BwQFaATcB/wGx Af8BygFbATYB/wHJAVoBNQH/AckBWgE1Af8BwQFZATYB/wGxAVgBOwH/AYcBTgE8Af8BXAE1ASgB/wFB
AVkBPAH/AYcBTwE9Af8BXQE2ASkB/wFCATUBMQH/EAABWwGBAVsB/wEnAWgBJwH/ASMBcwEjAf8BIQF6 ATQBMAH/EAABWgGBAVoB/wEmAWcBJgH/ASIBcgEiAf8BIAF5ASAB/wEhAXcBIQH/ASEBdgEhAf8BIQF2
ASEB/wEiAXgBIgH/ASIBdwEiAf8BIgF3ASIB/wEjAXEBIwH/ASUBaAElAf8BJQFQASUB/wEZATYBGQH/ ASEB/wEiAXABIgH/ASQBZwEkAf8BJAFPASQB/wEYATUBGAH/ASgBMgEoAf8QAAGPAZIBXQH/AYEBhAEo
ASkBMwEpAf8QAAGPAZIBXgH/AYEBhAEpAf8BiwGSASQB/wGUAZwBIAH/AZIBmQEhAf8BkQGYASIB/wGR Af8BiwGSASMB/wGUAZwBHwH/AZIBmQEgAf8BkQGYASEB/wGRAZgBIQH/AYoBkAEiAf8BgQGEASYB/wFg
AZgBIgH/AYoBkAEjAf8BgQGEAScB/wFhAWUBKQH/AUMBRQEcAf8COAErAf8QAANbAf8DZAH/A20B/wNt AWQBKAH/AUIBRAEbAf8CNwEqAf8QAANaAf8DYwH/A2wB/wNsAf8DbAH/A2wB/wNkAf8DZgH/A10B/wNB
Af8DbQH/A20B/wNlAf8DZwH/A14B/wNCAf8DRAH/AzYB/xAAAbUBWwE9Af8BywFcATcB/wHUAWMBPQH/ Af8DQwH/AzUB/xAAAbUBWgE8Af8BywFbATYB/wHUAWIBPAH/AdQBYgE8Af8B1AFiATwB/wHUAWIBPAH/
AdQBYwE9Af8B1AFjAT0B/wHUAWMBPQH/Ac8BXQE3Af8B0gFeATgB/wG+AVsBOgH/AYEBSQE4Af8BgQFL Ac8BXAE2Af8B0gFdATcB/wG+AVoBOQH/AYEBSAE3Af8BgQFKATgB/wFaATQBJwH/EAABJQFqASUB/wEg
ATkB/wFbATUBKAH/EAABJgFrASYB/wEhAXkBIQH/ASABgwEgAf8BIAGDASAB/wEgAYMBIAH/ASABgwEg AXgBIAH/AR8BgwEfAf8BHwGDAR8B/wEfAYMBHwH/AR8BgwEfAf8BHwGBAR8B/wEeAYEBHgH/ASMBbwEj
Af8BIAGBASAB/wEfAYEBHwH/ASQBcAEkAf8BIwFJASMB/wEjAUwBIwH/ARkBNgEZAf8QAAGCAYgBKAH/ Af8BIgFIASIB/wEiAUsBIgH/ARgBNQEYAf8QAAGCAYgBJwH/AZMBmwEgAf8BoAGoAR0B/wGgAagBHQH/
AZMBmwEhAf8BoAGoAR4B/wGgAagBHgH/AaABqAEeAf8BoAGoAR4B/wGXAZ8BHwH/AZsBowEeAf8BiAGO AaABqAEdAf8BoAGoAR0B/wGXAZ8BHgH/AZsBowEdAf8BiAGOASQB/wFYAVsBJQH/AVwBXwEmAf8BQAFD
ASUB/wFZAVwBJgH/AV0BYAEnAf8BQQFEARsB/wwAA2QB/wNqAf8DbQH/A20B/wNtAf8DawH/A2YB/wNM ARoB/wwAA2MB/wNpAf8DbAH/A2wB/wNsAf8DagH/A2UB/wNLAf8DNAH/AyMB/wMAAf8DQwH/A0AB/wMy
Af8DNQH/AyQB/wMAAf8DRAH/A0EB/wMzAf8IAAHJAV8BOwH/Ac8BYwE/Af8B1wFhAToB/wHUAWMBPQH/ Af8IAAHJAV4BOgH/Ac8BYgE+Af8B1wFgATkB/wHUAWIBPAH/AdQBYgE8Af8B0wFiATwB/wHKAWABPAH/
AdQBYwE9Af8B0wFjAT0B/wHKAWEBPQH/AY4BVwFFAf8BVAE0ASkB/wEcAREBDgH/AwAB/wGBAUsBOgH/ AY4BVgFEAf8BUwEzASgB/wEbARABDQH/AwAB/wGBAUoBOQH/AYEBRwE1Af8BSgEuASUB/wgAASIBeAEi
AYEBSAE2Af8BSwEvASYB/wgAASMBeQEjAf8BIgGBASIB/wEdAYUBHQH/ASABgwEgAf8BIAGDASAB/wEg Af8BIQGBASEB/wEcAYUBHAH/AR8BgwEfAf8BHwGDAR8B/wEfAYIBHwH/ASMBeQEjAf8BKQFTASkB/wEY
AYIBIAH/ASQBegEkAf8BKgFUASoB/wEZATEBGQH/AQgBEAEIAf8DAAH/ASMBTAEjAf8BIQFJASEB/wEX ATABGAH/AQcBDwEHAf8DAAH/ASIBSwEiAf8BIAFIASAB/wEWASsBFgH/CAABkwGaASIB/wGbAaMBIAH/
ASwBFwH/CAABkwGaASMB/wGbAaMBIQH/AaMBqwEaAf8BoAGoAR4B/wGgAagBHgH/AZ8BpwEeAf8BlAGb AaMBqwEZAf8BoAGoAR0B/wGgAagBHQH/AZ8BpwEdAf8BlAGbASMB/wFlAWkBLgH/ATsBPQEbAf8BEwEU
ASQB/wFmAWoBLwH/ATwBPgEcAf8BFAEVAQkB/wMAAf8BXAFfASgB/wFZAV0BJQH/ATYBOAEaAf8IAANu AQgB/wMAAf8BWwFeAScB/wFYAVwBJAH/ATUBNwEZAf8IAANtAf8DgAH/A20B/wNsAf8DUAH/AzcB/wMo
Af8DgAH/A24B/wNtAf8DUQH/AzgB/wMpAf8DBQH/AwAB/wMAAf8DHwH/A1wB/wNNAf8DOQH/CAAB2AFj Af8DBAH/AwAB/wMAAf8DHgH/A1sB/wNMAf8DOAH/CAAB2AFiATsB/wHbAW8BSwH/AdQBZQE/Af8B1AFi
ATwB/wHbAXABTAH/AdQBZgFAAf8B1AFjAT0B/wGcAVoBRAH/AWABOwEvAf8BJwEYARMB/wIBAQAB/wMA ATwB/wGcAVkBQwH/AV8BOgEuAf8BJgEXARIB/wMAAf8DAAH/AwAB/wEUAQsBCQH/AbsBWgE6Af8BlQFV
Af8DAAH/ARUBDAEKAf8BuwFbATsB/wGVAVYBQAH/AWQBOwEtAf8IAAEeAYcBHgH/ASABkAEgAf8BIAGF AT8B/wFjAToBLAH/CAABHQGHAR0B/wEfAZABHwH/AR8BhQEfAf8BHwGDAR8B/wEpAVsBKQH/ARwBOAEc
ASAB/wEgAYMBIAH/ASoBXAEqAf8BHQE5AR0B/wELARcBCwH/AwAB/wMAAf8DAAH/AQYBDAEGAf8BJQFu Af8BCgEWAQoB/wMAAf8DAAH/AwAB/wEFAQsBBQH/ASQBbQEkAf8BJwFXAScB/wEaAToBGgH/CAABpAGt
ASUB/wEoAVgBKAH/ARsBOwEbAf8IAAGkAa0BGwH/AbABugEdAf8BogGqAR4B/wGgAagBHgH/AXABdAEu ARoB/wGwAboBHAH/AaIBqgEdAf8BoAGoAR0B/wFvAXMBLQH/AUQBRgEfAf8BGwEcAQwB/wMAAf8DAAH/
Af8BRQFHASAB/wEcAR0BDQH/AwAB/wMAAf8DAAH/Ag8BBwH/AYYBjAEmAf8BawFvASwB/wFHAUoBHwH/ AwAB/wIOAQYB/wGGAYwBJQH/AWoBbgErAf8BRgFJAR4B/wgAA3cB/wOHAf8DcQH/A2wB/wM+Af8DMAH/
CAADeAH/A4cB/wNyAf8DbQH/Az8B/wMxAf8DFwH/AwAB/wMAAf8DAAH/AzYB/wNpAf8DVwH/Az0B/wgA AxYB/wMAAf8DAAH/AwAB/wM1Af8DaAH/A1YB/wM8Af8IAAHaAWwBRwH/Ad0BeAFXAf8B1QFpAUUB/wHU
AdoBbQFIAf8B3QF5AVgB/wHVAWoBRgH/AdQBYwE9Af8BcwFHATgB/wFHASwBIwH/AQsBBwEFAf8DAAH/ AWIBPAH/AXIBRgE3Af8BRgErASIB/wEKAQYBBAH/AwAB/wMAAf8DAAH/AVYBNQEqAf8B1AFeATcB/wGv
AwAB/wMAAf8BVwE2ASsB/wHUAV8BOAH/Aa8BWQE8Af8BcQFBATEB/wgAAR8BjgEfAf8BIQGXASEB/wEi AVgBOwH/AXABQAEwAf8IAAEeAY4BHgH/ASABlwEgAf8BIQGHASEB/wEfAYMBHwH/ASEBQgEhAf8BFAEp
AYcBIgH/ASABgwEgAf8BIgFDASIB/wEVASoBFQH/AQMBBgEDAf8DAAH/AwAB/wMAAf8BGgE0ARoB/wEf ARQB/wECAQUBAgH/AwAB/wMAAf8DAAH/ARkBMwEZAf8BHgGBAR4B/wEkAWYBJAH/AR0BQQEdAf8IAAGu
AYEBHwH/ASUBZwElAf8BHgFCAR4B/wgAAa4BtwEcAf8BuQHCAR4B/wGlAa0BIAH/AaABqAEeAf8BUgFV AbcBGwH/AbkBwgEdAf8BpQGtAR8B/wGgAagBHQH/AVEBVAElAf8BMgE0ARcB/wIHAQIB/wMAAf8DAAH/
ASYB/wEzATUBGAH/AggBAwH/AwAB/wMAAf8DAAH/AT8BQQEeAf8BngGmARwB/wGBAYMBJwH/AVEBVAEi AwAB/wE+AUABHQH/AZ4BpgEbAf8BgQGDASYB/wFQAVMBIQH/CAADgQH/A4wB/wNxAf8DbAH/A2oB/wNq
Af8IAAOBAf8DjAH/A3IB/wNtAf8DawH/A2sB/wMtAf8DAAH/AwAB/wMMAf8DUAH/A2MB/wNdAf8DPgH/ Af8DLAH/AwAB/wMAAf8DCwH/A08B/wNiAf8DXAH/Az0B/wgAAdwBcgFOAf8B3wGBAV0B/wHUAWkBRgH/
CAAB3AFzAU8B/wHfAYEBXgH/AdQBagFHAf8B1AFjAT0B/wHTAWMBPQH/AdIBYwE+Af8BNAEgARkB/wMA AdQBYgE8Af8B0wFiATwB/wHSAWIBPQH/ATMBHwEYAf8DAAH/AwAB/wEDAgEB/wGZAVkBQwH/AcoBWwE2
Af8DAAH/AQQCAgH/AZkBWgFEAf8BygFcATcB/wG9AVoBOQH/AXUBQwEzAf8IAAEgAZIBIAH/ASIBmwEi Af8BvQFZATgB/wF0AUIBMgH/CAABHwGSAR8B/wEhAZsBIQH/ASEBhgEhAf8BHwGDAR8B/wEfAYIBHwH/
Af8BIgGGASIB/wEgAYMBIAH/ASABggEgAf8BIQGBASEB/wEPAR4BDwH/AwAB/wMAAf8BAQECAQEB/wEq ASABgQEgAf8BDgEdAQ4B/wMAAf8DAAH/AQABAQEAAf8BKQFZASkB/wEhAXcBIQH/ASMBbgEjAf8BHgFE
AVoBKgH/ASIBeAEiAf8BJAFvASQB/wEfAUUBHwH/CAABswG8AR0B/wG9AccBHwH/AaQBrAEhAf8BoAGo AR4B/wgAAbMBvAEcAf8BvQHHAR4B/wGkAawBIAH/AaABqAEdAf8BnwGnAR0B/wGeAaYBHgH/ASQBJQEQ
AR4B/wGfAacBHgH/AZ4BpgEfAf8BJQEmAREB/wMAAf8DAAH/AgMBAQH/AW4BcgEvAf8BkgGZASEB/wGI Af8DAAH/AwAB/wICAQAB/wFtAXEBLgH/AZIBmQEgAf8BiAGOASQB/wFTAVYBIgH/CAADgQH/A5YB/wOB
AY4BJQH/AVQBVwEjAf8IAAOBAf8DlgH/A4EB/wNpAf8DZQH/AzAB/wMAAf8DNgH/Aw4B/wMtAf8DagH/ Af8DaAH/A2QB/wMvAf8DAAH/AzUB/wMNAf8DLAH/A2kB/wNsAf8DWQH/Az0B/wgAAdwBcQFNAf8B4QGG
A20B/wNaAf8DPgH/CAAB3AFyAU4B/wHhAYYBZwH/AdoBcQFNAf8BzAFiAT8B/wHJAWABPQH/AT8BJwEf AWYB/wHaAXABTAH/AcwBYQE+Af8ByQFfATwB/wE+ASYBHgH/AwAB/wFWATQBKQH/AQMBAgEBAf8BMwEf
Af8DAAH/AVcBNQEqAf8BBAEDAQIB/wE0ASABGQH/AdEBYwE+Af8B1AFjAT0B/wG1AVoBPAH/AXMBRAE0 ARgB/wHRAWIBPQH/AdQBYgE8Af8BtQFZATsB/wFyAUMBMwH/CAABHwGSAR8B/wEiAaABIgH/ASABkAEg
Af8IAAEgAZIBIAH/ASMBoAEjAf8BIQGQASEB/wEjAYEBIwH/ASQBeAEkAf8BEwElARMB/wMAAf8BGgEz Af8BIgGBASIB/wEjAXcBIwH/ARIBJAESAf8DAAH/ARkBMgEZAf8BAAEBAQAB/wEOAR0BDgH/ASABgQEg
ARoB/wEBAQIBAQH/AQ8BHgEPAf8BIQGBASEB/wEgAYMBIAH/ASUBawElAf8BIAFEASAB/wgAAbIBuwEd Af8BHwGDAR8B/wEkAWoBJAH/AR8BQwEfAf8IAAGyAbsBHAH/AcQBzgEfAf8BsAG5AR0B/wGXAZ4BIgH/
Af8BxAHOASAB/wGwAbkBHgH/AZcBngEjAf8BkwGaASQB/wEtAS8BFQH/AwAB/wE+AUABHQH/AgMBAQH/ AZMBmgEjAf8BLAEuARQB/wMAAf8BPQE/ARwB/wICAQAB/wEkASUBEAH/AZ0BpAEfAf8BoAGoAR0B/wGC
ASUBJgERAf8BnQGkASAB/wGgAagBHgH/AYIBhwEnAf8BUwFWASMB/wgAA3cB/wObAf8DkAH/A24B/wMw AYcBJgH/AVIBVQEiAf8IAAN2Af8DmwH/A5AB/wNtAf8DLwH/AwAB/wM9Af8DbgH/AysB/wM+Af8DbQH/
Af8DAAH/Az4B/wNvAf8DLAH/Az8B/wNuAf8DbQH/A1kB/wNBAf8IAAHaAWsBRgH/AeIBigFtAf8B3wGB A2wB/wNYAf8DQAH/CAAB2gFqAUUB/wHiAYoBbAH/Ad8BgQFhAf8ByAFqAUsB/wE+ASYBHgH/AwAB/wFu
AWIB/wHIAWsBTAH/AT8BJwEfAf8DAAH/AW8BRQE2Af8B2AFlAT4B/wExAR4BGAH/AXMBRwE4Af8B1wFk AUQBNQH/AdgBZAE9Af8BMAEdARcB/wFyAUYBNwH/AdcBYwE9Af8B1AFiATwB/wGxAVkBPAH/AXgBSQE6
AT4B/wHUAWMBPQH/AbEBWgE9Af8BeQFKATsB/wgAAR8BjQEfAf8BJAGkASQB/wEjAZ0BIwH/ASkBgQEp Af8IAAEeAY0BHgH/ASMBpAEjAf8BIgGdASIB/wEoAYEBKAH/ARIBJAESAf8DAAH/ASABQAEgAf8BHQGI
Af8BEwElARMB/wMAAf8BIQFBASEB/wEeAYgBHgH/AQ8BHQEPAf8BIgFDASIB/wEeAYcBHgH/ASABgwEg AR0B/wEOARwBDgH/ASEBQgEhAf8BHQGHAR0B/wEfAYMBHwH/ASUBZwElAf8BIwFGASMB/wgAAawBtQEb
Af8BJgFoASYB/wEkAUcBJAH/CAABrAG1ARwB/wHIAdIBIAH/AcABygEfAf8BmAGeASoB/wEtAS8BFQH/ Af8ByAHSAR8B/wHAAcoBHgH/AZgBngEpAf8BLAEuARQB/wMAAf8BTwFRASQB/wGmAa8BGgH/ASIBIwEP
AwAB/wFQAVIBJQH/AaYBrwEbAf8BIwEkARAB/wFSAVUBJgH/AaUBrQEcAf8BoAGoAR4B/wGBAYQBKAH/ Af8BUQFUASUB/wGlAa0BGwH/AaABqAEdAf8BgQGEAScB/wFWAVgBKAH/DAADngH/A6IB/wNLAf8DBAH/
AVcBWQEpAf8MAAOeAf8DogH/A0wB/wMFAf8DPwH/A24B/wNqAf8DSwH/A14B/wNtAf8DbQH/A1sB/xAA Az4B/wNtAf8DaQH/A0oB/wNdAf8DbAH/A2wB/wNaAf8QAAHiAYsBbQH/AeMBjwFxAf8BhAFaAUwB/wMA
AeIBiwFuAf8B4wGPAXIB/wGEAVsBTQH/AgEBAAH/AXIBRgE4Af8B1gFkAT4B/wHRAWMBPgH/AYsBVgFE Af8BcQFFATcB/wHWAWMBPQH/AdEBYgE9Af8BiwFVAUMB/wG6AVwBPgH/AdQBYgE8Af8B1AFiATwB/wG5
Af8BugFdAT8B/wHUAWMBPQH/AdQBYwE9Af8BuQFbATwB/xAAASQBpAEkAf8BJQGnASUB/wEvAU4BLwH/ AVoBOwH/EAABIwGkASMB/wEkAacBJAH/AS4BTQEuAf8DAAH/ASEBQgEhAf8BHgGFAR4B/wEgAYEBIAH/
AwAB/wEiAUMBIgH/AR8BhQEfAf8BIQGBASEB/wEqAVIBKgH/AScBbQEnAf8BIAGDASAB/wEgAYMBIAH/ ASkBUQEpAf8BJgFsASYB/wEfAYMBHwH/AR8BgwEfAf8BJAFsASQB/xAAAcgB0wEgAf8BzAHWASAB/wFe
ASUBbQElAf8QAAHIAdMBIQH/AcwB1gEhAf8BXwFhATYB/wMAAf8BUgFUASYB/wGjAasBHAH/AZ0BpAEg AWABNQH/AwAB/wFRAVMBJQH/AaMBqwEbAf8BnQGkAR8B/wFjAWYBLgH/AYUBiwEoAf8BoAGoAR0B/wGg
Af8BZAFnAS8B/wGFAYsBKQH/AaABqAEeAf8BoAGoAR4B/wGEAYoBJwH/EAADtwH/A6gB/wNyAf8DVgH/ AagBHQH/AYQBigEmAf8QAAO3Af8DqAH/A3EB/wNVAf8DgQH/A3EB/wNwAf8DbAH/A2wB/wNsAf8DbAH/
A4EB/wNyAf8DcQH/A20B/wNtAf8DbQH/A20B/wOLAf8QAAHoAaABhwH/AeQBlAF5Af8BvQF2AV4B/wGY A4sB/xAAAegBoAGHAf8B5AGUAXgB/wG9AXUBXQH/AZgBYQFPAf8B1wFxAU8B/wHQAWsBSQH/AdEBaAFF
AWIBUAH/AdcBcgFQAf8B0AFsAUoB/wHRAWkBRgH/AdQBYwE9Af8B1AFjAT0B/wHUAWMBPQH/AdQBYwE9 Af8B1AFiATwB/wHUAWIBPAH/AdQBYgE8Af8B1AFiATwB/wHAAYEBZgH/EAABXwG1AV8B/wElAasBJQH/
Af8BwAGBAWcB/xAAAWABtQFgAf8BJgGrASYB/wEzAXcBMwH/ATEBWgExAf8BIwGOASMB/wElAYMBJQH/ ATIBdgEyAf8BMAFZATAB/wEiAY4BIgH/ASQBgwEkAf8BIgGEASIB/wEfAYMBHwH/AR8BgwEfAf8BHwGD
ASMBhAEjAf8BIAGDASAB/wEgAYMBIAH/ASABgwEgAf8BIAGDASAB/wFWAYgBVgH/EAABzQHUAV0B/wHR AR8B/wEfAYMBHwH/AVUBiAFVAf8QAAHNAdQBXAH/AdEB3AEhAf8BkAGWATcB/wFsAXABNwH/Aa0BtgEg
AdwBIgH/AZABlgE4Af8BbQFxATgB/wGtAbYBIQH/AaEBqAEkAf8BoQGpASIB/wGgAagBHgH/AaABqAEe Af8BoQGoASMB/wGhAakBIQH/AaABqAEdAf8BoAGoAR0B/wGgAagBHQH/AaABqAEdAf8BmgGeAVYB/xQA
Af8BoAGoAR4B/wGgAagBHgH/AZoBngFXAf8UAAO+Af8DogH/A5sB/wOSAf8DgwH/A3UB/wNuAf8DaQH/ A74B/wOiAf8DmwH/A5IB/wODAf8DdAH/A20B/wNoAf8DZgH/A48B/xgAAekBpQGPAf8B4wGPAXIB/wHi
A2cB/wOPAf8YAAHpAaUBjwH/AeMBjwFzAf8B4gGLAW0B/wHgAYQBZQH/Ad0BdwFVAf8B2AFrAUcB/wHU AYsBbAH/AeABhAFkAf8B3QF2AVQB/wHYAWoBRgH/AdQBZQFAAf8B0AFgATsB/wHTAV0BNgH/AcoBgQFk
AWYBQQH/AdABYQE8Af8B0wFeATcB/wHKAYEBZQH/GAABYQG6AWEB/wElAacBJQH/ASQBpAEkAf8BIwGf Af8YAAFgAboBYAH/ASQBpwEkAf8BIwGkASMB/wEiAZ8BIgH/ASABlgEgAf8BHwGLAR8B/wEgAYQBIAH/
ASMB/wEhAZYBIQH/ASABiwEgAf8BIQGEASEB/wEhAYEBIQH/AR8BgQEfAf8BVgGQAVYB/xgAAdMB2gFe ASABgQEgAf8BHgGBAR4B/wFVAZABVQH/GAAB0wHaAV0B/wHMAdcBIAH/AcgB0gEgAf8BwgHMAR8B/wG3
Af8BzAHXASEB/wHIAdIBIQH/AcIBzAEgAf8BtwHAAR4B/wGqAbMBHgH/AaEBqgEfAf8BmwGjAR8B/wGc AcABHQH/AaoBswEdAf8BoQGqAR4B/wGbAaMBHgH/AZwBpAEcAf8BogGnAVUB/yAAA4IB/wOHAf8DjAH/
AaQBHQH/AaIBpwFWAf8gAAOCAf8DhwH/A4wB/wODAf8DdwH/A2cB/ygAAd0BdgFUAf8B3gGAAVoB/wHf A4MB/wN2Af8DZgH/KAAB3QF1AVMB/wHeAYABWQH/Ad8BgQFfAf8B3QF2AVQB/wHaAWoBRQH/AdIBXQE3
AYEBYAH/Ad0BdwFVAf8B2gFrAUYB/wHSAV4BOAH/KAABIQGVASEB/wEiAZkBIgH/ASIBnAEiAf8BIQGW Af8oAAEgAZUBIAH/ASEBmQEhAf8BIQGcASEB/wEgAZYBIAH/AR4BjQEeAf8BHgGBAR4B/ygAAbYBvwEc
ASEB/wEfAY0BHwH/AR8BgQEfAf8oAAG2Ab8BHQH/AboBxAEeAf8BvgHIAR8B/wG3AcABHgH/AawBtQEc Af8BugHEAR0B/wG+AcgBHgH/AbcBwAEdAf8BrAG1ARsB/wGbAaMBHQH//wAVAAFCAU0BPgcAAT4DAAEo
Af8BmwGjAR4B//8AFQABQgFNAT4HAAE+AwABKAMAAUADAAFgAwABAQEAAQEGAAEDFgAD/4EACP8B+AEf AwABQAMAAWADAAEBAQABAQYAAQMWAAP/gQAI/wH4AR8B+AEfAfgBHwH4AR8B4AEHAeABBwHgAQcB4AEH
AfgBHwH4AR8B+AEfAeABBwHgAQcB4AEHAeABBwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAED
AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAcABAwHAAQMBwAEDAcABAwHAAQMBwAED
AcABAwHAAQMB4AEHAeABBwHgAQcB4AEHAfgBHwH4AR8B+AEfAfgBHxD/AfgBHwH4AR8B+AEfAfgBHwHg
AQcB4AEHAeABBwHgAQcBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwGAAQEBgAEBAYABAQGA
AQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGA
AQEBoAEBAYABAQGAAQEBgAEBAbABAQHAAQMBwAEDAcABAwHwAQMBwAEDAcABAwHAAQMB0AEDAeABBwHg
AQcB4AEHAf4BBwH4AR8B+AEfAfgBHwH4AR8Q/wH4AR8B+AEfAfgBHwH4AR8B4AEHAeABBwHgAQcB4AEH
AcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB AcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHgAQcB4AEHAeABBwHgAQcB+AEf AYABAQGAAQEBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHgAQcB4AEHAeABBwHgAQcB+AEf
AfgBHwH4AR8B+AEfEP8B+AEfAfgBHwH4AR8B+AEfAeABBwHgAQcB4AEHAeABBwHAAQMBwAEDAcABAwHA AfgBHwH4AR8B+AEfEP8B+AEfAfgBHwH4AR8B+AEfAeABBwHgAQcB4AEHAeABBwHAAQMBwAEDAcABAwHA
AQMBwAEDAcABAwHAAQMBwAEDAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGA AQMBwAEDAcABAwHAAQMBwAEDAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGA
AQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAcABAwHA AQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGgAQEBgAEBAYABAQGAAQEBsAEBAcABAwHA
AQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMB4AEHAeABBwHgAQcB4AEHAfgBHwH4AR8B+AEfAfgBHxD/ AQMBwAEDAfABAwHAAQMBwAEDAcABAwHQAQMB4AEHAeABBwHgAQcB/gEHAfgBHwH4AR8B+AEfAfgBHxD/
AfgBHwH4AR8B+AEfAfgBHwHgAQcB4AEHAeABBwHgAQcBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAED AfgBHwH4AR8B+AEfAfgBHwHgAQcB4AEHAeABBwHgAQcBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAED
AcABAwGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB AcABAwGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQHAAQMBwAEDAcABAwHAAQMBwAED AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQHAAQMBwAEDAcABAwHAAQMBwAED
AcABAwHAAQMBwAEDAeABBwHgAQcB4AEHAeABBwH4AR8B+AEfAfgBHwH4AR8I/ws= AcABAwHAAQMBwAEDAeABBwHgAQcB4AEHAeABBwH4AR8B+AEfAfgBHwH4AR8Q/wH4AR8B+AEfAfgBHwH4
AR8B4AEHAeABBwHgAQcB4AEHAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBgAEBAYABAQGA
AQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGA
AQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHg
AQcB4AEHAeABBwHgAQcB+AEfAfgBHwH4AR8B+AEfEP8B+AEfAfgBHwH4AR8B+AEfAeABBwHgAQcB4AEH
AeABBwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEBAYABAQGAAQEBgAEB
AYABAQGAAQEBgAEBAcABAwHAAQMBwAEDAcABAwHAAQMBwAEDAcABAwHAAQMB4AEHAeABBwHgAQcB4AEH
AfgBHwH4AR8B+AEfAfgBHwj/Cw==
</value> </value>
</data> </data>
<data name="typelist.SelectedNodes" mimetype="application/x-microsoft.net.object.binary.base64"> <data name="typelist.SelectedNodes" mimetype="application/x-microsoft.net.object.binary.base64">

View file

@ -126,13 +126,5 @@ namespace CodeImp.DoomBuilder.GZBuilder
if (General.Map != null) if (General.Map != null)
General.Map.Data.ReloadMapInfo(); General.Map.Data.ReloadMapInfo();
} }
[BeginAction("setcurrenttextures")]
private static void setCurrentTextures() {
if(General.Map != null) {
SetCurrentTexturesForm form = new SetCurrentTexturesForm();
form.ShowDialog(Form.ActiveForm);
}
}
} }
} }

View file

@ -979,7 +979,6 @@ namespace CodeImp.DoomBuilder
// Cancel volatile mode, if any // Cancel volatile mode, if any
General.Editing.DisengageVolatileMode(); General.Editing.DisengageVolatileMode();
General.Settings.GZForceDefaultTextures = false;//mxd
// Ask the user to save changes (if any) // Ask the user to save changes (if any)
if(General.AskSaveMap()) if(General.AskSaveMap())
@ -1021,11 +1020,12 @@ namespace CodeImp.DoomBuilder
mainwindow.ShowSplashDisplay(); mainwindow.ShowSplashDisplay();
} }
settings.FindDefaultDrawSettings(); //mxd
// Let the plugins know // Let the plugins know
plugins.OnMapNewEnd(); plugins.OnMapNewEnd();
// All done // All done
settings.FindDefaultDrawSettings();
mainwindow.SetupInterface(); mainwindow.SetupInterface();
mainwindow.RedrawDisplay(); mainwindow.RedrawDisplay();
mainwindow.UpdateThingsFilters(); mainwindow.UpdateThingsFilters();
@ -1056,8 +1056,6 @@ namespace CodeImp.DoomBuilder
// Cancel volatile mode, if any // Cancel volatile mode, if any
General.Editing.DisengageVolatileMode(); General.Editing.DisengageVolatileMode();
General.Settings.GZForceDefaultTextures = false;//mxd
// Ask the user to save changes (if any) // Ask the user to save changes (if any)
if(General.AskSaveMap()) if(General.AskSaveMap())
{ {
@ -1124,7 +1122,6 @@ namespace CodeImp.DoomBuilder
//mxd //mxd
mainwindow.UpdateGZDoomPanel(); mainwindow.UpdateGZDoomPanel();
General.Settings.GZForceDefaultTextures = false;
} }
openfile.Dispose(); openfile.Dispose();
@ -1166,11 +1163,12 @@ namespace CodeImp.DoomBuilder
if(!map.InitializeSwitchMap(changemapwindow.Options)) return; if(!map.InitializeSwitchMap(changemapwindow.Options)) return;
settings.FindDefaultDrawSettings(); //mxd
// Let the plugins know // Let the plugins know
plugins.OnMapOpenEnd(); plugins.OnMapOpenEnd();
// All done // All done
settings.FindDefaultDrawSettings();
mainwindow.SetupInterface(); mainwindow.SetupInterface();
mainwindow.RedrawDisplay(); mainwindow.RedrawDisplay();
mainwindow.UpdateThingsFilters(); mainwindow.UpdateThingsFilters();
@ -1179,7 +1177,6 @@ namespace CodeImp.DoomBuilder
//mxd //mxd
mainwindow.UpdateGZDoomPanel(); mainwindow.UpdateGZDoomPanel();
Settings.GZForceDefaultTextures = false;
if (errorlogger.IsErrorAdded) if (errorlogger.IsErrorAdded)
{ {
@ -1255,11 +1252,12 @@ namespace CodeImp.DoomBuilder
mainwindow.ShowSplashDisplay(); mainwindow.ShowSplashDisplay();
} }
settings.FindDefaultDrawSettings(); //mxd
// Let the plugins know // Let the plugins know
plugins.OnMapOpenEnd(); plugins.OnMapOpenEnd();
// All done // All done
settings.FindDefaultDrawSettings();
mainwindow.SetupInterface(); mainwindow.SetupInterface();
mainwindow.RedrawDisplay(); mainwindow.RedrawDisplay();
mainwindow.UpdateThingsFilters(); mainwindow.UpdateThingsFilters();

View file

@ -427,7 +427,7 @@ namespace CodeImp.DoomBuilder.Geometry
// properties from the nearest line in this collection when the // properties from the nearest line in this collection when the
// default properties can't be found in the alllines collection. // default properties can't be found in the alllines collection.
// Return null when no new sector could be made. // Return null when no new sector could be made.
public static Sector MakeSector(List<LinedefSide> alllines, List<Linedef> nearbylines, bool useDefaultTextures) public static Sector MakeSector(List<LinedefSide> alllines, List<Linedef> nearbylines, bool useOverrides)
{ {
Sector sourcesector = null; Sector sourcesector = null;
SidedefSettings sourceside = new SidedefSettings(); SidedefSettings sourceside = new SidedefSettings();
@ -519,7 +519,7 @@ namespace CodeImp.DoomBuilder.Geometry
} }
// Use defaults where no settings could be found // Use defaults where no settings could be found
TakeSidedefDefaults(ref sourceside, useDefaultTextures); TakeSidedefDefaults(ref sourceside, useOverrides);
// Found a source sector? // Found a source sector?
if(sourcesector != null) if(sourcesector != null)
@ -527,10 +527,13 @@ namespace CodeImp.DoomBuilder.Geometry
// Copy properties from source to new sector // Copy properties from source to new sector
sourcesector.CopyPropertiesTo(newsector); sourcesector.CopyPropertiesTo(newsector);
//mxd //mxd. Apply overrides
if(useDefaultTextures) { if(useOverrides) {
newsector.SetCeilTexture(General.Settings.DefaultCeilingTexture); if (General.Map.Options.OverrideCeilingTexture) newsector.SetCeilTexture(General.Map.Options.DefaultCeilingTexture);
newsector.SetFloorTexture(General.Settings.DefaultFloorTexture); if (General.Map.Options.OverrideFloorTexture) newsector.SetFloorTexture(General.Map.Options.DefaultFloorTexture);
if (General.Map.Options.OverrideCeilingHeight) newsector.CeilHeight = General.Map.Options.DefaultCeilingHeight;
if (General.Map.Options.OverrideFloorHeight) newsector.FloorHeight = General.Map.Options.DefaultFloorHeight;
if (General.Map.Options.OverrideBrightness) newsector.Brightness = General.Map.Options.DefaultBrightness;
} }
} }
else else
@ -579,7 +582,7 @@ namespace CodeImp.DoomBuilder.Geometry
// This joins a sector with the given lines and sides. Returns null when operation could not be completed. // This joins a sector with the given lines and sides. Returns null when operation could not be completed.
public static Sector JoinSector(List<LinedefSide> alllines, Sidedef original, bool useDefaultTextures) public static Sector JoinSector(List<LinedefSide> alllines, Sidedef original, bool useOverrides)
{ {
SidedefSettings sourceside = new SidedefSettings(); SidedefSettings sourceside = new SidedefSettings();
@ -587,7 +590,7 @@ namespace CodeImp.DoomBuilder.Geometry
TakeSidedefSettings(ref sourceside, original); TakeSidedefSettings(ref sourceside, original);
// Use defaults where no settings could be found // Use defaults where no settings could be found
TakeSidedefDefaults(ref sourceside, useDefaultTextures); TakeSidedefDefaults(ref sourceside, useOverrides);
// Go for all sides to make sidedefs // Go for all sides to make sidedefs
foreach(LinedefSide ls in alllines) foreach(LinedefSide ls in alllines)
@ -679,12 +682,15 @@ namespace CodeImp.DoomBuilder.Geometry
} }
// This takes default settings if not taken yet // This takes default settings if not taken yet
private static void TakeSidedefDefaults(ref SidedefSettings settings, bool useDefaultTextures) private static void TakeSidedefDefaults(ref SidedefSettings settings, bool useOverrides)
{ {
// Use defaults where no settings could be found // Use defaults where no settings could be found
if(settings.newtexhigh == null || useDefaultTextures) settings.newtexhigh = General.Settings.DefaultTexture; if(settings.newtexhigh == null || (useOverrides && General.Map.Options.OverrideWallTexture))
if(settings.newtexmid == null || useDefaultTextures) settings.newtexmid = General.Settings.DefaultTexture; settings.newtexhigh = General.Map.Options.DefaultWallTexture;
if(settings.newtexlow == null || useDefaultTextures) settings.newtexlow = General.Settings.DefaultTexture; if(settings.newtexmid == null || (useOverrides && General.Map.Options.OverrideWallTexture))
settings.newtexmid = General.Map.Options.DefaultWallTexture;
if(settings.newtexlow == null || (useOverrides && General.Map.Options.OverrideWallTexture))
settings.newtexlow = General.Map.Options.DefaultWallTexture;
} }
// This takes sidedef settings if not taken yet // This takes sidedef settings if not taken yet
@ -709,11 +715,11 @@ namespace CodeImp.DoomBuilder.Geometry
// This applies defaults to a sector // This applies defaults to a sector
private static void ApplyDefaultsToSector(Sector s) private static void ApplyDefaultsToSector(Sector s)
{ {
s.SetFloorTexture(General.Settings.DefaultFloorTexture); s.SetFloorTexture(General.Map.Options.DefaultFloorTexture);
s.SetCeilTexture(General.Settings.DefaultCeilingTexture); s.SetCeilTexture(General.Map.Options.DefaultCeilingTexture);
s.FloorHeight = General.Settings.DefaultFloorHeight; s.FloorHeight = General.Map.Options.DefaultFloorHeight;
s.CeilHeight = General.Settings.DefaultCeilingHeight; s.CeilHeight = General.Map.Options.DefaultCeilingHeight;
s.Brightness = General.Settings.DefaultBrightness; s.Brightness = General.Map.Options.DefaultBrightness;
} }
#endregion #endregion
@ -857,7 +863,7 @@ namespace CodeImp.DoomBuilder.Geometry
/// marks and marks the new lines and vertices when done. Also marks the sectors that were added. /// marks and marks the new lines and vertices when done. Also marks the sectors that were added.
/// Returns false when the drawing failed. /// Returns false when the drawing failed.
/// </summary> /// </summary>
public static bool DrawLines(IList<DrawnVertex> points, bool useDefaultTextures, bool autoAlignTextureOffsets) public static bool DrawLines(IList<DrawnVertex> points, bool useOverrides, bool autoAlignTextureOffsets)
{ {
List<Vertex> newverts = new List<Vertex>(); List<Vertex> newverts = new List<Vertex>();
List<Vertex> intersectverts = new List<Vertex>(); List<Vertex> intersectverts = new List<Vertex>();
@ -1323,7 +1329,7 @@ namespace CodeImp.DoomBuilder.Geometry
if(!istruenewsector || !splittingonly) if(!istruenewsector || !splittingonly)
{ {
// Make the new sector // Make the new sector
Sector newsector = Tools.MakeSector(sectorlines, oldlines, useDefaultTextures); Sector newsector = Tools.MakeSector(sectorlines, oldlines, useOverrides);
if(newsector == null) return false; if(newsector == null) return false;
if(istruenewsector) newsector.Marked = true; if(istruenewsector) newsector.Marked = true;
@ -1398,7 +1404,7 @@ namespace CodeImp.DoomBuilder.Geometry
} }
// Have our new lines join the existing sector // Have our new lines join the existing sector
if(Tools.JoinSector(newsectorlines, joinsidedef, useDefaultTextures) == null) if(Tools.JoinSector(newsectorlines, joinsidedef, useOverrides) == null)
return false; return false;
} }
} }

View file

@ -57,6 +57,22 @@ namespace CodeImp.DoomBuilder.Map
// Script files opened // Script files opened
private List<string> scriptfiles; private List<string> scriptfiles;
//mxd. Sector drawing options
private string defaultfloortexture;
private string defaultceiltexture;
private string defaultwalltexture;
private int defaultbrightness;
private int defaultfloorheight;
private int defaultceilheight;
//mxd. Sector drawing overrides
private bool overridefloortexture;
private bool overrideceiltexture;
private bool overridewalltexture;
private bool overridefloorheight;
private bool overrideceilheight;
private bool overridebrightness;
#endregion #endregion
#region ================== Properties #region ================== Properties
@ -85,6 +101,22 @@ namespace CodeImp.DoomBuilder.Map
public Dictionary<int, string> TagLabels { get { return tagLabels; } internal set { tagLabels = value; } } //mxd public Dictionary<int, string> TagLabels { get { return tagLabels; } internal set { tagLabels = value; } } //mxd
private Dictionary<int, string> tagLabels; private Dictionary<int, string> tagLabels;
//mxd. Sector drawing options
public string DefaultWallTexture { get { return defaultwalltexture; } set { defaultwalltexture = value; } }
public string DefaultFloorTexture { get { return defaultfloortexture; } set { defaultfloortexture = value; } }
public string DefaultCeilingTexture { get { return defaultceiltexture; } set { defaultceiltexture = value; } }
public int DefaultBrightness { get { return defaultbrightness; } set { defaultbrightness = value; } }
public int DefaultFloorHeight { get { return defaultfloorheight; } set { defaultfloorheight = value; } }
public int DefaultCeilingHeight { get { return defaultceilheight; } set { defaultceilheight = value; } }
//mxd. Sector drawing overrides
public bool OverrideFloorTexture { get { return overridefloortexture; } set { overridefloortexture = value; } }
public bool OverrideCeilingTexture { get { return overrideceiltexture; } set { overrideceiltexture = value; } }
public bool OverrideWallTexture { get { return overridewalltexture; } set { overridewalltexture = value; } }
public bool OverrideFloorHeight { get { return overridefloorheight; } set { overridefloorheight = value; } }
public bool OverrideCeilingHeight { get { return overrideceilheight; } set { overrideceilheight = value; } }
public bool OverrideBrightness { get { return overridebrightness; } set { overridebrightness = value; } }
#endregion #endregion
#region ================== Constructor / Disposer #region ================== Constructor / Disposer
@ -101,6 +133,10 @@ namespace CodeImp.DoomBuilder.Map
this.mapconfig = new Configuration(true); this.mapconfig = new Configuration(true);
this.scriptfiles = new List<string>(); this.scriptfiles = new List<string>();
this.tagLabels = new Dictionary<int, string>(); //mxd this.tagLabels = new Dictionary<int, string>(); //mxd
//mxd. Sector drawing options
this.defaultbrightness = 196;
this.defaultceilheight = 128;
} }
// Constructor to load from Doom Builder Map Settings Configuration // Constructor to load from Doom Builder Map Settings Configuration
@ -121,7 +157,7 @@ namespace CodeImp.DoomBuilder.Map
// Read map configuration // Read map configuration
this.mapconfig.Root = cfg.ReadSetting("maps." + mapname, new Hashtable()); this.mapconfig.Root = cfg.ReadSetting("maps." + mapname, new Hashtable());
//mxd. Tag Labels //mxd. Read Tag Labels
this.tagLabels = new Dictionary<int, string>(); this.tagLabels = new Dictionary<int, string>();
ListDictionary tagLabelsData = (ListDictionary)this.mapconfig.ReadSetting("taglabels", new ListDictionary()); ListDictionary tagLabelsData = (ListDictionary)this.mapconfig.ReadSetting("taglabels", new ListDictionary());
@ -138,6 +174,22 @@ namespace CodeImp.DoomBuilder.Map
tagLabels.Add(tag, label); tagLabels.Add(tag, label);
} }
//mxd. Read Sector drawing options
defaultfloortexture = this.mapconfig.ReadSetting("defaultfloortexture", string.Empty);
defaultceiltexture = this.mapconfig.ReadSetting("defaultceiltexture", string.Empty);
defaultwalltexture = this.mapconfig.ReadSetting("defaultwalltexture", string.Empty);
defaultbrightness = General.Clamp(this.mapconfig.ReadSetting("defaultbrightness", 196), 0, 255);
defaultfloorheight = this.mapconfig.ReadSetting("defaultfloorheight", 0);
defaultceilheight = this.mapconfig.ReadSetting("defaultceilheight", 128);
//mxd. Read Sector drawing overrides
overridefloortexture = this.mapconfig.ReadSetting("overridefloortexture", false);
overrideceiltexture = this.mapconfig.ReadSetting("overrideceiltexture", false);
overridewalltexture = this.mapconfig.ReadSetting("overridewalltexture", false);
overridefloorheight = this.mapconfig.ReadSetting("overridefloorheight", false);
overrideceilheight = this.mapconfig.ReadSetting("overrideceilheight", false);
overridebrightness = this.mapconfig.ReadSetting("overridebrightness", false);
// Resources // Resources
IDictionary reslist = this.mapconfig.ReadSetting("resources", new Hashtable()); IDictionary reslist = this.mapconfig.ReadSetting("resources", new Hashtable());
foreach(DictionaryEntry mp in reslist) foreach(DictionaryEntry mp in reslist)
@ -234,6 +286,22 @@ namespace CodeImp.DoomBuilder.Map
mapconfig.WriteSetting("taglabels", tagLabelsData); mapconfig.WriteSetting("taglabels", tagLabelsData);
} }
//mxd. Write Sector drawing options
mapconfig.WriteSetting("defaultfloortexture", defaultfloortexture);
mapconfig.WriteSetting("defaultceiltexture", defaultceiltexture);
mapconfig.WriteSetting("defaultwalltexture", defaultwalltexture);
mapconfig.WriteSetting("defaultbrightness", defaultbrightness);
mapconfig.WriteSetting("defaultfloorheight", defaultfloorheight);
mapconfig.WriteSetting("defaultceilheight", defaultceilheight);
//mxd. Write Sector drawing overrides
mapconfig.WriteSetting("overridefloortexture", overridefloortexture);
mapconfig.WriteSetting("overrideceiltexture", overrideceiltexture);
mapconfig.WriteSetting("overridewalltexture", overridewalltexture);
mapconfig.WriteSetting("overridefloorheight", overridefloorheight);
mapconfig.WriteSetting("overrideceilheight", overrideceilheight);
mapconfig.WriteSetting("overridebrightness", overridebrightness);
// Write grid settings // Write grid settings
General.Map.Grid.WriteToConfig(mapconfig, "grid"); General.Map.Grid.WriteToConfig(mapconfig, "grid");

View file

@ -1189,14 +1189,3 @@ placethingatcursor
allowscroll = false; allowscroll = false;
default = 131076; default = 131076;
} }
setcurrenttextures
{
title = "Set Current Textures";
category = "edit";
description = "Opens the window, which lets user to change textures, which will be used in next drawing operations.";
allowkeys = true;
allowmouse = false;
allowscroll = false;
//default = 131076;
}

View file

@ -1360,6 +1360,7 @@ namespace CodeImp.DoomBuilder.Windows
this.ShowInTaskbar = false; this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Edit Linedef"; this.Text = "Edit Linedef";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.LinedefEditForm_FormClosing);
this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.LinedefEditForm_HelpRequested); this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.LinedefEditForm_HelpRequested);
this.actiongroup.ResumeLayout(false); this.actiongroup.ResumeLayout(false);
this.actiongroup.PerformLayout(); this.actiongroup.PerformLayout();

View file

@ -53,7 +53,7 @@ namespace CodeImp.DoomBuilder.Windows
private string arg0str; //mxd private string arg0str; //mxd
private bool haveArg0Str; //mxd private bool haveArg0Str; //mxd
//Value linking //mxd. Persistent settings
private static bool linkFrontTopScale; private static bool linkFrontTopScale;
private static bool linkFrontMidScale; private static bool linkFrontMidScale;
private static bool linkFrontBottomScale; private static bool linkFrontBottomScale;
@ -64,6 +64,12 @@ namespace CodeImp.DoomBuilder.Windows
private List<PairedFieldsControl> frontUdmfControls; //mxd private List<PairedFieldsControl> frontUdmfControls; //mxd
private List<PairedFieldsControl> backUdmfControls; //mxd private List<PairedFieldsControl> backUdmfControls; //mxd
//mxd. Window setup stuff
private static Point location = Point.Empty;
private static int activeTab;
private static int activeFrontTab;
private static int activeBackTab;
private struct LinedefProperties //mxd private struct LinedefProperties //mxd
{ {
public Dictionary<string, bool> Flags; public Dictionary<string, bool> Flags;
@ -150,6 +156,19 @@ namespace CodeImp.DoomBuilder.Windows
// Initialize // Initialize
InitializeComponent(); InitializeComponent();
//mxd. Widow setup
if(location != Point.Empty) {
this.StartPosition = FormStartPosition.Manual;
this.Location = location;
if (activeTab > 0 && activeTab < tabs.TabCount) {
tabs.SelectTab(activeTab);
} else {
activeTab = 0;
}
if(activeFrontTab > 0) udmfPropertiesFront.SelectTab(activeFrontTab);
if(activeBackTab > 0) udmfPropertiesBack.SelectTab(activeBackTab);
}
// Fill flags lists // Fill flags lists
foreach(KeyValuePair<string, string> lf in General.Map.Config.LinedefFlags) foreach(KeyValuePair<string, string> lf in General.Map.Config.LinedefFlags)
flags.Add(lf.Value, lf.Key); flags.Add(lf.Value, lf.Key);
@ -885,6 +904,14 @@ namespace CodeImp.DoomBuilder.Windows
fieldslist.Focus(); fieldslist.Focus();
} }
//mxd. Store window location
private void LinedefEditForm_FormClosing(object sender, FormClosingEventArgs e) {
location = this.Location;
activeTab = tabs.SelectedIndex;
activeFrontTab = udmfPropertiesFront.SelectedIndex;
activeBackTab = udmfPropertiesBack.SelectedIndex;
}
// Help! // Help!
private void LinedefEditForm_HelpRequested(object sender, HelpEventArgs hlpevent) private void LinedefEditForm_HelpRequested(object sender, HelpEventArgs hlpevent)
{ {

View file

@ -109,8 +109,6 @@ namespace CodeImp.DoomBuilder.Windows
this.clearGroup8 = new System.Windows.Forms.ToolStripMenuItem(); this.clearGroup8 = new System.Windows.Forms.ToolStripMenuItem();
this.clearGroup9 = new System.Windows.Forms.ToolStripMenuItem(); this.clearGroup9 = new System.Windows.Forms.ToolStripMenuItem();
this.clearGroup10 = new System.Windows.Forms.ToolStripMenuItem(); this.clearGroup10 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
this.itemSetCurrentTextures = new System.Windows.Forms.ToolStripMenuItem();
this.itemmapoptions = new System.Windows.Forms.ToolStripMenuItem(); this.itemmapoptions = new System.Windows.Forms.ToolStripMenuItem();
this.itemviewusedtags = new System.Windows.Forms.ToolStripMenuItem(); this.itemviewusedtags = new System.Windows.Forms.ToolStripMenuItem();
this.menuview = new System.Windows.Forms.ToolStripMenuItem(); this.menuview = new System.Windows.Forms.ToolStripMenuItem();
@ -217,9 +215,11 @@ namespace CodeImp.DoomBuilder.Windows
this.itemgrid16 = new System.Windows.Forms.ToolStripMenuItem(); this.itemgrid16 = new System.Windows.Forms.ToolStripMenuItem();
this.itemgrid8 = new System.Windows.Forms.ToolStripMenuItem(); this.itemgrid8 = new System.Windows.Forms.ToolStripMenuItem();
this.itemgrid4 = new System.Windows.Forms.ToolStripMenuItem(); this.itemgrid4 = new System.Windows.Forms.ToolStripMenuItem();
this.itemgrid1 = new System.Windows.Forms.ToolStripMenuItem();
this.itemgridcustom = new System.Windows.Forms.ToolStripMenuItem(); this.itemgridcustom = new System.Windows.Forms.ToolStripMenuItem();
this.zoomlabel = new System.Windows.Forms.ToolStripStatusLabel(); this.zoomlabel = new System.Windows.Forms.ToolStripStatusLabel();
this.buttonzoom = new System.Windows.Forms.ToolStripDropDownButton(); this.buttonzoom = new System.Windows.Forms.ToolStripDropDownButton();
this.itemzoom400 = new System.Windows.Forms.ToolStripMenuItem();
this.itemzoom200 = new System.Windows.Forms.ToolStripMenuItem(); this.itemzoom200 = new System.Windows.Forms.ToolStripMenuItem();
this.itemzoom100 = new System.Windows.Forms.ToolStripMenuItem(); this.itemzoom100 = new System.Windows.Forms.ToolStripMenuItem();
this.itemzoom50 = new System.Windows.Forms.ToolStripMenuItem(); this.itemzoom50 = new System.Windows.Forms.ToolStripMenuItem();
@ -240,15 +240,13 @@ namespace CodeImp.DoomBuilder.Windows
this.thinginfo = new CodeImp.DoomBuilder.Controls.ThingInfoPanel(); this.thinginfo = new CodeImp.DoomBuilder.Controls.ThingInfoPanel();
this.sectorinfo = new CodeImp.DoomBuilder.Controls.SectorInfoPanel(); this.sectorinfo = new CodeImp.DoomBuilder.Controls.SectorInfoPanel();
this.redrawtimer = new System.Windows.Forms.Timer(this.components); this.redrawtimer = new System.Windows.Forms.Timer(this.components);
this.display = new CodeImp.DoomBuilder.Controls.RenderTargetControl(); this.display = new RenderTargetControl();
this.processor = new System.Windows.Forms.Timer(this.components); this.processor = new System.Windows.Forms.Timer(this.components);
this.statusflasher = new System.Windows.Forms.Timer(this.components); this.statusflasher = new System.Windows.Forms.Timer(this.components);
this.statusresetter = new System.Windows.Forms.Timer(this.components); this.statusresetter = new System.Windows.Forms.Timer(this.components);
this.dockersspace = new System.Windows.Forms.Panel(); this.dockersspace = new System.Windows.Forms.Panel();
this.dockerspanel = new CodeImp.DoomBuilder.Controls.DockersControl(); this.dockerspanel = new CodeImp.DoomBuilder.Controls.DockersControl();
this.dockerscollapser = new System.Windows.Forms.Timer(this.components); this.dockerscollapser = new System.Windows.Forms.Timer(this.components);
this.itemgrid1 = new System.Windows.Forms.ToolStripMenuItem();
this.itemzoom400 = new System.Windows.Forms.ToolStripMenuItem();
toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator(); toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator();
toolStripSeparator12 = new System.Windows.Forms.ToolStripSeparator(); toolStripSeparator12 = new System.Windows.Forms.ToolStripSeparator();
@ -312,13 +310,13 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.seperatoreditgrid.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); this.seperatoreditgrid.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
this.seperatoreditgrid.Name = "seperatoreditgrid"; this.seperatoreditgrid.Name = "seperatoreditgrid";
this.seperatoreditgrid.Size = new System.Drawing.Size(194, 6); this.seperatoreditgrid.Size = new System.Drawing.Size(211, 6);
// //
// seperatoreditcopypaste // seperatoreditcopypaste
// //
this.seperatoreditcopypaste.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); this.seperatoreditcopypaste.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
this.seperatoreditcopypaste.Name = "seperatoreditcopypaste"; this.seperatoreditcopypaste.Name = "seperatoreditcopypaste";
this.seperatoreditcopypaste.Size = new System.Drawing.Size(194, 6); this.seperatoreditcopypaste.Size = new System.Drawing.Size(211, 6);
// //
// seperatorfile // seperatorfile
// //
@ -499,8 +497,6 @@ namespace CodeImp.DoomBuilder.Windows
this.addToGroup, this.addToGroup,
this.selectGroup, this.selectGroup,
this.clearGroup, this.clearGroup,
this.toolStripSeparator4,
this.itemSetCurrentTextures,
this.seperatoreditgrid, this.seperatoreditgrid,
this.itemmapoptions, this.itemmapoptions,
this.itemviewusedtags}); this.itemviewusedtags});
@ -513,7 +509,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itemundo.Image = global::CodeImp.DoomBuilder.Properties.Resources.Undo; this.itemundo.Image = global::CodeImp.DoomBuilder.Properties.Resources.Undo;
this.itemundo.Name = "itemundo"; this.itemundo.Name = "itemundo";
this.itemundo.Size = new System.Drawing.Size(197, 22); this.itemundo.Size = new System.Drawing.Size(214, 22);
this.itemundo.Tag = "builder_undo"; this.itemundo.Tag = "builder_undo";
this.itemundo.Text = "&Undo"; this.itemundo.Text = "&Undo";
this.itemundo.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemundo.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -522,7 +518,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itemredo.Image = global::CodeImp.DoomBuilder.Properties.Resources.Redo; this.itemredo.Image = global::CodeImp.DoomBuilder.Properties.Resources.Redo;
this.itemredo.Name = "itemredo"; this.itemredo.Name = "itemredo";
this.itemredo.Size = new System.Drawing.Size(197, 22); this.itemredo.Size = new System.Drawing.Size(214, 22);
this.itemredo.Tag = "builder_redo"; this.itemredo.Tag = "builder_redo";
this.itemredo.Text = "&Redo"; this.itemredo.Text = "&Redo";
this.itemredo.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemredo.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -531,13 +527,13 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.seperatoreditundo.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); this.seperatoreditundo.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
this.seperatoreditundo.Name = "seperatoreditundo"; this.seperatoreditundo.Name = "seperatoreditundo";
this.seperatoreditundo.Size = new System.Drawing.Size(194, 6); this.seperatoreditundo.Size = new System.Drawing.Size(211, 6);
// //
// itemcut // itemcut
// //
this.itemcut.Image = global::CodeImp.DoomBuilder.Properties.Resources.Cut; this.itemcut.Image = global::CodeImp.DoomBuilder.Properties.Resources.Cut;
this.itemcut.Name = "itemcut"; this.itemcut.Name = "itemcut";
this.itemcut.Size = new System.Drawing.Size(197, 22); this.itemcut.Size = new System.Drawing.Size(214, 22);
this.itemcut.Tag = "builder_cutselection"; this.itemcut.Tag = "builder_cutselection";
this.itemcut.Text = "Cu&t"; this.itemcut.Text = "Cu&t";
this.itemcut.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemcut.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -546,7 +542,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itemcopy.Image = global::CodeImp.DoomBuilder.Properties.Resources.Copy; this.itemcopy.Image = global::CodeImp.DoomBuilder.Properties.Resources.Copy;
this.itemcopy.Name = "itemcopy"; this.itemcopy.Name = "itemcopy";
this.itemcopy.Size = new System.Drawing.Size(197, 22); this.itemcopy.Size = new System.Drawing.Size(214, 22);
this.itemcopy.Tag = "builder_copyselection"; this.itemcopy.Tag = "builder_copyselection";
this.itemcopy.Text = "&Copy"; this.itemcopy.Text = "&Copy";
this.itemcopy.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemcopy.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -555,7 +551,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itempaste.Image = global::CodeImp.DoomBuilder.Properties.Resources.Paste; this.itempaste.Image = global::CodeImp.DoomBuilder.Properties.Resources.Paste;
this.itempaste.Name = "itempaste"; this.itempaste.Name = "itempaste";
this.itempaste.Size = new System.Drawing.Size(197, 22); this.itempaste.Size = new System.Drawing.Size(214, 22);
this.itempaste.Tag = "builder_pasteselection"; this.itempaste.Tag = "builder_pasteselection";
this.itempaste.Text = "&Paste"; this.itempaste.Text = "&Paste";
this.itempaste.Click += new System.EventHandler(this.InvokeTaggedAction); this.itempaste.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -564,7 +560,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itempastespecial.Image = global::CodeImp.DoomBuilder.Properties.Resources.PasteSpecial; this.itempastespecial.Image = global::CodeImp.DoomBuilder.Properties.Resources.PasteSpecial;
this.itempastespecial.Name = "itempastespecial"; this.itempastespecial.Name = "itempastespecial";
this.itempastespecial.Size = new System.Drawing.Size(197, 22); this.itempastespecial.Size = new System.Drawing.Size(214, 22);
this.itempastespecial.Tag = "builder_pasteselectionspecial"; this.itempastespecial.Tag = "builder_pasteselectionspecial";
this.itempastespecial.Text = "Paste Special..."; this.itempastespecial.Text = "Paste Special...";
this.itempastespecial.Click += new System.EventHandler(this.InvokeTaggedAction); this.itempastespecial.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -575,7 +571,7 @@ namespace CodeImp.DoomBuilder.Windows
this.itemsnaptogrid.CheckState = System.Windows.Forms.CheckState.Checked; this.itemsnaptogrid.CheckState = System.Windows.Forms.CheckState.Checked;
this.itemsnaptogrid.Image = global::CodeImp.DoomBuilder.Properties.Resources.Grid4; this.itemsnaptogrid.Image = global::CodeImp.DoomBuilder.Properties.Resources.Grid4;
this.itemsnaptogrid.Name = "itemsnaptogrid"; this.itemsnaptogrid.Name = "itemsnaptogrid";
this.itemsnaptogrid.Size = new System.Drawing.Size(197, 22); this.itemsnaptogrid.Size = new System.Drawing.Size(214, 22);
this.itemsnaptogrid.Tag = "builder_togglesnap"; this.itemsnaptogrid.Tag = "builder_togglesnap";
this.itemsnaptogrid.Text = "&Snap to Grid"; this.itemsnaptogrid.Text = "&Snap to Grid";
this.itemsnaptogrid.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemsnaptogrid.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -586,7 +582,7 @@ namespace CodeImp.DoomBuilder.Windows
this.itemautomerge.CheckState = System.Windows.Forms.CheckState.Checked; this.itemautomerge.CheckState = System.Windows.Forms.CheckState.Checked;
this.itemautomerge.Image = global::CodeImp.DoomBuilder.Properties.Resources.mergegeometry2; this.itemautomerge.Image = global::CodeImp.DoomBuilder.Properties.Resources.mergegeometry2;
this.itemautomerge.Name = "itemautomerge"; this.itemautomerge.Name = "itemautomerge";
this.itemautomerge.Size = new System.Drawing.Size(197, 22); this.itemautomerge.Size = new System.Drawing.Size(214, 22);
this.itemautomerge.Tag = "builder_toggleautomerge"; this.itemautomerge.Tag = "builder_toggleautomerge";
this.itemautomerge.Text = "&Merge Geometry"; this.itemautomerge.Text = "&Merge Geometry";
this.itemautomerge.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemautomerge.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -595,12 +591,12 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.seperatoreditgeometry.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); this.seperatoreditgeometry.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);
this.seperatoreditgeometry.Name = "seperatoreditgeometry"; this.seperatoreditgeometry.Name = "seperatoreditgeometry";
this.seperatoreditgeometry.Size = new System.Drawing.Size(194, 6); this.seperatoreditgeometry.Size = new System.Drawing.Size(211, 6);
// //
// itemgridinc // itemgridinc
// //
this.itemgridinc.Name = "itemgridinc"; this.itemgridinc.Name = "itemgridinc";
this.itemgridinc.Size = new System.Drawing.Size(197, 22); this.itemgridinc.Size = new System.Drawing.Size(214, 22);
this.itemgridinc.Tag = "builder_griddec"; this.itemgridinc.Tag = "builder_griddec";
this.itemgridinc.Text = "&Increase Grid"; this.itemgridinc.Text = "&Increase Grid";
this.itemgridinc.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemgridinc.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -608,7 +604,7 @@ namespace CodeImp.DoomBuilder.Windows
// itemgriddec // itemgriddec
// //
this.itemgriddec.Name = "itemgriddec"; this.itemgriddec.Name = "itemgriddec";
this.itemgriddec.Size = new System.Drawing.Size(197, 22); this.itemgriddec.Size = new System.Drawing.Size(214, 22);
this.itemgriddec.Tag = "builder_gridinc"; this.itemgriddec.Tag = "builder_gridinc";
this.itemgriddec.Text = "&Decrease Grid"; this.itemgriddec.Text = "&Decrease Grid";
this.itemgriddec.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemgriddec.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -617,7 +613,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itemgridsetup.Image = global::CodeImp.DoomBuilder.Properties.Resources.Grid2; this.itemgridsetup.Image = global::CodeImp.DoomBuilder.Properties.Resources.Grid2;
this.itemgridsetup.Name = "itemgridsetup"; this.itemgridsetup.Name = "itemgridsetup";
this.itemgridsetup.Size = new System.Drawing.Size(197, 22); this.itemgridsetup.Size = new System.Drawing.Size(214, 22);
this.itemgridsetup.Tag = "builder_gridsetup"; this.itemgridsetup.Tag = "builder_gridsetup";
this.itemgridsetup.Text = "&Grid and Backdrop Setup..."; this.itemgridsetup.Text = "&Grid and Backdrop Setup...";
this.itemgridsetup.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemgridsetup.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -625,7 +621,7 @@ namespace CodeImp.DoomBuilder.Windows
// toolStripSeparator5 // toolStripSeparator5
// //
this.toolStripSeparator5.Name = "toolStripSeparator5"; this.toolStripSeparator5.Name = "toolStripSeparator5";
this.toolStripSeparator5.Size = new System.Drawing.Size(194, 6); this.toolStripSeparator5.Size = new System.Drawing.Size(211, 6);
// //
// addToGroup // addToGroup
// //
@ -641,7 +637,7 @@ namespace CodeImp.DoomBuilder.Windows
this.addGroup9, this.addGroup9,
this.addGroup10}); this.addGroup10});
this.addToGroup.Name = "addToGroup"; this.addToGroup.Name = "addToGroup";
this.addToGroup.Size = new System.Drawing.Size(197, 22); this.addToGroup.Size = new System.Drawing.Size(214, 22);
this.addToGroup.Text = "Add Selection to Group"; this.addToGroup.Text = "Add Selection to Group";
this.addToGroup.DropDownOpening += new System.EventHandler(this.addToGroup_DropDownOpening); this.addToGroup.DropDownOpening += new System.EventHandler(this.addToGroup_DropDownOpening);
// //
@ -739,7 +735,7 @@ namespace CodeImp.DoomBuilder.Windows
this.selectGroup9, this.selectGroup9,
this.selectGroup10}); this.selectGroup10});
this.selectGroup.Name = "selectGroup"; this.selectGroup.Name = "selectGroup";
this.selectGroup.Size = new System.Drawing.Size(197, 22); this.selectGroup.Size = new System.Drawing.Size(214, 22);
this.selectGroup.Text = "Select Group"; this.selectGroup.Text = "Select Group";
this.selectGroup.DropDownOpening += new System.EventHandler(this.selectGroup_DropDownOpening); this.selectGroup.DropDownOpening += new System.EventHandler(this.selectGroup_DropDownOpening);
// //
@ -837,7 +833,7 @@ namespace CodeImp.DoomBuilder.Windows
this.clearGroup9, this.clearGroup9,
this.clearGroup10}); this.clearGroup10});
this.clearGroup.Name = "clearGroup"; this.clearGroup.Name = "clearGroup";
this.clearGroup.Size = new System.Drawing.Size(197, 22); this.clearGroup.Size = new System.Drawing.Size(214, 22);
this.clearGroup.Text = "Clear Group"; this.clearGroup.Text = "Clear Group";
this.clearGroup.DropDownOpening += new System.EventHandler(this.selectGroup_DropDownOpening); this.clearGroup.DropDownOpening += new System.EventHandler(this.selectGroup_DropDownOpening);
// //
@ -921,24 +917,11 @@ namespace CodeImp.DoomBuilder.Windows
this.clearGroup10.Text = "10:"; this.clearGroup10.Text = "10:";
this.clearGroup10.Click += new System.EventHandler(this.InvokeTaggedAction); this.clearGroup10.Click += new System.EventHandler(this.InvokeTaggedAction);
// //
// toolStripSeparator4
//
this.toolStripSeparator4.Name = "toolStripSeparator4";
this.toolStripSeparator4.Size = new System.Drawing.Size(194, 6);
//
// itemSetCurrentTextures
//
this.itemSetCurrentTextures.Name = "itemSetCurrentTextures";
this.itemSetCurrentTextures.Size = new System.Drawing.Size(197, 22);
this.itemSetCurrentTextures.Tag = "builder_setcurrenttextures";
this.itemSetCurrentTextures.Text = "Set Default &Textures...";
this.itemSetCurrentTextures.Click += new System.EventHandler(this.InvokeTaggedAction);
//
// itemmapoptions // itemmapoptions
// //
this.itemmapoptions.Image = global::CodeImp.DoomBuilder.Properties.Resources.Properties; this.itemmapoptions.Image = global::CodeImp.DoomBuilder.Properties.Resources.Properties;
this.itemmapoptions.Name = "itemmapoptions"; this.itemmapoptions.Name = "itemmapoptions";
this.itemmapoptions.Size = new System.Drawing.Size(197, 22); this.itemmapoptions.Size = new System.Drawing.Size(214, 22);
this.itemmapoptions.Tag = "builder_mapoptions"; this.itemmapoptions.Tag = "builder_mapoptions";
this.itemmapoptions.Text = "Map &Options...."; this.itemmapoptions.Text = "Map &Options....";
this.itemmapoptions.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemmapoptions.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -947,7 +930,7 @@ namespace CodeImp.DoomBuilder.Windows
// //
this.itemviewusedtags.Image = global::CodeImp.DoomBuilder.Properties.Resources.TagStatistics; this.itemviewusedtags.Image = global::CodeImp.DoomBuilder.Properties.Resources.TagStatistics;
this.itemviewusedtags.Name = "itemviewusedtags"; this.itemviewusedtags.Name = "itemviewusedtags";
this.itemviewusedtags.Size = new System.Drawing.Size(197, 22); this.itemviewusedtags.Size = new System.Drawing.Size(214, 22);
this.itemviewusedtags.Tag = "builder_viewusedtags"; this.itemviewusedtags.Tag = "builder_viewusedtags";
this.itemviewusedtags.Text = "View Used Tags..."; this.itemviewusedtags.Text = "View Used Tags...";
this.itemviewusedtags.Click += new System.EventHandler(this.InvokeTaggedAction); this.itemviewusedtags.Click += new System.EventHandler(this.InvokeTaggedAction);
@ -1871,7 +1854,7 @@ namespace CodeImp.DoomBuilder.Windows
this.statuslabel.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; this.statuslabel.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.statuslabel.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None; this.statuslabel.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
this.statuslabel.Name = "statuslabel"; this.statuslabel.Name = "statuslabel";
this.statuslabel.Size = new System.Drawing.Size(309, 18); this.statuslabel.Size = new System.Drawing.Size(340, 18);
this.statuslabel.Spring = true; this.statuslabel.Spring = true;
this.statuslabel.Text = "Initializing user interface..."; this.statuslabel.Text = "Initializing user interface...";
this.statuslabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; this.statuslabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@ -1994,6 +1977,14 @@ namespace CodeImp.DoomBuilder.Windows
this.itemgrid4.Text = "4 mp"; this.itemgrid4.Text = "4 mp";
this.itemgrid4.Click += new System.EventHandler(this.itemgridsize_Click); this.itemgrid4.Click += new System.EventHandler(this.itemgridsize_Click);
// //
// itemgrid1
//
this.itemgrid1.Name = "itemgrid1";
this.itemgrid1.Size = new System.Drawing.Size(153, 22);
this.itemgrid1.Tag = "1";
this.itemgrid1.Text = "1 mp";
this.itemgrid1.Click += new System.EventHandler(this.itemgridsize_Click);
//
// itemgridcustom // itemgridcustom
// //
this.itemgridcustom.Name = "itemgridcustom"; this.itemgridcustom.Name = "itemgridcustom";
@ -2034,6 +2025,14 @@ namespace CodeImp.DoomBuilder.Windows
this.buttonzoom.Size = new System.Drawing.Size(29, 21); this.buttonzoom.Size = new System.Drawing.Size(29, 21);
this.buttonzoom.Text = "Zoom"; this.buttonzoom.Text = "Zoom";
// //
// itemzoom400
//
this.itemzoom400.Name = "itemzoom400";
this.itemzoom400.Size = new System.Drawing.Size(156, 22);
this.itemzoom400.Tag = "400";
this.itemzoom400.Text = "400%";
this.itemzoom400.Click += new System.EventHandler(this.itemzoomto_Click);
//
// itemzoom200 // itemzoom200
// //
this.itemzoom200.Name = "itemzoom200"; this.itemzoom200.Name = "itemzoom200";
@ -2294,22 +2293,6 @@ namespace CodeImp.DoomBuilder.Windows
this.dockerscollapser.Interval = 200; this.dockerscollapser.Interval = 200;
this.dockerscollapser.Tick += new System.EventHandler(this.dockerscollapser_Tick); this.dockerscollapser.Tick += new System.EventHandler(this.dockerscollapser_Tick);
// //
// itemgrid1
//
this.itemgrid1.Name = "itemgrid1";
this.itemgrid1.Size = new System.Drawing.Size(153, 22);
this.itemgrid1.Tag = "1";
this.itemgrid1.Text = "1 mp";
this.itemgrid1.Click += new System.EventHandler(this.itemgridsize_Click);
//
// itemzoom400
//
this.itemzoom400.Name = "itemzoom400";
this.itemzoom400.Size = new System.Drawing.Size(156, 22);
this.itemzoom400.Tag = "400";
this.itemzoom400.Text = "400%";
this.itemzoom400.Click += new System.EventHandler(this.itemzoomto_Click);
//
// MainForm // MainForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@ -2511,8 +2494,6 @@ namespace CodeImp.DoomBuilder.Windows
private System.Windows.Forms.ToolStripSeparator separatorDrawModes; private System.Windows.Forms.ToolStripSeparator separatorDrawModes;
private System.Windows.Forms.ToolStripButton buttontoggleeventlines; private System.Windows.Forms.ToolStripButton buttontoggleeventlines;
private System.Windows.Forms.ToolStripButton buttontogglevisualvertices; private System.Windows.Forms.ToolStripButton buttontogglevisualvertices;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
private System.Windows.Forms.ToolStripMenuItem itemSetCurrentTextures;
private System.Windows.Forms.ToolStripMenuItem itemviewusedtags; private System.Windows.Forms.ToolStripMenuItem itemviewusedtags;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator5; private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
private System.Windows.Forms.ToolStripMenuItem addToGroup; private System.Windows.Forms.ToolStripMenuItem addToGroup;

View file

@ -2306,7 +2306,6 @@ namespace CodeImp.DoomBuilder.Windows
itemgridsetup.Enabled = (General.Map != null); itemgridsetup.Enabled = (General.Map != null);
itemgridinc.Enabled = (General.Map != null); itemgridinc.Enabled = (General.Map != null);
itemgriddec.Enabled = (General.Map != null); itemgriddec.Enabled = (General.Map != null);
itemSetCurrentTextures.Enabled = (General.Map != null); //mxd
itemviewusedtags.Enabled = (General.Map != null); //mxd itemviewusedtags.Enabled = (General.Map != null); //mxd
addToGroup.Enabled = (General.Map != null); //mxd addToGroup.Enabled = (General.Map != null); //mxd
selectGroup.Enabled = (General.Map != null); //mxd selectGroup.Enabled = (General.Map != null); //mxd

View file

@ -201,6 +201,30 @@
<metadata name="sectorinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="sectorinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="heightpanel1.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="vertexinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="labelcollapsedinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="buttontoggleinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="modename.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="linedefinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="thinginfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="sectorinfo.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="redrawtimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="redrawtimer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>433, 17</value> <value>433, 17</value>
</metadata> </metadata>

View file

@ -199,11 +199,6 @@ namespace CodeImp.DoomBuilder.Windows
options.StrictPatches = strictpatches.Checked; options.StrictPatches = strictpatches.Checked;
options.CopyResources(datalocations.GetResources()); options.CopyResources(datalocations.GetResources());
// Reset default drawing textures
General.Settings.DefaultTexture = null;
General.Settings.DefaultFloorTexture = null;
General.Settings.DefaultCeilingTexture = null;
// Hide window // Hide window
this.DialogResult = DialogResult.OK; this.DialogResult = DialogResult.OK;
this.Close(); this.Close();

View file

@ -355,6 +355,7 @@ namespace CodeImp.DoomBuilder.Windows
this.ShowInTaskbar = false; this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Edit Sector"; this.Text = "Edit Sector";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SectorEditForm_FormClosing);
this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.SectorEditForm_HelpRequested); this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.SectorEditForm_HelpRequested);
groupeffect.ResumeLayout(false); groupeffect.ResumeLayout(false);
groupeffect.PerformLayout(); groupeffect.PerformLayout();

View file

@ -18,6 +18,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms; using System.Windows.Forms;
using CodeImp.DoomBuilder.Map; using CodeImp.DoomBuilder.Map;
using CodeImp.DoomBuilder.Types; using CodeImp.DoomBuilder.Types;
@ -40,6 +41,9 @@ namespace CodeImp.DoomBuilder.Windows
private List<SectorProperties> sectorProps; //mxd private List<SectorProperties> sectorProps; //mxd
private bool blockUpdate; //mxd private bool blockUpdate; //mxd
//mxd. Window setup stuff
private static Point location = Point.Empty;
private struct SectorProperties //mxd private struct SectorProperties //mxd
{ {
public int Brightness; public int Brightness;
@ -67,6 +71,12 @@ namespace CodeImp.DoomBuilder.Windows
// Initialize // Initialize
InitializeComponent(); InitializeComponent();
//mxd. Widow setup
if(location != Point.Empty) {
this.StartPosition = FormStartPosition.Manual;
this.Location = location;
}
// Fill effects list // Fill effects list
effect.AddInfo(General.Map.Config.SortedSectorEffects.ToArray()); effect.AddInfo(General.Map.Config.SortedSectorEffects.ToArray());
@ -241,6 +251,11 @@ namespace CodeImp.DoomBuilder.Windows
effect.Value = EffectBrowserForm.BrowseEffect(this, effect.Value); effect.Value = EffectBrowserForm.BrowseEffect(this, effect.Value);
} }
//mxd
private void SectorEditForm_FormClosing(object sender, FormClosingEventArgs e) {
location = this.Location;
}
// Help // Help
private void SectorEditForm_HelpRequested(object sender, HelpEventArgs hlpevent) { private void SectorEditForm_HelpRequested(object sender, HelpEventArgs hlpevent) {
General.ShowHelp("w_sectoredit.html"); General.ShowHelp("w_sectoredit.html");
@ -358,5 +373,6 @@ namespace CodeImp.DoomBuilder.Windows
} }
#endregion #endregion
} }
} }

View file

@ -153,18 +153,6 @@
<metadata name="label4.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="label4.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value> <value>False</value>
</metadata> </metadata>
<metadata name="label6.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label5.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label2.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label4.GenerateMember" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="flatSelectorControl2.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="flatSelectorControl2.Locked" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>

View file

@ -909,6 +909,7 @@
this.ShowInTaskbar = false; this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Edit Sector"; this.Text = "Edit Sector";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SectorEditFormUDMF_FormClosing);
this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.SectorEditFormUDMF_HelpRequested); this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.SectorEditFormUDMF_HelpRequested);
groupaction.ResumeLayout(false); groupaction.ResumeLayout(false);
groupeffect.ResumeLayout(false); groupeffect.ResumeLayout(false);

View file

@ -1,9 +1,10 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms; using System.Windows.Forms;
using CodeImp.DoomBuilder.GZBuilder.Tools;
using CodeImp.DoomBuilder.Map; using CodeImp.DoomBuilder.Map;
using CodeImp.DoomBuilder.Types; using CodeImp.DoomBuilder.Types;
using CodeImp.DoomBuilder.GZBuilder.Tools;
namespace CodeImp.DoomBuilder.Windows namespace CodeImp.DoomBuilder.Windows
{ {
@ -22,12 +23,16 @@ namespace CodeImp.DoomBuilder.Windows
private bool blockUpdate; //mxd private bool blockUpdate; //mxd
private StepsList angleSteps; //mxd private StepsList angleSteps; //mxd
//Persistent settings //mxd. Persistent settings
private static bool linkCeilingScale; private static bool linkCeilingScale;
private static bool linkFloorScale; private static bool linkFloorScale;
private static bool useFloorLineAngles; private static bool useFloorLineAngles;
private static bool useCeilLineAngles; private static bool useCeilLineAngles;
//mxd. Window setup stuff
private static Point location = Point.Empty;
private static int activeTab;
private struct SectorProperties //mxd private struct SectorProperties //mxd
{ {
public int Brightness; public int Brightness;
@ -101,6 +106,13 @@ namespace CodeImp.DoomBuilder.Windows
public SectorEditFormUDMF() { public SectorEditFormUDMF() {
InitializeComponent(); InitializeComponent();
//mxd. Widow setup
if(location != Point.Empty) {
this.StartPosition = FormStartPosition.Manual;
this.Location = location;
if(activeTab > 0) tabs.SelectTab(activeTab);
}
// Fill flags list // Fill flags list
foreach(KeyValuePair<string, string> lf in General.Map.Config.SectorFlags) foreach(KeyValuePair<string, string> lf in General.Map.Config.SectorFlags)
flags.Add(lf.Value, lf.Key); flags.Add(lf.Value, lf.Key);
@ -461,6 +473,12 @@ namespace CodeImp.DoomBuilder.Windows
effect.Value = EffectBrowserForm.BrowseEffect(this, effect.Value); effect.Value = EffectBrowserForm.BrowseEffect(this, effect.Value);
} }
//mxd
private void SectorEditFormUDMF_FormClosing(object sender, FormClosingEventArgs e) {
location = this.Location;
activeTab = tabs.SelectedIndex;
}
private void SectorEditFormUDMF_HelpRequested(object sender, HelpEventArgs hlpevent) { private void SectorEditFormUDMF_HelpRequested(object sender, HelpEventArgs hlpevent) {
General.ShowHelp("w_sectoredit.html"); General.ShowHelp("w_sectoredit.html");
hlpevent.Handled = true; hlpevent.Handled = true;

View file

@ -1,171 +0,0 @@
namespace CodeImp.DoomBuilder.Windows
{
partial class SetCurrentTexturesForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.labelWalls = new System.Windows.Forms.Label();
this.labelFloor = new System.Windows.Forms.Label();
this.labelCeiling = new System.Windows.Forms.Label();
this.bApply = new System.Windows.Forms.Button();
this.bCancel = new System.Windows.Forms.Button();
this.cbForceDefault = new System.Windows.Forms.CheckBox();
this.walls = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.floor = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.ceiling = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.SuspendLayout();
//
// labelWalls
//
this.labelWalls.Location = new System.Drawing.Point(194, 8);
this.labelWalls.Name = "labelWalls";
this.labelWalls.Size = new System.Drawing.Size(83, 16);
this.labelWalls.TabIndex = 11;
this.labelWalls.Text = "Walls";
this.labelWalls.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// labelFloor
//
this.labelFloor.Location = new System.Drawing.Point(103, 8);
this.labelFloor.Name = "labelFloor";
this.labelFloor.Size = new System.Drawing.Size(83, 16);
this.labelFloor.TabIndex = 8;
this.labelFloor.Text = "Floor";
this.labelFloor.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// labelCeiling
//
this.labelCeiling.Location = new System.Drawing.Point(12, 8);
this.labelCeiling.Name = "labelCeiling";
this.labelCeiling.Size = new System.Drawing.Size(83, 16);
this.labelCeiling.TabIndex = 7;
this.labelCeiling.Text = "Ceiling";
this.labelCeiling.TextAlign = System.Drawing.ContentAlignment.TopCenter;
//
// bApply
//
this.bApply.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.bApply.Location = new System.Drawing.Point(103, 185);
this.bApply.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.bApply.Name = "bApply";
this.bApply.Size = new System.Drawing.Size(174, 26);
this.bApply.TabIndex = 0;
this.bApply.Text = "OK";
this.bApply.UseVisualStyleBackColor = true;
this.bApply.Click += new System.EventHandler(this.bApply_Click);
//
// bCancel
//
this.bCancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.bCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.bCancel.Location = new System.Drawing.Point(12, 185);
this.bCancel.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
this.bCancel.Name = "bCancel";
this.bCancel.Size = new System.Drawing.Size(83, 26);
this.bCancel.TabIndex = 1;
this.bCancel.Text = "Cancel";
this.bCancel.UseVisualStyleBackColor = true;
this.bCancel.Click += new System.EventHandler(this.bCancel_Click);
//
// cbForceDefault
//
this.cbForceDefault.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.cbForceDefault.AutoSize = true;
this.cbForceDefault.Location = new System.Drawing.Point(13, 147);
this.cbForceDefault.Name = "cbForceDefault";
this.cbForceDefault.Size = new System.Drawing.Size(252, 32);
this.cbForceDefault.TabIndex = 13;
this.cbForceDefault.Text = "Use these textures instead of textures from \r\nneighbouring geometry when creating" +
" a sector\r\n";
this.cbForceDefault.UseVisualStyleBackColor = true;
this.cbForceDefault.CheckedChanged += new System.EventHandler(this.cbForceDefault_CheckedChanged);
//
// walls
//
this.walls.Location = new System.Drawing.Point(194, 27);
this.walls.Name = "walls";
this.walls.Required = false;
this.walls.Size = new System.Drawing.Size(83, 112);
this.walls.TabIndex = 12;
this.walls.TextureName = "";
//
// floor
//
this.floor.Location = new System.Drawing.Point(103, 27);
this.floor.Name = "floor";
this.floor.Required = false;
this.floor.Size = new System.Drawing.Size(83, 112);
this.floor.TabIndex = 10;
this.floor.TextureName = "";
//
// ceiling
//
this.ceiling.Location = new System.Drawing.Point(12, 27);
this.ceiling.Name = "ceiling";
this.ceiling.Required = false;
this.ceiling.Size = new System.Drawing.Size(83, 112);
this.ceiling.TabIndex = 9;
this.ceiling.TextureName = "";
//
// SetCurrentTexturesForm
//
this.AcceptButton = this.bApply;
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.CancelButton = this.bCancel;
this.ClientSize = new System.Drawing.Size(289, 216);
this.Controls.Add(this.cbForceDefault);
this.Controls.Add(this.walls);
this.Controls.Add(this.floor);
this.Controls.Add(this.ceiling);
this.Controls.Add(this.labelWalls);
this.Controls.Add(this.labelFloor);
this.Controls.Add(this.labelCeiling);
this.Controls.Add(this.bCancel);
this.Controls.Add(this.bApply);
this.Font = new System.Drawing.Font("Arial", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
this.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3);
this.Name = "SetCurrentTexturesForm";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "Default textures:";
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Button bApply;
private System.Windows.Forms.Button bCancel;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl walls;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl floor;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl ceiling;
private System.Windows.Forms.CheckBox cbForceDefault;
private System.Windows.Forms.Label labelWalls;
private System.Windows.Forms.Label labelFloor;
private System.Windows.Forms.Label labelCeiling;
}
}

View file

@ -1,46 +0,0 @@
using System;
using System.Drawing;
using System.Windows.Forms;
namespace CodeImp.DoomBuilder.Windows
{
public partial class SetCurrentTexturesForm : Form
{
public SetCurrentTexturesForm() {
this.Location = new Point(Cursor.Position.X - this.Width / 2, Cursor.Position.Y - this.Height / 2);
InitializeComponent();
// Initialize image selectors
ceiling.Initialize();
floor.Initialize();
walls.Initialize();
ceiling.TextureName = General.Settings.DefaultCeilingTexture;
floor.TextureName = General.Settings.DefaultFloorTexture;
walls.TextureName = General.Settings.DefaultTexture;
cbForceDefault.Checked = General.Settings.GZForceDefaultTextures;
cbForceDefault_CheckedChanged(this, EventArgs.Empty);
}
private void bCancel_Click(object sender, EventArgs e) {
Close();
}
private void bApply_Click(object sender, EventArgs e) {
General.Settings.DefaultCeilingTexture = string.IsNullOrEmpty(ceiling.TextureName) ? "-" : ceiling.TextureName;
General.Settings.DefaultFloorTexture = string.IsNullOrEmpty(floor.TextureName) ? "-" : floor.TextureName;
General.Settings.DefaultTexture = string.IsNullOrEmpty(walls.TextureName) ? "-" : walls.TextureName;
General.Settings.GZForceDefaultTextures = cbForceDefault.Checked;
Close();
}
private void cbForceDefault_CheckedChanged(object sender, EventArgs e) {
ceiling.Enabled = cbForceDefault.Checked;
floor.Enabled = cbForceDefault.Checked;
walls.Enabled = cbForceDefault.Checked;
labelCeiling.Enabled = cbForceDefault.Checked;
labelFloor.Enabled = cbForceDefault.Checked;
labelWalls.Enabled = cbForceDefault.Checked;
}
}
}

View file

@ -1,120 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View file

@ -87,6 +87,7 @@ namespace CodeImp.DoomBuilder.Windows
this.tvTextureSets.Size = new System.Drawing.Size(200, 576); this.tvTextureSets.Size = new System.Drawing.Size(200, 576);
this.tvTextureSets.TabIndex = 4; this.tvTextureSets.TabIndex = 4;
this.tvTextureSets.TabStop = false; this.tvTextureSets.TabStop = false;
this.tvTextureSets.KeyUp += new System.Windows.Forms.KeyEventHandler(this.tvTextureSets_KeyUp);
this.tvTextureSets.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.tvTextureSets_NodeMouseClick); this.tvTextureSets.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.tvTextureSets_NodeMouseClick);
// //
// browser // browser

View file

@ -448,5 +448,13 @@ namespace CodeImp.DoomBuilder.Windows
selectedset = e.Node; selectedset = e.Node;
FillImagesList(); FillImagesList();
} }
//mxd
private void tvTextureSets_KeyUp(object sender, KeyEventArgs e) {
if(tvTextureSets.SelectedNode != selectedset) {
selectedset = tvTextureSets.SelectedNode;
FillImagesList();
}
}
} }
} }

View file

@ -125,7 +125,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAc ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAc
DwAAAk1TRnQBSQFMAgEBBwEAAcwBAAHMAQABEAEAARYBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo DwAAAk1TRnQBSQFMAgEBBwEAAdQBAAHUAQABEAEAARYBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAASwDAAEBAQABCAYAAQsYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AwABQAMAASwDAAEBAQABCAYAAQsYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA

View file

@ -694,6 +694,7 @@ namespace CodeImp.DoomBuilder.Windows
this.ShowInTaskbar = false; this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Edit Thing"; this.Text = "Edit Thing";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ThingEditForm_FormClosing);
this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.ThingEditForm_HelpRequested); this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.ThingEditForm_HelpRequested);
groupBox1.ResumeLayout(false); groupBox1.ResumeLayout(false);
groupBox2.ResumeLayout(false); groupBox2.ResumeLayout(false);

View file

@ -57,6 +57,10 @@ namespace CodeImp.DoomBuilder.Windows
private List<ThingProperties> thingProps; //mxd private List<ThingProperties> thingProps; //mxd
//mxd. Window setup stuff
private static Point location = Point.Empty;
private static int activeTab;
private struct ThingProperties //mxd private struct ThingProperties //mxd
{ {
public int Type; public int Type;
@ -84,6 +88,17 @@ namespace CodeImp.DoomBuilder.Windows
// Initialize // Initialize
InitializeComponent(); InitializeComponent();
//mxd. Widow setup
if(location != Point.Empty) {
this.StartPosition = FormStartPosition.Manual;
this.Location = location;
if(activeTab > 0 && activeTab < tabs.TabCount) {
tabs.SelectTab(activeTab);
} else {
activeTab = 0;
}
}
// Fill flags list // Fill flags list
foreach(KeyValuePair<string, string> tf in General.Map.Config.ThingFlags) foreach(KeyValuePair<string, string> tf in General.Map.Config.ThingFlags)
flags.Add(tf.Value, tf.Key); flags.Add(tf.Value, tf.Key);
@ -557,6 +572,12 @@ namespace CodeImp.DoomBuilder.Windows
fieldslist.Focus(); fieldslist.Focus();
} }
//mxd
private void ThingEditForm_FormClosing(object sender, FormClosingEventArgs e) {
location = this.Location;
activeTab = tabs.SelectedIndex;
}
// Help // Help
private void ThingEditForm_HelpRequested(object sender, HelpEventArgs hlpevent) private void ThingEditForm_HelpRequested(object sender, HelpEventArgs hlpevent)
{ {
@ -693,5 +714,6 @@ namespace CodeImp.DoomBuilder.Windows
} }
#endregion #endregion
} }
} }

View file

@ -302,6 +302,7 @@ namespace CodeImp.DoomBuilder.Windows
this.Opacity = 0; this.Opacity = 0;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "Edit Vertex"; this.Text = "Edit Vertex";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.VertexEditForm_FormClosing);
this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.VertexEditForm_HelpRequested); this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.VertexEditForm_HelpRequested);
tabproperties.ResumeLayout(false); tabproperties.ResumeLayout(false);
this.groupposition.ResumeLayout(false); this.groupposition.ResumeLayout(false);

View file

@ -22,6 +22,7 @@ using System.Windows.Forms;
using CodeImp.DoomBuilder.Geometry; using CodeImp.DoomBuilder.Geometry;
using CodeImp.DoomBuilder.Map; using CodeImp.DoomBuilder.Map;
using CodeImp.DoomBuilder.GZBuilder.Tools; using CodeImp.DoomBuilder.GZBuilder.Tools;
using System.Drawing;
#endregion #endregion
@ -47,6 +48,10 @@ namespace CodeImp.DoomBuilder.Windows
private bool blockUpdate; //mxd private bool blockUpdate; //mxd
private List<VertexProperties> vertexProps; //mxd private List<VertexProperties> vertexProps; //mxd
//mxd. Window setup stuff
private static Point location = Point.Empty;
private static int activeTab;
private struct VertexProperties //mxd private struct VertexProperties //mxd
{ {
public float X; public float X;
@ -71,6 +76,17 @@ namespace CodeImp.DoomBuilder.Windows
{ {
InitializeComponent(); InitializeComponent();
//mxd. Widow setup
if(location != Point.Empty) {
this.StartPosition = FormStartPosition.Manual;
this.Location = location;
if(activeTab > 0 && activeTab < tabs.TabCount) {
tabs.SelectTab(activeTab);
} else {
activeTab = 0;
}
}
if(General.Map.FormatInterface.HasCustomFields) { //mxd if(General.Map.FormatInterface.HasCustomFields) { //mxd
// Initialize custom fields editor // Initialize custom fields editor
fieldslist.Setup("vertex"); fieldslist.Setup("vertex");
@ -322,6 +338,12 @@ namespace CodeImp.DoomBuilder.Windows
fieldslist.Focus(); fieldslist.Focus();
} }
//mxd
private void VertexEditForm_FormClosing(object sender, FormClosingEventArgs e) {
location = this.Location;
activeTab = tabs.SelectedIndex;
}
// Help requested // Help requested
private void VertexEditForm_HelpRequested(object sender, HelpEventArgs hlpevent) private void VertexEditForm_HelpRequested(object sender, HelpEventArgs hlpevent)
{ {

View file

@ -276,6 +276,12 @@
<Compile Include="Interface\EditSelectionPanel.Designer.cs"> <Compile Include="Interface\EditSelectionPanel.Designer.cs">
<DependentUpon>EditSelectionPanel.cs</DependentUpon> <DependentUpon>EditSelectionPanel.cs</DependentUpon>
</Compile> </Compile>
<Compile Include="Interface\SectorDrawingOptionsPanel.cs">
<SubType>UserControl</SubType>
</Compile>
<Compile Include="Interface\SectorDrawingOptionsPanel.Designer.cs">
<DependentUpon>SectorDrawingOptionsPanel.cs</DependentUpon>
</Compile>
<Compile Include="Interface\WavefrontSettingsForm.cs"> <Compile Include="Interface\WavefrontSettingsForm.cs">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
@ -386,6 +392,9 @@
<EmbeddedResource Include="Resources\FloorAlign.png" /> <EmbeddedResource Include="Resources\FloorAlign.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<EmbeddedResource Include="Interface\SectorDrawingOptionsPanel.resx">
<DependentUpon>SectorDrawingOptionsPanel.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Interface\WavefrontSettingsForm.resx"> <EmbeddedResource Include="Interface\WavefrontSettingsForm.resx">
<DependentUpon>WavefrontSettingsForm.cs</DependentUpon> <DependentUpon>WavefrontSettingsForm.cs</DependentUpon>
</EmbeddedResource> </EmbeddedResource>

View file

@ -180,7 +180,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.ClassicModes
} }
// Make the drawing // Make the drawing
if(!Tools.DrawLines(verts, General.Settings.GZForceDefaultTextures, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) //mxd if(!Tools.DrawLines(verts, true, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) //mxd
{ {
// Drawing failed // Drawing failed
// NOTE: I have to call this twice, because the first time only cancels this volatile mode // NOTE: I have to call this twice, because the first time only cancels this volatile mode

View file

@ -471,7 +471,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
General.Interface.DisplayStatus(StatusType.Action, "Created " + a + word + " drawing."); General.Interface.DisplayStatus(StatusType.Action, "Created " + a + word + " drawing.");
// Make the drawing // Make the drawing
if(!Tools.DrawLines(points, General.Settings.GZForceDefaultTextures, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) //mxd if(!Tools.DrawLines(points, true, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) //mxd
{ {
// Drawing failed // Drawing failed
// NOTE: I have to call this twice, because the first time only cancels this volatile mode // NOTE: I have to call this twice, because the first time only cancels this volatile mode

View file

@ -261,7 +261,7 @@ namespace CodeImp.DoomBuilder.BuilderModes.ClassicModes
General.Interface.DisplayStatus(StatusType.Action, "Created " + a + word + " " + shapeName+"."); General.Interface.DisplayStatus(StatusType.Action, "Created " + a + word + " " + shapeName+".");
// Make the drawing // Make the drawing
if (!Tools.DrawLines(points, General.Settings.GZForceDefaultTextures, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) { if (!Tools.DrawLines(points, true, BuilderPlug.Me.AutoAlignTextureOffsetsOnCreate)) {
// Drawing failed // Drawing failed
// NOTE: I have to call this twice, because the first time only cancels this volatile mode // NOTE: I have to call this twice, because the first time only cancels this volatile mode
General.Map.UndoRedo.WithdrawUndo(); General.Map.UndoRedo.WithdrawUndo();

View file

@ -428,7 +428,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
private void vertexEditForm_OnValuesChanged(object sender, EventArgs e) { private void vertexEditForm_OnValuesChanged(object sender, EventArgs e) {
// Update entire display // Update entire display
General.Map.Map.Update(); General.Map.Map.Update();
//General.Map.Renderer2D.Update3dFloorIndicators();
General.Interface.RedrawDisplay(); General.Interface.RedrawDisplay();
} }

View file

@ -91,9 +91,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
General.Settings.FindDefaultDrawSettings(); General.Settings.FindDefaultDrawSettings();
switch (part) switch (part)
{ {
case SidedefPart.Upper: side.SetTextureHigh(General.Settings.DefaultTexture); break; case SidedefPart.Upper: side.SetTextureHigh(General.Map.Options.DefaultWallTexture); break;
case SidedefPart.Middle: side.SetTextureMid(General.Settings.DefaultTexture); break; case SidedefPart.Middle: side.SetTextureMid(General.Map.Options.DefaultWallTexture); break;
case SidedefPart.Lower: side.SetTextureLow(General.Settings.DefaultTexture); break; case SidedefPart.Lower: side.SetTextureLow(General.Map.Options.DefaultWallTexture); break;
} }
General.Map.Map.Update(); General.Map.Map.Update();

View file

@ -79,9 +79,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
General.Settings.FindDefaultDrawSettings(); General.Settings.FindDefaultDrawSettings();
if(ceiling) if(ceiling)
sector.SetCeilTexture(General.Settings.DefaultCeilingTexture); sector.SetCeilTexture(General.Map.Options.DefaultCeilingTexture);
else else
sector.SetFloorTexture(General.Settings.DefaultFloorTexture); sector.SetFloorTexture(General.Map.Options.DefaultFloorTexture);
General.Map.Map.Update(); General.Map.Map.Update();
return true; return true;

View file

@ -105,9 +105,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
General.Settings.FindDefaultDrawSettings(); General.Settings.FindDefaultDrawSettings();
switch(part) switch(part)
{ {
case SidedefPart.Upper: side.SetTextureHigh(General.Settings.DefaultTexture); break; case SidedefPart.Upper: side.SetTextureHigh(General.Map.Options.DefaultWallTexture); break;
case SidedefPart.Middle: side.SetTextureMid(General.Settings.DefaultTexture); break; case SidedefPart.Middle: side.SetTextureMid(General.Map.Options.DefaultWallTexture); break;
case SidedefPart.Lower: side.SetTextureLow(General.Settings.DefaultTexture); break; case SidedefPart.Lower: side.SetTextureLow(General.Map.Options.DefaultWallTexture); break;
} }
General.Map.Map.Update(); General.Map.Map.Update();

View file

@ -76,6 +76,8 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Dockers // Dockers
private UndoRedoPanel undoredopanel; private UndoRedoPanel undoredopanel;
private Docker undoredodocker; private Docker undoredodocker;
private SectorDrawingOptionsPanel drawingOverridesPanel; //mxd
private Docker drawingOverridesDocker; //mxd
//mxd //mxd
private ToolStripMenuItem exportToObjMenuItem; private ToolStripMenuItem exportToObjMenuItem;
@ -219,6 +221,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
undoredodocker = new Docker("undoredo", "Undo / Redo", undoredopanel); undoredodocker = new Docker("undoredo", "Undo / Redo", undoredopanel);
General.Interface.AddDocker(undoredodocker); General.Interface.AddDocker(undoredodocker);
//mxd. Load Sector Drawing Overrides docker
drawingOverridesPanel = new SectorDrawingOptionsPanel();
drawingOverridesDocker = new Docker("drawingoverrides", "Draw Settings", drawingOverridesPanel);
//mxd. Export to .obj //mxd. Export to .obj
exportToObjMenuItem = new ToolStripMenuItem("Export to .obj..."); exportToObjMenuItem = new ToolStripMenuItem("Export to .obj...");
exportToObjMenuItem.Tag = "exporttoobj"; exportToObjMenuItem.Tag = "exporttoobj";
@ -279,6 +285,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
{ {
// Clean up // Clean up
General.Interface.RemoveDocker(undoredodocker); General.Interface.RemoveDocker(undoredodocker);
General.Interface.RemoveDocker(drawingOverridesDocker); //mxd
//mxd //mxd
General.Interface.RemoveMenu(exportToObjMenuItem); General.Interface.RemoveMenu(exportToObjMenuItem);
@ -454,6 +461,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
undoredopanel.SetBeginDescription("New Map"); undoredopanel.SetBeginDescription("New Map");
undoredopanel.UpdateList(); undoredopanel.UpdateList();
//mxd
General.Interface.AddDocker(drawingOverridesDocker);
drawingOverridesPanel.Setup();
//mxd //mxd
exportToObjMenuItem.Enabled = true; exportToObjMenuItem.Enabled = true;
snapModeMenuItem.Enabled = true; snapModeMenuItem.Enabled = true;
@ -470,6 +481,10 @@ namespace CodeImp.DoomBuilder.BuilderModes
undoredopanel.SetBeginDescription("Opened Map"); undoredopanel.SetBeginDescription("Opened Map");
undoredopanel.UpdateList(); undoredopanel.UpdateList();
//mxd
General.Interface.AddDocker(drawingOverridesDocker);
drawingOverridesPanel.Setup();
//mxd //mxd
exportToObjMenuItem.Enabled = true; exportToObjMenuItem.Enabled = true;
snapModeMenuItem.Enabled = true; snapModeMenuItem.Enabled = true;
@ -487,6 +502,9 @@ namespace CodeImp.DoomBuilder.BuilderModes
base.OnMapCloseEnd(); base.OnMapCloseEnd();
undoredopanel.UpdateList(); undoredopanel.UpdateList();
//mxd
General.Interface.RemoveDocker(drawingOverridesDocker);
//mxd //mxd
exportToObjMenuItem.Enabled = false; exportToObjMenuItem.Enabled = false;
snapModeMenuItem.Enabled = false; snapModeMenuItem.Enabled = false;

View file

@ -59,21 +59,11 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.label10 = new System.Windows.Forms.Label(); this.label10 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label();
this.heightbysidedef = new System.Windows.Forms.ComboBox(); this.heightbysidedef = new System.Windows.Forms.ComboBox();
this.groupBox4 = new System.Windows.Forms.GroupBox();
this.defaultbrightness = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.label11 = new System.Windows.Forms.Label();
this.defaultceilheight = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.label12 = new System.Windows.Forms.Label();
this.defaultfloorheight = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.label13 = new System.Windows.Forms.Label();
this.label14 = new System.Windows.Forms.Label();
this.label15 = new System.Windows.Forms.Label();
this.tabs.SuspendLayout(); this.tabs.SuspendLayout();
this.taboptions.SuspendLayout(); this.taboptions.SuspendLayout();
this.groupBox3.SuspendLayout(); this.groupBox3.SuspendLayout();
this.groupBox2.SuspendLayout(); this.groupBox2.SuspendLayout();
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
this.groupBox4.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// tabs // tabs
@ -91,7 +81,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
// //
// taboptions // taboptions
// //
this.taboptions.Controls.Add(this.groupBox4);
this.taboptions.Controls.Add(this.groupBox3); this.taboptions.Controls.Add(this.groupBox3);
this.taboptions.Controls.Add(this.groupBox2); this.taboptions.Controls.Add(this.groupBox2);
this.taboptions.Controls.Add(this.groupBox1); this.taboptions.Controls.Add(this.groupBox1);
@ -239,7 +228,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.groupBox2.Controls.Add(this.label7); this.groupBox2.Controls.Add(this.label7);
this.groupBox2.Location = new System.Drawing.Point(6, 104); this.groupBox2.Location = new System.Drawing.Point(6, 104);
this.groupBox2.Name = "groupBox2"; this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(272, 151); this.groupBox2.Size = new System.Drawing.Size(272, 287);
this.groupBox2.TabIndex = 17; this.groupBox2.TabIndex = 17;
this.groupBox2.TabStop = false; this.groupBox2.TabStop = false;
this.groupBox2.Text = " Ranges "; this.groupBox2.Text = " Ranges ";
@ -251,7 +240,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.splitlinedefsrange.AllowRelative = false; this.splitlinedefsrange.AllowRelative = false;
this.splitlinedefsrange.ButtonStep = 5; this.splitlinedefsrange.ButtonStep = 5;
this.splitlinedefsrange.ButtonStepFloat = 1F; this.splitlinedefsrange.ButtonStepFloat = 1F;
this.splitlinedefsrange.Location = new System.Drawing.Point(156, 111); this.splitlinedefsrange.Location = new System.Drawing.Point(156, 117);
this.splitlinedefsrange.Name = "splitlinedefsrange"; this.splitlinedefsrange.Name = "splitlinedefsrange";
this.splitlinedefsrange.Size = new System.Drawing.Size(59, 24); this.splitlinedefsrange.Size = new System.Drawing.Size(59, 24);
this.splitlinedefsrange.StepValues = null; this.splitlinedefsrange.StepValues = null;
@ -264,7 +253,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.stitchrange.AllowRelative = false; this.stitchrange.AllowRelative = false;
this.stitchrange.ButtonStep = 5; this.stitchrange.ButtonStep = 5;
this.stitchrange.ButtonStepFloat = 1F; this.stitchrange.ButtonStepFloat = 1F;
this.stitchrange.Location = new System.Drawing.Point(156, 81); this.stitchrange.Location = new System.Drawing.Point(156, 85);
this.stitchrange.Name = "stitchrange"; this.stitchrange.Name = "stitchrange";
this.stitchrange.Size = new System.Drawing.Size(59, 24); this.stitchrange.Size = new System.Drawing.Size(59, 24);
this.stitchrange.StepValues = null; this.stitchrange.StepValues = null;
@ -277,7 +266,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.highlightthingsrange.AllowRelative = false; this.highlightthingsrange.AllowRelative = false;
this.highlightthingsrange.ButtonStep = 5; this.highlightthingsrange.ButtonStep = 5;
this.highlightthingsrange.ButtonStepFloat = 1F; this.highlightthingsrange.ButtonStepFloat = 1F;
this.highlightthingsrange.Location = new System.Drawing.Point(156, 51); this.highlightthingsrange.Location = new System.Drawing.Point(156, 53);
this.highlightthingsrange.Name = "highlightthingsrange"; this.highlightthingsrange.Name = "highlightthingsrange";
this.highlightthingsrange.Size = new System.Drawing.Size(59, 24); this.highlightthingsrange.Size = new System.Drawing.Size(59, 24);
this.highlightthingsrange.StepValues = null; this.highlightthingsrange.StepValues = null;
@ -299,7 +288,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label8 // label8
// //
this.label8.AutoSize = true; this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(221, 116); this.label8.Location = new System.Drawing.Point(221, 122);
this.label8.Name = "label8"; this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(35, 14); this.label8.Size = new System.Drawing.Size(35, 14);
this.label8.TabIndex = 15; this.label8.TabIndex = 15;
@ -308,7 +297,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label2 // label2
// //
this.label2.AutoSize = true; this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(33, 86); this.label2.Location = new System.Drawing.Point(33, 90);
this.label2.Name = "label2"; this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(117, 14); this.label2.Size = new System.Drawing.Size(117, 14);
this.label2.TabIndex = 4; this.label2.TabIndex = 4;
@ -318,7 +307,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label3 // label3
// //
this.label3.AutoSize = true; this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(221, 86); this.label3.Location = new System.Drawing.Point(221, 90);
this.label3.Name = "label3"; this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(35, 14); this.label3.Size = new System.Drawing.Size(35, 14);
this.label3.TabIndex = 6; this.label3.TabIndex = 6;
@ -327,7 +316,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label9 // label9
// //
this.label9.AutoSize = true; this.label9.AutoSize = true;
this.label9.Location = new System.Drawing.Point(47, 115); this.label9.Location = new System.Drawing.Point(47, 121);
this.label9.Name = "label9"; this.label9.Name = "label9";
this.label9.Size = new System.Drawing.Size(103, 14); this.label9.Size = new System.Drawing.Size(103, 14);
this.label9.TabIndex = 13; this.label9.TabIndex = 13;
@ -347,7 +336,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label6 // label6
// //
this.label6.AutoSize = true; this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(221, 55); this.label6.Location = new System.Drawing.Point(221, 57);
this.label6.Name = "label6"; this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(35, 14); this.label6.Size = new System.Drawing.Size(35, 14);
this.label6.TabIndex = 12; this.label6.TabIndex = 12;
@ -365,7 +354,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// label7 // label7
// //
this.label7.AutoSize = true; this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(36, 56); this.label7.Location = new System.Drawing.Point(36, 58);
this.label7.Name = "label7"; this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(114, 14); this.label7.Size = new System.Drawing.Size(114, 14);
this.label7.TabIndex = 10; this.label7.TabIndex = 10;
@ -432,110 +421,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.heightbysidedef.Size = new System.Drawing.Size(309, 22); this.heightbysidedef.Size = new System.Drawing.Size(309, 22);
this.heightbysidedef.TabIndex = 0; this.heightbysidedef.TabIndex = 0;
// //
// groupBox4
//
this.groupBox4.Controls.Add(this.label15);
this.groupBox4.Controls.Add(this.label14);
this.groupBox4.Controls.Add(this.defaultfloorheight);
this.groupBox4.Controls.Add(this.label13);
this.groupBox4.Controls.Add(this.defaultceilheight);
this.groupBox4.Controls.Add(this.label12);
this.groupBox4.Controls.Add(this.defaultbrightness);
this.groupBox4.Controls.Add(this.label11);
this.groupBox4.Location = new System.Drawing.Point(6, 261);
this.groupBox4.Name = "groupBox4";
this.groupBox4.Size = new System.Drawing.Size(272, 130);
this.groupBox4.TabIndex = 19;
this.groupBox4.TabStop = false;
this.groupBox4.Text = " Default sector values";
//
// defaultbrightness
//
this.defaultbrightness.AllowDecimal = false;
this.defaultbrightness.AllowNegative = false;
this.defaultbrightness.AllowRelative = false;
this.defaultbrightness.ButtonStep = 5;
this.defaultbrightness.ButtonStepFloat = 1F;
this.defaultbrightness.Location = new System.Drawing.Point(156, 23);
this.defaultbrightness.Name = "defaultbrightness";
this.defaultbrightness.Size = new System.Drawing.Size(59, 24);
this.defaultbrightness.StepValues = null;
this.defaultbrightness.TabIndex = 21;
//
// label11
//
this.label11.AutoSize = true;
this.label11.Location = new System.Drawing.Point(52, 28);
this.label11.Name = "label11";
this.label11.Size = new System.Drawing.Size(98, 14);
this.label11.TabIndex = 20;
this.label11.Text = "Default brightness:";
this.label11.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// defaultceilheight
//
this.defaultceilheight.AllowDecimal = false;
this.defaultceilheight.AllowNegative = false;
this.defaultceilheight.AllowRelative = false;
this.defaultceilheight.ButtonStep = 5;
this.defaultceilheight.ButtonStepFloat = 1F;
this.defaultceilheight.Location = new System.Drawing.Point(156, 53);
this.defaultceilheight.Name = "defaultceilheight";
this.defaultceilheight.Size = new System.Drawing.Size(59, 24);
this.defaultceilheight.StepValues = null;
this.defaultceilheight.TabIndex = 23;
//
// label12
//
this.label12.AutoSize = true;
this.label12.Location = new System.Drawing.Point(41, 58);
this.label12.Name = "label12";
this.label12.Size = new System.Drawing.Size(109, 14);
this.label12.TabIndex = 22;
this.label12.Text = "Default ceiling height:";
this.label12.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// defaultfloorheight
//
this.defaultfloorheight.AllowDecimal = false;
this.defaultfloorheight.AllowNegative = false;
this.defaultfloorheight.AllowRelative = false;
this.defaultfloorheight.ButtonStep = 5;
this.defaultfloorheight.ButtonStepFloat = 1F;
this.defaultfloorheight.Location = new System.Drawing.Point(156, 83);
this.defaultfloorheight.Name = "defaultfloorheight";
this.defaultfloorheight.Size = new System.Drawing.Size(59, 24);
this.defaultfloorheight.StepValues = null;
this.defaultfloorheight.TabIndex = 25;
//
// label13
//
this.label13.AutoSize = true;
this.label13.Location = new System.Drawing.Point(49, 88);
this.label13.Name = "label13";
this.label13.Size = new System.Drawing.Size(101, 14);
this.label13.TabIndex = 24;
this.label13.Text = "Default floor height:";
this.label13.TextAlign = System.Drawing.ContentAlignment.TopRight;
//
// label14
//
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(221, 58);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(27, 14);
this.label14.TabIndex = 20;
this.label14.Text = "m.u.";
//
// label15
//
this.label15.AutoSize = true;
this.label15.Location = new System.Drawing.Point(221, 88);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(27, 14);
this.label15.TabIndex = 26;
this.label15.Text = "m.u.";
//
// PreferencesForm // PreferencesForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@ -556,8 +441,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
this.groupBox2.PerformLayout(); this.groupBox2.PerformLayout();
this.groupBox1.ResumeLayout(false); this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout(); this.groupBox1.PerformLayout();
this.groupBox4.ResumeLayout(false);
this.groupBox4.PerformLayout();
this.ResumeLayout(false); this.ResumeLayout(false);
} }
@ -595,14 +478,5 @@ namespace CodeImp.DoomBuilder.BuilderModes
private System.Windows.Forms.CheckBox autoalignDraggedSidedefsOffsetX; private System.Windows.Forms.CheckBox autoalignDraggedSidedefsOffsetX;
private System.Windows.Forms.CheckBox dontMoveGeometryOutsideBounds; private System.Windows.Forms.CheckBox dontMoveGeometryOutsideBounds;
private System.Windows.Forms.CheckBox syncSelection; private System.Windows.Forms.CheckBox syncSelection;
private System.Windows.Forms.GroupBox groupBox4;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox defaultbrightness;
private System.Windows.Forms.Label label11;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox defaultfloorheight;
private System.Windows.Forms.Label label13;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox defaultceilheight;
private System.Windows.Forms.Label label12;
private System.Windows.Forms.Label label15;
private System.Windows.Forms.Label label14;
} }
} }

View file

@ -27,8 +27,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
{ {
#region ================== Variables #region ================== Variables
//private PreferencesController controller;
#endregion #endregion
#region ================== Properties #region ================== Properties
@ -59,9 +57,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
autoalignDraggedSidedefsOffsetX.Checked = BuilderPlug.Me.AutoAlignTextureOffsetsOnDrag; //mxd autoalignDraggedSidedefsOffsetX.Checked = BuilderPlug.Me.AutoAlignTextureOffsetsOnDrag; //mxd
dontMoveGeometryOutsideBounds.Checked = BuilderPlug.Me.DontMoveGeometryOutsideMapBoundary; //mxd dontMoveGeometryOutsideBounds.Checked = BuilderPlug.Me.DontMoveGeometryOutsideMapBoundary; //mxd
syncSelection.Checked = BuilderPlug.Me.SyncSelection; //mxd syncSelection.Checked = BuilderPlug.Me.SyncSelection; //mxd
defaultbrightness.Text = General.Settings.DefaultBrightness.ToString(); //mxd
defaultceilheight.Text = General.Settings.DefaultCeilingHeight.ToString();//mxd
defaultfloorheight.Text = General.Settings.DefaultFloorHeight.ToString(); //mxd
} }
#endregion #endregion
@ -88,16 +83,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
General.Settings.WritePluginSetting("autoaligntextureoffsetsondrag", autoalignDraggedSidedefsOffsetX.Checked);//mxd General.Settings.WritePluginSetting("autoaligntextureoffsetsondrag", autoalignDraggedSidedefsOffsetX.Checked);//mxd
General.Settings.WritePluginSetting("dontmovegeometryoutsidemapboundary", dontMoveGeometryOutsideBounds.Checked);//mxd General.Settings.WritePluginSetting("dontmovegeometryoutsidemapboundary", dontMoveGeometryOutsideBounds.Checked);//mxd
General.Settings.WritePluginSetting("syncselection", syncSelection.Checked);//mxd General.Settings.WritePluginSetting("syncselection", syncSelection.Checked);//mxd
//default sector values
General.Settings.DefaultBrightness = General.Clamp(defaultbrightness.GetResult(192), 0, 255);
int ceilHeight = defaultceilheight.GetResult(128);
int floorHeight = defaultfloorheight.GetResult(0);
if(ceilHeight < floorHeight) General.Swap(ref ceilHeight, ref floorHeight);
General.Settings.DefaultCeilingHeight = ceilHeight;
General.Settings.DefaultFloorHeight = floorHeight;
} }
// When Cancel is pressed on the preferences dialog // When Cancel is pressed on the preferences dialog
@ -112,8 +97,6 @@ namespace CodeImp.DoomBuilder.BuilderModes
// This sets up the form with the preferences controller // This sets up the form with the preferences controller
public void Setup(PreferencesController controller) public void Setup(PreferencesController controller)
{ {
//this.controller = controller;
// Add tab pages // Add tab pages
foreach(TabPage p in tabs.TabPages) foreach(TabPage p in tabs.TabPages)
{ {

View file

@ -0,0 +1,275 @@
namespace CodeImp.DoomBuilder.BuilderModes.Interface
{
partial class SectorDrawingOptionsPanel
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.cbOverrideCeilingTexture = new System.Windows.Forms.CheckBox();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.cbOverrideFloorTexture = new System.Windows.Forms.CheckBox();
this.cbOverrideWallTexture = new System.Windows.Forms.CheckBox();
this.cbFloorHeight = new System.Windows.Forms.CheckBox();
this.cbCeilHeight = new System.Windows.Forms.CheckBox();
this.cbBrightness = new System.Windows.Forms.CheckBox();
this.label14 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.brightness = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.floorHeight = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.ceilHeight = new CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox();
this.walls = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.floor = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.ceiling = new CodeImp.DoomBuilder.Controls.TextureSelectorControl();
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
this.SuspendLayout();
//
// groupBox1
//
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox1.Controls.Add(this.cbOverrideWallTexture);
this.groupBox1.Controls.Add(this.cbOverrideFloorTexture);
this.groupBox1.Controls.Add(this.walls);
this.groupBox1.Controls.Add(this.cbOverrideCeilingTexture);
this.groupBox1.Controls.Add(this.floor);
this.groupBox1.Controls.Add(this.ceiling);
this.groupBox1.Location = new System.Drawing.Point(3, 3);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(243, 138);
this.groupBox1.TabIndex = 0;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "Texture overrides:";
//
// cbOverrideCeilingTexture
//
this.cbOverrideCeilingTexture.AutoSize = true;
this.cbOverrideCeilingTexture.Location = new System.Drawing.Point(7, 19);
this.cbOverrideCeilingTexture.Name = "cbOverrideCeilingTexture";
this.cbOverrideCeilingTexture.Size = new System.Drawing.Size(57, 17);
this.cbOverrideCeilingTexture.TabIndex = 20;
this.cbOverrideCeilingTexture.Text = "Ceiling";
this.cbOverrideCeilingTexture.UseVisualStyleBackColor = true;
this.cbOverrideCeilingTexture.CheckedChanged += new System.EventHandler(this.cbOverrideCeilingTexture_CheckedChanged);
//
// groupBox2
//
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.groupBox2.Controls.Add(this.label1);
this.groupBox2.Controls.Add(this.label14);
this.groupBox2.Controls.Add(this.cbBrightness);
this.groupBox2.Controls.Add(this.brightness);
this.groupBox2.Controls.Add(this.floorHeight);
this.groupBox2.Controls.Add(this.cbCeilHeight);
this.groupBox2.Controls.Add(this.cbFloorHeight);
this.groupBox2.Controls.Add(this.ceilHeight);
this.groupBox2.Location = new System.Drawing.Point(3, 147);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(243, 118);
this.groupBox2.TabIndex = 21;
this.groupBox2.TabStop = false;
this.groupBox2.Text = "Geometry overrides:";
//
// cbOverrideFloorTexture
//
this.cbOverrideFloorTexture.AutoSize = true;
this.cbOverrideFloorTexture.Location = new System.Drawing.Point(88, 19);
this.cbOverrideFloorTexture.Name = "cbOverrideFloorTexture";
this.cbOverrideFloorTexture.Size = new System.Drawing.Size(49, 17);
this.cbOverrideFloorTexture.TabIndex = 21;
this.cbOverrideFloorTexture.Text = "Floor";
this.cbOverrideFloorTexture.UseVisualStyleBackColor = true;
this.cbOverrideFloorTexture.CheckedChanged += new System.EventHandler(this.cbOverrideFloorTexture_CheckedChanged);
//
// cbOverrideWallTexture
//
this.cbOverrideWallTexture.AutoSize = true;
this.cbOverrideWallTexture.Location = new System.Drawing.Point(170, 19);
this.cbOverrideWallTexture.Name = "cbOverrideWallTexture";
this.cbOverrideWallTexture.Size = new System.Drawing.Size(52, 17);
this.cbOverrideWallTexture.TabIndex = 22;
this.cbOverrideWallTexture.Text = "Walls";
this.cbOverrideWallTexture.UseVisualStyleBackColor = true;
this.cbOverrideWallTexture.CheckedChanged += new System.EventHandler(this.cbOverrideWallTexture_CheckedChanged);
//
// cbFloorHeight
//
this.cbFloorHeight.AutoSize = true;
this.cbFloorHeight.Location = new System.Drawing.Point(7, 52);
this.cbFloorHeight.Name = "cbFloorHeight";
this.cbFloorHeight.Size = new System.Drawing.Size(84, 17);
this.cbFloorHeight.TabIndex = 23;
this.cbFloorHeight.Text = "Floor height:";
this.cbFloorHeight.UseVisualStyleBackColor = true;
this.cbFloorHeight.CheckedChanged += new System.EventHandler(this.cbFloorHeight_CheckedChanged);
//
// cbCeilHeight
//
this.cbCeilHeight.AutoSize = true;
this.cbCeilHeight.Location = new System.Drawing.Point(7, 23);
this.cbCeilHeight.Name = "cbCeilHeight";
this.cbCeilHeight.Size = new System.Drawing.Size(92, 17);
this.cbCeilHeight.TabIndex = 24;
this.cbCeilHeight.Text = "Ceiling height:";
this.cbCeilHeight.UseVisualStyleBackColor = true;
this.cbCeilHeight.CheckedChanged += new System.EventHandler(this.cbCeilHeight_CheckedChanged);
//
// cbBrightness
//
this.cbBrightness.AutoSize = true;
this.cbBrightness.Location = new System.Drawing.Point(7, 82);
this.cbBrightness.Name = "cbBrightness";
this.cbBrightness.Size = new System.Drawing.Size(78, 17);
this.cbBrightness.TabIndex = 27;
this.cbBrightness.Text = "Brightness:";
this.cbBrightness.UseVisualStyleBackColor = true;
this.cbBrightness.CheckedChanged += new System.EventHandler(this.cbBrightness_CheckedChanged);
//
// label14
//
this.label14.AutoSize = true;
this.label14.Location = new System.Drawing.Point(182, 24);
this.label14.Name = "label14";
this.label14.Size = new System.Drawing.Size(27, 13);
this.label14.TabIndex = 28;
this.label14.Text = "m.u.";
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(182, 53);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(27, 13);
this.label1.TabIndex = 29;
this.label1.Text = "m.u.";
//
// brightness
//
this.brightness.AllowDecimal = false;
this.brightness.AllowNegative = false;
this.brightness.AllowRelative = false;
this.brightness.ButtonStep = 16;
this.brightness.ButtonStepFloat = 1F;
this.brightness.Location = new System.Drawing.Point(105, 78);
this.brightness.Name = "brightness";
this.brightness.Size = new System.Drawing.Size(72, 24);
this.brightness.StepValues = null;
this.brightness.TabIndex = 26;
this.brightness.WhenTextChanged += new System.EventHandler(this.brightness_WhenTextChanged);
//
// floorHeight
//
this.floorHeight.AllowDecimal = false;
this.floorHeight.AllowNegative = true;
this.floorHeight.AllowRelative = false;
this.floorHeight.ButtonStep = 16;
this.floorHeight.ButtonStepFloat = 1F;
this.floorHeight.Location = new System.Drawing.Point(105, 48);
this.floorHeight.Name = "floorHeight";
this.floorHeight.Size = new System.Drawing.Size(72, 24);
this.floorHeight.StepValues = null;
this.floorHeight.TabIndex = 25;
this.floorHeight.WhenTextChanged += new System.EventHandler(this.floorHeight_WhenTextChanged);
//
// ceilHeight
//
this.ceilHeight.AllowDecimal = false;
this.ceilHeight.AllowNegative = true;
this.ceilHeight.AllowRelative = false;
this.ceilHeight.ButtonStep = 16;
this.ceilHeight.ButtonStepFloat = 1F;
this.ceilHeight.Location = new System.Drawing.Point(105, 18);
this.ceilHeight.Name = "ceilHeight";
this.ceilHeight.Size = new System.Drawing.Size(72, 24);
this.ceilHeight.StepValues = null;
this.ceilHeight.TabIndex = 11;
this.ceilHeight.WhenTextChanged += new System.EventHandler(this.ceilHeight_WhenTextChanged);
//
// walls
//
this.walls.Location = new System.Drawing.Point(168, 41);
this.walls.Name = "walls";
this.walls.Required = false;
this.walls.Size = new System.Drawing.Size(68, 90);
this.walls.TabIndex = 19;
this.walls.TextureName = "";
this.walls.OnValueChanged += new System.EventHandler(this.walls_OnValueChanged);
//
// floor
//
this.floor.Location = new System.Drawing.Point(87, 41);
this.floor.Name = "floor";
this.floor.Required = false;
this.floor.Size = new System.Drawing.Size(68, 90);
this.floor.TabIndex = 17;
this.floor.TextureName = "";
this.floor.OnValueChanged += new System.EventHandler(this.floor_OnValueChanged);
//
// ceiling
//
this.ceiling.Location = new System.Drawing.Point(6, 41);
this.ceiling.Name = "ceiling";
this.ceiling.Required = false;
this.ceiling.Size = new System.Drawing.Size(68, 90);
this.ceiling.TabIndex = 16;
this.ceiling.TextureName = "";
this.ceiling.OnValueChanged += new System.EventHandler(this.ceiling_OnValueChanged);
//
// SectorDrawingOptionsPanel
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.groupBox2);
this.Controls.Add(this.groupBox1);
this.Name = "SectorDrawingOptionsPanel";
this.Size = new System.Drawing.Size(249, 600);
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.groupBox2.ResumeLayout(false);
this.groupBox2.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.CheckBox cbOverrideCeilingTexture;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl walls;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl floor;
private CodeImp.DoomBuilder.Controls.TextureSelectorControl ceiling;
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.CheckBox cbOverrideWallTexture;
private System.Windows.Forms.CheckBox cbOverrideFloorTexture;
private System.Windows.Forms.CheckBox cbBrightness;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox brightness;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox floorHeight;
private System.Windows.Forms.CheckBox cbCeilHeight;
private System.Windows.Forms.CheckBox cbFloorHeight;
private CodeImp.DoomBuilder.Controls.ButtonsNumericTextbox ceilHeight;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label14;
}
}

View file

@ -0,0 +1,113 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace CodeImp.DoomBuilder.BuilderModes.Interface
{
public partial class SectorDrawingOptionsPanel : UserControl
{
#region Constructor / Setup
public SectorDrawingOptionsPanel() {
InitializeComponent();
}
public void Setup() {
ceilHeight.Text = General.Map.Options.DefaultCeilingHeight.ToString();
floorHeight.Text = General.Map.Options.DefaultFloorHeight.ToString();
brightness.StepValues = General.Map.Config.BrightnessLevels;
brightness.Text = General.Map.Options.DefaultBrightness.ToString();
ceiling.TextureName = General.Map.Options.DefaultCeilingTexture;
floor.TextureName = General.Map.Options.DefaultFloorTexture;
walls.TextureName = General.Map.Options.DefaultWallTexture;
cbOverrideCeilingTexture.Checked = General.Map.Options.OverrideCeilingTexture;
cbOverrideFloorTexture.Checked = General.Map.Options.OverrideFloorTexture;
cbOverrideWallTexture.Checked = General.Map.Options.OverrideWallTexture;
cbCeilHeight.Checked = General.Map.Options.OverrideCeilingHeight;
cbFloorHeight.Checked = General.Map.Options.OverrideFloorHeight;
cbBrightness.Checked = General.Map.Options.OverrideBrightness;
ceiling.Enabled = cbOverrideCeilingTexture.Checked;
floor.Enabled = cbOverrideFloorTexture.Checked;
walls.Enabled = cbOverrideWallTexture.Checked;
ceilHeight.Enabled = cbCeilHeight.Checked;
floorHeight.Enabled = cbFloorHeight.Checked;
brightness.Enabled = cbBrightness.Checked;
}
#endregion
#region Checkbox Events
private void cbOverrideCeilingTexture_CheckedChanged(object sender, EventArgs e) {
ceiling.Enabled = cbOverrideCeilingTexture.Checked;
General.Map.Options.OverrideCeilingTexture = cbOverrideCeilingTexture.Checked;
}
private void cbOverrideFloorTexture_CheckedChanged(object sender, EventArgs e) {
floor.Enabled = cbOverrideFloorTexture.Checked;
General.Map.Options.OverrideFloorTexture = cbOverrideFloorTexture.Checked;
}
private void cbOverrideWallTexture_CheckedChanged(object sender, EventArgs e) {
walls.Enabled = cbOverrideWallTexture.Checked;
General.Map.Options.OverrideWallTexture = cbOverrideWallTexture.Checked;
}
private void cbCeilHeight_CheckedChanged(object sender, EventArgs e) {
ceilHeight.Enabled = cbCeilHeight.Checked;
General.Map.Options.OverrideCeilingHeight = cbCeilHeight.Checked;
}
private void cbFloorHeight_CheckedChanged(object sender, EventArgs e) {
floorHeight.Enabled = cbFloorHeight.Checked;
General.Map.Options.OverrideFloorHeight = cbFloorHeight.Checked;
}
private void cbBrightness_CheckedChanged(object sender, EventArgs e) {
brightness.Enabled = cbBrightness.Checked;
General.Map.Options.OverrideBrightness = cbBrightness.Checked;
}
#endregion
#region Inputs Events
private void ceilHeight_WhenTextChanged(object sender, EventArgs e) {
General.Map.Options.DefaultCeilingHeight = ceilHeight.GetResult(General.Map.Options.DefaultCeilingHeight);
}
private void floorHeight_WhenTextChanged(object sender, EventArgs e) {
General.Map.Options.DefaultFloorHeight = floorHeight.GetResult(General.Map.Options.DefaultFloorHeight);
}
private void brightness_WhenTextChanged(object sender, EventArgs e) {
General.Map.Options.DefaultBrightness = General.Clamp(brightness.GetResult(General.Map.Options.DefaultBrightness), 0, 255);
}
private void ceiling_OnValueChanged(object sender, EventArgs e) {
General.Map.Options.DefaultCeilingTexture = ceiling.TextureName;
}
private void floor_OnValueChanged(object sender, EventArgs e) {
General.Map.Options.DefaultFloorTexture = floor.TextureName;
}
private void walls_OnValueChanged(object sender, EventArgs e) {
General.Map.Options.DefaultWallTexture = walls.TextureName;
}
/*private void SectorDrawingOptionsPanel_MouseLeave(object sender, EventArgs e) {
General.Interface.FocusDisplay();
}*/
#endregion
}
}

View file

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View file

@ -549,7 +549,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
mode.CreateUndo("Create middle texture"); mode.CreateUndo("Create middle texture");
mode.SetActionResult("Created middle texture."); mode.SetActionResult("Created middle texture.");
General.Settings.FindDefaultDrawSettings(); General.Settings.FindDefaultDrawSettings();
Sidedef.SetTextureMid(General.Settings.DefaultTexture); Sidedef.SetTextureMid(General.Map.Options.DefaultWallTexture);
// Update // Update
Sector.Changed = true; Sector.Changed = true;
@ -557,7 +557,7 @@ namespace CodeImp.DoomBuilder.BuilderModes
// Other side as well // Other side as well
if(string.IsNullOrEmpty(Sidedef.Other.MiddleTexture) || (Sidedef.Other.MiddleTexture == "-")) if(string.IsNullOrEmpty(Sidedef.Other.MiddleTexture) || (Sidedef.Other.MiddleTexture == "-"))
{ {
Sidedef.Other.SetTextureMid(General.Settings.DefaultTexture); Sidedef.Other.SetTextureMid(General.Map.Options.DefaultWallTexture);
// Update // Update
VisualSector othersector = mode.GetVisualSector(Sidedef.Other.Sector); VisualSector othersector = mode.GetVisualSector(Sidedef.Other.Sector);

View file

@ -30,8 +30,8 @@
this.btnClearSearch = new System.Windows.Forms.Button(); this.btnClearSearch = new System.Windows.Forms.Button();
this.tbSearch = new System.Windows.Forms.TextBox(); this.tbSearch = new System.Windows.Forms.TextBox();
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.updatetimer = new System.Windows.Forms.Timer(this.components);
this.bExportToFile = new System.Windows.Forms.Button(); this.bExportToFile = new System.Windows.Forms.Button();
this.updatetimer = new System.Windows.Forms.Timer(this.components);
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
@ -53,7 +53,6 @@
this.treeView.AfterLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.treeView_AfterLabelEdit); this.treeView.AfterLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.treeView_AfterLabelEdit);
this.treeView.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeView_NodeMouseClick); this.treeView.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeView_NodeMouseClick);
this.treeView.BeforeLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.treeView_BeforeLabelEdit); this.treeView.BeforeLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.treeView_BeforeLabelEdit);
this.treeView.MouseLeave += new System.EventHandler(this.treeView_MouseLeave);
// //
// imageList1 // imageList1
// //
@ -195,11 +194,6 @@
this.tbSearch.TabIndex = 7; this.tbSearch.TabIndex = 7;
this.tbSearch.TextChanged += new System.EventHandler(this.tbSearch_TextChanged); this.tbSearch.TextChanged += new System.EventHandler(this.tbSearch_TextChanged);
// //
// updatetimer
//
this.updatetimer.Interval = 750;
this.updatetimer.Tick += new System.EventHandler(this.updatetimer_Tick);
//
// bExportToFile // bExportToFile
// //
this.bExportToFile.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) this.bExportToFile.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
@ -214,6 +208,11 @@
this.bExportToFile.UseVisualStyleBackColor = true; this.bExportToFile.UseVisualStyleBackColor = true;
this.bExportToFile.Click += new System.EventHandler(this.bExportToFile_Click); this.bExportToFile.Click += new System.EventHandler(this.bExportToFile_Click);
// //
// updatetimer
//
this.updatetimer.Interval = 750;
this.updatetimer.Tick += new System.EventHandler(this.updatetimer_Tick);
//
// TagExplorer // TagExplorer
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);

View file

@ -58,7 +58,6 @@ namespace CodeImp.DoomBuilder.TagExplorer
if (udmf) { if (udmf) {
cbCommentsOnly.Checked = General.Settings.ReadPluginSetting("commentsonly", false); cbCommentsOnly.Checked = General.Settings.ReadPluginSetting("commentsonly", false);
treeView.LabelEdit = true;
toolTip1.SetToolTip(tbSearch, "Enter text to find comment\r\nEnter # + tag number to show only specified tag. Example: #667\r\nEnter $ + effect number to show only specified effect. Example: $80"); toolTip1.SetToolTip(tbSearch, "Enter text to find comment\r\nEnter # + tag number to show only specified tag. Example: #667\r\nEnter $ + effect number to show only specified effect. Example: $80");
toolTip1.SetToolTip(treeView, "Double-click item to edit item's comment\r\nRight-click item to open item's Properties"); toolTip1.SetToolTip(treeView, "Double-click item to edit item's comment\r\nRight-click item to open item's Properties");
} else { } else {
@ -548,20 +547,22 @@ namespace CodeImp.DoomBuilder.TagExplorer
selection.Index = info.Index; selection.Index = info.Index;
if (e.Button == MouseButtons.Right) { //open element properties if (e.Button == MouseButtons.Right) { //open element properties
bool updateDisplay = false;
switch (info.Type) { switch (info.Type) {
case NodeInfoType.THING: case NodeInfoType.THING:
Thing t = General.Map.Map.GetThingByIndex(info.Index); Thing t = General.Map.Map.GetThingByIndex(info.Index);
if (t != null) General.Interface.ShowEditThings(new List<Thing>() { t }); updateDisplay = (t != null && General.Interface.ShowEditThings(new List<Thing>() { t }) == DialogResult.OK);
break; break;
case NodeInfoType.SECTOR: case NodeInfoType.SECTOR:
Sector s = General.Map.Map.GetSectorByIndex(info.Index); Sector s = General.Map.Map.GetSectorByIndex(info.Index);
if (s != null) General.Interface.ShowEditSectors(new List<Sector>() { s }); updateDisplay = (s != null && General.Interface.ShowEditSectors(new List<Sector>() { s }) == DialogResult.OK);
break; break;
case NodeInfoType.LINEDEF: case NodeInfoType.LINEDEF:
Linedef l = General.Map.Map.GetLinedefByIndex(info.Index); Linedef l = General.Map.Map.GetLinedefByIndex(info.Index);
if (l != null) General.Interface.ShowEditLinedefs(new List<Linedef>() { l }); updateDisplay = (l != null && General.Interface.ShowEditLinedefs(new List<Linedef>() { l }) == DialogResult.OK);
break; break;
default: default:
@ -569,8 +570,12 @@ namespace CodeImp.DoomBuilder.TagExplorer
break; break;
} }
if(updateDisplay) {
// Update entire display
General.Map.Map.Update(); General.Map.Map.Update();
General.Interface.RedrawDisplay();
updateTree(true); updateTree(true);
}
} else { } else {
//select element? //select element?
@ -660,6 +665,7 @@ namespace CodeImp.DoomBuilder.TagExplorer
NodeInfo info = e.Node.Tag as NodeInfo; NodeInfo info = e.Node.Tag as NodeInfo;
if (info == null) return; if (info == null) return;
treeView.LabelEdit = true;
e.Node.Text = info.Comment; //set node text to comment e.Node.Text = info.Comment; //set node text to comment
e.Node.BeginEdit(); //begin editing e.Node.BeginEdit(); //begin editing
} }
@ -667,11 +673,10 @@ namespace CodeImp.DoomBuilder.TagExplorer
//we don't want to edit categories if we are in UDMF //we don't want to edit categories if we are in UDMF
private void treeView_BeforeLabelEdit(object sender, NodeLabelEditEventArgs e) { private void treeView_BeforeLabelEdit(object sender, NodeLabelEditEventArgs e) {
if (!udmf || e.Node.Tag == null) { if (!udmf || !treeView.LabelEdit || e.Node.Tag == null) {
e.CancelEdit = true; e.CancelEdit = true;
return; return;
} }
treeView.MouseLeave -= treeView_MouseLeave;
} }
//map should be in UDMF format, or we wouldn't be here //map should be in UDMF format, or we wouldn't be here
@ -682,17 +687,12 @@ namespace CodeImp.DoomBuilder.TagExplorer
//to set comment manually we actually have to cancel edit... //to set comment manually we actually have to cancel edit...
e.CancelEdit = true; e.CancelEdit = true;
e.Node.EndEdit(true); e.Node.EndEdit(true);
treeView.LabelEdit = false;
//apply comment //apply comment
if(e.Label != null) info.Comment = e.Label; if(e.Label != null) info.Comment = e.Label;
e.Node.Text = info.GetName(ref comment, currentSortMode); e.Node.Text = info.GetName(ref comment, currentSortMode);
e.Node.ForeColor = string.IsNullOrEmpty(info.Comment) ? Color.Black : commentColor; e.Node.ForeColor = string.IsNullOrEmpty(info.Comment) ? Color.Black : commentColor;
treeView.MouseLeave += new EventHandler(treeView_MouseLeave);
}
private void treeView_MouseLeave(object sender, EventArgs e) {
General.Interface.FocusDisplay();
} }
//It is called every time a dialog window closes. //It is called every time a dialog window closes.
@ -702,7 +702,6 @@ namespace CodeImp.DoomBuilder.TagExplorer
private void btnClearSearch_Click(object sender, EventArgs e) { private void btnClearSearch_Click(object sender, EventArgs e) {
tbSearch.Clear(); tbSearch.Clear();
General.Interface.FocusDisplay();
} }
private void tbSearch_TextChanged(object sender, EventArgs e) { private void tbSearch_TextChanged(object sender, EventArgs e) {

View file

@ -125,99 +125,99 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAA+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAA+
FwAAAk1TRnQBSQFMAgEBBgEAAVABAAFQAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA FwAAAk1TRnQBSQFMAgEBBgEAAVgBAAFYAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABIAMAAQEBAAEgBgABIBYAAxIBGQMSARkDEgEZNAADEgEZAxIBGQMSARmwAAMwAUwBAAE/AecB/wEA AwABIAMAAQEBAAEgBgABIBYAAxIBGQMSARkDEgEZNAADEgEZAxIBGQMSARmwAAMwAUwBAAE+AecB/wEA
ASsBoQH/AzABTAMSARksAAMwAUwBswFtASMB/wF3AUcBGQH/AzABTAMSARmsAAEcAVwC/wEUAVYC/wEA ASoBoQH/AzABTAMSARksAAMwAUwBswFsASIB/wF2AUYBGAH/AzABTAMSARmsAAEbAVsC/wETAVUC/wEA
ATgBzgH/AQABKwGhAf8DEgEZLAAB4AGHASsB/wHZAYYBKgH/AZ4BYQEgAf8BdwFHARkB/wMSARmsAAFw ATcBzgH/AQABKgGhAf8DEgEZLAAB4AGHASoB/wHZAYYBKQH/AZ4BYAEfAf8BdgFGARgB/wMSARmsAAFv
AZsC/wHoAe8C/wEUAVYC/wEAAT8B5wH/AxIBGSwAAf4BtAFoAv8B/QHlAf8B2QGGASoB/wGzAW0BIwH/ AZsC/wHoAe8C/wETAVUC/wEAAT4B5wH/AxIBGSwAAf4BtAFnAv8B/QHlAf8B2QGGASkB/wGzAWwBIgH/
AxIBGawAAzABTAFwAZsC/wEcAVwC/wOJAf8DRAH/AyMBMygAAzABTAH+AbQBaAH/AeABhwErAf8BowGJ AxIBGawAAzABTAFvAZsC/wEbAVsC/wOJAf8DQwH/AyMBMygAAzABTAH+AbQBZwH/AeABhwEqAf8BowGJ
AW0B/wNEAf8DIwEzsAADIwEzA7wB/wOBAf8DRAH/AyMBMwgAAyMBMwMjATMDIwEzGAADIwEzA7wB/wOB AWwB/wNDAf8DIwEzsAADIwEzA7wB/wOBAf8DQwH/AyMBMwgAAyMBMwMjATMDIwEzGAADIwEzA7wB/wOB
Af8DRAH/AyMBMwgAAyMBMwMjATMDIwEznAADIwEzA80B/wOUAf8DRAH/AyMBMwMwAUwDRAH/A5QB/wMj Af8DQwH/AyMBMwgAAyMBMwMjATMDIwEznAADIwEzA80B/wOUAf8DQwH/AyMBMwMwAUwDQwH/A5QB/wMj
ATMcAAMjATMDzQH/A5QB/wNEAf8DIwEzAzABTANEAf8DlAH/AyMBM6AAAyMBMwPNAf8DlAH/A0QB/wNE ATMcAAMjATMDzQH/A5QB/wNDAf8DIwEzAzABTANDAf8DlAH/AyMBM6AAAyMBMwPNAf8DlAH/A0MB/wND
Af8DlAH/AyMBMyQAAyMBMwPNAf8DlAH/A0QB/wNEAf8DlAH/AyMBM6gAAyMBMwO4Af8DlAH/A4EB/wMj Af8DlAH/AyMBMyQAAyMBMwPNAf8DlAH/A0MB/wNDAf8DlAH/AyMBM6gAAyMBMwO4Af8DlAH/A4EB/wMj
ATMsAAMjATMDuAH/A5QB/wOBAf8DIwEzsAADIwEzA88B/wOUAf8DRAH/AyMBMywAAyMBMwPPAf8DlAH/ ATMsAAMjATMDuAH/A5QB/wOBAf8DIwEzsAADIwEzA88B/wOUAf8DQwH/AyMBMywAAyMBMwPPAf8DlAH/
A0QB/wMjATOwAAMjATMDwwH/A5QB/wNEAf8DIwEzLAADIwEzA8MB/wOUAf8DRAH/AyMBM7AAAyMBMwO8 A0MB/wMjATOwAAMjATMDwwH/A5QB/wNDAf8DIwEzLAADIwEzA8MB/wOUAf8DQwH/AyMBM7AAAyMBMwO8
Af8DlAH/A0QB/wMSARkDEgEZAxIBGSQAAyMBMwO8Af8DlAH/A0QB/wMSARkDEgEZAxIBGagAAyMBMwPZ Af8DlAH/A0MB/wMSARkDEgEZAxIBGSQAAyMBMwO8Af8DlAH/A0MB/wMSARkDEgEZAxIBGagAAyMBMwPZ
Af8DtwH/AQABPwHnAf8BAAErAaEB/wMwAUwDEgEZJAADIwEzA9kB/wHRAbcBnQH/AbMBbQEjAf8BdwFH Af8DtwH/AQABPgHnAf8BAAEqAaEB/wMwAUwDEgEZJAADIwEzA9kB/wHRAbcBnQH/AbMBbAEiAf8BdgFG
ARkB/wMwAUwDEgEZqAADIwEzARwBXAL/ARQBVgL/AQABOAHOAf8BAAErAaEB/wMSARkoAAMjATMB4AGH ARgB/wMwAUwDEgEZqAADIwEzARsBWwL/ARMBVQL/AQABNwHOAf8BAAEqAaEB/wMSARkoAAMjATMB4AGH
ASsB/wHZAYYBKgH/AZ4BYQEgAf8BdwFHARkB/wMSARmsAAFwAZsC/wHoAe8C/wEUAVYC/wEAAT8B5wH/ ASoB/wHZAYYBKQH/AZ4BYAEfAf8BdgFGARgB/wMSARmsAAFvAZsC/wHoAe8C/wETAVUC/wEAAT4B5wH/
AxIBGSwAAf4BtAFoAv8B/QHlAf8B2QGGASoB/wGzAW0BIwH/AxIBGawAAzABTAFwAZsC/wEcAVwC/wMw AxIBGSwAAf4BtAFnAv8B/QHlAf8B2QGGASkB/wGzAWwBIgH/AxIBGawAAzABTAFvAZsC/wEbAVsC/wMw
AUwwAAMwAUwB/gG0AWgB/wHgAYcBKwH/AzABTJgAAwgBCwMfAS0DJwE7AycBOwMnATsDHgErAxIBGAMS AUwwAAMwAUwB/gG0AWcB/wHgAYcBKgH/AzABTJgAAwgBCwMfAS0DJwE7AycBOwMnATsDHgErAxIBGAMS
ARggAAMIAQsDHwEtAycBOwMnATsDJwE7Ax4BKwMSARgDEgEYEAADEgEZAxIBGQMSARkgAAMSARkDEgEZ ARggAAMIAQsDHwEtAycBOwMnATsDJwE7Ax4BKwMSARgDEgEYEAADEgEZAxIBGQMSARkgAAMSARkDEgEZ
AxIBGQgAAxIBGQMSARkDEgEZIAADEgEZAxIBGQMSARkUAAM4AVwCXwFhAegBIgEqAYEB/wEcASMBcAH/ AxIBGQgAAxIBGQMSARkDEgEZIAADEgEZAxIBGQMSARkUAAM4AVwCXwFgAegBIQEpAYEB/wEbASIBbwH/
ARsBIgFtAf8BGgEhAWYB/wJaAWAB5AM4AVwDJwE7AxIBGBgAAzgBXAFjAl8B6AGBAVUBIgH/AXABTQEc ARoBIQFsAf8BGQEgAWUB/wJaAWAB5AM4AVwDJwE7AxIBGBgAAzgBXAFhAl8B6AGBAVQBIQH/AW8BTAEb
Af8BbQFLARsB/wFmAUYBGgH/AWECWgHkAzgBXAMnATsDEgEYCAADMAFMASQBMwGyAf8BGgEnAXYB/wMw Af8BbAFKARoB/wFlAUUBGQH/AWECWgHkAzgBXAMnATsDEgEYCAADMAFMASMBMgGyAf8BGQEmAXUB/wMw
AUwDEgEZAxIBGQMSARkDEgEZAxIBGQMSARkDEgEZAzABTAEkATMBsgH/ARoBJwF2Af8DMAFMAxIBGQMw AUwDEgEZAxIBGQMSARkDEgEZAxIBGQMSARkDEgEZAzABTAEjATIBsgH/ARkBJgF1Af8DMAFMAxIBGQMw
AUwBsgFtASQB/wF2AUcBGgH/AzABTAMSARkDEgEZAxIBGQMSARkDEgEZAxIBGQMSARkDMAFMAbIBbQEk AUwBsgFsASMB/wF1AUYBGQH/AzABTAMSARkDEgEZAxIBGQMSARkDEgEZAxIBGQMSARkDMAFMAbIBbAEj
Af8BdgFHARoB/wMwAUwDEgEZDAADWgHFATIBPgG7Af8BMAE8AbwB/wEvATsBugH/AS4BOgG3Af8BLAE2 Af8BdQFGARkB/wMwAUwDEgEZDAADWgHFATEBPQG7Af8BLwE7AbwB/wEuAToBugH/AS0BOQG3Af8BKwE1
AbQB/wEqATUBrAH/ASUBLQGUAf8BGwEjAXAB/wNaAb0DJwE7AxIBGBAAA1oBxQG7AYMBMgH/AbwBggEw AbQB/wEpATQBrAH/ASQBLAGUAf8BGgEiAW8B/wNaAb0DJwE7AxIBGBAAA1oBxQG7AYMBMQH/AbwBggEv
Af8BugGBAS8B/wG3AYEBLgH/AbQBgQEsAf8BrAFzASoB/wGUAWUBJQH/AXABTAEbAf8DWgG9AycBOwMS Af8BugGBAS4B/wG3AYEBLQH/AbQBgQErAf8BrAFyASkB/wGUAWQBJAH/AW8BSwEaAf8DWgG9AycBOwMS
ARgEAAEtAUUB3wH/ASsBPwHYAf8BIAEsAZ0B/wEaAScBdgH/Az0B/wM9Af8DPQH/Az0B/wM9Af8DPQH/ ARgEAAEsAUQB3wH/ASoBPgHYAf8BHwErAZ0B/wEZASYBdQH/AzwB/wM8Af8DPAH/AzwB/wM8Af8DPAH/
Az0B/wEtAUUB3wH/ASsBPwHYAf8BIAEsAZ0B/wEaAScBdgH/AxIBGQHfAYcBLQH/AdgBhgErAf8BnQFh AzwB/wEsAUQB3wH/ASoBPgHYAf8BHwErAZ0B/wEZASYBdQH/AxIBGQHfAYcBLAH/AdgBhgEqAf8BnQFg
ASAB/wF2AUcBGgH/Az0B/wM9Af8DPQH/Az0B/wM9Af8DPQH/Az0B/wHfAYcBLQH/AdgBhgErAf8BnQFh AR8B/wF1AUYBGQH/AzwB/wM8Af8DPAH/AzwB/wM8Af8DPAH/AzwB/wHfAYcBLAH/AdgBhgEqAf8BnQFg
ASAB/wF2AUcBGgH/AxIBGQgAA1kBvgE3AUQB0wH/ATwBSwHoAf8BQAFOAfMB/wE/AU4B8AH/AT4BTgHv AR8B/wF1AUYBGQH/AxIBGQgAA1kBvgE2AUMB0wH/ATsBSgHoAf8BPwFNAfMB/wE+AU0B8AH/AT0BTQHv
Af8BPgFOAe8B/wE9AUsB7QH/AToBSQHiAf8BMAE8AbsB/wEgAScBgQH/A1oBvQMnATsDEgEYCAADWQG+ Af8BPQFNAe8B/wE8AUoB7QH/ATkBSAHiAf8BLwE7AbsB/wEfASYBgQH/A1oBvQMnATsDEgEYCAADWQG+
AdMBkwE3Af8B6AGhATwB/wHzAaoBQAH/AfABpwE/Af8B7wGlAT4B/wHvAaUBPgH/Ae0BpQE9Af8B4gGc AdMBkwE2Af8B6AGhATsB/wHzAaoBPwH/AfABpwE+Af8B7wGlAT0B/wHvAaUBPQH/Ae0BpQE8Af8B4gGc
AToB/wG7AYIBMAH/AYEBVwEgAf8DWgG9AycBOwMSARgBaQGBAf0B/wHsAeUC/wErAT8B2AH/ASQBMwGy ATkB/wG7AYIBLwH/AYEBVgEfAf8DWgG9AycBOwMSARgBaAGBAf0B/wHsAeUC/wEqAT4B2AH/ASMBMgGy
Af8DuAH/A7gB/wO4Af8DuAH/A7gB/wOmAf8DmAH/AWkBgQH9Af8B7AHlAv8BKwE/AdgB/wEkATMBsgH/ Af8DuAH/A7gB/wO4Af8DuAH/A7gB/wOmAf8DmAH/AWgBgQH9Af8B7AHlAv8BKgE+AdgB/wEjATIBsgH/
AxIBGQH9AbQBaQL/Af0B5QH/AdgBhgErAf8BsgFtASQB/wO4Af8DuAH/A7gB/wO4Af8DuAH/A6YB/wOY AxIBGQH9AbQBaAL/Af0B5QH/AdgBhgEqAf8BsgFsASMB/wO4Af8DuAH/A7gB/wO4Af8DuAH/A6YB/wOY
Af8B/QG0AWkC/wH9AeUB/wHYAYYBKwH/AbIBbQEkAf8DEgEZBAADOAFcAUABTgHjAf8BPwFNAfEB/wEv Af8B/QG0AWgC/wH9AeUB/wHYAYYBKgH/AbIBbAEjAf8DEgEZBAADOAFcAT8BTQHjAf8BPgFMAfEB/wEu
AToBswH/AS0BOAGrAf8BPQFLAeoB/wFCAVIB+gH/AUEBUAH2Af8BPwFNAfEB/wE/AU4B8AH/ATwBSgHq ATkBswH/ASwBNwGrAf8BPAFKAeoB/wFBAVEB+gH/AUABTwH2Af8BPgFMAfEB/wE+AU0B8AH/ATsBSQHq
Af8BLwE6Ab4B/wEfASUBgQH/AzgBXAMSARgEAAM4AVwB4wGgAUAB/wHxAagBPwH/AbMBgQEvAf8BqwF0 Af8BLgE5Ab4B/wEeASQBgQH/AzgBXAMSARgEAAM4AVwB4wGgAT8B/wHxAagBPgH/AbMBgQEuAf8BqwFz
AS0B/wHqAaMBPQH/AfoBrgFCAf8B9gGsAUEB/wHxAagBPwH/AfABpwE/Af8B6gGjATwB/wG+AYQBLwH/ ASwB/wHqAaMBPAH/AfoBrgFBAf8B9gGsAUAB/wHxAagBPgH/AfABpwE+Af8B6gGjATsB/wG+AYQBLgH/
AYEBVgEfAf8DOAFcAxIBGAMwAUwBaQGBAf0B/wEtAUUB3wH/AzABTAwAA7gB/wNOAZkIAAMwAUwBaQGB AYEBVQEeAf8DOAFcAxIBGAMwAUwBaAGBAf0B/wEsAUQB3wH/AzABTAwAA7gB/wNOAZkIAAMwAUwBaAGB
Af0B/wEtAUUB3wH/AzABTAQAAzABTAH9AbQBaQH/Ad8BhwEtAf8DMAFMDAADuAH/A04BmQgAAzABTAH9 Af0B/wEsAUQB3wH/AzABTAQAAzABTAH9AbQBaAH/Ad8BhwEsAf8DMAFMDAADuAH/A04BmQgAAzABTAH9
AbQBaQH/Ad8BhwEtAf8DMAFMCAADXwHbAU8BXQH2Af8BSQFYAv8BLwE6AbEB/wMAAf8BCAEKASQB/wEd AbQBaAH/Ad8BhwEsAf8DMAFMCAADXwHbAU4BXAH2Af8BSAFXAv8BLgE5AbEB/wMAAf8BBwEJASMB/wEc
ASQBcAH/ATQBPwHCAf8BPwFPAfEB/wFCAVIB+gH/AUABUAH0Af8BOQFHAeQB/wEqATUBrAH/AlwBZAHn ASMBbwH/ATMBPgHCAf8BPgFOAfEB/wFBAVEB+gH/AT8BTwH0Af8BOAFGAeQB/wEpATQBrAH/AlwBZAHn
Ax4BKwQAA18B2wH2AbEBTwL/AbQBSQH/AbEBeAEvAf8DAAH/ASQBGQEIAf8BcAFNAR0B/wHCAYgBNAH/ Ax4BKwQAA18B2wH2AbEBTgL/AbQBSAH/AbEBdwEuAf8DAAH/ASMBGAEHAf8BbwFMARwB/wHCAYgBMwH/
AfEBpwE/Af8B+gGuAUIB/wH0AakBQAH/AeQBngE5Af8BrAFzASoB/wFkAWIBXAHnAx4BKwQAA5gB/wNE AfEBpwE+Af8B+gGuAUEB/wH0AakBPwH/AeQBngE4Af8BrAFyASkB/wFkAWIBXAHnAx4BKwQAA5gB/wND
Af8DEgEZDAADpQH/A04BmQwAA5gB/wM9Af8DEgEZCAADmAH/A0QB/wMSARkMAAOlAf8DTgGZDAADmAH/ Af8DEgEZDAADpQH/A04BmQwAA5gB/wM8Af8DEgEZCAADmAH/A0MB/wMSARkMAAOlAf8DTgGZDAADmAH/
Az0B/wMSARkIAAFMAVoC/wFkAXIC/wFTAWAB+wH/AUUBUwHoAf8BCAEJARoB/wMAAf8DAAH/AwAB/wEM AzwB/wMSARkIAAFLAVkC/wFjAXEC/wFSAV8B+wH/AUQBUgHoAf8BBwEIARkB/wMAAf8DAAH/AwAB/wEL
AQ8BMwH/ASIBKgGEAf8BNgFCAc4B/wE+AU0B7wH/ATQBQAHMAf8BIwEsAYoB/wMnATsEAAH/AbYBTAL/ AQ4BMgH/ASEBKQGEAf8BNQFBAc4B/wE9AUwB7wH/ATMBPwHMAf8BIgErAYoB/wMnATsEAAH/AbYBSwL/
Ab4BZAH/AfsBtwFTAf8B6AGlAUUB/wEaARMBCAH/AwAB/wMAAf8DAAH/ATMBIwEMAf8BhAFZASIB/wHO Ab4BYwH/AfsBtwFSAf8B6AGlAUQB/wEZARIBBwH/AwAB/wMAAf8DAAH/ATIBIgELAf8BhAFYASEB/wHO
AZABNgH/Ae8BpgE+Af8BzAGOATQB/wGKAV0BIwH/AycBOwQAA6YB/wNEAf8DEgEZIAADpgH/Az0B/wMS AZABNQH/Ae8BpgE9Af8BzAGOATMB/wGKAVwBIgH/AycBOwQAA6YB/wNDAf8DEgEZIAADpgH/AzwB/wMS
ARkIAAOmAf8DRAH/AxIBGSAAA6YB/wM9Af8DEgEZBAADIwEzAV8BbAL/AXUBhAL/AV0BaQH5Af8BTwFe ARkIAAOmAf8DQwH/AxIBGSAAA6YB/wM8Af8DEgEZBAADIwEzAV4BawL/AXQBhAL/AVwBaAH5Af8BTgFd
AfwB/wEgASgBdQH/AwAB/wMAAf8DAAH/AQYBBwENAf8BGQEgAV8B/wEpATIBnQH/ATwBSQHkAf8BOQFI AfwB/wEfAScBdAH/AwAB/wMAAf8DAAH/AQUBBgEMAf8BGAEfAV4B/wEoATEBnQH/ATsBSAHkAf8BOAFH
AeEB/wEmAS8BnAH/AycBOwMjATMB/wG9AV8C/wHGAXUB/wH5AboBXQH/AfwBtAFPAf8BdQFRASAB/wMA AeEB/wElAS4BnAH/AycBOwMjATMB/wG9AV4C/wHGAXQB/wH5AboBXAH/AfwBtAFOAf8BdAFQAR8B/wMA
Af8DAAH/AwAB/wENAQoBBgH/AV8BQQEZAf8BnQFrASkB/wHkAaABPAH/AeEBmwE5Af8BnAFpASYB/wMn Af8DAAH/AwAB/wEMAQkBBQH/AV4BQAEYAf8BnQFqASgB/wHkAaABOwH/AeEBmwE4Af8BnAFoASUB/wMn
ATsEAAOwAf8DRAH/A04BmQNOAZkUAANOAZkDTgGZA7AB/wM9Af8DEgEZCAADsAH/A0QB/wNOAZkDTgGZ ATsEAAOwAf8DQwH/A04BmQNOAZkUAANOAZkDTgGZA7AB/wM8Af8DEgEZCAADsAH/A0MB/wNOAZkDTgGZ
FAADTgGZA04BmQOwAf8DPQH/AxIBGQQAAyMBMwFpAXYC/wGBAYwC/wFeAWwB+AH/AU0BXQH7Af8BNQFB FAADTgGZA04BmQOwAf8DPAH/AxIBGQQAAyMBMwFoAXUC/wGBAYwC/wFdAWsB+AH/AUwBXAH7Af8BNAFA
AcsB/wIBAQMB/wMAAf8DAAH/ARIBFgFFAf8BQgFRAfkB/wFCAVIB+gH/AT8BTgHwAf8BOQFHAeMB/wEn AcsB/wIAAQIB/wMAAf8DAAH/AREBFQFEAf8BQQFQAfkB/wFBAVEB+gH/AT4BTQHwAf8BOAFGAeMB/wEm
ATEBogH/AycBOwMjATMB/wHBAWkC/wHKAYEB/wH4AbgBXgH/AfsBsgFNAf8BywGOATUB/wEDAQIBAQH/ ATABogH/AycBOwMjATMB/wHBAWgC/wHKAYEB/wH4AbgBXQH/AfsBsgFMAf8BywGOATQB/wECAQEBAAH/
AwAB/wMAAf8BRQEwARIB/wH5Aa4BQgH/AfoBrgFCAf8B8AGnAT8B/wHjAZ0BOQH/AaIBbQEnAf8DJwE7 AwAB/wMAAf8BRAEvAREB/wH5Aa4BQQH/AfoBrgFBAf8B8AGnAT4B/wHjAZ0BOAH/AaIBbAEmAf8DJwE7
BAADuAH/A7gB/wO4Af8DpQH/FAADpQH/A7gB/wO4Af8DPQH/AxIBGQgAA7gB/wO4Af8DuAH/A6UB/xQA BAADuAH/A7gB/wO4Af8DpQH/FAADpQH/A7gB/wO4Af8DPAH/AxIBGQgAA7gB/wO4Af8DuAH/A6UB/xQA
A6UB/wO4Af8DuAH/Az0B/wMSARkIAAFnAXYC/wGOAZcC/wFmAXEB/gH/AU8BXgH1Af8BRQFTAfgB/wER A6UB/wO4Af8DuAH/AzwB/wMSARkIAAFmAXUC/wGOAZcC/wFlAXAB/gH/AU4BXQH1Af8BRAFSAfgB/wEQ
ARYBRQH/AQMBAgEEAf8BHgEmAXQB/wMAAf8BFQEbAVQB/wE/AU4B8AH/AUABTgHzAf8BNwFFAdoB/wEp ARUBRAH/AQIBAQEDAf8BHQElAXMB/wMAAf8BFAEaAVMB/wE+AU0B8AH/AT8BTQHzAf8BNgFEAdoB/wEo
ATIBnwH/AyIBMQQAAf8BvwFnAv8B0AGOAf8B/gHBAWYB/wH1AbABTwH/AfgBrwFFAf8BRQEvAREB/wIE ATEBnwH/AyIBMQQAAf8BvwFmAv8B0AGOAf8B/gHBAWUB/wH1AbABTgH/AfgBrwFEAf8BRAEuARAB/wID
AQIB/wF0AU8BHgH/AwAB/wFUATkBFQH/AfABpwE/Af8B8wGqAUAB/wHaAZcBNwH/AZ8BbQEpAf8DIgEx AQEB/wFzAU4BHQH/AwAB/wFTATgBFAH/AfABpwE+Af8B8wGqAT8B/wHaAZcBNgH/AZ8BbAEoAf8DIgEx
BAADuAH/A0QB/wMSARkgAAO4Af8DPQH/AxIBGQgAA7gB/wNEAf8DEgEZIAADuAH/Az0B/wMSARkIAANf BAADuAH/A0MB/wMSARkgAAO4Af8DPAH/AxIBGQgAA7gB/wNDAf8DEgEZIAADuAH/AzwB/wMSARkIAANf
AdsBlgGgAv8BhgGQAv8BZwF0AfkB/wFSAWAB/gH/ASoBNAGdAf8BEAEVAUEB/wFEAVQC/wEoATEBmAH/ AdsBlgGgAv8BhgGQAv8BZgFzAfkB/wFRAV8B/gH/ASkBMwGdAf8BDwEUAUAB/wFDAVMC/wEnATABmAH/
AwAB/wEVARsBVAH/AT4BTQHtAf8BNwFEAdUB/wJcAWIB6gMMARAEAANfAdsB/wHSAZYC/wHMAYYB/wH5 AwAB/wEUARoBUwH/AT0BTAHtAf8BNgFDAdUB/wJcAWEB6gMMARAEAANfAdsB/wHSAZYC/wHMAYYB/wH5
AbwBZwH/Af4BuAFSAf8BnQFrASoB/wFBASwBEAL/AbIBRAH/AZgBaAEoAf8DAAH/AVQBOQEVAf8B7QGl AbwBZgH/Af4BuAFRAf8BnQFqASkB/wFAASsBDwL/AbIBQwH/AZgBZwEnAf8DAAH/AVMBOAEUAf8B7QGl
AT4B/wHVAZQBNwH/AWMBXwFcAeoDDAEQBAADuAH/A0QB/wMSARkgAAO4Af8DPQH/AxIBGQgAA7gB/wNE AT0B/wHVAZQBNgH/AWIBXgFcAeoDDAEQBAADuAH/A0MB/wMSARkgAAO4Af8DPAH/AxIBGQgAA7gB/wND
Af8DEgEZIAADuAH/Az0B/wMSARkIAAM4AVwBmAGiAv8BngGnAv8BcAGBAv8BXAFpAfkB/wFHAVIB5AH/ Af8DEgEZIAADuAH/AzwB/wMSARkIAAM4AVwBmAGiAv8BngGnAv8BbwGBAv8BWwFoAfkB/wFGAVEB5AH/
ATgBQwG+Af8BSAFYAfgB/wFKAVgB/QH/ATEBOQGcAf8DAAH/AS4BOAGxAf8BOgFHAd4B/wM4AVwIAAM4 ATcBQgG+Af8BRwFXAfgB/wFJAVcB/QH/ATABOAGcAf8DAAH/AS0BNwGxAf8BOQFGAd4B/wM4AVwIAAM4
AVwB/wHTAZgC/wHWAZ4C/wHFAXAB/wH5AbkBXAH/AeQBpQFHAf8BvgGHATgB/wH4Aa4BSAH/Af0BtAFK AVwB/wHTAZgC/wHWAZ4C/wHFAW8B/wH5AbkBWwH/AeQBpQFGAf8BvgGHATcB/wH4Aa4BRwH/Af0BtAFJ
Af8BnAFuATEB/wMAAf8BsQGAAS4B/wHeAZsBOgH/AzgBXAgAA7gB/wNEAf8DEgEZDAADpQH/A04BmQwA Af8BnAFtATAB/wMAAf8BsQGAAS0B/wHeAZsBOQH/AzgBXAgAA7gB/wNDAf8DEgEZDAADpQH/A04BmQwA
A7gB/wM9Af8DEgEZCAADuAH/A0QB/wMSARkMAAOlAf8DTgGZDAADuAH/Az0B/wMSARkMAANVAbIBqAGx A7gB/wM8Af8DEgEZCAADuAH/A0MB/wMSARkMAAOlAf8DTgGZDAADuAH/AzwB/wMSARkMAANVAbIBqAGx
Av8BiQGTAv8BdgGDAv8BbQGAAfwB/wFiAW4B9gH/AVwBaAH2Af8BWwFnAfUB/wFXAWQB+wH/AToBRAHC Av8BiQGTAv8BdQGDAv8BbAGAAfwB/wFhAW0B9gH/AVsBZwH2Af8BWgFmAfUB/wFWAWMB+wH/ATkBQwHC
Af8BOwFJAeAB/wNbAcYQAANVAbIB/wHZAagC/wHOAYkC/wHIAXYB/wH8AcEBbQH/AfYBuQFiAf8B9gG3 Af8BOgFIAeAB/wNbAcYQAANVAbIB/wHZAagC/wHOAYkC/wHIAXUB/wH8AcEBbAH/AfYBuQFhAf8B9gG3
AVwB/wH1AbYBWwH/AfsBuAFXAf8BwgGLAToB/wHgAZwBOwH/A1sBxggAAzABTAEkATMBsgH/ARoBJwF2 AVsB/wH1AbYBWgH/AfsBuAFWAf8BwgGLATkB/wHgAZwBOgH/A1sBxggAAzABTAEjATIBsgH/ARkBJgF1
Af8DMAFMAxIBGQMSARkDEgEZA7gB/wNOAZkDEgEZAxIBGQMwAUwBJAEzAbIB/wEaAScBdgH/AzABTAMS Af8DMAFMAxIBGQMSARkDEgEZA7gB/wNOAZkDEgEZAxIBGQMwAUwBIwEyAbIB/wEZASYBdQH/AzABTAMS
ARkDMAFMAbIBbQEkAf8BdgFHARoB/wMwAUwDEgEZAxIBGQMSARkDuAH/A04BmQMSARkDEgEZAzABTAGy ARkDMAFMAbIBbAEjAf8BdQFGARkB/wMwAUwDEgEZAxIBGQMSARkDuAH/A04BmQMSARkDEgEZAzABTAGy
AW0BJAH/AXYBRwEaAf8DMAFMAxIBGQwAA1YBsQGfAakC/wGXAaIC/wGLAZUC/wFxAYIC/wFfAW4B/QH/ AWwBIwH/AXUBRgEZAf8DMAFMAxIBGQwAA1YBsQGfAakC/wGXAaIC/wGLAZUC/wFwAYIC/wFeAW0B/QH/
AVUBYgH5Af8BSQFYAfcB/wFCAVIB+gH/A1oBvRgAA1YBsQH/AdUBnwL/AdEBlwL/Ac8BiwL/AcMBcQH/ AVQBYQH5Af8BSAFXAfcB/wFBAVEB+gH/A1oBvRgAA1YBsQH/AdUBnwL/AdEBlwL/Ac8BiwL/AcMBcAH/
Af0BugFfAf8B+QG2AVUB/wH3Aa8BSQH/AfoBrQFCAf8DWgG9DAABLQFFAd8B/wErAT8B2AH/ASABLAGd Af0BugFeAf8B+QG2AVQB/wH3Aa8BSAH/AfoBrQFBAf8DWgG9DAABLAFEAd8B/wEqAT4B2AH/AR8BKwGd
Af8BGgEnAXYB/wNEAf8DRAH/A0QB/wO4Af8DRAH/A0QB/wNEAf8BLQFFAd8B/wErAT8B2AH/ASABLAGd Af8BGQEmAXUB/wNDAf8DQwH/A0MB/wO4Af8DQwH/A0MB/wNDAf8BLAFEAd8B/wEqAT4B2AH/AR8BKwGd
Af8BGgEnAXYB/wMSARkB3wGHAS0B/wHYAYYBKwH/AZ0BYQEgAf8BdgFHARoB/wNEAf8DRAH/A0QB/wO4 Af8BGQEmAXUB/wMSARkB3wGHASwB/wHYAYYBKgH/AZ0BYAEfAf8BdQFGARkB/wNDAf8DQwH/A0MB/wO4
Af8DRAH/A0QB/wNEAf8B3wGHAS0B/wHYAYYBKwH/AZ0BYQEgAf8BdgFHARoB/wMSARkQAAM4AVwDXgHY Af8DQwH/A0MB/wNDAf8B3wGHASwB/wHYAYYBKgH/AZ0BYAEfAf8BdQFGARkB/wMSARkQAAM4AVwDXgHY
AXgBhwL/AYMBjQL/AXEBgwL/AVwBagL/A14B2AM4AVwgAAM4AVwDXgHYAf8BxwF4Av8BzAGDAv8BwgFx AXcBhwL/AYMBjQL/AXABgwL/AVsBaQL/A14B2AM4AVwgAAM4AVwDXgHYAf8BxwF3Av8BzAGDAv8BwgFw
Av8BvAFcAf8DXgHYAzgBXBAAAWkBgQH9Af8B7AHlAv8BKwE/AdgB/wEkATMBsgH/A7gB/wO4Af8DuAH/ Av8BvAFbAf8DXgHYAzgBXBAAAWgBgQH9Af8B7AHlAv8BKgE+AdgB/wEjATIBsgH/A7gB/wO4Af8DuAH/
A7gB/wO4Af8DpgH/A5gB/wFpAYEB/QH/AewB5QL/ASsBPwHYAf8BJAEzAbIB/wMSARkB/QG0AWkC/wH9 A7gB/wO4Af8DpgH/A5gB/wFoAYEB/QH/AewB5QL/ASoBPgHYAf8BIwEyAbIB/wMSARkB/QG0AWgC/wH9
AeUB/wHYAYYBKwH/AbIBbQEkAf8DuAH/A7gB/wO4Af8DuAH/A7gB/wOmAf8DmAH/Af0BtAFpAv8B/QHl AeUB/wHYAYYBKgH/AbIBbAEjAf8DuAH/A7gB/wO4Af8DuAH/A7gB/wOmAf8DmAH/Af0BtAFoAv8B/QHl
Af8B2AGGASsB/wGyAW0BJAH/AxIBGRwAAyMBMwMjATM4AAMjATMDIwEzHAADMAFMAWkBgQH9Af8BLQFF Af8B2AGGASoB/wGyAWwBIwH/AxIBGRwAAyMBMwMjATM4AAMjATMDIwEzHAADMAFMAWgBgQH9Af8BLAFE
Ad8B/wMwAUwcAAMwAUwBaQGBAf0B/wEtAUUB3wH/AzABTAQAAzABTAH9AbQBaQH/Ad8BhwEtAf8DMAFM Ad8B/wMwAUwcAAMwAUwBaAGBAf0B/wEsAUQB3wH/AzABTAQAAzABTAH9AbQBaAH/Ad8BhwEsAf8DMAFM
HAADMAFMAf0BtAFpAf8B3wGHAS0B/wMwAUwEAAFCAU0BPgcAAT4DAAEoAwABQAMAASADAAEBAQABAQYA HAADMAFMAf0BtAFoAf8B3wGHASwB/wMwAUwEAAFCAU0BPgcAAT4DAAEoAwABQAMAASADAAEBAQABAQYA
AQEWAAP/AQABjwH/AY8B/wQAAQcB/wEHAf8EAAEHAf8BBwH/BAABBwH/AQcB/wQAAQMB/wEDAf8EAAHB AQEWAAP/AQABjwH/AY8B/wQAAQcB/wEHAf8EAAEHAf8BBwH/BAABBwH/AQcB/wQAAQMB/wEDAf8EAAHB
AY8BwQGPBAAB4AEPAeABDwQAAfABHwHwAR8EAAH4AT8B+AE/BAAB/AEfAfwBHwQAAf4BDwH+AQ8EAAH/ AY8BwQGPBAAB4AEPAeABDwQAAfABHwHwAR8EAAH4AT8B+AE/BAAB/AEfAfwBHwQAAf4BDwH+AQ8EAAH/
AQEB/wEBBAAB/wGAAf8BgAQAAf8BwAH/AcAEAAH/AeAB/wHgBAAB/wHhAf8B4QQAAfgBBwH4AQcBjwHx AQEB/wEBBAAB/wGAAf8BgAQAAf8BwAH/AcAEAAH/AeAB/wHgBAAB/wHhAf8B4QQAAfgBBwH4AQcBjwHx